diff --git a/DiscoveryJson/abusiveexperiencereport_v1.json b/DiscoveryJson/abusiveexperiencereport_v1.json index 4596799793..f665c9b987 100644 --- a/DiscoveryJson/abusiveexperiencereport_v1.json +++ b/DiscoveryJson/abusiveexperiencereport_v1.json @@ -1,4 +1,105 @@ { + "basePath": "", + "documentationLink": "https://developers.google.com/abusive-experience-report/", + "id": "abusiveexperiencereport:v1", + "revision": "20180430", + "discoveryVersion": "v1", + "version_module": true, + "schemas": { + "SiteSummaryResponse": { + "description": "Response message for GetSiteSummary.\nDo not confuse with same message in google.ads.experiencereport.v1", + "type": "object", + "properties": { + "lastChangeTime": { + "description": "The last time that the site changed status.", + "format": "google-datetime", + "type": "string" + }, + "reviewedSite": { + "description": "The name of the site reviewed.", + "type": "string" + }, + "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": { + "enum": [ + "UNKNOWN", + "ON", + "OFF", + "PAUSED", + "PENDING" + ], + "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." + ] + }, + "underReview": { + "description": "Whether the site is currently under review.", + "type": "boolean" + }, + "reportUrl": { + "type": "string", + "description": "A link that leads to a full abusive experience report." + } + }, + "id": "SiteSummaryResponse" + }, + "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" + } + }, + "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": "Abusive Experience Report", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/xapi.zoo": { + "description": "Test scope for access to the Zoo service" + } + } + } + }, + "rootUrl": "https://abusiveexperiencereport.googleapis.com/", + "ownerDomain": "google.com", + "name": "abusiveexperiencereport", "batchPath": "batch", "fullyEncodeReservedExpansion": true, "title": "Abusive Experience Report API", @@ -7,6 +108,10 @@ "sites": { "methods": { "get": { + "flatPath": "v1/sites/{sitesId}", + "path": "v1/{+name}", + "id": "abusiveexperiencereport.sites.get", + "description": "Gets a summary of the abusive experience rating of a site.", "response": { "$ref": "SiteSummaryResponse" }, @@ -14,68 +119,76 @@ "name" ], "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/xapi.zoo" - ], "parameters": { "name": { - "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.", "required": true, - "type": "string" + "type": "string", + "pattern": "^sites/[^/]+$", + "location": "path" } }, - "flatPath": "v1/sites/{sitesId}", - "path": "v1/{+name}", - "id": "abusiveexperiencereport.sites.get", - "description": "Gets a summary of the abusive experience rating of a site." + "scopes": [ + "https://www.googleapis.com/auth/xapi.zoo" + ] } } }, "violatingSites": { "methods": { "list": { + "httpMethod": "GET", + "parameterOrder": [], "response": { "$ref": "ViolatingSitesResponse" }, - "parameterOrder": [], - "httpMethod": "GET", + "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/xapi.zoo" ], - "parameters": {}, "flatPath": "v1/violatingSites", - "path": "v1/violatingSites", "id": "abusiveexperiencereport.violatingSites.list", + "path": "v1/violatingSites", "description": "Lists sites with Abusive Experience Report statuses of \"Failing\"." } } } }, "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", - "location": "query" + "default": "true" }, "fields": { - "location": "query", "description": "Selector specifying which fields to include in a partial response.", - "type": "string" + "type": "string", + "location": "query" }, "uploadType": { + "type": "string", "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." }, "$.xgafv": { + "description": "V1 error format.", + "type": "string", "enumDescriptions": [ "v1 error format", "v2 error format" @@ -84,9 +197,7 @@ "enum": [ "1", "2" - ], - "description": "V1 error format.", - "type": "string" + ] }, "callback": { "description": "JSONP", @@ -94,12 +205,6 @@ "location": "query" }, "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", "enumDescriptions": [ "Responses with Content-Type of application/json", "Media download with context-dependent Content-Type", @@ -107,17 +212,23 @@ ], "location": "query", "description": "Data format for response.", - "default": "json" + "default": "json", + "enum": [ + "json", + "media", + "proto" + ], + "type": "string" }, "access_token": { - "location": "query", "description": "OAuth access token.", - "type": "string" + "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" + "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.", @@ -125,126 +236,15 @@ "location": "query" }, "pp": { + "location": "query", "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" + "default": "true" } }, "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": "20180430", - "documentationLink": "https://developers.google.com/abusive-experience-report/", - "id": "abusiveexperiencereport:v1", - "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.\nDo not confuse with same message in google.ads.experiencereport.v1", - "type": "object", - "properties": { - "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" - }, - "lastChangeTime": { - "description": "The last time that the site changed status.", - "format": "google-datetime", - "type": "string" - }, - "reviewedSite": { - "description": "The name of the site reviewed.", - "type": "string" - }, - "abusiveStatus": { - "enumDescriptions": [ - "Not reviewed.", - "Passing.", - "Failing." - ], - "enum": [ - "UNKNOWN", - "PASSING", - "FAILING" - ], - "description": "The status of the site reviewed for the abusive experiences.", - "type": "string" - } - }, - "id": "SiteSummaryResponse" - } - }, - "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": { - "https://www.googleapis.com/auth/xapi.zoo": { - "description": "Test scope for access to the Zoo service" - } - } - } - }, - "rootUrl": "https://abusiveexperiencereport.googleapis.com/", - "ownerDomain": "google.com", - "name": "abusiveexperiencereport" + "description": "View Abusive Experience Report data, and get a list of sites that have a significant number of abusive experiences.", + "kind": "discovery#restDescription" } diff --git a/DiscoveryJson/acceleratedmobilepageurl_v1.json b/DiscoveryJson/acceleratedmobilepageurl_v1.json index 4ae061669e..de24fe10cc 100644 --- a/DiscoveryJson/acceleratedmobilepageurl_v1.json +++ b/DiscoveryJson/acceleratedmobilepageurl_v1.json @@ -1,19 +1,6 @@ { - "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": "20180405", - "title": "Accelerated Mobile Pages (AMP) URL API", - "ownerName": "Google", "discoveryVersion": "v1", + "ownerName": "Google", "version_module": true, "resources": { "ampUrls": { @@ -37,16 +24,47 @@ } }, "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": { + "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": { + "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": { + "location": "query", "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" + "type": "string" }, "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", "type": "boolean", - "default": "true" + "default": "true", + "location": "query", + "description": "Returns response with indentations and line breaks." }, "uploadType": { "location": "query", @@ -58,12 +76,8 @@ "description": "Selector specifying which fields to include in a partial response.", "type": "string" }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, "$.xgafv": { + "location": "query", "enum": [ "1", "2" @@ -73,10 +87,17 @@ "enumDescriptions": [ "v1 error format", "v2 error format" - ], - "location": "query" + ] + }, + "callback": { + "type": "string", + "location": "query", + "description": "JSONP" }, "alt": { + "location": "query", + "description": "Data format for response.", + "default": "json", "enum": [ "json", "media", @@ -87,70 +108,10 @@ "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": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "oauth_token": { - "type": "string", - "location": "query", - "description": "OAuth 2.0 token for the current user." + ] } }, "schemas": { - "BatchGetAmpUrlsRequest": { - "description": "AMP URL request for a batch of URLs.", - "type": "object", - "properties": { - "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)).", - "type": "array", - "items": { - "type": "string" - } - }, - "lookupStrategy": { - "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." - ] - } - }, - "id": "BatchGetAmpUrlsRequest" - }, "BatchGetAmpUrlsResponse": { "description": "Batch AMP URL response.", "type": "object", @@ -163,16 +124,18 @@ } }, "urlErrors": { - "description": "The errors for requested URLs that have no AMP URL.", "type": "array", "items": { "$ref": "AmpUrlError" - } + }, + "description": "The errors for requested URLs that have no AMP URL." } }, "id": "BatchGetAmpUrlsResponse" }, "AmpUrl": { + "description": "AMP URL response for a requested URL.", + "type": "object", "properties": { "cdnAmpUrl": { "description": "The [AMP Cache URL](/amp/cache/overview#amp-cache-url-format) pointing to\nthe cached document in the Google AMP Cache.", @@ -187,27 +150,16 @@ "description": "The AMP URL pointing to the publisher's web server." } }, - "id": "AmpUrl", - "description": "AMP URL response for a requested URL.", - "type": "object" + "id": "AmpUrl" }, "AmpUrlError": { - "description": "AMP URL Error resource for a requested URL that couldn't be found.", "type": "object", "properties": { "errorMessage": { - "description": "An optional descriptive error message.", - "type": "string" + "type": "string", + "description": "An optional descriptive error message." }, "errorCode": { - "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.", - "Indicates no AMP URL has been found that corresponds to the requested\nURL.", - "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." - ], "enum": [ "ERROR_CODE_UNSPECIFIED", "INPUT_URL_NOT_FOUND", @@ -217,14 +169,49 @@ "URL_IS_INVALID_AMP" ], "description": "The error code of an API call.", - "type": "string" + "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.", + "Indicates no AMP URL has been found that corresponds to the requested\nURL.", + "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." + ] }, "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." + }, + "BatchGetAmpUrlsRequest": { + "description": "AMP URL request for a batch of URLs.", + "type": "object", + "properties": { + "lookupStrategy": { + "enum": [ + "FETCH_LIVE_DOC", + "IN_INDEX_DOC" + ], + "description": "The lookup_strategy being requested.", "type": "string", - "description": "The original non-AMP URL." + "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." + ] + }, + "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))." } }, - "id": "AmpUrlError" + "id": "BatchGetAmpUrlsRequest" } }, "protocol": "rest", @@ -232,5 +219,18 @@ "x32": "http://www.google.com/images/icons/product/search-32.gif", "x16": "http://www.google.com/images/icons/product/search-16.gif" }, - "version": "v1" + "version": "v1", + "baseUrl": "https://acceleratedmobilepageurl.googleapis.com/", + "servicePath": "", + "description": "Retrieves the list of AMP URLs (and equivalent AMP Cache URLs) for a given list of public URL(s).\n", + "kind": "discovery#restDescription", + "rootUrl": "https://acceleratedmobilepageurl.googleapis.com/", + "basePath": "", + "ownerDomain": "google.com", + "name": "acceleratedmobilepageurl", + "batchPath": "batch", + "revision": "20180405", + "documentationLink": "https://developers.google.com/amp/cache/", + "id": "acceleratedmobilepageurl:v1", + "title": "Accelerated Mobile Pages (AMP) URL API" } diff --git a/DiscoveryJson/adexchangebuyer2_v2beta1.json b/DiscoveryJson/adexchangebuyer2_v2beta1.json index 1e347ad2d7..9dffc0da73 100644 --- a/DiscoveryJson/adexchangebuyer2_v2beta1.json +++ b/DiscoveryJson/adexchangebuyer2_v2beta1.json @@ -1,3729 +1,3731 @@ { - "title": "Ad Exchange Buyer API II", - "ownerName": "Google", - "resources": { - "bidders": { - "resources": { - "filterSets": { - "methods": { - "get": { - "flatPath": "v2beta1/bidders/{biddersId}/filterSets/{filterSetsId}", - "path": "v2beta1/{+name}", - "id": "adexchangebuyer2.bidders.filterSets.get", - "description": "Retrieves the requested filter set for the account with the given account\nID.", - "response": { - "$ref": "FilterSet" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "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`" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "list": { - "response": { - "$ref": "ListFilterSetsResponse" - }, - "parameterOrder": [ - "ownerName" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "pageToken": { - "type": "string", - "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." - }, - "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" - }, - "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/[^/]+$" - } - }, - "flatPath": "v2beta1/bidders/{biddersId}/filterSets", - "path": "v2beta1/{+ownerName}/filterSets", - "id": "adexchangebuyer2.bidders.filterSets.list", - "description": "Lists all filter sets for the account with the given account ID." - }, - "create": { - "httpMethod": "POST", - "parameterOrder": [ - "ownerName" - ], - "response": { - "$ref": "FilterSet" - }, - "parameters": { - "ownerName": { - "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", - "pattern": "^bidders/[^/]+$" - }, - "isTransient": { - "type": "boolean", - "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." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/bidders/{biddersId}/filterSets", - "id": "adexchangebuyer2.bidders.filterSets.create", - "path": "v2beta1/{+ownerName}/filterSets", - "description": "Creates the specified filter set for the account with the given account ID.", - "request": { - "$ref": "FilterSet" - } - }, - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "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`" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "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." - } - }, - "resources": { - "bidResponsesWithoutBids": { - "methods": { - "list": { - "response": { - "$ref": "ListBidResponsesWithoutBidsResponse" - }, - "parameterOrder": [ - "filterSetName" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "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": { - "type": "string", - "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." - }, - "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}/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": { - "response": { - "$ref": "ListFilteredBidRequestsResponse" - }, - "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/[^/]+/filterSets/[^/]+$" - }, - "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": { - "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}/filterSets/{filterSetsId}/filteredBidRequests", - "path": "v2beta1/{+filterSetName}/filteredBidRequests", - "id": "adexchangebuyer2.bidders.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." - } - } - }, - "nonBillableWinningBids": { - "methods": { - "list": { - "response": { - "$ref": "ListNonBillableWinningBidsResponse" - }, - "parameterOrder": [ - "filterSetName" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "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": { - "type": "string", - "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." - }, - "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}/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": { - "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\nListFilteredBidsResponse.nextPageToken\nreturned from the previous call to the filteredBids.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", - "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": { - "flatPath": "v2beta1/bidders/{biddersId}/filterSets/{filterSetsId}/filteredBids/{creativeStatusId}/creatives", - "path": "v2beta1/{+filterSetName}/filteredBids/{creativeStatusId}/creatives", - "id": "adexchangebuyer2.bidders.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": { - "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/[^/]+/filterSets/[^/]+$" - }, - "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": { - "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": { - "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" - } - } - } - } - }, - "details": { - "methods": { - "list": { - "httpMethod": "GET", - "parameterOrder": [ - "filterSetName", - "creativeStatusId" - ], - "response": { - "$ref": "ListCreativeStatusBreakdownByDetailResponse" - }, - "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/[^/]+/filterSets/[^/]+$" - }, - "creativeStatusId": { - "location": "path", - "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" - }, - "pageToken": { - "type": "string", - "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." - }, - "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", - "id": "adexchangebuyer2.bidders.filterSets.filteredBids.details.list", - "path": "v2beta1/{+filterSetName}/filteredBids/{creativeStatusId}/details", - "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": { - "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", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "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\nListLosingBidsResponse.nextPageToken\nreturned from the previous call to the losingBids.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}/filterSets/{filterSetsId}/losingBids", - "path": "v2beta1/{+filterSetName}/losingBids", - "id": "adexchangebuyer2.bidders.filterSets.losingBids.list" - } - } - }, - "bidMetrics": { - "methods": { - "list": { - "description": "Lists all metrics that are measured in terms of number of bids.", - "response": { - "$ref": "ListBidMetricsResponse" - }, - "parameterOrder": [ - "filterSetName" - ], - "httpMethod": "GET", - "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/[^/]+/filterSets/[^/]+$" - }, - "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." - }, - "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}/bidMetrics", - "path": "v2beta1/{+filterSetName}/bidMetrics", - "id": "adexchangebuyer2.bidders.filterSets.bidMetrics.list" - } - } - }, - "impressionMetrics": { - "methods": { - "list": { - "response": { - "$ref": "ListImpressionMetricsResponse" - }, - "parameterOrder": [ - "filterSetName" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "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": { - "type": "string", - "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." - }, - "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}/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." - } - } - }, - "bidResponseErrors": { - "methods": { - "list": { - "response": { - "$ref": "ListBidResponseErrorsResponse" - }, - "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/[^/]+/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" - }, - "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}/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." - } - } - } - } - }, - "accounts": { - "resources": { - "filterSets": { - "methods": { - "get": { - "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets/{filterSetsId}", - "path": "v2beta1/{+name}", - "id": "adexchangebuyer2.bidders.accounts.filterSets.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": { - "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`", - "required": true, - "type": "string", - "pattern": "^bidders/[^/]+/accounts/[^/]+/filterSets/[^/]+$" - } - } - }, - "list": { - "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets", - "id": "adexchangebuyer2.bidders.accounts.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": { - "type": "string", - "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." - }, - "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" - }, - "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/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "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", - "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": { - "required": true, - "type": "string", - "pattern": "^bidders/[^/]+/accounts/[^/]+$", - "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`" - } - }, - "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": { - "description": "Deletes the requested filter set from the account with the given account\nID.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "name": { - "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", - "pattern": "^bidders/[^/]+/accounts/[^/]+/filterSets/[^/]+$" - } - }, - "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets/{filterSetsId}", - "path": "v2beta1/{+name}", - "id": "adexchangebuyer2.bidders.accounts.filterSets.delete" - } - }, - "resources": { - "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": { - "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.", - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - } - } - }, - "bidMetrics": { - "methods": { - "list": { - "response": { - "$ref": "ListBidMetricsResponse" - }, - "parameterOrder": [ - "filterSetName" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "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": { - "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." - }, - "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}/bidMetrics", - "path": "v2beta1/{+filterSetName}/bidMetrics", - "id": "adexchangebuyer2.bidders.accounts.filterSets.bidMetrics.list", - "description": "Lists all metrics that are measured in terms of number of bids." - } - } - }, - "impressionMetrics": { - "methods": { - "list": { - "description": "Lists all metrics that are measured in terms of number of impressions.", - "response": { - "$ref": "ListImpressionMetricsResponse" - }, - "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": { - "type": "string", - "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." - }, - "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" - } - } - }, - "bidResponseErrors": { - "methods": { - "list": { - "response": { - "$ref": "ListBidResponseErrorsResponse" - }, - "parameterOrder": [ - "filterSetName" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "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": { - "type": "string", - "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." - }, - "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}/bidResponseErrors", - "path": "v2beta1/{+filterSetName}/bidResponseErrors", - "id": "adexchangebuyer2.bidders.accounts.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": { - "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", - "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." - } - } - }, - "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.", - "response": { - "$ref": "ListFilteredBidRequestsResponse" - }, - "parameterOrder": [ - "filterSetName" - ], - "httpMethod": "GET", - "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": { - "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": { - "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}/filteredBidRequests", - "path": "v2beta1/{+filterSetName}/filteredBidRequests", - "id": "adexchangebuyer2.bidders.accounts.filterSets.filteredBidRequests.list" - } - } - }, - "nonBillableWinningBids": { - "methods": { - "list": { - "description": "List all reasons for which winning bids were not billable, with the number\nof bids not billed for each reason.", - "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": { - "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}/nonBillableWinningBids", - "path": "v2beta1/{+filterSetName}/nonBillableWinningBids", - "id": "adexchangebuyer2.bidders.accounts.filterSets.nonBillableWinningBids.list" - } - } - }, - "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": { - "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": { - "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": { - "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" - } - } - } - }, - "resources": { - "details": { - "methods": { - "list": { - "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": { - "location": "path", - "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" - }, - "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": { - "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}/filteredBids/{creativeStatusId}/details", - "path": "v2beta1/{+filterSetName}/filteredBids/{creativeStatusId}/details", - "id": "adexchangebuyer2.bidders.accounts.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." - } - } - }, - "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": { - "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`" - }, - "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": { - "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" - } - } - } - } - } - } - } - } - } - } - } - } - }, - "accounts": { - "resources": { - "clients": { - "methods": { - "get": { - "description": "Gets a client buyer with a given client account ID.", - "response": { - "$ref": "Client" - }, - "parameterOrder": [ - "accountId", - "clientAccountId" - ], - "httpMethod": "GET", - "parameters": { - "clientAccountId": { - "location": "path", - "description": "Numerical account ID of the client buyer to retrieve. (required)", - "format": "int64", - "required": true, - "type": "string" - }, - "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}", - "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}", - "id": "adexchangebuyer2.accounts.clients.get" - }, - "list": { - "description": "Lists all the clients for the current sponsor buyer.", - "response": { - "$ref": "ListClientsResponse" - }, - "parameterOrder": [ - "accountId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "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": { - "type": "string", - "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." - }, - "accountId": { - "location": "path", - "description": "Unique numerical account ID of the sponsor buyer to list the clients for.", - "format": "int64", - "required": true, - "type": "string" - }, - "pageSize": { - "type": "integer", - "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" - } - }, - "flatPath": "v2beta1/accounts/{accountId}/clients", - "path": "v2beta1/accounts/{accountId}/clients", - "id": "adexchangebuyer2.accounts.clients.list" - }, - "update": { - "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}", - "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}", - "id": "adexchangebuyer2.accounts.clients.update", - "description": "Updates an existing client buyer.", - "request": { - "$ref": "Client" - }, - "response": { - "$ref": "Client" - }, - "parameterOrder": [ - "accountId", - "clientAccountId" - ], - "httpMethod": "PUT", - "parameters": { - "clientAccountId": { - "location": "path", - "description": "Unique numerical account ID of the client to update. (required)", - "format": "int64", - "required": true, - "type": "string" - }, - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - }, - "create": { - "httpMethod": "POST", - "parameterOrder": [ - "accountId" - ], - "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 create a client for. (required)", - "format": "int64" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/accounts/{accountId}/clients", - "id": "adexchangebuyer2.accounts.clients.create", - "path": "v2beta1/accounts/{accountId}/clients", - "description": "Creates a new client buyer.", - "request": { - "$ref": "Client" - } - } - }, - "resources": { - "invitations": { - "methods": { - "get": { - "response": { - "$ref": "ClientUserInvitation" - }, - "parameterOrder": [ - "accountId", - "clientAccountId", - "invitationId" - ], - "httpMethod": "GET", - "parameters": { - "clientAccountId": { - "required": true, - "type": "string", - "location": "path", - "description": "Numerical account ID of the client buyer that the user invitation\nto be retrieved is associated with. (required)", - "format": "int64" - }, - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations/{invitationId}", - "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations/{invitationId}", - "id": "adexchangebuyer2.accounts.clients.invitations.get", - "description": "Retrieves an existing client user invitation." - }, - "list": { - "response": { - "$ref": "ListClientUserInvitationsResponse" - }, - "parameterOrder": [ - "accountId", - "clientAccountId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "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": { - "required": true, - "type": "string", - "location": "path", - "description": "Numerical account ID of the client's sponsor buyer. (required)", - "format": "int64" - }, - "pageSize": { - "type": "integer", - "location": "query", - "description": "Requested page size. Server may return fewer clients than requested.\nIf unspecified, server will pick an appropriate default.", - "format": "int32" - }, - "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" - } - }, - "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": { - "response": { - "$ref": "ClientUserInvitation" - }, - "parameterOrder": [ - "accountId", - "clientAccountId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "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" - }, - "accountId": { - "location": "path", - "description": "Numerical account ID of the client's sponsor buyer. (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", - "request": { - "$ref": "ClientUserInvitation" - }, - "description": "Creates and sends out an email invitation to access\nan Ad Exchange client buyer account." - } - } - }, - "users": { - "methods": { - "list": { - "description": "Lists all the known client users for a specified\nsponsor buyer account ID.", - "response": { - "$ref": "ListClientUsersResponse" - }, - "parameterOrder": [ - "accountId", - "clientAccountId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "clientAccountId": { - "required": true, - "type": "string", - "location": "path", - "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." - }, - "pageToken": { - "type": "string", - "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." - }, - "accountId": { - "required": true, - "type": "string", - "location": "path", - "description": "Numerical account ID of the sponsor buyer of the client to list users for.\n(required)", - "format": "int64" - }, - "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" - } - }, - "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users", - "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users", - "id": "adexchangebuyer2.accounts.clients.users.list" - }, - "get": { - "description": "Retrieves an existing client user.", - "response": { - "$ref": "ClientUser" - }, - "parameterOrder": [ - "accountId", - "clientAccountId", - "userId" - ], - "httpMethod": "GET", - "parameters": { - "userId": { - "location": "path", - "description": "Numerical identifier of the user to retrieve. (required)", - "format": "int64", - "required": true, - "type": "string" - }, - "accountId": { - "required": true, - "type": "string", - "location": "path", - "description": "Numerical account ID of the client's sponsor buyer. (required)", - "format": "int64" - }, - "clientAccountId": { - "location": "path", - "description": "Numerical account ID of the client buyer\nthat the user to 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}/users/{userId}", - "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users/{userId}", - "id": "adexchangebuyer2.accounts.clients.users.get" - }, - "update": { - "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" - }, - "response": { - "$ref": "ClientUser" - }, - "parameterOrder": [ - "accountId", - "clientAccountId", - "userId" - ], - "httpMethod": "PUT", - "parameters": { - "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" - }, - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - } - } - } - } - }, - "creatives": { - "methods": { - "list": { - "description": "Lists creatives.", - "response": { - "$ref": "ListCreativesResponse" - }, - "parameterOrder": [ - "accountId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "query": { - "type": "string", - "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'" - }, - "pageToken": { - "type": "string", - "location": "query", - "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." - }, - "accountId": { - "location": "path", - "description": "The account to list the creatives from.\nSpecify \"-\" to list all creatives the current user has access to.", - "required": true, - "type": "string" - }, - "pageSize": { - "location": "query", - "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" - } - }, - "flatPath": "v2beta1/accounts/{accountId}/creatives", - "path": "v2beta1/accounts/{accountId}/creatives", - "id": "adexchangebuyer2.accounts.creatives.list" - }, - "create": { - "request": { - "$ref": "Creative" - }, - "description": "Creates a creative.", - "response": { - "$ref": "Creative" - }, - "parameterOrder": [ - "accountId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "duplicateIdMode": { - "type": "string", - "location": "query", - "enum": [ - "NO_DUPLICATES", - "FORCE_ENABLE_DUPLICATE_IDS" - ], - "description": "Indicates if multiple creatives can share an ID or not. Default is\nNO_DUPLICATES (one ID per creative)." - }, - "accountId": { - "required": true, - "type": "string", - "location": "path", - "description": "The account that this creative belongs to.\nCan be used to filter the response of the\ncreatives.list\nmethod." - } - }, - "flatPath": "v2beta1/accounts/{accountId}/creatives", - "path": "v2beta1/accounts/{accountId}/creatives", - "id": "adexchangebuyer2.accounts.creatives.create" - }, - "stopWatching": { - "request": { - "$ref": "StopWatchingCreativeRequest" - }, - "description": "Stops watching a creative. Will stop push notifications being sent to the\ntopics when the creative changes status.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "accountId", - "creativeId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "creativeId": { - "required": true, - "type": "string", - "location": "path", - "description": "The creative ID of the creative to stop notifications for.\nSpecify \"-\" to specify stopping account level notifications." - }, - "accountId": { - "location": "path", - "description": "The account of the creative to stop notifications for.", - "required": true, - "type": "string" - } - }, - "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}:stopWatching", - "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}:stopWatching", - "id": "adexchangebuyer2.accounts.creatives.stopWatching" - }, - "get": { - "response": { - "$ref": "Creative" - }, - "parameterOrder": [ - "accountId", - "creativeId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "accountId": { - "location": "path", - "description": "The account the creative belongs to.", - "required": true, - "type": "string" - }, - "creativeId": { - "required": true, - "type": "string", - "location": "path", - "description": "The ID of the creative to retrieve." - } - }, - "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}", - "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}", - "id": "adexchangebuyer2.accounts.creatives.get", - "description": "Gets a creative." - }, - "watch": { - "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}:watch", - "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}:watch", - "id": "adexchangebuyer2.accounts.creatives.watch", - "description": "Watches a creative. Will result in push notifications being sent to the\ntopic when the creative changes status.", - "request": { - "$ref": "WatchCreativeRequest" - }, - "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" - ] - }, - "update": { - "response": { - "$ref": "Creative" - }, - "parameterOrder": [ - "accountId", - "creativeId" - ], - "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "creativeId": { - "required": true, - "type": "string", - "location": "path", - "description": "The buyer-defined creative ID of this creative.\nCan be used to filter the response of the\ncreatives.list\nmethod." - }, - "accountId": { - "required": true, - "type": "string", - "location": "path", - "description": "The account that this creative belongs to.\nCan be used to filter the response of the\ncreatives.list\nmethod." - } - }, - "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}", - "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}", - "id": "adexchangebuyer2.accounts.creatives.update", - "request": { - "$ref": "Creative" - }, - "description": "Updates a creative." - } - }, - "resources": { - "dealAssociations": { - "methods": { - "list": { - "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations", - "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations", - "id": "adexchangebuyer2.accounts.creatives.dealAssociations.list", - "description": "List all creative-deal associations.", - "response": { - "$ref": "ListDealAssociationsResponse" - }, - "parameterOrder": [ - "accountId", - "creativeId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "query": { - "type": "string", - "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'" - }, - "creativeId": { - "location": "path", - "description": "The creative ID to list the associations from.\nSpecify \"-\" to list all creatives under the above account.", - "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\nListDealAssociationsResponse.next_page_token\nreturned from the previous call to 'ListDealAssociations' method.", - "type": "string" - }, - "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": { - "location": "query", - "description": "Requested page size. Server may return fewer associations than requested.\nIf unspecified, server will pick an appropriate default.", - "format": "int32", - "type": "integer" - } - } - }, - "add": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "accountId", - "creativeId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ], - "parameters": { - "creativeId": { - "location": "path", - "description": "The ID of the creative associated with the deal.", - "required": true, - "type": "string" - }, - "accountId": { - "location": "path", - "description": "The account the creative belongs to.", - "required": true, - "type": "string" - } - }, - "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations:add", - "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations:add", - "id": "adexchangebuyer2.accounts.creatives.dealAssociations.add", - "request": { - "$ref": "AddDealAssociationRequest" - }, - "description": "Associate an existing deal with a creative." - }, - "remove": { - "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" - }, - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "accountId", - "creativeId" - ], - "httpMethod": "POST", - "parameters": { - "creativeId": { - "required": true, - "type": "string", - "location": "path", - "description": "The ID of the creative associated with the deal." - }, - "accountId": { - "required": true, - "type": "string", - "location": "path", - "description": "The account the creative belongs to." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/adexchange.buyer" - ] - } - } - } - } + "version_module": true, + "schemas": { + "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", + "type": "string" } - } - } - }, - "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": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "callback": { - "type": "string", - "location": "query", - "description": "JSONP" - }, - "$.xgafv": { - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format." + }, + "id": "RealtimeTimeRange" }, - "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." + "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": { + "bidCount": { + "$ref": "MetricValue", + "description": "The number of bids with the specified status." + }, + "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." + } + } }, - "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." + "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", + "properties": { + "rowDimensions": { + "description": "The values of all dimensions associated with metric values in this row.", + "$ref": "RowDimensions" + }, + "bidCount": { + "description": "The number of bids with the specified detail.", + "$ref": "MetricValue" + }, + "detailId": { + "description": "The ID of the detail. The associated value can be looked up in the\ndictionary file corresponding to the DetailType in the response message.", + "format": "int32", + "type": "integer" + } + }, + "id": "FilteredBidDetailRow" }, - "access_token": { - "type": "string", - "location": "query", - "description": "OAuth access token." + "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": { + "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." + } + }, + "id": "AbsoluteDateRange" }, - "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." + "AddDealAssociationRequest": { + "id": "AddDealAssociationRequest", + "description": "A request for associating a deal and a creative.", + "type": "object", + "properties": { + "association": { + "description": "The association between a creative and a deal that should be added.", + "$ref": "CreativeDealAssociation" + } + } }, - "pp": { - "type": "boolean", - "default": "true", - "location": "query", - "description": "Pretty-print response." + "WatchCreativeRequest": { + "id": "WatchCreativeRequest", + "description": "A request for watching changes to creative Status.", + "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" + } + } }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" + "TimeInterval": { + "id": "TimeInterval", + "description": "An interval of time, with an absolute start and end.", + "type": "object", + "properties": { + "startTime": { + "description": "The timestamp marking the start of the range (inclusive) for which data is\nincluded.", + "format": "google-datetime", + "type": "string" + }, + "endTime": { + "description": "The timestamp marking the end of the range (exclusive) for which data is\nincluded.", + "format": "google-datetime", + "type": "string" + } + } }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - } - }, - "version": "v2beta1", - "baseUrl": "https://adexchangebuyer.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Accesses the latest features for managing Ad Exchange accounts, Real-Time Bidding configurations and auction metrics, and Marketplace programmatic deals.", - "servicePath": "", - "basePath": "", - "id": "adexchangebuyer2:v2beta1", - "revision": "20180507", - "documentationLink": "https://developers.google.com/ad-exchange/buyer-rest/reference/rest/", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "SecurityContext": { + "FilteredBidCreativeRow": { + "description": "The number of filtered bids with the specified dimension values that have the\nspecified creative.", "type": "object", "properties": { - "securities": { - "type": "array", - "items": { - "enum": [ - "INSECURE", - "SSL" - ], - "type": "string" - }, - "enumDescriptions": [ - "Matches impressions that require insecure compatibility.", - "Matches impressions that require SSL compatibility." - ], - "description": "The security types in this context." + "rowDimensions": { + "$ref": "RowDimensions", + "description": "The values of all dimensions associated with metric values in this row." + }, + "bidCount": { + "$ref": "MetricValue", + "description": "The number of bids with the specified creative." + }, + "creativeId": { + "description": "The ID of the creative.", + "type": "string" } }, - "id": "SecurityContext", - "description": "@OutputOnly A security context." + "id": "FilteredBidCreativeRow" }, - "HtmlContent": { + "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", "properties": { - "width": { - "type": "integer", - "description": "The width of the HTML snippet in pixels.", - "format": "int32" - }, - "snippet": { - "type": "string", - "description": "The HTML snippet that displays the ad when inserted in the web page." + "durationDays": { + "description": "The number of days in the requested date range. E.g. for a range spanning\ntoday, 1. For a range spanning the last 7 days, 7.", + "format": "int32", + "type": "integer" }, - "height": { - "description": "The height of the HTML snippet in pixels.", + "offsetDays": { + "description": "The end date of the filter set, specified as the number of days before\ntoday. E.g. for a range where the last date is today, 0.", "format": "int32", "type": "integer" } }, - "id": "HtmlContent", - "description": "HTML content for a creative." + "id": "RelativeDateRange" }, - "ListCreativesResponse": { + "ListClientsResponse": { + "id": "ListClientsResponse", "type": "object", "properties": { - "creatives": { - "description": "The list of creatives.", + "clients": { + "description": "The returned list of clients.", "type": "array", "items": { - "$ref": "Creative" + "$ref": "Client" } }, "nextPageToken": { - "description": "A token to retrieve the next page of results.\nPass this value in the\nListCreativesRequest.page_token\nfield in the subsequent call to `ListCreatives` method to retrieve the next\npage of results.", + "description": "A token to retrieve the next page of results.\nPass this value in the\nListClientsRequest.pageToken\nfield in the subsequent call to the\naccounts.clients.list method\nto retrieve the next page of results.", + "type": "string" + } + } + }, + "NativeContent": { + "description": "Native content for a creative.", + "type": "object", + "properties": { + "body": { + "description": "A long description of the ad.", + "type": "string" + }, + "starRating": { + "description": "The app rating in the app store. Must be in the range [0-5].", + "format": "double", + "type": "number" + }, + "videoUrl": { + "description": "The URL to fetch a native video ad.", + "type": "string" + }, + "clickLinkUrl": { + "description": "The URL that the browser/SDK will load when the user clicks the ad.", + "type": "string" + }, + "logo": { + "description": "A smaller image, for the advertiser's logo.", + "$ref": "Image" + }, + "priceDisplayText": { + "description": "The price of the promoted app including currency info.", + "type": "string" + }, + "image": { + "description": "A large image.", + "$ref": "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": { + "description": "The app icon, for app download ads.", + "$ref": "Image" + }, + "callToAction": { + "description": "A label for the button that the user is supposed to click.", "type": "string" } }, - "id": "ListCreativesResponse", - "description": "A response for listing creatives." + "id": "NativeContent" }, - "ListFilteredBidRequestsResponse": { + "ListBidResponsesWithoutBidsResponse": { + "id": "ListBidResponsesWithoutBidsResponse", + "description": "Response message for listing all reasons that bid responses were considered\nto have no applicable bids.", "type": "object", "properties": { - "calloutStatusRows": { + "bidResponseWithoutBidsStatusRows": { + "description": "List of rows, with counts of bid responses without bids aggregated by\nstatus.", "type": "array", "items": { - "$ref": "CalloutStatusRow" - }, - "description": "List of rows, with counts of filtered bid requests aggregated by callout\nstatus." + "$ref": "BidResponseWithoutBidsStatusRow" + } }, "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.", + "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" + } + } + }, + "ServingContext": { + "id": "ServingContext", + "description": "The serving context for this restriction.", + "type": "object", + "properties": { + "securityType": { + "$ref": "SecurityContext", + "description": "Matches impressions for a particular security type." + }, + "platform": { + "$ref": "PlatformContext", + "description": "Matches impressions coming from a particular platform." + }, + "location": { + "description": "Matches impressions coming from users *or* publishers in a specific\nlocation.", + "$ref": "LocationContext" + }, + "auctionType": { + "$ref": "AuctionContext", + "description": "Matches impressions for a particular auction type." + }, + "all": { + "enumDescriptions": [ + "A simple context." + ], + "enum": [ + "SIMPLE_CONTEXT" + ], + "description": "Matches all contexts.", + "type": "string" + }, + "appType": { + "description": "Matches impressions for a particular app type.", + "$ref": "AppContext" + } + } + }, + "Image": { + "description": "An image resource. You may provide a larger image than was requested,\nso long as the aspect ratio is preserved.", + "type": "object", + "properties": { + "url": { + "description": "The URL of the image.", "type": "string" + }, + "height": { + "description": "Image height in pixels.", + "format": "int32", + "type": "integer" + }, + "width": { + "description": "Image width in pixels.", + "format": "int32", + "type": "integer" } }, - "id": "ListFilteredBidRequestsResponse", - "description": "Response message for listing all reasons that bid requests were filtered and\nnot sent to the buyer." + "id": "Image" }, - "ListBidMetricsResponse": { - "description": "Response message for listing the metrics that are measured in number of bids.", + "ListFilterSetsResponse": { + "description": "Response message for listing filter sets.", "type": "object", "properties": { - "bidMetricsRows": { - "description": "List of rows, each containing a set of bid metrics.", + "filterSets": { + "description": "The filter sets belonging to the buyer.", "type": "array", "items": { - "$ref": "BidMetricsRow" + "$ref": "FilterSet" } }, "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.", + "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" } }, - "id": "ListBidMetricsResponse" + "id": "ListFilterSetsResponse" }, - "Reason": { - "description": "A specific filtering status and how many times it occurred.", + "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", "properties": { + "impressionCount": { + "description": "The number of impressions for which there was a bid response with the\nspecified status.", + "$ref": "MetricValue" + }, "status": { - "type": "integer", - "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" + "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." + ], + "enum": [ + "STATUS_UNSPECIFIED", + "RESPONSES_WITHOUT_BIDS", + "RESPONSES_WITHOUT_BIDS_FOR_ACCOUNT", + "RESPONSES_WITHOUT_BIDS_FOR_DEAL" + ], + "description": "The status specifying why the bid responses were considered to have no\napplicable bids.", + "type": "string" }, - "count": { - "type": "string", - "description": "The number of times the creative was filtered for the status. The\ncount is aggregated across all publishers on the exchange.", - "format": "int64" + "rowDimensions": { + "$ref": "RowDimensions", + "description": "The values of all dimensions associated with metric values in this row." } }, - "id": "Reason" + "id": "BidResponseWithoutBidsStatusRow" }, - "VideoContent": { + "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.", "type": "object", "properties": { - "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.", + "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" }, - "videoUrl": { - "description": "The URL to fetch a video ad.", + "email": { + "description": "The email address to which the invitation is sent. Email\naddresses should be unique among all client users under each sponsor\nbuyer.", + "type": "string" + }, + "clientAccountId": { + "description": "Numerical account ID of the client buyer\nthat the invited user is associated with.\nThe value of this field is ignored in create operations.", + "format": "int64", "type": "string" } }, - "id": "VideoContent", - "description": "Video content for a creative." + "id": "ClientUserInvitation" }, - "ListLosingBidsResponse": { - "description": "Response message for listing all reasons that bids lost in the auction.", + "ListClientUserInvitationsResponse": { "type": "object", "properties": { "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.", + "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" }, - "creativeStatusRows": { - "description": "List of rows, with counts of losing bids aggregated by loss reason (i.e.\ncreative status).", + "invitations": { + "description": "The returned list of client users.", "type": "array", "items": { - "$ref": "CreativeStatusRow" + "$ref": "ClientUserInvitation" } } }, - "id": "ListLosingBidsResponse" + "id": "ListClientUserInvitationsResponse" }, - "ListNonBillableWinningBidsResponse": { - "description": "Response message for listing all reasons for which a buyer was not billed for\na winning bid.", + "ListClientUsersResponse": { "type": "object", "properties": { - "nonBillableWinningBidStatusRows": { - "description": "List of rows, with counts of bids not billed aggregated by reason.", + "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": "NonBillableWinningBidStatusRow" + "$ref": "ClientUser" } - }, - "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" - }, - "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": { - "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." - }, - "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." } }, - "id": "ImpressionMetricsRow" + "id": "ListClientUsersResponse" }, - "AuctionContext": { + "ListCreativeStatusBreakdownByDetailResponse": { + "description": "Response message for listing all details associated with a given filtered bid\nreason.", "type": "object", "properties": { - "auctionTypes": { - "description": "The auction types this restriction applies to.", - "type": "array", - "items": { - "enum": [ - "OPEN_AUCTION", - "DIRECT_DEALS" - ], - "type": "string" - }, + "detailType": { + "description": "The type of detail that the detail IDs represent.", + "type": "string", "enumDescriptions": [ - "The restriction applies to open auction.", - "The restriction applies to direct deals." + "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" ] - } - }, - "id": "AuctionContext", - "description": "@OutputOnly The auction type the restriction applies to." - }, - "ListImpressionMetricsResponse": { - "description": "Response message for listing the metrics that are measured in number of\nimpressions.", - "type": "object", - "properties": { - "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" }, - "impressionMetricsRows": { - "description": "List of rows, each containing a set of impression metrics.", + "filteredBidDetailRows": { + "description": "List of rows, with counts of bids with a given creative status aggregated\nby detail.", "type": "array", "items": { - "$ref": "ImpressionMetricsRow" + "$ref": "FilteredBidDetailRow" } - } - }, - "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": { - "bidsInAuction": { - "$ref": "MetricValue", - "description": "The number of bids that were permitted to compete in the auction." - }, - "rowDimensions": { - "$ref": "RowDimensions", - "description": "The values of all dimensions associated with metric values in this row." - }, - "viewableImpressions": { - "$ref": "MetricValue", - "description": "The number of bids for which the corresponding impression was viewable (as\ndefined by Active View)." - }, - "impressionsWon": { - "$ref": "MetricValue", - "description": "The number of bids that won an impression." - }, - "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": { - "$ref": "MetricValue", - "description": "The number of bids for which the buyer was billed." + "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" } }, - "id": "BidMetricsRow" + "id": "ListCreativeStatusBreakdownByDetailResponse" }, - "ListBidResponseErrorsResponse": { + "LocationContext": { + "id": "LocationContext", + "description": "@OutputOnly The Geo criteria the restriction applies to.", "type": "object", "properties": { - "calloutStatusRows": { - "description": "List of rows, with counts of bid responses aggregated by callout status.", + "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": { - "$ref": "CalloutStatusRow" + "format": "int32", + "type": "integer" } - }, - "nextPageToken": { - "type": "string", - "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." } - }, - "id": "ListBidResponseErrorsResponse", - "description": "Response message for listing all reasons that bid responses resulted in an\nerror." + } }, - "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.", + "PlatformContext": { + "description": "@OutputOnly The type of platform the restriction applies to.", "type": "object", "properties": { - "rowDimensions": { - "$ref": "RowDimensions", - "description": "The values of all dimensions associated with metric values in this row." - }, - "creativeStatusId": { - "description": "The ID of the creative status.\nSee [creative-status-codes](https://developers.google.com/ad-exchange/rtb/downloads/creative-status-codes).", - "format": "int32", - "type": "integer" - }, - "bidCount": { - "$ref": "MetricValue", - "description": "The number of bids with the specified status." + "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": "CreativeStatusRow" + "id": "PlatformContext" }, - "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.", + "MetricValue": { + "id": "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": { - "startTimestamp": { - "type": "string", - "description": "The start timestamp of the real-time RTB metrics aggregation.", - "format": "google-datetime" + "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" } - }, - "id": "RealtimeTimeRange" + } }, - "NonBillableWinningBidStatusRow": { + "ClientUser": { + "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", "properties": { "status": { - "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." + "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": [ - "STATUS_UNSPECIFIED", - "AD_NOT_RENDERED", - "INVALID_IMPRESSION" + "USER_STATUS_UNSPECIFIED", + "PENDING", + "ACTIVE", + "DISABLED" ], - "description": "The status specifying why the winning bids were not billed." + "description": "The status of the client user.", + "type": "string" }, - "rowDimensions": { - "$ref": "RowDimensions", - "description": "The values of all dimensions associated with metric values in this row." + "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" }, - "bidCount": { - "$ref": "MetricValue", - "description": "The number of bids with the specified status." + "email": { + "description": "User's email address. The value of this field\nis ignored in an update operation.", + "type": "string" + }, + "clientAccountId": { + "description": "Numerical account ID of the client buyer\nwith which the user is associated; the\nbuyer must be a client of the current sponsor buyer.\nThe value of this field is ignored in an update operation.", + "format": "int64", + "type": "string" } - }, - "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." + } }, - "FilteredBidDetailRow": { + "CreativeDealAssociation": { + "description": "The association between a creative and a deal.", "type": "object", "properties": { - "rowDimensions": { - "$ref": "RowDimensions", - "description": "The values of all dimensions associated with metric values in this row." + "accountId": { + "description": "The account the creative belongs to.", + "type": "string" }, - "bidCount": { - "$ref": "MetricValue", - "description": "The number of bids with the specified detail." + "creativeId": { + "description": "The ID of the creative associated with the deal.", + "type": "string" }, - "detailId": { - "description": "The ID of the detail. The associated value can be looked up in the\ndictionary file corresponding to the DetailType in the response message.", - "format": "int32", - "type": "integer" + "dealsId": { + "description": "The externalDealId for the deal associated with the creative.", + "type": "string" } }, - "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." + "id": "CreativeDealAssociation" }, - "AbsoluteDateRange": { + "FilteringStats": { + "id": "FilteringStats", + "description": "@OutputOnly Filtering reasons for this creative during a period of a single\nday (from midnight to midnight Pacific).", "type": "object", "properties": { - "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." + "reasons": { + "description": "The set of filtering reasons for this date.", + "type": "array", + "items": { + "$ref": "Reason" + } }, - "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." - } - }, - "id": "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." - }, - "AddDealAssociationRequest": { - "type": "object", - "properties": { - "association": { - "$ref": "CreativeDealAssociation", - "description": "The association between a creative and a deal that should be added." - } - }, - "id": "AddDealAssociationRequest", - "description": "A request for associating a deal and a creative." - }, - "WatchCreativeRequest": { - "type": "object", - "properties": { - "topic": { - "type": "string", - "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." + "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.", + "$ref": "Date" } - }, - "id": "WatchCreativeRequest", - "description": "A request for watching changes to creative Status." + } }, - "TimeInterval": { + "Creative": { + "description": "A creative and its classification data.\n\nNext ID: 35", "type": "object", "properties": { - "endTime": { + "html": { + "description": "An HTML creative.", + "$ref": "HtmlContent" + }, + "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.", + "type": "string" + }, + "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" + } + }, + "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.", "type": "string", - "description": "The timestamp marking the end of the range (exclusive) for which data is\nincluded.", - "format": "google-datetime" + "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" + ] }, - "startTime": { - "description": "The timestamp marking the start of the range (inclusive) for which data is\nincluded.", - "format": "google-datetime", + "advertiserName": { + "description": "The name of the company being advertised in the creative.", + "type": "string" + }, + "detectedDomains": { + "description": "@OutputOnly\nThe detected domains for this creative.", + "type": "array", + "items": { + "type": "string" + } + }, + "detectedAdvertiserIds": { + "description": "@OutputOnly Detected advertiser IDs, if any.", + "type": "array", + "items": { + "format": "int64", + "type": "string" + } + }, + "filteringStats": { + "$ref": "FilteringStats", + "description": "@OutputOnly The filtering stats for this creative." + }, + "attributes": { + "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." + ], + "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", + "items": { + "type": "string", + "enum": [ + "ATTRIBUTE_UNSPECIFIED", + "IS_TAGGED", + "IS_COOKIE_TARGETED", + "IS_USER_INTEREST_TARGETED", + "EXPANDING_DIRECTION_NONE", + "EXPANDING_DIRECTION_UP", + "EXPANDING_DIRECTION_DOWN", + "EXPANDING_DIRECTION_LEFT", + "EXPANDING_DIRECTION_RIGHT", + "EXPANDING_DIRECTION_UP_LEFT", + "EXPANDING_DIRECTION_UP_RIGHT", + "EXPANDING_DIRECTION_DOWN_LEFT", + "EXPANDING_DIRECTION_DOWN_RIGHT", + "EXPANDING_DIRECTION_UP_OR_DOWN", + "EXPANDING_DIRECTION_LEFT_OR_RIGHT", + "EXPANDING_DIRECTION_ANY_DIAGONAL", + "EXPANDING_ACTION_ROLLOVER_TO_EXPAND", + "INSTREAM_VAST_VIDEO_TYPE_VPAID_FLASH", + "RICH_MEDIA_CAPABILITY_TYPE_MRAID", + "RICH_MEDIA_CAPABILITY_TYPE_SSL", + "RICH_MEDIA_CAPABILITY_TYPE_INTERSTITIAL", + "NATIVE_ELIGIBILITY_ELIGIBLE", + "NATIVE_ELIGIBILITY_NOT_ELIGIBLE", + "RENDERING_SIZELESS_ADX" + ] + } + }, + "apiUpdateTime": { + "description": "@OutputOnly The last update timestamp of the creative via API.", + "format": "google-datetime", "type": "string" - } - }, - "id": "TimeInterval", - "description": "An interval of time, with an absolute start and end." - }, - "FilteredBidCreativeRow": { - "description": "The number of filtered bids with the specified dimension values that have the\nspecified creative.", - "type": "object", - "properties": { - "rowDimensions": { - "$ref": "RowDimensions", - "description": "The values of all dimensions associated with metric values in this row." }, - "bidCount": { - "$ref": "MetricValue", - "description": "The number of bids with the specified creative." + "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", + "items": { + "type": "string" + } }, "creativeId": { - "description": "The ID of the creative.", + "description": "The buyer-defined creative ID of this creative.\nCan be used to filter the response of the\ncreatives.list\nmethod.", "type": "string" - } - }, - "id": "FilteredBidCreativeRow" - }, - "RelativeDateRange": { - "type": "object", - "properties": { - "offsetDays": { - "description": "The end date of the filter set, specified as the number of days before\ntoday. E.g. for a range where the last date is today, 0.", - "format": "int32", - "type": "integer" }, - "durationDays": { - "description": "The number of days in the requested date range. E.g. for a range spanning\ntoday, 1. For a range spanning the last 7 days, 7.", - "format": "int32", - "type": "integer" - } - }, - "id": "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" - }, - "NativeContent": { - "description": "Native content for a creative.", - "type": "object", - "properties": { - "image": { - "$ref": "Image", - "description": "A large image." + "accountId": { + "description": "The account that this creative belongs to.\nCan be used to filter the response of the\ncreatives.list\nmethod.", + "type": "string" }, - "clickTrackingUrl": { - "type": "string", - "description": "The URL to use for click tracking." + "native": { + "$ref": "NativeContent", + "description": "A native creative." }, - "advertiserName": { - "description": "The name of the advertiser or sponsor, to be displayed in the ad creative.", - "type": "string" + "servingRestrictions": { + "description": "@OutputOnly The granular status of this ad in specific contexts.\nA context here relates to where something ultimately serves (for example,\na physical location, a platform, an HTTPS vs HTTP request, or the type\nof auction).", + "type": "array", + "items": { + "$ref": "ServingRestriction" + } }, - "storeUrl": { - "type": "string", - "description": "The URL to the app store to purchase/download the promoted app." + "video": { + "description": "A video creative.", + "$ref": "VideoContent" }, - "headline": { - "type": "string", - "description": "A short title for the ad." + "agencyId": { + "description": "The agency ID for this creative.", + "format": "int64", + "type": "string" }, - "appIcon": { - "$ref": "Image", - "description": "The app icon, for app download ads." + "clickThroughUrls": { + "description": "The set of destination URLs for the creative.", + "type": "array", + "items": { + "type": "string" + } }, - "callToAction": { - "type": "string", - "description": "A label for the button that the user is supposed to click." + "adChoicesDestinationUrl": { + "description": "The link to AdChoices destination page.", + "type": "string" }, - "body": { - "type": "string", - "description": "A long description of the ad." + "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", + "items": { + "format": "int32", + "type": "integer" + } }, - "starRating": { - "description": "The app rating in the app store. Must be in the range [0-5].", - "format": "double", - "type": "number" + "restrictedCategories": { + "description": "All restricted categories for the ads that may be shown from this creative.", + "type": "array", + "items": { + "enum": [ + "NO_RESTRICTED_CATEGORIES", + "ALCOHOL" + ], + "type": "string" + }, + "enumDescriptions": [ + "The ad has no restricted categories", + "The alcohol restricted category." + ] }, - "videoUrl": { - "type": "string", - "description": "The URL to fetch a native video ad." + "corrections": { + "description": "@OutputOnly Shows any corrections that were applied to this creative.", + "type": "array", + "items": { + "$ref": "Correction" + } }, - "clickLinkUrl": { - "description": "The URL that the browser/SDK will load when the user clicks the ad.", - "type": "string" + "version": { + "description": "@OutputOnly The version of this creative.", + "format": "int32", + "type": "integer" }, - "logo": { - "$ref": "Image", - "description": "A smaller image, for the advertiser's logo." + "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" + } }, - "priceDisplayText": { - "description": "The price of the promoted app including currency info.", - "type": "string" + "impressionTrackingUrls": { + "description": "The set of URLs to be called to record an impression.", + "type": "array", + "items": { + "type": "string" + } } }, - "id": "NativeContent" + "id": "Creative" }, - "ListClientsResponse": { + "RemoveDealAssociationRequest": { + "description": "A request for removing the association between a deal and a creative.", "type": "object", "properties": { - "nextPageToken": { - "description": "A token to retrieve the next page of results.\nPass this value in the\nListClientsRequest.pageToken\nfield in the subsequent call to the\naccounts.clients.list method\nto retrieve the next page of results.", - "type": "string" - }, - "clients": { - "type": "array", - "items": { - "$ref": "Client" - }, - "description": "The returned list of clients." + "association": { + "description": "The association between a creative and a deal that should be removed.", + "$ref": "CreativeDealAssociation" } }, - "id": "ListClientsResponse" + "id": "RemoveDealAssociationRequest" }, - "ListBidResponsesWithoutBidsResponse": { + "ListCreativeStatusBreakdownByCreativeResponse": { + "id": "ListCreativeStatusBreakdownByCreativeResponse", + "description": "Response message for listing all creatives associated with a given filtered\nbid reason.", "type": "object", "properties": { - "bidResponseWithoutBidsStatusRows": { - "type": "array", - "items": { - "$ref": "BidResponseWithoutBidsStatusRow" - }, - "description": "List of rows, with counts of bid responses without bids aggregated by\nstatus." - }, "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.", + "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": "ListBidResponsesWithoutBidsResponse", - "description": "Response message for listing all reasons that bid responses were considered\nto have no applicable bids." + } }, - "ServingContext": { - "description": "The serving context for this restriction.", + "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.", "type": "object", "properties": { - "appType": { - "$ref": "AppContext", - "description": "Matches impressions for a particular app type." + "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" }, - "securityType": { - "$ref": "SecurityContext", - "description": "Matches impressions for a particular security type." + "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" }, - "platform": { - "$ref": "PlatformContext", - "description": "Matches impressions coming from a particular platform." + "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" }, - "location": { - "$ref": "LocationContext", - "description": "Matches impressions coming from users *or* publishers in a specific\nlocation." + "status": { + "description": "The status of the client buyer.", + "type": "string", + "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" + ] }, - "auctionType": { - "$ref": "AuctionContext", - "description": "Matches impressions for a particular auction type." + "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" }, - "all": { + "entityType": { + "description": "The type of the client entity: `ADVERTISER`, `BRAND`, or `AGENCY`.", "type": "string", "enumDescriptions": [ - "A simple context." + "A placeholder for an undefined client entity type. Should not be used.", + "An advertiser.", + "A brand.", + "An advertising agency." ], "enum": [ - "SIMPLE_CONTEXT" - ], - "description": "Matches all contexts." - } - }, - "id": "ServingContext" - }, - "Image": { - "description": "An image resource. You may provide a larger image than was requested,\nso long as the aspect ratio is preserved.", - "type": "object", - "properties": { - "height": { - "type": "integer", - "description": "Image height in pixels.", - "format": "int32" + "ENTITY_TYPE_UNSPECIFIED", + "ADVERTISER", + "BRAND", + "AGENCY" + ] }, - "width": { - "description": "Image width in pixels.", - "format": "int32", - "type": "integer" + "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" }, - "url": { + "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`.", "type": "string", - "description": "The URL of the image." - } - }, - "id": "Image" - }, - "ListFilterSetsResponse": { - "type": "object", - "properties": { - "filterSets": { - "type": "array", - "items": { - "$ref": "FilterSet" - }, - "description": "The filter sets belonging to the buyer." + "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." + ], + "enum": [ + "CLIENT_ROLE_UNSPECIFIED", + "CLIENT_DEAL_VIEWER", + "CLIENT_DEAL_NEGOTIATOR", + "CLIENT_DEAL_APPROVER" + ] }, - "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." + "visibleToSeller": { + "description": "Whether the client buyer will be visible to sellers.", + "type": "boolean" } }, - "id": "ListFilterSetsResponse", - "description": "Response message for listing filter sets." + "id": "Client" }, - "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.", + "Correction": { + "description": "@OutputOnly Shows any corrections that were applied to this creative.", "type": "object", "properties": { - "status": { + "type": { + "description": "The type of correction that was applied to the creative.", "type": "string", "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." + "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": [ - "STATUS_UNSPECIFIED", - "RESPONSES_WITHOUT_BIDS", - "RESPONSES_WITHOUT_BIDS_FOR_ACCOUNT", - "RESPONSES_WITHOUT_BIDS_FOR_DEAL" - ], - "description": "The status specifying why the bid responses were considered to have no\napplicable bids." + "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" + ] }, - "rowDimensions": { - "$ref": "RowDimensions", - "description": "The values of all dimensions associated with metric values in this row." + "contexts": { + "description": "The contexts for the correction.", + "type": "array", + "items": { + "$ref": "ServingContext" + } }, - "impressionCount": { - "$ref": "MetricValue", - "description": "The number of impressions for which there was a bid response with the\nspecified status." + "details": { + "description": "Additional details about what was corrected.", + "type": "array", + "items": { + "type": "string" + } } }, - "id": "BidResponseWithoutBidsStatusRow" + "id": "Correction" }, - "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.", + "FilterSet": { + "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", "properties": { - "email": { - "description": "The email address to which the invitation is sent. Email\naddresses should be unique among all client users under each sponsor\nbuyer.", - "type": "string" - }, - "clientAccountId": { - "description": "Numerical account ID of the client buyer\nthat the invited user is associated with.\nThe value of this field is ignored in create operations.", - "format": "int64", + "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" }, - "invitationId": { - "type": "string", - "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" - } - }, - "id": "ClientUserInvitation" - }, - "ListClientUserInvitationsResponse": { - "type": "object", - "properties": { - "nextPageToken": { - "description": "A token to retrieve the next page of results.\nPass this value in the\nListClientUserInvitationsRequest.pageToken\nfield in the subsequent call to the\nclients.invitations.list\nmethod to retrieve the next\npage of results.", - "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." }, - "invitations": { - "description": "The returned list of client users.", + "platforms": { + "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", "items": { - "$ref": "ClientUserInvitation" + "enum": [ + "PLATFORM_UNSPECIFIED", + "DESKTOP", + "TABLET", + "MOBILE" + ], + "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.", + }, + "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" }, - "users": { - "description": "The returned list of client users.", + "sellerNetworkIds": { + "description": "For Ad Exchange buyers only.\nThe 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.", "type": "array", "items": { - "$ref": "ClientUser" + "format": "int32", + "type": "integer" } - } - }, - "id": "ListClientUsersResponse" - }, - "ListCreativeStatusBreakdownByDetailResponse": { - "type": "object", - "properties": { - "detailType": { - "enum": [ - "DETAIL_TYPE_UNSPECIFIED", - "CREATIVE_ATTRIBUTE", - "VENDOR", - "SENSITIVE_CATEGORY", - "PRODUCT_CATEGORY", - "DISAPPROVAL_REASON" + }, + "absoluteDateRange": { + "description": "An absolute date range, defined by a start date and an end date.\nInterpreted relative to Pacific time zone.", + "$ref": "AbsoluteDateRange" + }, + "environment": { + "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." ], - "description": "The type of detail that the detail IDs represent.", + "enum": [ + "ENVIRONMENT_UNSPECIFIED", + "WEB", + "APP" + ] + }, + "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": { + "description": "The granularity of time intervals if a time series breakdown is desired;\noptional.", "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)." + "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." + ], + "enum": [ + "TIME_SERIES_GRANULARITY_UNSPECIFIED", + "HOURLY", + "DAILY" ] }, - "filteredBidDetailRows": { - "description": "List of rows, with counts of bids with a given creative status aggregated\nby detail.", + "publisherIdentifiers": { + "description": "For Exchange Bidding buyers only.\nThe list of publisher identifiers on which to filter; may be empty.\nThe filters represented by multiple publisher identifiers are ORed\ntogether.", "type": "array", "items": { - "$ref": "FilteredBidDetailRow" + "type": "string" } }, - "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" - } - }, - "id": "ListCreativeStatusBreakdownByDetailResponse", - "description": "Response message for listing all details associated with a given filtered bid\nreason." - }, - "LocationContext": { - "type": "object", - "properties": { - "geoCriteriaIds": { - "type": "array", - "items": { - "type": "integer", - "format": "int32" - }, - "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." - } - }, - "id": "LocationContext", - "description": "@OutputOnly The Geo criteria the restriction applies to." - }, - "PlatformContext": { - "type": "object", - "properties": { - "platforms": { + "realtimeTimeRange": { + "description": "An open-ended realtime time range, defined by the aggregation start\ntimestamp.", + "$ref": "RealtimeTimeRange" + }, + "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." + ], + "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": { + "type": "string", "enum": [ - "DESKTOP", - "ANDROID", - "IOS" - ], - "type": "string" - }, - "enumDescriptions": [ - "Desktop platform.", - "Android platform.", - "iOS platform." - ], - "description": "The platforms this restriction applies to." - } - }, - "id": "PlatformContext", - "description": "@OutputOnly The type of platform the restriction applies to." - }, - "MetricValue": { - "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" + "FORMAT_UNSPECIFIED", + "NATIVE_DISPLAY", + "NATIVE_VIDEO", + "NON_NATIVE_DISPLAY", + "NON_NATIVE_VIDEO" + ] + } } - }, - "id": "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)." + } }, - "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.", + "ListDealAssociationsResponse": { + "id": "ListDealAssociationsResponse", + "description": "A response for listing creative and deal associations", "type": "object", "properties": { - "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" - }, - "status": { - "type": "string", - "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." + "associations": { + "description": "The list of associations.", + "type": "array", + "items": { + "$ref": "CreativeDealAssociation" + } }, - "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", + "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" - }, - "email": { - "type": "string", - "description": "User's email address. The value of this field\nis ignored in an update operation." } - }, - "id": "ClientUser" + } }, - "CreativeDealAssociation": { + "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", "properties": { - "creativeId": { - "type": "string", - "description": "The ID of the creative associated with the deal." + "impressionCount": { + "$ref": "MetricValue", + "description": "The number of impressions for which there was a bid request or bid response\nwith the specified callout status." }, - "dealsId": { - "description": "The externalDealId for the deal associated with the creative.", - "type": "string" + "rowDimensions": { + "description": "The values of all dimensions associated with metric values in this row.", + "$ref": "RowDimensions" }, - "accountId": { - "description": "The account the creative belongs to.", - "type": "string" + "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" } }, - "id": "CreativeDealAssociation", - "description": "The association between a creative and a deal." + "id": "CalloutStatusRow" }, - "FilteringStats": { - "description": "@OutputOnly Filtering reasons for this creative during a period of a single\nday (from midnight to midnight Pacific).", + "Disapproval": { + "description": "@OutputOnly The reason and details for a disapproval.", "type": "object", "properties": { - "reasons": { + "reason": { + "enumDescriptions": [ + "The length of the image animation is longer than allowed.", + "The click through URL doesn't work properly.", + "Something is wrong with the creative itself.", + "The ad makes a fourth party call to an unapproved vendor.", + "The ad targets consumers using remarketing lists and/or collects\ndata for subsequent use in retargeting, but does not correctly declare\nthat use.", + "Clicking on the ad leads to an error page.", + "The ad size when rendered does not match the declaration.", + "Ads with a white background require a border, which was missing.", + "The creative attempts to set cookies from a fourth party that is not\ncertified.", + "The creative sets an LSO object.", + "The ad serves a blank.", + "The ad uses rotation, but not all destination URLs were declared.", + "There is a problem with the way the click macro is used.", + "The ad technology declaration is not accurate.", + "The actual destination URL does not match the declared destination URL.", + "The declared expanding direction does not match the actual direction.", + "The ad does not expand in a supported direction.", + "The ad uses an expandable vendor that is not supported.", + "There was an issue with the expandable ad.", + "The ad uses a video vendor that is not supported.", + "The length of the video ad is not supported.", + "The format of the video ad is not supported.", + "There was an issue with the video ad.", + "The landing page does not conform to Ad Exchange policy.", + "The ad or the landing page may contain malware.", + "The ad contains adult images or video content.", + "The ad contains text that is unclear or inaccurate.", + "The ad promotes counterfeit designer goods.", + "The ad causes a popup window to appear.", + "The creative does not follow policies set for the RTB protocol.", + "The ad contains a URL that uses a numeric IP address for the domain.", + "The ad or landing page contains unacceptable content because it initiated\na software or executable download.", + "The ad set an unauthorized cookie on a Google domain.", + "Flash content found when no flash was declared.", + "SSL support declared but not working correctly.", + "Rich Media - Direct Download in Ad (ex. PDF download).", + "Maximum download size exceeded.", + "Bad Destination URL: Site Not Crawlable.", + "Bad URL: Legal disapproval.", + "Pharmaceuticals, Gambling, Alcohol not allowed and at least one was\ndetected.", + "Dynamic DNS at Destination URL.", + "Poor Image / Video Quality.", + "For example, Image Trick to Click.", + "Incorrect Image Layout.", + "Irrelevant Image / Video.", + "Broken back button.", + "Misleading/Inaccurate claims in ads.", + "Restricted Products.", + "Unacceptable content. For example, malware.", + "The ad automatically redirects to the destination site without a click,\nor reports a click when none were made.", + "The ad uses URL protocols that do not exist or are not allowed on AdX.", + "Restricted content (for example, alcohol) was found in the ad but not\ndeclared.", + "Violation of the remarketing list policy.", + "The destination site's robot.txt file prevents it from being crawled.", + "Click to download must link to an app.", + "A review extension must be an accurate review.", + "Sexually explicit content.", + "The ad tries to gain an unfair traffic advantage.", + "The ad tries to circumvent Google's advertising systems.", + "The ad promotes dangerous knives.", + "The ad promotes explosives.", + "The ad promotes guns & parts.", + "The ad promotes recreational drugs/services & related equipment.", + "The ad promotes tobacco products/services & related equipment.", + "The ad promotes weapons.", + "The ad is unclear or irrelevant to the destination site.", + "The ad does not meet professional standards.", + "The promotion is unnecessarily difficult to navigate.", + "Violation of Google's policy for interest-based ads.", + "Misuse of personal information.", + "Omission of relevant information.", + "Unavailable promotions.", + "Misleading or unrealistic promotions.", + "Offensive or inappropriate content.", + "Capitalizing on sensitive events.", + "Shocking content.", + "Products & Services that enable dishonest behavior.", + "The ad does not meet technical requirements.", + "Restricted political content.", + "Unsupported content.", + "Invalid bidding method.", + "Video length exceeds limits.", + "Unacceptable content: Japanese healthcare.", + "Online pharmacy ID required.", + "Unacceptable content: Abortion.", + "Unacceptable content: Birth control.", + "Restricted in China.", + "Unacceptable content: Korean healthcare.", + "Non-family safe or adult content.", + "Clinical trial recruitment.", + "Maximum number of HTTP calls exceeded.", + "Maximum number of cookies exceeded.", + "Financial service ad does not adhere to specifications.", + "Flash content was found in an unsupported context.", + "Misuse by an Open Measurement SDK script.", + "Use of an Open Measurement SDK vendor not on approved whitelist.", + "Unacceptable landing page." + ], + "enum": [ + "LENGTH_OF_IMAGE_ANIMATION", + "BROKEN_URL", + "MEDIA_NOT_FUNCTIONAL", + "INVALID_FOURTH_PARTY_CALL", + "INCORRECT_REMARKETING_DECLARATION", + "LANDING_PAGE_ERROR", + "AD_SIZE_DOES_NOT_MATCH_AD_SLOT", + "NO_BORDER", + "FOURTH_PARTY_BROWSER_COOKIES", + "LSO_OBJECTS", + "BLANK_CREATIVE", + "DESTINATION_URLS_UNDECLARED", + "PROBLEM_WITH_CLICK_MACRO", + "INCORRECT_AD_TECHNOLOGY_DECLARATION", + "INCORRECT_DESTINATION_URL_DECLARATION", + "EXPANDABLE_INCORRECT_DIRECTION", + "EXPANDABLE_DIRECTION_NOT_SUPPORTED", + "EXPANDABLE_INVALID_VENDOR", + "EXPANDABLE_FUNCTIONALITY", + "VIDEO_INVALID_VENDOR", + "VIDEO_UNSUPPORTED_LENGTH", + "VIDEO_UNSUPPORTED_FORMAT", + "VIDEO_FUNCTIONALITY", + "LANDING_PAGE_DISABLED", + "MALWARE_SUSPECTED", + "ADULT_IMAGE_OR_VIDEO", + "INACCURATE_AD_TEXT", + "COUNTERFEIT_DESIGNER_GOODS", + "POP_UP", + "INVALID_RTB_PROTOCOL_USAGE", + "RAW_IP_ADDRESS_IN_SNIPPET", + "UNACCEPTABLE_CONTENT_SOFTWARE", + "UNAUTHORIZED_COOKIE_ON_GOOGLE_DOMAIN", + "UNDECLARED_FLASH_OBJECTS", + "INVALID_SSL_DECLARATION", + "DIRECT_DOWNLOAD_IN_AD", + "MAXIMUM_DOWNLOAD_SIZE_EXCEEDED", + "DESTINATION_URL_SITE_NOT_CRAWLABLE", + "BAD_URL_LEGAL_DISAPPROVAL", + "PHARMA_GAMBLING_ALCOHOL_NOT_ALLOWED", + "DYNAMIC_DNS_AT_DESTINATION_URL", + "POOR_IMAGE_OR_VIDEO_QUALITY", + "UNACCEPTABLE_IMAGE_CONTENT", + "INCORRECT_IMAGE_LAYOUT", + "IRRELEVANT_IMAGE_OR_VIDEO", + "DESTINATION_SITE_DOES_NOT_ALLOW_GOING_BACK", + "MISLEADING_CLAIMS_IN_AD", + "RESTRICTED_PRODUCTS", + "UNACCEPTABLE_CONTENT", + "AUTOMATED_AD_CLICKING", + "INVALID_URL_PROTOCOL", + "UNDECLARED_RESTRICTED_CONTENT", + "INVALID_REMARKETING_LIST_USAGE", + "DESTINATION_SITE_NOT_CRAWLABLE_ROBOTS_TXT", + "CLICK_TO_DOWNLOAD_NOT_AN_APP", + "INACCURATE_REVIEW_EXTENSION", + "SEXUALLY_EXPLICIT_CONTENT", + "GAINING_AN_UNFAIR_ADVANTAGE", + "GAMING_THE_GOOGLE_NETWORK", + "DANGEROUS_PRODUCTS_KNIVES", + "DANGEROUS_PRODUCTS_EXPLOSIVES", + "DANGEROUS_PRODUCTS_GUNS", + "DANGEROUS_PRODUCTS_DRUGS", + "DANGEROUS_PRODUCTS_TOBACCO", + "DANGEROUS_PRODUCTS_WEAPONS", + "UNCLEAR_OR_IRRELEVANT_AD", + "PROFESSIONAL_STANDARDS", + "DYSFUNCTIONAL_PROMOTION", + "INVALID_INTEREST_BASED_AD", + "MISUSE_OF_PERSONAL_INFORMATION", + "OMISSION_OF_RELEVANT_INFORMATION", + "UNAVAILABLE_PROMOTIONS", + "MISLEADING_PROMOTIONS", + "INAPPROPRIATE_CONTENT", + "SENSITIVE_EVENTS", + "SHOCKING_CONTENT", + "ENABLING_DISHONEST_BEHAVIOR", + "TECHNICAL_REQUIREMENTS", + "RESTRICTED_POLITICAL_CONTENT", + "UNSUPPORTED_CONTENT", + "INVALID_BIDDING_METHOD", + "VIDEO_TOO_LONG", + "VIOLATES_JAPANESE_PHARMACY_LAW", + "UNACCREDITED_PET_PHARMACY", + "ABORTION", + "CONTRACEPTIVES", + "NEED_CERTIFICATES_TO_ADVERTISE_IN_CHINA", + "KCDSP_REGISTRATION", + "NOT_FAMILY_SAFE", + "CLINICAL_TRIAL_RECRUITMENT", + "MAXIMUM_NUMBER_OF_HTTP_CALLS_EXCEEDED", + "MAXIMUM_NUMBER_OF_COOKIES_EXCEEDED", + "PERSONAL_LOANS", + "UNSUPPORTED_FLASH_CONTENT", + "MISUSE_BY_OMID_SCRIPT", + "NON_WHITELISTED_OMID_VENDOR", + "DESTINATION_EXPERIENCE" + ], + "description": "The categorized reason for disapproval.", + "type": "string" + }, + "details": { + "description": "Additional details about the reason for disapproval.", "type": "array", "items": { - "$ref": "Reason" - }, - "description": "The set of filtering reasons for this date." - }, - "date": { - "$ref": "Date", - "description": "The day during which the data was collected.\nThe data is collected from 00:00:00 to 23:59:59 PT.\nDuring switches from PST to PDT and back, the day may\ncontain 23 or 25 hours of data instead of the usual 24." + "type": "string" + } } }, - "id": "FilteringStats" + "id": "Disapproval" }, - "Creative": { + "StopWatchingCreativeRequest": { + "id": "StopWatchingCreativeRequest", + "description": "A request for stopping notifications for changes to creative Status.", + "type": "object", + "properties": {} + }, + "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": { - "filteringStats": { - "$ref": "FilteringStats", - "description": "@OutputOnly The filtering stats for this creative." - }, - "attributes": { - "description": "All attributes for the ads that may be shown from this creative.\nCan be used to filter the response of the\ncreatives.list\nmethod.", - "type": "array", - "items": { - "type": "string", - "enum": [ - "ATTRIBUTE_UNSPECIFIED", - "IS_TAGGED", - "IS_COOKIE_TARGETED", - "IS_USER_INTEREST_TARGETED", - "EXPANDING_DIRECTION_NONE", - "EXPANDING_DIRECTION_UP", - "EXPANDING_DIRECTION_DOWN", - "EXPANDING_DIRECTION_LEFT", - "EXPANDING_DIRECTION_RIGHT", - "EXPANDING_DIRECTION_UP_LEFT", - "EXPANDING_DIRECTION_UP_RIGHT", - "EXPANDING_DIRECTION_DOWN_LEFT", - "EXPANDING_DIRECTION_DOWN_RIGHT", - "EXPANDING_DIRECTION_UP_OR_DOWN", - "EXPANDING_DIRECTION_LEFT_OR_RIGHT", - "EXPANDING_DIRECTION_ANY_DIAGONAL", - "EXPANDING_ACTION_ROLLOVER_TO_EXPAND", - "INSTREAM_VAST_VIDEO_TYPE_VPAID_FLASH", - "RICH_MEDIA_CAPABILITY_TYPE_MRAID", - "RICH_MEDIA_CAPABILITY_TYPE_SSL", - "RICH_MEDIA_CAPABILITY_TYPE_INTERSTITIAL", - "NATIVE_ELIGIBILITY_ELIGIBLE", - "NATIVE_ELIGIBILITY_NOT_ELIGIBLE", - "RENDERING_SIZELESS_ADX" - ] - }, + "status": { "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." - ] - }, - "apiUpdateTime": { - "description": "@OutputOnly The last update timestamp of the creative via API.", - "format": "google-datetime", - "type": "string" - }, - "detectedLanguages": { - "type": "array", - "items": { - "type": "string" - }, - "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." - }, - "creativeId": { - "description": "The buyer-defined creative ID of this creative.\nCan be used to filter the response of the\ncreatives.list\nmethod.", + "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" }, - "accountId": { - "type": "string", - "description": "The account that this creative belongs to.\nCan be used to filter the response of the\ncreatives.list\nmethod." - }, - "native": { - "$ref": "NativeContent", - "description": "A native creative." - }, - "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).", + "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.", "type": "array", "items": { - "$ref": "ServingRestriction" + "$ref": "Disapproval" } }, - "agencyId": { - "type": "string", - "description": "The agency ID for this creative.", - "format": "int64" - }, - "clickThroughUrls": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The set of destination URLs for the creative." - }, - "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.", + "contexts": { + "description": "The contexts for the restriction.", "type": "array", "items": { - "format": "int32", - "type": "integer" + "$ref": "ServingContext" } - }, - "adChoicesDestinationUrl": { - "description": "The link to AdChoices destination page.", - "type": "string" - }, - "restrictedCategories": { - "description": "All restricted categories for the ads that may be shown from this creative.", - "type": "array", - "items": { - "enum": [ - "NO_RESTRICTED_CATEGORIES", - "ALCOHOL" - ], - "type": "string" - }, - "enumDescriptions": [ - "The ad has no restricted categories", - "The alcohol restricted category." - ] - }, - "corrections": { - "type": "array", - "items": { - "$ref": "Correction" - }, - "description": "@OutputOnly Shows any corrections that were applied to this creative." - }, - "version": { - "description": "@OutputOnly The version of this creative.", + } + }, + "id": "ServingRestriction" + }, + "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" }, - "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." - }, - "dealsStatus": { - "type": "string", - "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." - }, - "detectedProductCategories": { - "type": "array", - "items": { - "format": "int32", - "type": "integer" - }, - "description": "@OutputOnly Detected product categories, if any.\nSee the ad-product-categories.txt file in the technical documentation\nfor a list of IDs." + "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" }, - "openAuctionStatus": { - "type": "string", - "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" + "month": { + "description": "Month of year. Must be from 1 to 12, or 0 if specifying a date without a\nmonth.", + "format": "int32", + "type": "integer" + } + }, + "id": "Date" + }, + "RowDimensions": { + "id": "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" + } + } + }, + "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" + }, + "AppContext": { + "id": "AppContext", + "description": "@OutputOnly The app type the restriction applies to for mobile device.", + "type": "object", + "properties": { + "appTypes": { + "enumDescriptions": [ + "Native app context.", + "Mobile web app context." ], - "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." - }, - "advertiserName": { - "type": "string", - "description": "The name of the company being advertised in the creative." - }, - "detectedAdvertiserIds": { - "description": "@OutputOnly Detected advertiser IDs, if any.", + "description": "The app types this restriction applies to.", "type": "array", "items": { - "format": "int64", + "enum": [ + "NATIVE", + "WEB" + ], "type": "string" } + } + } + }, + "ListFilteredBidsResponse": { + "id": "ListFilteredBidsResponse", + "description": "Response message for listing all reasons that bids were filtered from the\nauction.", + "type": "object", + "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" + } }, - "detectedDomains": { - "description": "@OutputOnly\nThe detected domains for this creative.", + "nextPageToken": { + "description": "A token to retrieve the next page of results.\nPass this value in the\nListFilteredBidsRequest.pageToken\nfield in the subsequent call to the filteredBids.list\nmethod to retrieve the next page of results.", + "type": "string" + } + } + }, + "SecurityContext": { + "id": "SecurityContext", + "description": "@OutputOnly A security context.", + "type": "object", + "properties": { + "securities": { + "enumDescriptions": [ + "Matches impressions that require insecure compatibility.", + "Matches impressions that require SSL compatibility." + ], + "description": "The security types in this context.", "type": "array", "items": { - "type": "string" + "type": "string", + "enum": [ + "INSECURE", + "SSL" + ] } } - }, - "id": "Creative", - "description": "A creative and its classification data.\n\nNext ID: 35" + } }, - "RemoveDealAssociationRequest": { + "HtmlContent": { + "description": "HTML content for a creative.", "type": "object", "properties": { - "association": { - "$ref": "CreativeDealAssociation", - "description": "The association between a creative and a deal that should be removed." + "snippet": { + "description": "The HTML snippet that displays the ad when inserted in the web page.", + "type": "string" + }, + "height": { + "description": "The height of the HTML snippet in pixels.", + "format": "int32", + "type": "integer" + }, + "width": { + "description": "The width of the HTML snippet in pixels.", + "format": "int32", + "type": "integer" } }, - "id": "RemoveDealAssociationRequest", - "description": "A request for removing the association between a deal and a creative." + "id": "HtmlContent" }, - "ListCreativeStatusBreakdownByCreativeResponse": { + "ListCreativesResponse": { + "id": "ListCreativesResponse", + "description": "A response for listing creatives.", "type": "object", "properties": { - "filteredBidCreativeRows": { + "creatives": { + "description": "The list of creatives.", "type": "array", "items": { - "$ref": "FilteredBidCreativeRow" - }, - "description": "List of rows, with counts of bids with a given creative status aggregated\nby creative." + "$ref": "Creative" + } }, "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.", + "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": "ListCreativeStatusBreakdownByCreativeResponse", - "description": "Response message for listing all creatives associated with a given filtered\nbid reason." + } }, - "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.", + "ListFilteredBidRequestsResponse": { + "description": "Response message for listing all reasons that bid requests were filtered and\nnot sent to the buyer.", "type": "object", "properties": { - "entityType": { - "enum": [ - "ENTITY_TYPE_UNSPECIFIED", - "ADVERTISER", - "BRAND", - "AGENCY" - ], - "description": "The type of the client entity: `ADVERTISER`, `BRAND`, or `AGENCY`.", - "type": "string", - "enumDescriptions": [ - "A placeholder for an undefined client entity type. Should not be used.", - "An advertiser.", - "A brand.", - "An advertising agency." - ] + "calloutStatusRows": { + "description": "List of rows, with counts of filtered bid requests aggregated by callout\nstatus.", + "type": "array", + "items": { + "$ref": "CalloutStatusRow" + } }, - "clientName": { - "description": "Name used to represent this client to publishers.\nYou may have multiple clients that map to the same entity,\nbut for each client the combination of `clientName` and entity\nmust be unique.\nYou can specify this field as empty.", + "nextPageToken": { + "description": "A token to retrieve the next page of results.\nPass this value in the\nListFilteredBidRequestsRequest.pageToken\nfield in the subsequent call to the filteredBidRequests.list\nmethod to retrieve the next page of results.", + "type": "string" + } + }, + "id": "ListFilteredBidRequestsResponse" + }, + "ListBidMetricsResponse": { + "id": "ListBidMetricsResponse", + "description": "Response message for listing the metrics that are measured in number of bids.", + "type": "object", + "properties": { + "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" }, - "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": { - "type": "boolean", - "description": "Whether the client buyer will be visible to sellers." - }, - "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.", + "bidMetricsRows": { + "description": "List of rows, each containing a set of bid metrics.", + "type": "array", + "items": { + "$ref": "BidMetricsRow" + } + } + } + }, + "Reason": { + "description": "A specific filtering status and how many times it occurred.", + "type": "object", + "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" }, - "entityName": { - "type": "string", - "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." - }, "status": { - "type": "string", - "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." + "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" + } + }, + "id": "Reason" + }, + "VideoContent": { + "description": "Video content for a creative.", + "type": "object", + "properties": { + "videoUrl": { + "description": "The URL to fetch a video ad.", + "type": "string" }, - "partnerClientId": { - "type": "string", - "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." + "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" } }, - "id": "Client" + "id": "VideoContent" }, - "Correction": { - "description": "@OutputOnly Shows any corrections that were applied to this creative.", + "ListNonBillableWinningBidsResponse": { + "id": "ListNonBillableWinningBidsResponse", + "description": "Response message for listing all reasons for which a buyer was not billed for\na winning bid.", "type": "object", "properties": { - "details": { + "nonBillableWinningBidStatusRows": { + "description": "List of rows, with counts of bids not billed aggregated by reason.", "type": "array", "items": { - "type": "string" - }, - "description": "Additional details about what was corrected." - }, - "type": { - "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", - "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." - ] + "$ref": "NonBillableWinningBidStatusRow" + } }, - "contexts": { + "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" + } + } + }, + "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": "ServingContext" - }, - "description": "The contexts for the correction." + "$ref": "CreativeStatusRow" + } + }, + "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" } }, - "id": "Correction" + "id": "ListLosingBidsResponse" }, - "FilterSet": { + "ImpressionMetricsRow": { + "id": "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": { - "relativeDateRange": { - "$ref": "RelativeDateRange", - "description": "A relative date range, defined by an offset from today and a duration.\nInterpreted relative to Pacific time zone." + "responsesWithBids": { + "description": "The number of impressions for which Ad Exchange received a response from\nthe buyer that contained at least one applicable bid.", + "$ref": "MetricValue" }, - "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).", + "successfulResponses": { + "$ref": "MetricValue", + "description": "The number of impressions for which the buyer successfully sent a response\nto Ad Exchange." + }, + "availableImpressions": { + "$ref": "MetricValue", + "description": "The number of impressions available to the buyer on Ad Exchange.\nIn some cases this value may be unavailable." + }, + "rowDimensions": { + "description": "The values of all dimensions associated with metric values in this row.", + "$ref": "RowDimensions" + }, + "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." + } + } + }, + "AuctionContext": { + "description": "@OutputOnly The auction type the restriction applies to.", + "type": "object", + "properties": { + "auctionTypes": { + "description": "The auction types this restriction applies to.", "type": "array", "items": { - "type": "string", "enum": [ - "PLATFORM_UNSPECIFIED", - "DESKTOP", - "TABLET", - "MOBILE" - ] + "OPEN_AUCTION", + "DIRECT_DEALS" + ], + "type": "string" }, "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." + "The restriction applies to open auction.", + "The restriction applies to direct deals." ] - }, - "name": { - "type": "string", - "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." - }, - "sellerNetworkIds": { + } + }, + "id": "AuctionContext" + }, + "ListImpressionMetricsResponse": { + "description": "Response message for listing the metrics that are measured in number of\nimpressions.", + "type": "object", + "properties": { + "impressionMetricsRows": { + "description": "List of rows, each containing a set of impression metrics.", "type": "array", "items": { - "type": "integer", - "format": "int32" - }, - "description": "For Ad Exchange buyers only.\nThe 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." + "$ref": "ImpressionMetricsRow" + } }, - "absoluteDateRange": { - "$ref": "AbsoluteDateRange", - "description": "An absolute date range, defined by a start date and an end date.\nInterpreted relative to Pacific time zone." + "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": { + "$ref": "RowDimensions", + "description": "The values of all dimensions associated with metric values in this row." }, - "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." - ] + "viewableImpressions": { + "$ref": "MetricValue", + "description": "The number of bids for which the corresponding impression was viewable (as\ndefined by Active View)." }, - "dealId": { - "type": "string", - "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" + "impressionsWon": { + "description": "The number of bids that won an impression.", + "$ref": "MetricValue" }, - "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." - ] + "measurableImpressions": { + "$ref": "MetricValue", + "description": "The number of bids for which the corresponding impression was measurable\nfor viewability (as defined by Active View)." }, - "publisherIdentifiers": { - "type": "array", - "items": { - "type": "string" - }, - "description": "For Exchange Bidding buyers only.\nThe list of publisher identifiers on which to filter; may be empty.\nThe filters represented by multiple publisher identifiers are ORed\ntogether." + "bids": { + "$ref": "MetricValue", + "description": "The number of bids that Ad Exchange received from the buyer." }, - "realtimeTimeRange": { - "$ref": "RealtimeTimeRange", - "description": "An open-ended realtime time range, defined by the aggregation start\ntimestamp." + "billedImpressions": { + "$ref": "MetricValue", + "description": "The number of bids for which the buyer was billed." }, - "formats": { + "bidsInAuction": { + "description": "The number of bids that were permitted to compete in the auction.", + "$ref": "MetricValue" + } + }, + "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": { - "type": "string", - "enum": [ - "FORMAT_UNSPECIFIED", - "NATIVE_DISPLAY", - "NATIVE_VIDEO", - "NON_NATIVE_DISPLAY", - "NON_NATIVE_VIDEO" - ] + "$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": { + "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": { + "description": "The number of bids with the specified status.", + "$ref": "MetricValue" + }, + "rowDimensions": { + "description": "The values of all dimensions associated with metric values in this row.", + "$ref": "RowDimensions" + } + } + } + }, + "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": "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", + "title": "Ad Exchange Buyer API II", + "ownerName": "Google", + "resources": { + "accounts": { + "resources": { + "clients": { + "methods": { + "create": { + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], + "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" + } + }, + "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" + }, + "get": { + "description": "Gets a client buyer with a given client account ID.", + "response": { + "$ref": "Client" + }, + "parameterOrder": [ + "accountId", + "clientAccountId" + ], + "httpMethod": "GET", + "parameters": { + "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 to retrieve. (required)", + "format": "int64", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], + "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}", + "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}", + "id": "adexchangebuyer2.accounts.clients.get" + }, + "list": { + "httpMethod": "GET", + "parameterOrder": [ + "accountId" + ], + "response": { + "$ref": "ListClientsResponse" + }, + "parameters": { + "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" + }, + "accountId": { + "description": "Unique numerical account ID of the sponsor buyer to list the clients for.", + "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", + "id": "adexchangebuyer2.accounts.clients.list", + "path": "v2beta1/accounts/{accountId}/clients", + "description": "Lists all the clients for the current sponsor buyer." + }, + "update": { + "response": { + "$ref": "Client" + }, + "parameterOrder": [ + "accountId", + "clientAccountId" + ], + "httpMethod": "PUT", + "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", + "required": true, + "type": "string", + "location": "path" + }, + "clientAccountId": { + "location": "path", + "description": "Unique numerical account ID of the client to update. (required)", + "format": "int64", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], + "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}", + "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}", + "id": "adexchangebuyer2.accounts.clients.update", + "description": "Updates an existing client buyer.", + "request": { + "$ref": "Client" + } + } }, - "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." - ], - "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)." + "resources": { + "invitations": { + "methods": { + "create": { + "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations", + "id": "adexchangebuyer2.accounts.clients.invitations.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", + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], + "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations" + }, + "get": { + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], + "parameters": { + "accountId": { + "location": "path", + "description": "Numerical account ID of the client's sponsor buyer. (required)", + "format": "int64", + "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", + "required": true, + "type": "string", + "location": "path" + }, + "invitationId": { + "location": "path", + "description": "Numerical identifier of the user invitation to retrieve. (required)", + "format": "int64", + "required": true, + "type": "string" + } + }, + "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations/{invitationId}", + "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" + }, + "list": { + "response": { + "$ref": "ListClientUserInvitationsResponse" + }, + "parameterOrder": [ + "accountId", + "clientAccountId" + ], + "httpMethod": "GET", + "parameters": { + "pageToken": { + "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListClientUserInvitationsResponse.nextPageToken\nreturned from the previous call to the\nclients.invitations.list\nmethod.", + "type": "string", + "location": "query" + }, + "accountId": { + "location": "path", + "description": "Numerical account ID of the client's sponsor buyer. (required)", + "format": "int64", + "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", + "type": "integer", + "location": "query" + }, + "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." + } + } + }, + "users": { + "methods": { + "list": { + "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.", + "response": { + "$ref": "ListClientUsersResponse" + }, + "parameterOrder": [ + "accountId", + "clientAccountId" + ], + "httpMethod": "GET", + "parameters": { + "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.", + "type": "string", + "location": "query" + }, + "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" + }, + "clientAccountId": { + "location": "path", + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], + "flatPath": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users" + }, + "get": { + "description": "Retrieves an existing client user.", + "httpMethod": "GET", + "parameterOrder": [ + "accountId", + "clientAccountId", + "userId" + ], + "response": { + "$ref": "ClientUser" + }, + "parameters": { + "userId": { + "description": "Numerical identifier of the user 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" + }, + "clientAccountId": { + "location": "path", + "description": "Numerical account ID of the client buyer\nthat the user to 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}/users/{userId}", + "id": "adexchangebuyer2.accounts.clients.users.get", + "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users/{userId}" + }, + "update": { + "response": { + "$ref": "ClientUser" + }, + "parameterOrder": [ + "accountId", + "clientAccountId", + "userId" + ], + "httpMethod": "PUT", + "parameters": { + "userId": { + "location": "path", + "description": "Numerical identifier of the user to retrieve. (required)", + "format": "int64", + "required": true, + "type": "string" + }, + "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 to be retrieved\nis associated with. (required)", + "format": "int64", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], + "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" + } + } + } + } + } }, - "creativeId": { - "type": "string", - "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." - } - }, - "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)\"" - }, - "ListDealAssociationsResponse": { - "description": "A response for listing creative and deal associations", - "type": "object", - "properties": { - "associations": { - "description": "The list of associations.", - "type": "array", - "items": { - "$ref": "CreativeDealAssociation" + "creatives": { + "methods": { + "list": { + "parameters": { + "pageToken": { + "location": "query", + "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" + }, + "accountId": { + "location": "path", + "description": "The account to list the creatives from.\nSpecify \"-\" to list all creatives the current user has access to.", + "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", + "type": "integer", + "location": "query" + }, + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], + "flatPath": "v2beta1/accounts/{accountId}/creatives", + "id": "adexchangebuyer2.accounts.creatives.list", + "path": "v2beta1/accounts/{accountId}/creatives", + "description": "Lists creatives.", + "httpMethod": "GET", + "parameterOrder": [ + "accountId" + ], + "response": { + "$ref": "ListCreativesResponse" + } + }, + "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", + "parameters": { + "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" + ] + }, + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], + "flatPath": "v2beta1/accounts/{accountId}/creatives" + }, + "stopWatching": { + "parameters": { + "accountId": { + "location": "path", + "description": "The account of the creative to stop notifications for.", + "required": true, + "type": "string" + }, + "creativeId": { + "description": "The creative ID of the creative to stop notifications for.\nSpecify \"-\" to specify stopping account level notifications.", + "required": true, + "type": "string", + "location": "path" + } + }, + "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", + "description": "Stops watching a creative. Will stop push notifications being sent to the\ntopics when the creative changes status.", + "request": { + "$ref": "StopWatchingCreativeRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "accountId", + "creativeId" + ], + "response": { + "$ref": "Empty" + } + }, + "get": { + "description": "Gets a creative.", + "httpMethod": "GET", + "parameterOrder": [ + "accountId", + "creativeId" + ], + "response": { + "$ref": "Creative" + }, + "parameters": { + "accountId": { + "location": "path", + "description": "The account the creative belongs to.", + "required": true, + "type": "string" + }, + "creativeId": { + "location": "path", + "description": "The ID of the creative to retrieve.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], + "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}", + "id": "adexchangebuyer2.accounts.creatives.get", + "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}" + }, + "watch": { + "description": "Watches a creative. Will result in push notifications being sent to the\ntopic when the creative changes status.", + "request": { + "$ref": "WatchCreativeRequest" + }, + "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": { + "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", + "location": "path" + } + }, + "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", + "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" + }, + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], + "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}", + "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}", + "id": "adexchangebuyer2.accounts.creatives.update" + } + }, + "resources": { + "dealAssociations": { + "methods": { + "add": { + "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", + "id": "adexchangebuyer2.accounts.creatives.dealAssociations.add", + "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations:add", + "description": "Associate an existing deal with a creative.", + "request": { + "$ref": "AddDealAssociationRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "accountId", + "creativeId" + ], + "response": { + "$ref": "Empty" + } + }, + "remove": { + "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:remove", + "id": "adexchangebuyer2.accounts.creatives.dealAssociations.remove", + "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations:remove", + "description": "Remove the association between a deal and a creative.", + "request": { + "$ref": "RemoveDealAssociationRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "accountId", + "creativeId" + ], + "response": { + "$ref": "Empty" + } + }, + "list": { + "response": { + "$ref": "ListDealAssociationsResponse" + }, + "parameterOrder": [ + "accountId", + "creativeId" + ], + "httpMethod": "GET", + "parameters": { + "pageToken": { + "location": "query", + "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" + }, + "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": { + "location": "query", + "description": "Requested page size. Server may return fewer associations than requested.\nIf unspecified, server will pick an appropriate default.", + "format": "int32", + "type": "integer" + }, + "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": { + "location": "path", + "description": "The creative ID to list the associations from.\nSpecify \"-\" to list all creatives under the above account.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], + "flatPath": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations", + "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations", + "id": "adexchangebuyer2.accounts.creatives.dealAssociations.list", + "description": "List all creative-deal associations." + } + } + } } - }, - "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" - } - }, - "id": "ListDealAssociationsResponse" - }, - "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", - "properties": { - "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." - }, - "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" } - }, - "id": "CalloutStatusRow" + } }, - "Disapproval": { - "description": "@OutputOnly The reason and details for a disapproval.", - "type": "object", - "properties": { - "details": { - "type": "array", - "items": { - "type": "string" + "bidders": { + "resources": { + "filterSets": { + "methods": { + "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", + "request": { + "$ref": "FilterSet" + }, + "description": "Creates the specified filter set for the account with the given account ID.", + "response": { + "$ref": "FilterSet" + }, + "parameterOrder": [ + "ownerName" + ], + "httpMethod": "POST" + }, + "delete": { + "path": "v2beta1/{+name}", + "id": "adexchangebuyer2.bidders.filterSets.delete", + "description": "Deletes the requested filter set from the account with the given account\nID.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "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`", + "required": true, + "type": "string", + "pattern": "^bidders/[^/]+/filterSets/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], + "flatPath": "v2beta1/bidders/{biddersId}/filterSets/{filterSetsId}" + }, + "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": { + "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`", + "required": true, + "type": "string" + } + }, + "flatPath": "v2beta1/bidders/{biddersId}/filterSets/{filterSetsId}", + "path": "v2beta1/{+name}", + "id": "adexchangebuyer2.bidders.filterSets.get" + }, + "list": { + "description": "Lists all filter sets for the account with the given account ID.", + "response": { + "$ref": "ListFilterSetsResponse" + }, + "parameterOrder": [ + "ownerName" + ], + "httpMethod": "GET", + "parameters": { + "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": { + "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" + }, + "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`", + "required": true, + "type": "string", + "pattern": "^bidders/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], + "flatPath": "v2beta1/bidders/{biddersId}/filterSets", + "path": "v2beta1/{+ownerName}/filterSets", + "id": "adexchangebuyer2.bidders.filterSets.list" + } }, - "description": "Additional details about the reason for disapproval." - }, - "reason": { - "enum": [ - "LENGTH_OF_IMAGE_ANIMATION", - "BROKEN_URL", - "MEDIA_NOT_FUNCTIONAL", - "INVALID_FOURTH_PARTY_CALL", - "INCORRECT_REMARKETING_DECLARATION", - "LANDING_PAGE_ERROR", - "AD_SIZE_DOES_NOT_MATCH_AD_SLOT", - "NO_BORDER", - "FOURTH_PARTY_BROWSER_COOKIES", - "LSO_OBJECTS", - "BLANK_CREATIVE", - "DESTINATION_URLS_UNDECLARED", - "PROBLEM_WITH_CLICK_MACRO", - "INCORRECT_AD_TECHNOLOGY_DECLARATION", - "INCORRECT_DESTINATION_URL_DECLARATION", - "EXPANDABLE_INCORRECT_DIRECTION", - "EXPANDABLE_DIRECTION_NOT_SUPPORTED", - "EXPANDABLE_INVALID_VENDOR", - "EXPANDABLE_FUNCTIONALITY", - "VIDEO_INVALID_VENDOR", - "VIDEO_UNSUPPORTED_LENGTH", - "VIDEO_UNSUPPORTED_FORMAT", - "VIDEO_FUNCTIONALITY", - "LANDING_PAGE_DISABLED", - "MALWARE_SUSPECTED", - "ADULT_IMAGE_OR_VIDEO", - "INACCURATE_AD_TEXT", - "COUNTERFEIT_DESIGNER_GOODS", - "POP_UP", - "INVALID_RTB_PROTOCOL_USAGE", - "RAW_IP_ADDRESS_IN_SNIPPET", - "UNACCEPTABLE_CONTENT_SOFTWARE", - "UNAUTHORIZED_COOKIE_ON_GOOGLE_DOMAIN", - "UNDECLARED_FLASH_OBJECTS", - "INVALID_SSL_DECLARATION", - "DIRECT_DOWNLOAD_IN_AD", - "MAXIMUM_DOWNLOAD_SIZE_EXCEEDED", - "DESTINATION_URL_SITE_NOT_CRAWLABLE", - "BAD_URL_LEGAL_DISAPPROVAL", - "PHARMA_GAMBLING_ALCOHOL_NOT_ALLOWED", - "DYNAMIC_DNS_AT_DESTINATION_URL", - "POOR_IMAGE_OR_VIDEO_QUALITY", - "UNACCEPTABLE_IMAGE_CONTENT", - "INCORRECT_IMAGE_LAYOUT", - "IRRELEVANT_IMAGE_OR_VIDEO", - "DESTINATION_SITE_DOES_NOT_ALLOW_GOING_BACK", - "MISLEADING_CLAIMS_IN_AD", - "RESTRICTED_PRODUCTS", - "UNACCEPTABLE_CONTENT", - "AUTOMATED_AD_CLICKING", - "INVALID_URL_PROTOCOL", - "UNDECLARED_RESTRICTED_CONTENT", - "INVALID_REMARKETING_LIST_USAGE", - "DESTINATION_SITE_NOT_CRAWLABLE_ROBOTS_TXT", - "CLICK_TO_DOWNLOAD_NOT_AN_APP", - "INACCURATE_REVIEW_EXTENSION", - "SEXUALLY_EXPLICIT_CONTENT", - "GAINING_AN_UNFAIR_ADVANTAGE", - "GAMING_THE_GOOGLE_NETWORK", - "DANGEROUS_PRODUCTS_KNIVES", - "DANGEROUS_PRODUCTS_EXPLOSIVES", - "DANGEROUS_PRODUCTS_GUNS", - "DANGEROUS_PRODUCTS_DRUGS", - "DANGEROUS_PRODUCTS_TOBACCO", - "DANGEROUS_PRODUCTS_WEAPONS", - "UNCLEAR_OR_IRRELEVANT_AD", - "PROFESSIONAL_STANDARDS", - "DYSFUNCTIONAL_PROMOTION", - "INVALID_INTEREST_BASED_AD", - "MISUSE_OF_PERSONAL_INFORMATION", - "OMISSION_OF_RELEVANT_INFORMATION", - "UNAVAILABLE_PROMOTIONS", - "MISLEADING_PROMOTIONS", - "INAPPROPRIATE_CONTENT", - "SENSITIVE_EVENTS", - "SHOCKING_CONTENT", - "ENABLING_DISHONEST_BEHAVIOR", - "TECHNICAL_REQUIREMENTS", - "RESTRICTED_POLITICAL_CONTENT", - "UNSUPPORTED_CONTENT", - "INVALID_BIDDING_METHOD", - "VIDEO_TOO_LONG", - "VIOLATES_JAPANESE_PHARMACY_LAW", - "UNACCREDITED_PET_PHARMACY", - "ABORTION", - "CONTRACEPTIVES", - "NEED_CERTIFICATES_TO_ADVERTISE_IN_CHINA", - "KCDSP_REGISTRATION", - "NOT_FAMILY_SAFE", - "CLINICAL_TRIAL_RECRUITMENT", - "MAXIMUM_NUMBER_OF_HTTP_CALLS_EXCEEDED", - "MAXIMUM_NUMBER_OF_COOKIES_EXCEEDED", - "PERSONAL_LOANS", - "UNSUPPORTED_FLASH_CONTENT", - "MISUSE_BY_OMID_SCRIPT", - "NON_WHITELISTED_OMID_VENDOR" - ], - "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.", - "Something is wrong with the creative itself.", - "The ad makes a fourth party call to an unapproved vendor.", - "The ad targets consumers using remarketing lists and/or collects\ndata for subsequent use in retargeting, but does not correctly declare\nthat use.", - "Clicking on the ad leads to an error page.", - "The ad size when rendered does not match the declaration.", - "Ads with a white background require a border, which was missing.", - "The creative attempts to set cookies from a fourth party that is not\ncertified.", - "The creative sets an LSO object.", - "The ad serves a blank.", - "The ad uses rotation, but not all destination URLs were declared.", - "There is a problem with the way the click macro is used.", - "The ad technology declaration is not accurate.", - "The actual destination URL does not match the declared destination URL.", - "The declared expanding direction does not match the actual direction.", - "The ad does not expand in a supported direction.", - "The ad uses an expandable vendor that is not supported.", - "There was an issue with the expandable ad.", - "The ad uses a video vendor that is not supported.", - "The length of the video ad is not supported.", - "The format of the video ad is not supported.", - "There was an issue with the video ad.", - "The landing page does not conform to Ad Exchange policy.", - "The ad or the landing page may contain malware.", - "The ad contains adult images or video content.", - "The ad contains text that is unclear or inaccurate.", - "The ad promotes counterfeit designer goods.", - "The ad causes a popup window to appear.", - "The creative does not follow policies set for the RTB protocol.", - "The ad contains a URL that uses a numeric IP address for the domain.", - "The ad or landing page contains unacceptable content because it initiated\na software or executable download.", - "The ad set an unauthorized cookie on a Google domain.", - "Flash content found when no flash was declared.", - "SSL support declared but not working correctly.", - "Rich Media - Direct Download in Ad (ex. PDF download).", - "Maximum download size exceeded.", - "Bad Destination URL: Site Not Crawlable.", - "Bad URL: Legal disapproval.", - "Pharmaceuticals, Gambling, Alcohol not allowed and at least one was\ndetected.", - "Dynamic DNS at Destination URL.", - "Poor Image / Video Quality.", - "For example, Image Trick to Click.", - "Incorrect Image Layout.", - "Irrelevant Image / Video.", - "Broken back button.", - "Misleading/Inaccurate claims in ads.", - "Restricted Products.", - "Unacceptable content. For example, malware.", - "The ad automatically redirects to the destination site without a click,\nor reports a click when none were made.", - "The ad uses URL protocols that do not exist or are not allowed on AdX.", - "Restricted content (for example, alcohol) was found in the ad but not\ndeclared.", - "Violation of the remarketing list policy.", - "The destination site's robot.txt file prevents it from being crawled.", - "Click to download must link to an app.", - "A review extension must be an accurate review.", - "Sexually explicit content.", - "The ad tries to gain an unfair traffic advantage.", - "The ad tries to circumvent Google's advertising systems.", - "The ad promotes dangerous knives.", - "The ad promotes explosives.", - "The ad promotes guns & parts.", - "The ad promotes recreational drugs/services & related equipment.", - "The ad promotes tobacco products/services & related equipment.", - "The ad promotes weapons.", - "The ad is unclear or irrelevant to the destination site.", - "The ad does not meet professional standards.", - "The promotion is unnecessarily difficult to navigate.", - "Violation of Google's policy for interest-based ads.", - "Misuse of personal information.", - "Omission of relevant information.", - "Unavailable promotions.", - "Misleading or unrealistic promotions.", - "Offensive or inappropriate content.", - "Capitalizing on sensitive events.", - "Shocking content.", - "Products & Services that enable dishonest behavior.", - "The ad does not meet technical requirements.", - "Restricted political content.", - "Unsupported content.", - "Invalid bidding method.", - "Video length exceeds limits.", - "Unacceptable content: Japanese healthcare.", - "Online pharmacy ID required.", - "Unacceptable content: Abortion.", - "Unacceptable content: Birth control.", - "Restricted in China.", - "Unacceptable content: Korean healthcare.", - "Non-family safe or adult content.", - "Clinical trial recruitment.", - "Maximum number of HTTP calls exceeded.", - "Maximum number of cookies exceeded.", - "Financial service ad does not adhere to specifications.", - "Flash content was found in an unsupported context.", - "Misuse by an Open Measurement SDK script.", - "Use of an Open Measurement SDK vendor not on approved whitelist." - ] + "resources": { + "bidResponseErrors": { + "methods": { + "list": { + "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\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.", + "response": { + "$ref": "ListBidResponseErrorsResponse" + }, + "parameterOrder": [ + "filterSetName" + ], + "httpMethod": "GET" + } + } + }, + "bidResponsesWithoutBids": { + "methods": { + "list": { + "id": "adexchangebuyer2.bidders.filterSets.bidResponsesWithoutBids.list", + "path": "v2beta1/{+filterSetName}/bidResponsesWithoutBids", + "description": "List all reasons for which bid responses were considered to have no\napplicable bids, with the number of bid responses affected for each reason.", + "httpMethod": "GET", + "parameterOrder": [ + "filterSetName" + ], + "response": { + "$ref": "ListBidResponsesWithoutBidsResponse" + }, + "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\nListBidResponsesWithoutBidsResponse.nextPageToken\nreturned from the previous call to the bidResponsesWithoutBids.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}/filterSets/{filterSetsId}/bidResponsesWithoutBids" + } + } + }, + "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.", + "response": { + "$ref": "ListFilteredBidRequestsResponse" + }, + "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\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", + "path": "v2beta1/{+filterSetName}/filteredBidRequests", + "id": "adexchangebuyer2.bidders.filterSets.filteredBidRequests.list" + } + } + }, + "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": { + "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.", + "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", + "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", + "parameterOrder": [ + "filterSetName", + "creativeStatusId" + ], + "response": { + "$ref": "ListCreativeStatusBreakdownByCreativeResponse" + }, + "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": { + "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": { + "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", + "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/{creativeStatusId}/creatives", + "id": "adexchangebuyer2.bidders.filterSets.filteredBids.creatives.list", + "path": "v2beta1/{+filterSetName}/filteredBids/{creativeStatusId}/creatives" + } + } + }, + "details": { + "methods": { + "list": { + "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": { + "location": "path", + "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" + }, + "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.", + "response": { + "$ref": "ListCreativeStatusBreakdownByDetailResponse" + }, + "parameterOrder": [ + "filterSetName", + "creativeStatusId" + ], + "httpMethod": "GET" + } + } + } + } + }, + "nonBillableWinningBids": { + "methods": { + "list": { + "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.", + "response": { + "$ref": "ListNonBillableWinningBidsResponse" + }, + "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": { + "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" + } + } + }, + "losingBids": { + "methods": { + "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", + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], + "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\nListLosingBidsResponse.nextPageToken\nreturned from the previous call to the losingBids.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}/filterSets/{filterSetsId}/losingBids", + "path": "v2beta1/{+filterSetName}/losingBids", + "id": "adexchangebuyer2.bidders.filterSets.losingBids.list" + } + } + }, + "impressionMetrics": { + "methods": { + "list": { + "httpMethod": "GET", + "parameterOrder": [ + "filterSetName" + ], + "response": { + "$ref": "ListImpressionMetricsResponse" + }, + "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\nListImpressionMetricsResponse.nextPageToken\nreturned from the previous call to the impressionMetrics.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}/filterSets/{filterSetsId}/impressionMetrics", + "id": "adexchangebuyer2.bidders.filterSets.impressionMetrics.list", + "path": "v2beta1/{+filterSetName}/impressionMetrics", + "description": "Lists all metrics that are measured in terms of number of impressions." + } + } + }, + "bidMetrics": { + "methods": { + "list": { + "id": "adexchangebuyer2.bidders.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" + }, + "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\nListBidMetricsResponse.nextPageToken\nreturned from the previous call to the bidMetrics.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}/bidMetrics" + } + } + } + } + }, + "accounts": { + "resources": { + "filterSets": { + "methods": { + "delete": { + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], + "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" + } + }, + "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.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE" + }, + "get": { + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], + "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets/{filterSetsId}", + "path": "v2beta1/{+name}", + "id": "adexchangebuyer2.bidders.accounts.filterSets.get", + "description": "Retrieves the requested filter set for the account with the given account\nID.", + "response": { + "$ref": "FilterSet" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET" + }, + "list": { + "path": "v2beta1/{+ownerName}/filterSets", + "id": "adexchangebuyer2.bidders.accounts.filterSets.list", + "description": "Lists all filter sets for the account with the given account ID.", + "response": { + "$ref": "ListFilterSetsResponse" + }, + "parameterOrder": [ + "ownerName" + ], + "httpMethod": "GET", + "parameters": { + "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": { + "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" + }, + "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`", + "required": true, + "type": "string", + "pattern": "^bidders/[^/]+/accounts/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/adexchange.buyer" + ], + "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets" + }, + "create": { + "httpMethod": "POST", + "parameterOrder": [ + "ownerName" + ], + "response": { + "$ref": "FilterSet" + }, + "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": { + "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", + "id": "adexchangebuyer2.bidders.accounts.filterSets.create", + "path": "v2beta1/{+ownerName}/filterSets", + "description": "Creates the specified filter set for the account with the given account ID.", + "request": { + "$ref": "FilterSet" + } + } + }, + "resources": { + "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": { + "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": { + "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" + }, + "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/{filterSetsId}/bidResponseErrors", + "path": "v2beta1/{+filterSetName}/bidResponseErrors", + "id": "adexchangebuyer2.bidders.accounts.filterSets.bidResponseErrors.list" + } + } + }, + "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.", + "response": { + "$ref": "ListBidResponsesWithoutBidsResponse" + }, + "parameterOrder": [ + "filterSetName" + ], + "httpMethod": "GET", + "parameters": { + "filterSetName": { + "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`", + "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}/accounts/{accountsId}/filterSets/{filterSetsId}/bidResponsesWithoutBids", + "path": "v2beta1/{+filterSetName}/bidResponsesWithoutBids", + "id": "adexchangebuyer2.bidders.accounts.filterSets.bidResponsesWithoutBids.list" + } + } + }, + "filteredBidRequests": { + "methods": { + "list": { + "parameters": { + "filterSetName": { + "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`", + "required": true, + "type": "string" + }, + "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": { + "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/{filterSetsId}/filteredBidRequests", + "id": "adexchangebuyer2.bidders.accounts.filterSets.filteredBidRequests.list", + "path": "v2beta1/{+filterSetName}/filteredBidRequests", + "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", + "parameterOrder": [ + "filterSetName" + ], + "response": { + "$ref": "ListFilteredBidRequestsResponse" + } + } + } + }, + "nonBillableWinningBids": { + "methods": { + "list": { + "id": "adexchangebuyer2.bidders.accounts.filterSets.nonBillableWinningBids.list", + "path": "v2beta1/{+filterSetName}/nonBillableWinningBids", + "description": "List all reasons for which winning bids were not billable, with the number\nof bids not billed for each reason.", + "httpMethod": "GET", + "parameterOrder": [ + "filterSetName" + ], + "response": { + "$ref": "ListNonBillableWinningBidsResponse" + }, + "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": { + "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", + "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}/accounts/{accountsId}/filterSets/{filterSetsId}/nonBillableWinningBids" + } + } + }, + "filteredBids": { + "methods": { + "list": { + "parameters": { + "filterSetName": { + "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`", + "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\nListFilteredBidsResponse.nextPageToken\nreturned from the previous call to the filteredBids.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}/accounts/{accountsId}/filterSets/{filterSetsId}/filteredBids", + "id": "adexchangebuyer2.bidders.accounts.filterSets.filteredBids.list", + "path": "v2beta1/{+filterSetName}/filteredBids", + "description": "List all reasons for which bids were filtered, with the number of bids\nfiltered for each reason.", + "httpMethod": "GET", + "parameterOrder": [ + "filterSetName" + ], + "response": { + "$ref": "ListFilteredBidsResponse" + } + } + }, + "resources": { + "creatives": { + "methods": { + "list": { + "parameters": { + "filterSetName": { + "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`", + "required": true, + "type": "string" + }, + "creativeStatusId": { + "description": "The ID of the creative status for which to retrieve a breakdown by\ncreative.\nSee\n[creative-status-codes](https://developers.google.com/ad-exchange/rtb/downloads/creative-status-codes).", + "format": "int32", + "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\nListCreativeStatusBreakdownByCreativeResponse.nextPageToken\nreturned from the previous call to the filteredBids.creatives.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}/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" + } + } + }, + "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/[^/]+/accounts/[^/]+/filterSets/[^/]+$", + "location": "path" + }, + "creativeStatusId": { + "location": "path", + "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" + }, + "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": { + "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/{filterSetsId}/filteredBids/{creativeStatusId}/details", + "path": "v2beta1/{+filterSetName}/filteredBids/{creativeStatusId}/details", + "id": "adexchangebuyer2.bidders.accounts.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": { + "response": { + "$ref": "ListLosingBidsResponse" + }, + "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": { + "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.", + "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}/losingBids", + "path": "v2beta1/{+filterSetName}/losingBids", + "id": "adexchangebuyer2.bidders.accounts.filterSets.losingBids.list", + "description": "List all reasons for which bids lost in the auction, with the number of\nbids that lost for each reason." + } + } + }, + "impressionMetrics": { + "methods": { + "list": { + "description": "Lists all metrics that are measured in terms of number of impressions.", + "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/[^/]+/accounts/[^/]+/filterSets/[^/]+$", + "location": "path" + }, + "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": { + "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" + } + }, + "flatPath": "v2beta1/bidders/{biddersId}/accounts/{accountsId}/filterSets/{filterSetsId}/impressionMetrics", + "path": "v2beta1/{+filterSetName}/impressionMetrics", + "id": "adexchangebuyer2.bidders.accounts.filterSets.impressionMetrics.list" + } + } + }, + "bidMetrics": { + "methods": { + "list": { + "parameters": { + "filterSetName": { + "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`", + "required": true, + "type": "string" + }, + "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.", + "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}/accounts/{accountsId}/filterSets/{filterSetsId}/bidMetrics", + "path": "v2beta1/{+filterSetName}/bidMetrics", + "id": "adexchangebuyer2.bidders.accounts.filterSets.bidMetrics.list", + "description": "Lists all metrics that are measured in terms of number of bids.", + "response": { + "$ref": "ListBidMetricsResponse" + }, + "parameterOrder": [ + "filterSetName" + ], + "httpMethod": "GET" + } + } + } + } + } + } } - }, - "id": "Disapproval" + } + } + }, + "parameters": { + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "type": "string", + "location": "query" }, - "StopWatchingCreativeRequest": { - "type": "object", - "properties": {}, - "id": "StopWatchingCreativeRequest", - "description": "A request for stopping notifications for changes to creative Status." + "prettyPrint": { + "description": "Returns response with indentations and line breaks.", + "type": "boolean", + "default": "true", + "location": "query" }, - "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": { - "status": { - "type": "string", - "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)." - }, - "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.", - "type": "array", - "items": { - "$ref": "Disapproval" - } - }, - "contexts": { - "description": "The contexts for the restriction.", - "type": "array", - "items": { - "$ref": "ServingContext" - } - } - }, - "id": "ServingRestriction" + "fields": { + "location": "query", + "description": "Selector specifying which fields to include in a partial response.", + "type": "string" }, - "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": { - "type": "integer", - "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", - "format": "int32" - }, - "day": { - "type": "integer", - "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" - }, - "month": { - "type": "integer", - "description": "Month of year. Must be from 1 to 12, or 0 if specifying a date without a\nmonth.", - "format": "int32" - } - }, - "id": "Date" + "uploadType": { + "location": "query", + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string" }, - "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": { - "$ref": "TimeInterval", - "description": "The time interval that this row represents." - } - }, - "id": "RowDimensions" + "$.xgafv": { + "description": "V1 error format.", + "type": "string", + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "enum": [ + "1", + "2" + ] }, - "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 `{}`." + "callback": { + "description": "JSONP", + "type": "string", + "location": "query" }, - "AppContext": { - "type": "object", - "properties": { - "appTypes": { - "description": "The app types this restriction applies to.", - "type": "array", - "items": { - "type": "string", - "enum": [ - "NATIVE", - "WEB" - ] - }, - "enumDescriptions": [ - "Native app context.", - "Mobile web app context." - ] - } - }, - "id": "AppContext", - "description": "@OutputOnly The app type the restriction applies to for mobile device." + "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" }, - "ListFilteredBidsResponse": { - "description": "Response message for listing all reasons that bids were filtered from the\nauction.", - "type": "object", - "properties": { - "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" - }, - "creativeStatusRows": { - "description": "List of rows, with counts of filtered bids aggregated by filtering reason\n(i.e. creative status).", - "type": "array", - "items": { - "$ref": "CreativeStatusRow" - } - } - }, - "id": "ListFilteredBidsResponse" - } - }, - "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": "AdExchangeBuyerII", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/adexchange.buyer": { - "description": "Manage your Ad Exchange buyer account configuration" - } - } + "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": { + "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" } }, - "rootUrl": "https://adexchangebuyer.googleapis.com/", - "ownerDomain": "google.com", - "name": "adexchangebuyer2", - "batchPath": "batch" + "version": "v2beta1", + "baseUrl": "https://adexchangebuyer.googleapis.com/", + "servicePath": "", + "description": "Accesses the latest features for managing Ad Exchange accounts, Real-Time Bidding configurations and auction metrics, and Marketplace programmatic deals.", + "kind": "discovery#restDescription", + "basePath": "", + "documentationLink": "https://developers.google.com/ad-exchange/buyer-rest/reference/rest/", + "revision": "20180508", + "id": "adexchangebuyer2:v2beta1", + "discoveryVersion": "v1" } diff --git a/DiscoveryJson/adexperiencereport_v1.json b/DiscoveryJson/adexperiencereport_v1.json index f04a5f1b90..52a7ddf929 100644 --- a/DiscoveryJson/adexperiencereport_v1.json +++ b/DiscoveryJson/adexperiencereport_v1.json @@ -1,4 +1,8 @@ { + "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", "revision": "20180430", "documentationLink": "https://developers.google.com/ad-experience-report/", @@ -6,8 +10,21 @@ "version_module": true, "schemas": { "PlatformSummary": { + "description": "Summary of the ad experience rating of a site for a specific platform.", + "type": "object", "properties": { + "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.", @@ -19,26 +36,24 @@ "PASSING", "WARNING", "FAILING" - ], - "description": "The status of the site reviewed for the Better Ads Standards.", - "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": { - "type": "string", "enum": [ "REGION_UNKNOWN", "REGION_A", "REGION_B" - ] - }, - "enumDescriptions": [ - "Ad standard not yet defined for your region.", - "Region A.", - "Region B." - ] + ], + "type": "string" + } }, "enforcementTime": { "description": "The date on which ad filtering begins.", @@ -46,8 +61,6 @@ "type": "string" }, "filterStatus": { - "description": "The ad filtering status of the site.", - "type": "string", "enumDescriptions": [ "N/A.", "Ad filtering is on.", @@ -61,29 +74,18 @@ "OFF", "PAUSED", "PENDING" - ] + ], + "description": "The ad filtering status of the site.", + "type": "string" }, "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" } }, - "id": "PlatformSummary", - "description": "Summary of the ad experience rating of a site for a specific platform.", - "type": "object" + "id": "PlatformSummary" }, "ViolatingSitesResponse": { - "description": "Response message for ListViolatingSites.", - "type": "object", "properties": { "violatingSites": { "description": "A list of summaries of violating sites.", @@ -93,12 +95,16 @@ } } }, - "id": "ViolatingSitesResponse" + "id": "ViolatingSitesResponse", + "description": "Response message for ListViolatingSites.", + "type": "object" }, "SiteSummaryResponse": { - "description": "Response message for GetSiteSummary.\nDo not confuse with same message in google.chrome.abusiveexperiencereport.v1", - "type": "object", "properties": { + "desktopSummary": { + "$ref": "PlatformSummary", + "description": "Summary for the desktop review of the site." + }, "mobileSummary": { "description": "Summary for the mobile review of the site.", "$ref": "PlatformSummary" @@ -106,13 +112,11 @@ "reviewedSite": { "description": "The name of the site reviewed.", "type": "string" - }, - "desktopSummary": { - "$ref": "PlatformSummary", - "description": "Summary for the desktop review of the site." } }, - "id": "SiteSummaryResponse" + "id": "SiteSummaryResponse", + "description": "Response message for GetSiteSummary.\nDo not confuse with same message in google.chrome.abusiveexperiencereport.v1", + "type": "object" } }, "icons": { @@ -137,25 +141,6 @@ "title": "Ad Experience Report API", "ownerName": "Google", "resources": { - "violatingSites": { - "methods": { - "list": { - "path": "v1/violatingSites", - "id": "adexperiencereport.violatingSites.list", - "description": "Lists sites with Ad Experience Report statuses of \"Failing\" or \"Warning\".", - "response": { - "$ref": "ViolatingSitesResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/xapi.zoo" - ], - "parameters": {}, - "flatPath": "v1/violatingSites" - } - } - }, "sites": { "methods": { "get": { @@ -171,11 +156,11 @@ ], "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/[^/]+$", - "location": "path" + "pattern": "^sites/[^/]+$" } }, "flatPath": "v1/sites/{sitesId}", @@ -184,9 +169,67 @@ "description": "Gets a summary of the ad 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": "adexperiencereport.violatingSites.list", + "description": "Lists sites with Ad Experience Report statuses of \"Failing\" or \"Warning\"." + } + } } }, "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": { + "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": { "enum": [ "json", @@ -209,9 +252,9 @@ "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" + "type": "string", + "location": "query" }, "quotaUser": { "location": "query", @@ -219,10 +262,10 @@ "type": "string" }, "pp": { + "location": "query", "description": "Pretty-print response.", "type": "boolean", - "default": "true", - "location": "query" + "default": "true" }, "oauth_token": { "location": "query", @@ -233,51 +276,8 @@ "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": { - "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" } }, "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": "" + "baseUrl": "https://adexperiencereport.googleapis.com/" } diff --git a/DiscoveryJson/adsense_v1.4.json b/DiscoveryJson/adsense_v1.4.json index 4cf73d3b9b..d6e23b5f41 100644 --- a/DiscoveryJson/adsense_v1.4.json +++ b/DiscoveryJson/adsense_v1.4.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/c0dYcrquhKvkLJLDPem1GaFaOeg\"", + "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/q69izBRQ1IywN4oqG4SE8obYFQk\"", "discoveryVersion": "v1", "id": "adsense:v1.4", "name": "adsense", "canonicalName": "AdSense", "version": "v1.4", - "revision": "20180507", + "revision": "20180508", "title": "AdSense Management API", "description": "Accesses AdSense publishers' inventory and generates performance reports.", "ownerDomain": "google.com", diff --git a/DiscoveryJson/adsensehost_v4.1.json b/DiscoveryJson/adsensehost_v4.1.json index 127df71bb8..5575b0561a 100644 --- a/DiscoveryJson/adsensehost_v4.1.json +++ b/DiscoveryJson/adsensehost_v4.1.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/j0iTGjAu6bHx_pqunTs7dfj9jk4\"", + "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/hCUBbE9i0hTsONMoKhMD799iWNE\"", "discoveryVersion": "v1", "id": "adsensehost:v4.1", "name": "adsensehost", "canonicalName": "AdSense Host", "version": "v4.1", - "revision": "20180507", + "revision": "20180508", "title": "AdSense Host API", "description": "Generates performance reports, generates ad codes, and provides publisher management capabilities for AdSense Hosts.", "ownerDomain": "google.com", diff --git a/DiscoveryJson/analyticsreporting_v4.json b/DiscoveryJson/analyticsreporting_v4.json index 9f04027962..07465f65ae 100644 --- a/DiscoveryJson/analyticsreporting_v4.json +++ b/DiscoveryJson/analyticsreporting_v4.json @@ -1,55 +1,76 @@ { + "rootUrl": "https://analyticsreporting.googleapis.com/", + "ownerDomain": "google.com", + "name": "analyticsreporting", + "batchPath": "batch", + "title": "Google Analytics Reporting API", "ownerName": "Google", "resources": { "reports": { "methods": { "batchGet": { - "path": "v4/reports:batchGet", - "id": "analyticsreporting.reports.batchGet", - "description": "Returns the Analytics data.", "request": { "$ref": "GetReportsRequest" }, + "description": "Returns the Analytics data.", "response": { "$ref": "GetReportsResponse" }, "parameterOrder": [], "httpMethod": "POST", - "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/analytics", "https://www.googleapis.com/auth/analytics.readonly" ], - "flatPath": "v4/reports:batchGet" + "parameters": {}, + "flatPath": "v4/reports:batchGet", + "path": "v4/reports:batchGet", + "id": "analyticsreporting.reports.batchGet" } } } }, "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." + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string", + "location": "query" + }, + "fields": { + "type": "string", + "location": "query", + "description": "Selector specifying which fields to include in a partial response." + }, + "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" - }, - "callback": { "location": "query", - "description": "JSONP", - "type": "string" + "enum": [ + "1", + "2" + ] }, "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", @@ -58,22 +79,27 @@ "media", "proto" ], - "type": "string" - }, - "access_token": { - "description": "OAuth access token.", "type": "string", - "location": "query" + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ] }, "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", - "location": "query" + "type": "string" }, "pp": { "location": "query", @@ -81,43 +107,22 @@ "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": { - "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": { + "oauth_token": { + "type": "string", "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" + "description": "OAuth 2.0 token for the current user." } }, "version": "v4", "baseUrl": "https://analyticsreporting.googleapis.com/", + "servicePath": "", "description": "Accesses Analytics report data.", "kind": "discovery#restDescription", - "servicePath": "", "basePath": "", "revision": "20180315", "documentationLink": "https://developers.google.com/analytics/devguides/reporting/core/v4/", @@ -125,25 +130,53 @@ "discoveryVersion": "v1", "version_module": true, "schemas": { + "DimensionFilterClause": { + "description": "A group of dimension filters. Set the operator value to specify how\nthe filters are logically combined.", + "type": "object", + "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" + }, "GetReportsResponse": { "description": "The main response class which holds the reports from the Reporting API\n`batchGet` call.", "type": "object", "properties": { - "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." - }, "reports": { "description": "Responses corresponding to each of the request.", "type": "array", "items": { "$ref": "Report" } + }, + "queryCost": { + "type": "integer", + "description": "The amount of resource quota tokens deducted to execute the query. Includes\nall responses.", + "format": "int32" + }, + "resourceQuotasRemaining": { + "$ref": "ResourceQuotasRemaining", + "description": "The amount of resource quota remaining for the property." } }, "id": "GetReportsResponse" @@ -152,55 +185,33 @@ "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" } + }, + "firstStepShouldMatchFirstHit": { + "type": "boolean", + "description": "If set, first step condition must match the first hit of the visitor (in\nthe date range)." } }, "id": "SequenceSegment" }, "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": { - "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" - ], - "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." - }, "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" + "type": "string", + "description": "The value to compare against. If the operator is `BETWEEN`, this value is\ntreated as minimum comparison value." }, "operator": { + "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.", @@ -214,12 +225,34 @@ "GREATER_THAN", "EQUAL", "BETWEEN" - ], - "description": "Specifies is the operation to perform to compare the metric. The default\nis `EQUAL`.", + ] + }, + "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" + ] } }, - "id": "SegmentMetricFilter" + "id": "SegmentMetricFilter", + "description": "Metric filter to be used in a segment filter clause.", + "type": "object" }, "DateRangeValues": { "description": "Used to return a list of metrics for a single DateRange / dimension\ncombination", @@ -243,22 +276,22 @@ "id": "DateRangeValues" }, "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 }", + "type": "object", "properties": { "cohorts": { - "description": "The definition for the cohort.", "type": "array", "items": { "$ref": "Cohort" - } + }, + "description": "The definition for the cohort." }, "lifetimeValue": { - "type": "boolean", - "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)" + "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 }", - "type": "object" + "id": "CohortGroup" }, "GetReportsRequest": { "description": "The batch request containing multiple report request.", @@ -279,6 +312,8 @@ "id": "GetReportsRequest" }, "Pivot": { + "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.", "type": "object", "properties": { "dimensions": { @@ -296,14 +331,14 @@ } }, "maxGroupCount": { - "type": "integer", "description": "Specifies the maximum number of groups to return.\nThe default value is 10, also the maximum value is 1,000.", - "format": "int32" + "format": "int32", + "type": "integer" }, "startGroup": { - "type": "integer", "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" + "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.", @@ -312,12 +347,9 @@ "$ref": "Metric" } } - }, - "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": { - "id": "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": { @@ -329,36 +361,37 @@ } }, "metric": { - "description": "The metric header for the metric in the pivot.", - "$ref": "MetricHeaderEntry" + "$ref": "MetricHeaderEntry", + "description": "The metric header for the metric in the pivot." }, "dimensionValues": { + "description": "The values for the dimensions in the pivot.", "type": "array", "items": { "type": "string" - }, - "description": "The values for the dimensions in the pivot." + } } - } + }, + "id": "PivotHeaderEntry" }, "SegmentFilter": { - "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", "properties": { "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." + "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.", + "$ref": "SequenceSegment" }, "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" }, "simpleSegment": { - "$ref": "SimpleSegment", - "description": "A Simple segment conditions consist of one or more dimension/metric\nconditions that can be combined" + "description": "A Simple segment conditions consist of one or more dimension/metric\nconditions that can be combined", + "$ref": "SimpleSegment" } - } + }, + "id": "SegmentFilter" }, "SegmentDefinition": { "description": "SegmentDefinition defines the segment to be a set of SegmentFilters which\nare combined together with a logical `AND` operation.", @@ -374,7 +407,26 @@ }, "id": "SegmentDefinition" }, + "ResourceQuotasRemaining": { + "type": "object", + "properties": { + "hourlyQuotaTokensRemaining": { + "description": "Hourly resource quota tokens remaining.", + "format": "int32", + "type": "integer" + }, + "dailyQuotaTokensRemaining": { + "description": "Daily resource quota remaining remaining.", + "format": "int32", + "type": "integer" + } + }, + "id": "ResourceQuotasRemaining", + "description": "The resource quota tokens remaining for the property after the request is\ncompleted." + }, "MetricHeaderEntry": { + "description": "Header for the metrics.", + "type": "object", "properties": { "name": { "description": "The name of the header.", @@ -401,59 +453,12 @@ "type": "string" } }, - "id": "MetricHeaderEntry", - "description": "Header for the metrics.", - "type": "object" - }, - "ResourceQuotasRemaining": { - "description": "The resource quota tokens remaining for the property after the request is\ncompleted.", - "type": "object", - "properties": { - "hourlyQuotaTokensRemaining": { - "description": "Hourly resource quota tokens remaining.", - "format": "int32", - "type": "integer" - }, - "dailyQuotaTokensRemaining": { - "description": "Daily resource quota remaining remaining.", - "format": "int32", - "type": "integer" - } - }, - "id": "ResourceQuotasRemaining" + "id": "MetricHeaderEntry" }, "ReportData": { "description": "The data part of the report.", "type": "object", "properties": { - "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", @@ -462,12 +467,12 @@ } }, "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" - } + }, + "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." }, "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.", @@ -483,6 +488,34 @@ "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" + } } }, "id": "ReportData" @@ -491,17 +524,6 @@ "description": "Dimension filter specifies the filtering options on a dimension.", "type": "object", "properties": { - "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" - }, - "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" - } - }, "caseSensitive": { "description": "Should the match be case sensitive? Default is false.", "type": "boolean" @@ -511,8 +533,6 @@ "type": "string" }, "operator": { - "description": "How to match the dimension to the expression. The default is REGEXP.", - "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 match types\nare not treated as regular expressions.", @@ -536,20 +556,29 @@ "NUMERIC_GREATER_THAN", "NUMERIC_LESS_THAN", "IN_LIST" - ] + ], + "description": "How to match the dimension to the expression. The default is REGEXP.", + "type": "string" + }, + "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" + }, + "expressions": { + "type": "array", + "items": { + "type": "string" + }, + "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." } }, "id": "DimensionFilter" }, "SegmentDimensionFilter": { "properties": { - "caseSensitive": { - "description": "Should the match be case sensitive, ignored for `IN_LIST` operator.", - "type": "boolean" - }, "minComparisonValue": { - "type": "string", - "description": "Minimum comparison values for `BETWEEN` match type." + "description": "Minimum comparison values for `BETWEEN` match type.", + "type": "string" }, "maxComparisonValue": { "description": "Maximum comparison values for `BETWEEN` match type.", @@ -560,18 +589,6 @@ "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 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", @@ -585,14 +602,30 @@ "NUMERIC_BETWEEN" ], "description": "The operator to use to match the dimension with the expressions.", - "type": "string" + "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." + ] }, "expressions": { - "description": "The list of expressions, only the first element is used for all operators", "type": "array", "items": { "type": "string" - } + }, + "description": "The list of expressions, only the first element is used for all operators" + }, + "caseSensitive": { + "description": "Should the match be case sensitive, ignored for `IN_LIST` operator.", + "type": "boolean" } }, "id": "SegmentDimensionFilter", @@ -600,14 +633,20 @@ "type": "object" }, "OrderBy": { - "description": "Specifies the sorting options.", - "type": "object", "properties": { "fieldName": { - "type": "string", - "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." + "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", @@ -617,19 +656,9 @@ "DIMENSION_AS_INTEGER" ], "description": "The order type. The default orderType is `VALUE`.", - "type": "string", - "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.", - "type": "string", "enumDescriptions": [ "If the sort order is unspecified, the default is ascending.", "Ascending sort. The field will be sorted in an ascending manner.", @@ -639,10 +668,14 @@ "SORT_ORDER_UNSPECIFIED", "ASCENDING", "DESCENDING" - ] + ], + "description": "The sorting order for the field.", + "type": "string" } }, - "id": "OrderBy" + "id": "OrderBy", + "description": "Specifies the sorting options.", + "type": "object" }, "Segment": { "properties": { @@ -660,16 +693,15 @@ "type": "object" }, "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" - } + }, + "description": "A sequence is specified with a list of Or grouped filters which are\ncombined with `AND` operator." }, "matchType": { "enumDescriptions": [ @@ -685,12 +717,10 @@ "description": "Specifies if the step immediately precedes or can be any time before the\nnext step.", "type": "string" } - } + }, + "id": "SegmentSequenceStep" }, "Metric": { - "id": "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": { "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.", @@ -720,27 +750,33 @@ "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" } - } + }, + "id": "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" }, "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" - }, - "description": "The values of the metrics in each of the pivot regions." + } } }, - "id": "PivotValueRegion" + "id": "PivotValueRegion", + "description": "The metric values in the pivot region." }, "Report": { - "id": "Report", "description": "The data response corresponding to the request.", "type": "object", "properties": { + "columnHeader": { + "$ref": "ColumnHeader", + "description": "The column headers." + }, "data": { "description": "Response data.", "$ref": "ReportData" @@ -748,12 +784,9 @@ "nextPageToken": { "description": "Page token to retrieve the next page of results in the list.", "type": "string" - }, - "columnHeader": { - "$ref": "ColumnHeader", - "description": "The column headers." } - } + }, + "id": "Report" }, "PivotHeader": { "type": "object", @@ -779,24 +812,27 @@ "type": "object", "properties": { "startDate": { - "description": "The start date for the query in the format `YYYY-MM-DD`.", - "type": "string" + "type": "string", + "description": "The start date for the query in the format `YYYY-MM-DD`." }, "endDate": { - "description": "The end date for the query in the format `YYYY-MM-DD`.", - "type": "string" + "type": "string", + "description": "The end date for the query in the format `YYYY-MM-DD`." } }, "id": "DateRange" }, "MetricFilter": { + "description": "MetricFilter specifies the filter on a metric.", "type": "object", "properties": { "comparisonValue": { - "description": "The value to compare against.", - "type": "string" + "type": "string", + "description": "The value to compare against." }, "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.", + "type": "string", "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.", @@ -810,9 +846,7 @@ "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.", @@ -823,24 +857,12 @@ "type": "string" } }, - "id": "MetricFilter", - "description": "MetricFilter specifies the filter on a metric." + "id": "MetricFilter" }, "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", @@ -853,21 +875,21 @@ "format": "int32", "type": "integer" }, - "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" - }, "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": { + "type": "boolean", + "description": "If set to true, hides the minimum and maximum across all matching rows.\nThe default is false and the value ranges are returned." + }, "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" + "type": "string", + "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)." }, "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." + "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" }, "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`.", @@ -881,11 +903,11 @@ } }, "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" - }, - "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." + } }, "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.", @@ -902,7 +924,6 @@ } }, "samplingLevel": { - "type": "string", "enumDescriptions": [ "If the `samplingLevel` field is unspecified the `DEFAULT` sampling level\nis used.", "Returns response with a sample size that balances speed and\naccuracy.", @@ -915,7 +936,8 @@ "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." + "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.", @@ -934,11 +956,23 @@ "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.", + "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" } }, "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": { "histogramBuckets": { @@ -954,63 +988,60 @@ "type": "string" } }, - "id": "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" + }, + "DynamicSegment": { + "description": "Dynamic segment definition for defining the segment within the request.\nA segment can select users, sessions or both.", + "type": "object", + "properties": { + "userSegment": { + "$ref": "SegmentDefinition", + "description": "User Segment to select users to include in the segment." + }, + "sessionSegment": { + "description": "Session Segment to select sessions to include in the segment.", + "$ref": "SegmentDefinition" + }, + "name": { + "description": "The name of the dynamic segment.", + "type": "string" + } + }, + "id": "DynamicSegment" }, "SimpleSegment": { "type": "object", "properties": { "orFiltersForSegment": { - "description": "A list of segment filters groups which are combined with logical `AND`\noperator.", "type": "array", "items": { "$ref": "OrFiltersForSegment" - } + }, + "description": "A list of segment filters groups which are combined with logical `AND`\noperator." } }, "id": "SimpleSegment", "description": "A Simple segment conditions consist of one or more dimension/metric\nconditions that can be combined." }, - "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": { - "description": "User Segment to select users to include in the segment.", - "$ref": "SegmentDefinition" - }, - "sessionSegment": { - "$ref": "SegmentDefinition", - "description": "Session Segment to select sessions to include in the segment." - } - }, - "id": "DynamicSegment" - }, "ColumnHeader": { "description": "Column headers.", "type": "object", "properties": { + "metricHeader": { + "$ref": "MetricHeader", + "description": "Metric headers for the metrics in the response." + }, "dimensions": { "description": "The dimension names in the response.", "type": "array", "items": { "type": "string" } - }, - "metricHeader": { - "$ref": "MetricHeader", - "description": "Metric headers for the metrics in the response." } }, "id": "ColumnHeader" }, "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", @@ -1021,30 +1052,30 @@ "type": "boolean" }, "dimensionFilter": { - "$ref": "SegmentDimensionFilter", - "description": "Dimension Filter for the segment definition." + "description": "Dimension Filter for the segment definition.", + "$ref": "SegmentDimensionFilter" } }, - "id": "SegmentFilterClause" + "id": "SegmentFilterClause", + "description": "Filter Clause to be used in a segment definition, can be wither a metric or\na dimension filter.", + "type": "object" }, "MetricFilterClause": { - "id": "MetricFilterClause", - "description": "Represents a group of metric filters.\nSet the operator value to specify how the filters are logically combined.", "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" + "type": "string", + "enumDescriptions": [ + "Unspecified operator. It is treated as an `OR`.", + "The logical `OR` operator.", + "The logical `AND` operator." + ] }, "filters": { "description": "The repeated set of filters. They are logically combined based on the\noperator specified.", @@ -1053,10 +1084,11 @@ "$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": { @@ -1064,10 +1096,12 @@ "type": "string" }, "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." + "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": { + "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.", + "type": "string", "enumDescriptions": [ "If unspecified it's treated as `FIRST_VISIT_DATE`.", "Cohorts that are selected based on first visit date." @@ -1075,23 +1109,22 @@ "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.", - "type": "string" + ] } }, - "id": "Cohort" + "id": "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." }, "ReportRow": { "description": "A row in the report.", "type": "object", "properties": { "metrics": { + "description": "List of metrics for each requested DateRange.", "type": "array", "items": { "$ref": "DateRangeValues" - }, - "description": "List of metrics for each requested DateRange." + } }, "dimensions": { "description": "List of requested dimensions.", @@ -1104,6 +1137,7 @@ "id": "ReportRow" }, "OrFiltersForSegment": { + "id": "OrFiltersForSegment", "description": "A list of segment filters in the `OR` group are combined with the logical OR\noperator.", "type": "object", "properties": { @@ -1114,10 +1148,11 @@ "$ref": "SegmentFilterClause" } } - }, - "id": "OrFiltersForSegment" + } }, "MetricHeader": { + "id": "MetricHeader", + "description": "The headers for the metrics.", "type": "object", "properties": { "metricHeaderEntries": { @@ -1134,60 +1169,25 @@ "$ref": "PivotHeader" } } - }, - "id": "MetricHeader", - "description": "The headers for the metrics." - }, - "DimensionFilterClause": { - "properties": { - "operator": { - "enum": [ - "OPERATOR_UNSPECIFIED", - "OR", - "AND" - ], - "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." - ] - }, - "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" + } } }, "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" + "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": "AnalyticsReporting", "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" + }, + "https://www.googleapis.com/auth/analytics": { + "description": "View and manage your Google Analytics data" } } } - }, - "rootUrl": "https://analyticsreporting.googleapis.com/", - "ownerDomain": "google.com", - "name": "analyticsreporting", - "batchPath": "batch", - "title": "Google Analytics Reporting API" + } } diff --git a/DiscoveryJson/androiddeviceprovisioning_v1.json b/DiscoveryJson/androiddeviceprovisioning_v1.json index 46dd57ff3c..20b963a8e4 100644 --- a/DiscoveryJson/androiddeviceprovisioning_v1.json +++ b/DiscoveryJson/androiddeviceprovisioning_v1.json @@ -1,34 +1,17 @@ { + "rootUrl": "https://androiddeviceprovisioning.googleapis.com/", + "basePath": "", + "ownerDomain": "google.com", + "name": "androiddeviceprovisioning", + "batchPath": "batch", + "revision": "20180506", + "documentationLink": "https://developers.google.com/zero-touch/", + "id": "androiddeviceprovisioning:v1", + "title": "Android Device Provisioning Partner API", "discoveryVersion": "v1", "ownerName": "Google", "version_module": true, "resources": { - "operations": { - "methods": { - "get": { - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "name": { - "description": "The name of the operation resource.", - "required": true, - "type": "string", - "pattern": "^operations/.+$", - "location": "path" - } - }, - "flatPath": "v1/operations/{operationsId}", - "id": "androiddeviceprovisioning.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." - } - } - }, "customers": { "methods": { "list": { @@ -57,36 +40,84 @@ } }, "resources": { - "dpcs": { + "devices": { "methods": { - "list": { - "description": "Lists the DPCs (device policy controllers) that support zero-touch\nenrollment.", + "unclaim": { + "request": { + "$ref": "CustomerUnclaimDeviceRequest" + }, + "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.", "response": { - "$ref": "CustomerListDpcsResponse" + "$ref": "Empty" }, "parameterOrder": [ "parent" ], - "httpMethod": "GET", + "httpMethod": "POST", "parameters": { "parent": { + "description": "Required. The customer managing the device. An API resource name in the\nformat `customers/[CUSTOMER_ID]`.", + "required": true, + "type": "string", "pattern": "^customers/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/customers/{customersId}/devices:unclaim", + "path": "v1/{+parent}/devices:unclaim", + "id": "androiddeviceprovisioning.customers.devices.unclaim" + }, + "removeConfiguration": { + "flatPath": "v1/customers/{customersId}/devices:removeConfiguration", + "path": "v1/{+parent}/devices:removeConfiguration", + "id": "androiddeviceprovisioning.customers.devices.removeConfiguration", + "description": "Removes a configuration from device.", + "request": { + "$ref": "CustomerRemoveConfigurationRequest" + }, + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "parameters": { + "parent": { "location": "path", - "description": "Required. The customer that can use the DPCs in configurations. An API\nresource name in the format `customers/[CUSTOMER_ID]`.", + "description": "Required. The customer managing the device in the format\n`customers/[CUSTOMER_ID]`.", "required": true, - "type": "string" + "type": "string", + "pattern": "^customers/[^/]+$" } + } + }, + "applyConfiguration": { + "flatPath": "v1/customers/{customersId}/devices:applyConfiguration", + "path": "v1/{+parent}/devices:applyConfiguration", + "id": "androiddeviceprovisioning.customers.devices.applyConfiguration", + "request": { + "$ref": "CustomerApplyConfigurationRequest" }, - "flatPath": "v1/customers/{customersId}/dpcs", - "path": "v1/{+parent}/dpcs", - "id": "androiddeviceprovisioning.customers.dpcs.list" - } - } - }, - "devices": { - "methods": { + "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.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "parameters": { + "parent": { + "description": "Required. The customer managing the device. An API resource name in the\nformat `customers/[CUSTOMER_ID]`.", + "required": true, + "type": "string", + "pattern": "^customers/[^/]+$", + "location": "path" + } + } + }, "list": { - "description": "Lists a customer's devices.", "response": { "$ref": "CustomerListDevicesResponse" }, @@ -101,22 +132,23 @@ "type": "string" }, "pageSize": { + "location": "query", "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" + "type": "string" }, "parent": { + "location": "path", "description": "Required. The customer managing the devices. An API resource name in the\nformat `customers/[CUSTOMER_ID]`.", "required": true, "type": "string", - "pattern": "^customers/[^/]+$", - "location": "path" + "pattern": "^customers/[^/]+$" } }, "flatPath": "v1/customers/{customersId}/devices", "path": "v1/{+parent}/devices", - "id": "androiddeviceprovisioning.customers.devices.list" + "id": "androiddeviceprovisioning.customers.devices.list", + "description": "Lists a customer's devices." }, "get": { "description": "Gets the details of a device.", @@ -139,109 +171,15 @@ "flatPath": "v1/customers/{customersId}/devices/{devicesId}", "path": "v1/{+name}", "id": "androiddeviceprovisioning.customers.devices.get" - }, - "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" - }, - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "parent": { - "description": "Required. The customer managing the device. An API resource name in the\nformat `customers/[CUSTOMER_ID]`.", - "required": true, - "type": "string", - "pattern": "^customers/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/customers/{customersId}/devices:unclaim", - "id": "androiddeviceprovisioning.customers.devices.unclaim", - "path": "v1/{+parent}/devices:unclaim" - }, - "removeConfiguration": { - "description": "Removes a configuration from device.", - "request": { - "$ref": "CustomerRemoveConfigurationRequest" - }, - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "description": "Required. The customer managing the device in the format\n`customers/[CUSTOMER_ID]`.", - "required": true, - "type": "string", - "pattern": "^customers/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/customers/{customersId}/devices:removeConfiguration", - "path": "v1/{+parent}/devices:removeConfiguration", - "id": "androiddeviceprovisioning.customers.devices.removeConfiguration" - }, - "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" - }, - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "parent": { - "description": "Required. The customer managing the device. An API resource name in the\nformat `customers/[CUSTOMER_ID]`.", - "required": true, - "type": "string", - "pattern": "^customers/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/customers/{customersId}/devices:applyConfiguration", - "id": "androiddeviceprovisioning.customers.devices.applyConfiguration", - "path": "v1/{+parent}/devices:applyConfiguration" } } }, "configurations": { "methods": { - "delete": { + "get": { "flatPath": "v1/customers/{customersId}/configurations/{configurationsId}", "path": "v1/{+name}", - "id": "androiddeviceprovisioning.customers.configurations.delete", - "description": "Deletes an unused configuration. The API call fails if the customer has\ndevices with the configuration applied.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "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.", - "required": true, - "type": "string", - "pattern": "^customers/[^/]+/configurations/[^/]+$", - "location": "path" - } - } - }, - "get": { + "id": "androiddeviceprovisioning.customers.configurations.get", "description": "Gets the details of a configuration.", "response": { "$ref": "Configuration" @@ -258,12 +196,13 @@ "pattern": "^customers/[^/]+/configurations/[^/]+$", "location": "path" } - }, - "flatPath": "v1/customers/{customersId}/configurations/{configurationsId}", - "path": "v1/{+name}", - "id": "androiddeviceprovisioning.customers.configurations.get" + } }, "patch": { + "description": "Updates a configuration's field values.", + "request": { + "$ref": "Configuration" + }, "response": { "$ref": "Configuration" }, @@ -272,58 +211,58 @@ ], "httpMethod": "PATCH", "parameters": { + "name": { + "pattern": "^customers/[^/]+/configurations/[^/]+$", + "location": "path", + "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" + }, "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", "type": "string", "location": "query" - }, - "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", - "request": { - "$ref": "Configuration" - }, - "description": "Updates a configuration's field values." + "id": "androiddeviceprovisioning.customers.configurations.patch" }, "list": { + "flatPath": "v1/customers/{customersId}/configurations", + "path": "v1/{+parent}/configurations", + "id": "androiddeviceprovisioning.customers.configurations.list", "description": "Lists a customer's configurations.", - "httpMethod": "GET", "response": { "$ref": "CustomerListConfigurationsResponse" }, "parameterOrder": [ "parent" ], + "httpMethod": "GET", "parameters": { "parent": { - "pattern": "^customers/[^/]+$", "location": "path", "description": "Required. The customer that manages the listed configurations. An API\nresource name in the format `customers/[CUSTOMER_ID]`.", "required": true, - "type": "string" + "type": "string", + "pattern": "^customers/[^/]+$" } - }, - "flatPath": "v1/customers/{customersId}/configurations", - "id": "androiddeviceprovisioning.customers.configurations.list", - "path": "v1/{+parent}/configurations" + } }, "create": { - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], + "description": "Creates a new configuration. Once created, a customer can apply the\nconfiguration to devices.", + "request": { + "$ref": "Configuration" + }, "response": { "$ref": "Configuration" }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", "parameters": { "parent": { "pattern": "^customers/[^/]+$", @@ -334,13 +273,57 @@ } }, "flatPath": "v1/customers/{customersId}/configurations", - "id": "androiddeviceprovisioning.customers.configurations.create", "path": "v1/{+parent}/configurations", - "description": "Creates a new configuration. Once created, a customer can apply the\nconfiguration to devices.", - "request": { - "$ref": "Configuration" - } - } + "id": "androiddeviceprovisioning.customers.configurations.create" + }, + "delete": { + "description": "Deletes an unused configuration. The API call fails if the customer has\ndevices with the configuration applied.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "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.", + "required": true, + "type": "string", + "pattern": "^customers/[^/]+/configurations/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/customers/{customersId}/configurations/{configurationsId}", + "path": "v1/{+name}", + "id": "androiddeviceprovisioning.customers.configurations.delete" + } + } + }, + "dpcs": { + "methods": { + "list": { + "response": { + "$ref": "CustomerListDpcsResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "parameters": { + "parent": { + "pattern": "^customers/[^/]+$", + "location": "path", + "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" + } + }, + "flatPath": "v1/customers/{customersId}/dpcs", + "path": "v1/{+parent}/dpcs", + "id": "androiddeviceprovisioning.customers.dpcs.list", + "description": "Lists the DPCs (device policy controllers) that support zero-touch\nenrollment." + } } } } @@ -350,6 +333,13 @@ "devices": { "methods": { "claimAsync": { + "flatPath": "v1/partners/{partnersId}/devices:claimAsync", + "path": "v1/partners/{+partnerId}/devices:claimAsync", + "id": "androiddeviceprovisioning.partners.devices.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).", + "request": { + "$ref": "ClaimDevicesRequest" + }, "response": { "$ref": "Operation" }, @@ -359,30 +349,20 @@ "httpMethod": "POST", "parameters": { "partnerId": { + "location": "path", "description": "Required. The ID of the reseller partner.", "pattern": "^[^/]+$", "format": "int64", "required": true, - "type": "string", - "location": "path" + "type": "string" } - }, - "flatPath": "v1/partners/{partnersId}/devices:claimAsync", - "path": "v1/partners/{+partnerId}/devices:claimAsync", - "id": "androiddeviceprovisioning.partners.devices.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).", - "request": { - "$ref": "ClaimDevicesRequest" } }, "findByIdentifier": { - "flatPath": "v1/partners/{partnersId}/devices:findByIdentifier", - "path": "v1/partners/{+partnerId}/devices:findByIdentifier", - "id": "androiddeviceprovisioning.partners.devices.findByIdentifier", - "description": "Finds devices by hardware identifiers, such as IMEI.", "request": { "$ref": "FindDevicesByDeviceIdentifierRequest" }, + "description": "Finds devices by hardware identifiers, such as IMEI.", "response": { "$ref": "FindDevicesByDeviceIdentifierResponse" }, @@ -399,9 +379,19 @@ "required": true, "type": "string" } - } + }, + "flatPath": "v1/partners/{partnersId}/devices:findByIdentifier", + "path": "v1/partners/{+partnerId}/devices:findByIdentifier", + "id": "androiddeviceprovisioning.partners.devices.findByIdentifier" }, "unclaimAsync": { + "flatPath": "v1/partners/{partnersId}/devices:unclaimAsync", + "path": "v1/partners/{+partnerId}/devices:unclaimAsync", + "id": "androiddeviceprovisioning.partners.devices.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).", + "request": { + "$ref": "UnclaimDevicesRequest" + }, "response": { "$ref": "Operation" }, @@ -418,51 +408,48 @@ "type": "string", "location": "path" } - }, - "flatPath": "v1/partners/{partnersId}/devices:unclaimAsync", - "path": "v1/partners/{+partnerId}/devices:unclaimAsync", - "id": "androiddeviceprovisioning.partners.devices.unclaimAsync", - "request": { - "$ref": "UnclaimDevicesRequest" - }, - "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)." + } }, "metadata": { - "httpMethod": "POST", + "path": "v1/partners/{+metadataOwnerId}/devices/{+deviceId}/metadata", + "id": "androiddeviceprovisioning.partners.devices.metadata", + "request": { + "$ref": "UpdateDeviceMetadataRequest" + }, + "description": "Updates reseller metadata associated with the device.", + "response": { + "$ref": "DeviceMetadata" + }, "parameterOrder": [ "metadataOwnerId", "deviceId" ], - "response": { - "$ref": "DeviceMetadata" - }, + "httpMethod": "POST", "parameters": { "metadataOwnerId": { - "format": "int64", - "required": true, - "type": "string", "location": "path", "description": "Required. The owner of the newly set metadata. Set this to the partner ID.", - "pattern": "^[^/]+$" + "pattern": "^[^/]+$", + "format": "int64", + "required": true, + "type": "string" }, "deviceId": { + "location": "path", "description": "Required. The ID of the reseller partner.", "pattern": "^[^/]+$", "format": "int64", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, - "flatPath": "v1/partners/{partnersId}/devices/{devicesId}/metadata", - "id": "androiddeviceprovisioning.partners.devices.metadata", - "path": "v1/partners/{+metadataOwnerId}/devices/{+deviceId}/metadata", - "description": "Updates reseller metadata associated with the device.", - "request": { - "$ref": "UpdateDeviceMetadataRequest" - } + "flatPath": "v1/partners/{partnersId}/devices/{devicesId}/metadata" }, "updateMetadataAsync": { + "request": { + "$ref": "UpdateDeviceMetadataInBatchRequest" + }, + "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).", "response": { "$ref": "Operation" }, @@ -472,23 +459,23 @@ "httpMethod": "POST", "parameters": { "partnerId": { - "location": "path", - "description": "Required. The reseller partner ID.", - "pattern": "^[^/]+$", "format": "int64", "required": true, - "type": "string" + "type": "string", + "location": "path", + "description": "Required. The reseller partner ID.", + "pattern": "^[^/]+$" } }, "flatPath": "v1/partners/{partnersId}/devices:updateMetadataAsync", "path": "v1/partners/{+partnerId}/devices:updateMetadataAsync", - "id": "androiddeviceprovisioning.partners.devices.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).", - "request": { - "$ref": "UpdateDeviceMetadataInBatchRequest" - } + "id": "androiddeviceprovisioning.partners.devices.updateMetadataAsync" }, "get": { + "flatPath": "v1/partners/{partnersId}/devices/{devicesId}", + "path": "v1/{+name}", + "id": "androiddeviceprovisioning.partners.devices.get", + "description": "Gets a device.", "response": { "$ref": "Device" }, @@ -498,23 +485,21 @@ "httpMethod": "GET", "parameters": { "name": { - "pattern": "^partners/[^/]+/devices/[^/]+$", - "location": "path", "description": "Required. The device API resource name in the format\n`partners/[PARTNER_ID]/devices/[DEVICE_ID]`.", "required": true, - "type": "string" + "type": "string", + "pattern": "^partners/[^/]+/devices/[^/]+$", + "location": "path" } - }, - "flatPath": "v1/partners/{partnersId}/devices/{devicesId}", - "path": "v1/{+name}", - "id": "androiddeviceprovisioning.partners.devices.get", - "description": "Gets a device." + } }, "unclaim": { + "path": "v1/partners/{+partnerId}/devices:unclaim", + "id": "androiddeviceprovisioning.partners.devices.unclaim", + "description": "Unclaims a device from a customer and removes it from zero-touch\nenrollment.", "request": { "$ref": "UnclaimDeviceRequest" }, - "description": "Unclaims a device from a customer and removes it from zero-touch\nenrollment.", "response": { "$ref": "Empty" }, @@ -532,15 +517,9 @@ "pattern": "^[^/]+$" } }, - "flatPath": "v1/partners/{partnersId}/devices:unclaim", - "path": "v1/partners/{+partnerId}/devices:unclaim", - "id": "androiddeviceprovisioning.partners.devices.unclaim" + "flatPath": "v1/partners/{partnersId}/devices:unclaim" }, "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.", - "request": { - "$ref": "FindDevicesByOwnerRequest" - }, "response": { "$ref": "FindDevicesByOwnerResponse" }, @@ -550,49 +529,56 @@ "httpMethod": "POST", "parameters": { "partnerId": { + "description": "Required. The ID of the reseller partner.", + "pattern": "^[^/]+$", "format": "int64", "required": true, "type": "string", - "location": "path", - "description": "Required. The ID of the reseller partner.", - "pattern": "^[^/]+$" + "location": "path" } }, "flatPath": "v1/partners/{partnersId}/devices:findByOwner", "path": "v1/partners/{+partnerId}/devices:findByOwner", - "id": "androiddeviceprovisioning.partners.devices.findByOwner" + "id": "androiddeviceprovisioning.partners.devices.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.", + "request": { + "$ref": "FindDevicesByOwnerRequest" + } }, "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.", - "request": { - "$ref": "ClaimDeviceRequest" + "response": { + "$ref": "ClaimDeviceResponse" }, - "httpMethod": "POST", "parameterOrder": [ "partnerId" ], - "response": { - "$ref": "ClaimDeviceResponse" - }, + "httpMethod": "POST", "parameters": { "partnerId": { - "location": "path", - "description": "Required. The ID of the reseller partner.", - "pattern": "^[^/]+$", "format": "int64", "required": true, - "type": "string" + "type": "string", + "location": "path", + "description": "Required. The ID of the reseller partner.", + "pattern": "^[^/]+$" } }, "flatPath": "v1/partners/{partnersId}/devices:claim", + "path": "v1/partners/{+partnerId}/devices:claim", "id": "androiddeviceprovisioning.partners.devices.claim", - "path": "v1/partners/{+partnerId}/devices: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.", + "request": { + "$ref": "ClaimDeviceRequest" + } } } }, "customers": { "methods": { "list": { + "path": "v1/partners/{+partnerId}/customers", + "id": "androiddeviceprovisioning.partners.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" }, @@ -602,31 +588,24 @@ "httpMethod": "GET", "parameters": { "partnerId": { + "location": "path", "description": "Required. The ID of the reseller partner.", "pattern": "^[^/]+$", "format": "int64", - "type": "string", "required": true, - "location": "path" + "type": "string" } }, - "flatPath": "v1/partners/{partnersId}/customers", - "path": "v1/partners/{+partnerId}/customers", - "id": "androiddeviceprovisioning.partners.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." + "flatPath": "v1/partners/{partnersId}/customers" }, "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.", - "response": { - "$ref": "Company" - }, + "httpMethod": "POST", "parameterOrder": [ "parent" ], - "httpMethod": "POST", + "response": { + "$ref": "Company" + }, "parameters": { "parent": { "pattern": "^partners/[^/]+$", @@ -637,45 +616,96 @@ } }, "flatPath": "v1/partners/{partnersId}/customers", + "id": "androiddeviceprovisioning.partners.customers.create", "path": "v1/{+parent}/customers", - "id": "androiddeviceprovisioning.partners.customers.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.", + "request": { + "$ref": "CreateCustomerRequest" + } } } } } + }, + "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": { + "description": "The name of the operation resource.", + "required": true, + "type": "string", + "pattern": "^operations/.+$", + "location": "path" + } + }, + "flatPath": "v1/operations/{operationsId}", + "id": "androiddeviceprovisioning.operations.get", + "path": "v1/{+name}" + } + } } }, "parameters": { - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", + "access_token": { + "description": "OAuth access token.", "type": "string", "location": "query" }, - "bearer_token": { - "description": "OAuth bearer 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" }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "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" }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", + "pp": { + "description": "Pretty-print response.", + "type": "boolean", "default": "true", "location": "query" }, - "uploadType": { + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "type": "string", + "location": "query" + }, + "bearer_token": { "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "description": "OAuth bearer token.", "type": "string" }, - "fields": { + "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" + "type": "string", + "location": "query" }, "$.xgafv": { "description": "V1 error format.", @@ -691,9 +721,9 @@ ] }, "callback": { - "location": "query", "description": "JSONP", - "type": "string" + "type": "string", + "location": "query" }, "alt": { "enumDescriptions": [ @@ -710,159 +740,139 @@ "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" } }, "schemas": { - "CustomerUnclaimDeviceRequest": { - "description": "Request message for customer to unclaim a device.", + "CustomerListCustomersResponse": { + "description": "Response message for listing my customers.", "type": "object", "properties": { - "device": { - "$ref": "DeviceReference", - "description": "Required. The device to unclaim." + "customers": { + "description": "The customer accounts the calling user is a member of.", + "type": "array", + "items": { + "$ref": "Company" + } + }, + "nextPageToken": { + "description": "A token used to access the next page of results. Omitted if no further\nresults are available.", + "type": "string" } }, - "id": "CustomerUnclaimDeviceRequest" + "id": "CustomerListCustomersResponse" }, - "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.", + "CustomerListDevicesResponse": { + "description": "Response message of customer's liting devices.", "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.", + "devices": { + "description": "The customer's devices.", "type": "array", "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" + "$ref": "Device" } }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" + "nextPageToken": { + "description": "A token used to access the next page of results. Omitted if no further\nresults are available.", + "type": "string" } }, - "id": "Status" + "id": "CustomerListDevicesResponse" }, - "FindDevicesByDeviceIdentifierRequest": { - "description": "Request to find devices.", + "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", "properties": { - "limit": { - "description": "Required. The maximum number of devices to show in a page of results. Must\nbe between 1 and 100 inclusive.", + "ownerCompanyId": { + "description": "The ID of the Customer that purchased the device.", "format": "int64", "type": "string" }, - "deviceIdentifier": { - "description": "Required. The device identifier to search for.", - "$ref": "DeviceIdentifier" - }, - "pageToken": { - "description": "A token specifying which result page to return.", + "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.", "type": "string" } }, - "id": "FindDevicesByDeviceIdentifierRequest" + "id": "DeviceClaim" }, - "OperationPerDevice": { + "DevicesLongRunningOperationResponse": { "properties": { - "updateMetadata": { - "description": "A copy of the original metadata-update request received by the server.", - "$ref": "UpdateMetadataArguments" - }, - "unclaim": { - "description": "A copy of the original device-unclaim request received by the server.", - "$ref": "PartnerUnclaim" - }, - "result": { - "$ref": "PerDeviceStatusInBatch", - "description": "The processing result for each device." + "successCount": { + "description": "A summary of how many items in the operation the server processed\nsuccessfully. Updated as the operation progresses.", + "format": "int32", + "type": "integer" }, - "claim": { - "$ref": "PartnerClaim", - "description": "A copy of the original device-claim request received by the server." - } - }, - "id": "OperationPerDevice", - "description": "A task for each device in the operation. Corresponds to each device\nchange in the request.", - "type": "object" - }, - "CustomerListConfigurationsResponse": { - "description": "Response message of customer's listing configuration.", - "type": "object", - "properties": { - "configurations": { - "description": "The configurations.", + "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.", "type": "array", "items": { - "$ref": "Configuration" + "$ref": "OperationPerDevice" } } }, - "id": "CustomerListConfigurationsResponse" + "id": "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).", + "type": "object" }, - "FindDevicesByOwnerResponse": { - "description": "Response containing found devices.", + "PerDeviceStatusInBatch": { + "description": "Captures the processing status for each device in the operation.", "type": "object", "properties": { - "devices": { - "description": "The customer's devices.", - "type": "array", - "items": { - "$ref": "Device" - } + "errorMessage": { + "description": "If processing fails, a developer message explaining what went wrong.", + "type": "string" }, - "nextPageToken": { - "description": "A token used to access the next page of results.\nOmitted if no further results are available.", + "deviceId": { + "description": "If processing succeeds, the device ID of the device.", + "format": "int64", + "type": "string" + }, + "status": { + "description": "The result status of the device after processing.", + "type": "string", + "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" + ] + }, + "errorIdentifier": { + "description": "If processing fails, the error type.", "type": "string" } }, - "id": "FindDevicesByOwnerResponse" - }, - "CustomerRemoveConfigurationRequest": { - "properties": { - "device": { - "description": "Required. The device to remove the configuration from.", - "$ref": "DeviceReference" - } - }, - "id": "CustomerRemoveConfigurationRequest", - "description": "Request message for customer to remove the configuration from device.", - "type": "object" + "id": "PerDeviceStatusInBatch" }, - "ClaimDeviceRequest": { + "FindDevicesByOwnerRequest": { + "description": "Request to find devices by customers.", + "type": "object", "properties": { - "deviceIdentifier": { - "$ref": "DeviceIdentifier", - "description": "Required. The device identifier of the device to claim." + "pageToken": { + "description": "A token specifying which result page to return.", + "type": "string" }, "sectionType": { "enumDescriptions": [ @@ -877,33 +887,295 @@ "type": "string" }, "customerId": { - "description": "Required. The ID of the customer for whom the device is being claimed.", + "description": "Required. The list of customer IDs to search for.", + "type": "array", + "items": { + "format": "int64", + "type": "string" + } + }, + "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" } }, - "id": "ClaimDeviceRequest", - "description": "Request message to claim a device on behalf of a customer.", - "type": "object" + "id": "FindDevicesByOwnerRequest" }, - "DevicesLongRunningOperationMetadata": { + "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.", + "type": "object", "properties": { - "processingStatus": { - "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" - ], - "description": "The processing status of the operation.", + "claims": { + "description": "Required. A list of device claims.", + "type": "array", + "items": { + "$ref": "PartnerClaim" + } + } + }, + "id": "ClaimDevicesRequest" + }, + "DeviceIdentifier": { + "properties": { + "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).", + "type": "string" + }, + "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" + } + }, + "id": "DeviceIdentifier", + "description": "Encapsulates hardware and product IDs to identify a manufactured device. To\nlearn more, read [Identifiers](/zero-touch/guides/identifiers).", + "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": "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" + }, + "error": { + "description": "This field will always be not set if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`. In this case, error information for each device is set in `response.perDeviceStatus.result.status`.", + "$ref": "Status" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "This field will contain a `DevicesLongRunningOperationMetadata` object if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`.", + "type": "object" + } + }, + "id": "Operation" + }, + "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" + } + }, + "id": "Dpc", + "description": "An EMM's DPC ([device policy\ncontroller](http://developer.android.com/work/dpc/build-dpc.html)).\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": { + "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." + } + }, + "id": "CustomerApplyConfigurationRequest", + "description": "Request message for customer to assign a configuration to device.", + "type": "object" + }, + "UnclaimDevicesRequest": { + "properties": { + "unclaims": { + "description": "Required. The list of devices to unclaim.", + "type": "array", + "items": { + "$ref": "PartnerUnclaim" + } + } + }, + "id": "UnclaimDevicesRequest", + "description": "Request to unclaim devices asynchronously in batch.", + "type": "object" + }, + "CustomerUnclaimDeviceRequest": { + "properties": { + "device": { + "description": "Required. The device to unclaim.", + "$ref": "DeviceReference" + } + }, + "id": "CustomerUnclaimDeviceRequest", + "description": "Request message for customer to unclaim a device.", + "type": "object" + }, + "FindDevicesByDeviceIdentifierRequest": { + "description": "Request to find devices.", + "type": "object", + "properties": { + "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" + }, + "deviceIdentifier": { + "$ref": "DeviceIdentifier", + "description": "Required. The device identifier to search for." + }, + "pageToken": { + "description": "A token specifying which result page to return.", + "type": "string" + } + }, + "id": "FindDevicesByDeviceIdentifierRequest" + }, + "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" + }, + "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": "A task for each device in the operation. Corresponds to each device\nchange in the request.", + "type": "object", + "properties": { + "claim": { + "$ref": "PartnerClaim", + "description": "A copy of the original device-claim request received by the server." + }, + "updateMetadata": { + "$ref": "UpdateMetadataArguments", + "description": "A copy of the original metadata-update request received by the server." + }, + "unclaim": { + "description": "A copy of the original device-unclaim request received by the server.", + "$ref": "PartnerUnclaim" + }, + "result": { + "$ref": "PerDeviceStatusInBatch", + "description": "The processing result for each device." + } + }, + "id": "OperationPerDevice" + }, + "FindDevicesByOwnerResponse": { + "description": "Response containing found devices.", + "type": "object", + "properties": { + "devices": { + "description": "The customer's devices.", + "type": "array", + "items": { + "$ref": "Device" + } + }, + "nextPageToken": { + "description": "A token used to access the next page of results.\nOmitted if no further results are available.", + "type": "string" + } + }, + "id": "FindDevicesByOwnerResponse" + }, + "CustomerRemoveConfigurationRequest": { + "description": "Request message for customer to remove the configuration from device.", + "type": "object", + "properties": { + "device": { + "description": "Required. The device to remove the configuration from.", + "$ref": "DeviceReference" + } + }, + "id": "CustomerRemoveConfigurationRequest" + }, + "ClaimDeviceRequest": { + "description": "Request message to claim a device on behalf of a customer.", + "type": "object", + "properties": { + "deviceIdentifier": { + "description": "Required. The device identifier of the device to claim.", + "$ref": "DeviceIdentifier" + }, + "sectionType": { + "description": "Required. The section type of the device's provisioning record.", + "type": "string", + "enumDescriptions": [ + "Unspecified section type.", + "Zero-touch enrollment section type." + ], + "enum": [ + "SECTION_TYPE_UNSPECIFIED", + "SECTION_TYPE_ZERO_TOUCH" + ] + }, + "customerId": { + "description": "Required. The ID of the customer for whom the device is being claimed.", + "format": "int64", + "type": "string" + } + }, + "id": "ClaimDeviceRequest" + }, + "DevicesLongRunningOperationMetadata": { + "properties": { "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", @@ -913,6 +1185,22 @@ "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.", + "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" + ] } }, "id": "DevicesLongRunningOperationMetadata", @@ -951,37 +1239,37 @@ "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" - }, - "deviceName": { - "description": "The resource name of the device in the format\n`partners/[PARTNER_ID]/devices/[DEVICE_ID]`.", - "type": "string" } }, "id": "ClaimDeviceResponse" }, "UpdateMetadataArguments": { - "description": "Identifies metdata updates to one device.", - "type": "object", "properties": { + "deviceId": { + "description": "Device ID of the device.", + "format": "int64", + "type": "string" + }, "deviceIdentifier": { - "$ref": "DeviceIdentifier", - "description": "Device identifier." + "description": "Device identifier.", + "$ref": "DeviceIdentifier" }, "deviceMetadata": { "description": "Required. The metadata to update.", "$ref": "DeviceMetadata" - }, - "deviceId": { - "description": "Device ID of the device.", - "format": "int64", - "type": "string" } }, - "id": "UpdateMetadataArguments" + "id": "UpdateMetadataArguments", + "description": "Identifies metdata updates to one device.", + "type": "object" }, "DeviceReference": { "properties": { @@ -1001,6 +1289,10 @@ }, "Device": { "properties": { + "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", @@ -1009,12 +1301,12 @@ } }, "deviceIdentifier": { - "description": "The hardware IDs that identify a manufactured device. To learn more, read\n[Identifiers](/zero-touch/guides/identifiers).", - "$ref": "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" + "$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.", @@ -1024,10 +1316,6 @@ "description": "Output only. The ID of the device. Assigned by the server.", "format": "int64", "type": "string" - }, - "configuration": { - "description": "Not available to resellers.", - "type": "string" } }, "id": "Device", @@ -1035,15 +1323,15 @@ "type": "object" }, "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." + "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.", + "$ref": "Company" } }, - "id": "CreateCustomerRequest", - "description": "Request message to create a customer.", - "type": "object" + "id": "CreateCustomerRequest" }, "Company": { "description": "A customer resource in the zero-touch enrollment API.", @@ -1079,35 +1367,33 @@ }, "id": "Company" }, + "UpdateDeviceMetadataRequest": { + "description": "Request to set metadata for a device.", + "type": "object", + "properties": { + "deviceMetadata": { + "$ref": "DeviceMetadata", + "description": "Required. The metdata to attach to the device." + } + }, + "id": "UpdateDeviceMetadataRequest" + }, "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", "properties": { - "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" - }, - "configurationId": { - "description": "Output only. The ID of the configuration. Assigned by the server.", - "format": "int64", - "type": "string" - }, - "companyName": { - "description": "Required. The name of the organization. Zero-touch enrollment shows this\norganization name to device users during device provisioning.", - "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" }, - "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" }, + "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" @@ -1116,212 +1402,51 @@ "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" - }, - "UpdateDeviceMetadataRequest": { - "description": "Request to set metadata for a device.", - "type": "object", - "properties": { - "deviceMetadata": { - "description": "Required. The metdata to attach to the device.", - "$ref": "DeviceMetadata" - } - }, - "id": "UpdateDeviceMetadataRequest" - }, - "CustomerListDpcsResponse": { - "description": "Response message of customer's listing DPCs.", - "type": "object", - "properties": { - "dpcs": { - "description": "The list of DPCs available to the customer that support zero-touch\nenrollment.", - "type": "array", - "items": { - "$ref": "Dpc" - } - } - }, - "id": "CustomerListDpcsResponse" - }, - "PartnerUnclaim": { - "description": "Identifies one unclaim request.", - "type": "object", - "properties": { - "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.", - "type": "string", - "enumDescriptions": [ - "Unspecified section type.", - "Zero-touch enrollment section type." - ], - "enum": [ - "SECTION_TYPE_UNSPECIFIED", - "SECTION_TYPE_ZERO_TOUCH" - ] - } - }, - "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": { - "properties": { - "devices": { - "description": "Found devices.", - "type": "array", - "items": { - "$ref": "Device" - } }, - "nextPageToken": { - "description": "A token used to access the next page of results. Omitted if no further\nresults are available.", + "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" - } - }, - "id": "FindDevicesByDeviceIdentifierResponse", - "description": "Response containing found devices.", - "type": "object" - }, - "PartnerClaim": { - "properties": { - "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": { - "enum": [ - "SECTION_TYPE_UNSPECIFIED", - "SECTION_TYPE_ZERO_TOUCH" - ], - "description": "Required. The section type of the device's provisioning record.", - "type": "string", - "enumDescriptions": [ - "Unspecified section type.", - "Zero-touch enrollment section type." - ] }, - "customerId": { - "description": "Required. The ID of the customer for whom the device is being claimed.", - "format": "int64", + "companyName": { + "description": "Required. The name of the organization. Zero-touch enrollment shows this\norganization name to device users during device provisioning.", "type": "string" - } - }, - "id": "PartnerClaim", - "description": "Identifies one claim request.", - "type": "object" - }, - "UnclaimDeviceRequest": { - "description": "Request message to unclaim a device.", - "type": "object", - "properties": { - "deviceId": { - "description": "The device ID returned by `ClaimDevice`.", + }, + "configurationId": { + "description": "Output only. The ID of the configuration. Assigned by the server.", "format": "int64", "type": "string" }, - "deviceIdentifier": { - "description": "The device identifier you used when you claimed this device.", - "$ref": "DeviceIdentifier" - }, - "sectionType": { - "enumDescriptions": [ - "Unspecified section type.", - "Zero-touch enrollment section type." - ], - "enum": [ - "SECTION_TYPE_UNSPECIFIED", - "SECTION_TYPE_ZERO_TOUCH" - ], - "description": "Required. The section type of the device's provisioning record.", - "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": { - "nextPageToken": { - "description": "A token used to access the next page of results. Omitted if no further\nresults are available.", + "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" - }, - "customers": { - "description": "The customer accounts the calling user is a member of.", - "type": "array", - "items": { - "$ref": "Company" - } } }, - "id": "CustomerListCustomersResponse" + "id": "Configuration" }, - "CustomerListDevicesResponse": { - "description": "Response message of customer's liting devices.", + "CustomerListDpcsResponse": { + "description": "Response message of customer's listing DPCs.", "type": "object", - "properties": { - "devices": { - "description": "The customer's devices.", + "properties": { + "dpcs": { + "description": "The list of DPCs available to the customer that support zero-touch\nenrollment.", "type": "array", "items": { - "$ref": "Device" + "$ref": "Dpc" } - }, - "nextPageToken": { - "description": "A token used to access the next page of results. Omitted if no further\nresults are available.", - "type": "string" } }, - "id": "CustomerListDevicesResponse" + "id": "CustomerListDpcsResponse" }, - "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).", + "PartnerUnclaim": { + "description": "Identifies one unclaim request.", "type": "object", "properties": { - "ownerCompanyId": { - "description": "The ID of the Customer that purchased the device.", - "format": "int64", - "type": "string" + "deviceIdentifier": { + "description": "Device identifier of the device.", + "$ref": "DeviceIdentifier" }, "sectionType": { "enumDescriptions": [ @@ -1332,101 +1457,83 @@ "SECTION_TYPE_UNSPECIFIED", "SECTION_TYPE_ZERO_TOUCH" ], - "description": "Output only. The type of claim made on the device.", + "description": "Required. The section type of the device's provisioning record.", + "type": "string" + }, + "deviceId": { + "description": "Device ID of the device.", + "format": "int64", "type": "string" } }, - "id": "DeviceClaim" + "id": "PartnerUnclaim" }, - "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).", + "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": { - "successCount": { - "description": "A summary of how many items in the operation the server processed\nsuccessfully. Updated as the operation progresses.", - "format": "int32", - "type": "integer" + "nextPageToken": { + "description": "A token used to access the next page of results. Omitted if no further\nresults are available.", + "type": "string" }, - "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.", + "devices": { + "description": "Found devices.", "type": "array", "items": { - "$ref": "OperationPerDevice" + "$ref": "Device" } } }, - "id": "DevicesLongRunningOperationResponse" + "id": "FindDevicesByDeviceIdentifierResponse" }, - "PerDeviceStatusInBatch": { + "PartnerClaim": { + "description": "Identifies one claim request.", + "type": "object", "properties": { - "deviceId": { - "description": "If processing succeeds, the device ID of the device.", - "format": "int64", - "type": "string" + "deviceIdentifier": { + "$ref": "DeviceIdentifier", + "description": "Required. Device identifier of the device." }, - "status": { - "description": "The result status of the device after processing.", - "type": "string", + "deviceMetadata": { + "description": "Required. The metadata to attach to the device at claim.", + "$ref": "DeviceMetadata" + }, + "sectionType": { "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." + "Unspecified section type.", + "Zero-touch enrollment section type." ], "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" - ] - }, - "errorIdentifier": { - "description": "If processing fails, the error type.", + "SECTION_TYPE_UNSPECIFIED", + "SECTION_TYPE_ZERO_TOUCH" + ], + "description": "Required. The section type of the device's provisioning record.", "type": "string" }, - "errorMessage": { - "description": "If processing fails, a developer message explaining what went wrong.", + "customerId": { + "description": "Required. The ID of the customer for whom the device is being claimed.", + "format": "int64", "type": "string" } }, - "id": "PerDeviceStatusInBatch", - "description": "Captures the processing status for each device in the operation.", - "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.", - "type": "object", - "properties": { - "claims": { - "description": "Required. A list of device claims.", - "type": "array", - "items": { - "$ref": "PartnerClaim" - } - } - }, - "id": "ClaimDevicesRequest" + "id": "PartnerClaim" }, - "FindDevicesByOwnerRequest": { - "description": "Request to find devices by customers.", - "type": "object", + "UnclaimDeviceRequest": { "properties": { - "limit": { - "description": "Required. The maximum number of devices to show in a page of results. Must\nbe between 1 and 100 inclusive.", + "deviceId": { + "description": "The device ID returned by `ClaimDevice`.", "format": "int64", "type": "string" }, - "pageToken": { - "description": "A token specifying which result page to return.", - "type": "string" + "deviceIdentifier": { + "$ref": "DeviceIdentifier", + "description": "The device identifier you used when you claimed this device." }, "sectionType": { "enum": [ @@ -1439,143 +1546,36 @@ "Unspecified section type.", "Zero-touch enrollment section type." ] - }, - "customerId": { - "description": "Required. The list of customer IDs to search for.", - "type": "array", - "items": { - "format": "int64", - "type": "string" - } } }, - "id": "FindDevicesByOwnerRequest" + "id": "UnclaimDeviceRequest", + "description": "Request message to unclaim a device.", + "type": "object" }, - "Operation": { - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "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": { - "response": { - "description": "This field will contain a `DevicesLongRunningOperationResponse` object if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`.", - "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": { - "description": "This field will always be not set if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`. In this case, error information for each device is set in `response.perDeviceStatus.result.status`.", - "$ref": "Status" - }, - "metadata": { + "entries": { "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" + "type": "string" }, - "description": "This field will contain a `DevicesLongRunningOperationMetadata` object if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`.", + "description": "Metadata entries recorded as key-value pairs.", "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" - }, - "DeviceIdentifier": { - "description": "Encapsulates hardware and product IDs to identify a manufactured device. To\nlearn more, read [Identifiers](/zero-touch/guides/identifiers).", - "type": "object", - "properties": { - "imei": { - "description": "The device’s IMEI number. Validated on input.", - "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).", - "type": "string" - }, - "serialNumber": { - "description": "The manufacturer's serial number for the device. This value might not be\nunique.", - "type": "string" - } - }, - "id": "DeviceIdentifier" - }, - "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`).", - "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" - } - }, - "id": "Dpc", - "description": "An EMM's DPC ([device policy\ncontroller](http://developer.android.com/work/dpc/build-dpc.html)).\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" - }, - "UnclaimDevicesRequest": { - "properties": { - "unclaims": { - "description": "Required. The list of devices to unclaim.", - "type": "array", - "items": { - "$ref": "PartnerUnclaim" - } - } - }, - "id": "UnclaimDevicesRequest", - "description": "Request to unclaim devices asynchronously in batch.", - "type": "object" - }, - "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." } }, - "id": "CustomerApplyConfigurationRequest", - "description": "Request message for customer to assign a configuration to device.", - "type": "object" + "id": "DeviceMetadata" } }, - "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" }, + "protocol": "rest", "version": "v1", "baseUrl": "https://androiddeviceprovisioning.googleapis.com/", "canonicalName": "Android Provisioning Partner", - "servicePath": "", - "description": "Automates Android zero-touch enrollment for device resellers, customers, and EMMs.", "kind": "discovery#restDescription", - "rootUrl": "https://androiddeviceprovisioning.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "androiddeviceprovisioning", - "batchPath": "batch", - "revision": "20180506", - "documentationLink": "https://developers.google.com/zero-touch/", - "id": "androiddeviceprovisioning:v1", - "title": "Android Device Provisioning Partner API" + "description": "Automates Android zero-touch enrollment for device resellers, customers, and EMMs.", + "servicePath": "" } diff --git a/DiscoveryJson/androidmanagement_v1.json b/DiscoveryJson/androidmanagement_v1.json index 35967942b9..d5f541b9ca 100644 --- a/DiscoveryJson/androidmanagement_v1.json +++ b/DiscoveryJson/androidmanagement_v1.json @@ -1,260 +1,15 @@ { - "kind": "discovery#restDescription", - "description": "The Android Management API provides remote enterprise management of Android devices and apps.", - "servicePath": "", - "basePath": "", - "id": "androidmanagement:v1", - "documentationLink": "https://developers.google.com/android/management", - "revision": "20180430", "discoveryVersion": "v1", "version_module": true, "schemas": { - "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": { - "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" - } - } - } - }, - "id": "Status" - }, - "EnrollmentToken": { - "type": "object", - "properties": { - "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" - }, - "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" - }, - "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" - }, - "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" - }, - "name": { - "type": "string", - "description": "The name of the enrollment token, which is generated by the server during creation, in the form enterprises/{enterpriseId}/enrollmentTokens/{enrollmentTokenId}." - } - }, - "id": "EnrollmentToken", - "description": "An enrollment token." - }, - "PasswordRequirements": { - "type": "object", - "properties": { - "passwordMinimumUpperCase": { - "description": "Minimum number of upper case letters required in the password. Only enforced when password_quality is COMPLEX.", - "format": "int32", - "type": "integer" - }, - "passwordExpirationTimeout": { - "description": "Password expiration timeout.", - "format": "google-duration", - "type": "string" - }, - "passwordQuality": { - "description": "The required password quality.", - "type": "string", - "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." - ], - "enum": [ - "PASSWORD_QUALITY_UNSPECIFIED", - "BIOMETRIC_WEAK", - "SOMETHING", - "NUMERIC", - "NUMERIC_COMPLEX", - "ALPHABETIC", - "ALPHANUMERIC", - "COMPLEX" - ] - }, - "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" - }, - "passwordMinimumSymbols": { - "description": "Minimum number of 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" - }, - "passwordMinimumLetters": { - "description": "Minimum number of 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" - }, - "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" - }, - "passwordMinimumLowerCase": { - "description": "Minimum number of lower case letters required in the password. Only enforced when password_quality is COMPLEX.", - "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" - } - }, - "id": "PasswordRequirements", - "description": "Requirements for the password used to unlock a device." - }, - "SignupUrl": { - "description": "An enterprise signup URL.", - "type": "object", - "properties": { - "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" - }, - "url": { - "description": "A URL where an enterprise admin can register their enterprise. The page can't be rendered in an iframe.", - "type": "string" - } - }, - "id": "SignupUrl" - }, - "NonComplianceDetail": { - "description": "Provides detail about non-compliance with a policy setting.", + "HardwareInfo": { + "description": "Information about device hardware. The fields related to temperature thresholds are only available if hardwareStatusEnabled is true in the device's policy.", "type": "object", "properties": { - "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.", - "type": "string", - "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." - ], - "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" - ] - }, - "packageName": { - "type": "string", - "description": "The package name indicating which app is out of compliance, if applicable." - }, - "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" - }, - "settingName": { - "description": "The name of the policy setting. This is the JSON field name of a top-level Policy field.", + "hardware": { + "description": "Name of the hardware. For example, Angler.", "type": "string" }, - "nonComplianceReason": { - "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." - ], - "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" - ], - "description": "The reason the device is not in compliance with the setting.", - "type": "string" - } - }, - "id": "NonComplianceDetail" - }, - "HardwareInfo": { - "type": "object", - "properties": { "cpuThrottlingTemperatures": { "description": "CPU throttling temperature thresholds in Celsius for each CPU on the device.", "type": "array", @@ -272,12 +27,12 @@ } }, "gpuThrottlingTemperatures": { + "description": "GPU throttling temperature thresholds in Celsius for each GPU on the device.", "type": "array", "items": { "format": "float", "type": "number" - }, - "description": "GPU throttling temperature thresholds in Celsius for each GPU on the device." + } }, "batteryThrottlingTemperatures": { "description": "Battery throttling temperature thresholds in Celsius for each battery on the device.", @@ -338,19 +93,19 @@ "format": "float", "type": "number" } - }, - "hardware": { - "type": "string", - "description": "Name of the hardware. For example, Angler." } }, - "id": "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" }, "Display": { + "id": "Display", "description": "Device display information.", "type": "object", "properties": { + "name": { + "description": "Name of the display.", + "type": "string" + }, "density": { "description": "Display density expressed as dots-per-inch.", "format": "int32", @@ -393,37 +148,28 @@ ], "description": "State of the display.", "type": "string" - }, - "name": { - "description": "Name of the display.", - "type": "string" } - }, - "id": "Display" + } }, - "ApplicationPermission": { - "description": "A permission required by the app.", + "ManagedProperty": { + "description": "Managed property.", "type": "object", "properties": { - "permissionId": { - "description": "An opaque string uniquely identifying the permission. Not localized.", - "type": "string" - }, - "name": { - "description": "The name of the permission. Localized.", + "key": { + "description": "The unique key that the app uses to identify the property, e.g. \"com.google.android.gm.fieldname\".", "type": "string" }, "description": { - "description": "A longer description of the permission, providing more detail on what it affects. Localized.", + "description": "A longer description of the property, providing more detail of what it affects. Localized.", "type": "string" - } - }, - "id": "ApplicationPermission" - }, - "ManagedProperty": { - "description": "Managed property.", - "type": "object", - "properties": { + }, + "entries": { + "description": "For CHOICE or MULTISELECT properties, the list of possible entries.", + "type": "array", + "items": { + "$ref": "ManagedPropertyEntry" + } + }, "defaultValue": { "description": "The default value of the property. BUNDLE_ARRAY properties don't have a default value.", "type": "any" @@ -436,6 +182,16 @@ } }, "type": { + "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." + ], "enum": [ "MANAGED_PROPERTY_TYPE_UNSPECIFIED", "BOOL", @@ -447,56 +203,51 @@ "BUNDLE_ARRAY" ], "description": "The type of the property.", - "type": "string", - "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" }, "title": { "description": "The name of the property. Localized.", "type": "string" + } + }, + "id": "ManagedProperty" + }, + "ApplicationPermission": { + "description": "A permission required by the app.", + "type": "object", + "properties": { + "permissionId": { + "description": "An opaque string uniquely identifying the permission. Not localized.", + "type": "string" }, - "key": { - "description": "The unique key that the app uses to identify the property, e.g. \"com.google.android.gm.fieldname\".", + "name": { + "description": "The name of the permission. Localized.", "type": "string" }, "description": { - "description": "A longer description of the property, providing more detail of what it affects. Localized.", + "description": "A longer description of the permission, providing more detail on what it affects. Localized.", "type": "string" - }, - "entries": { - "type": "array", - "items": { - "$ref": "ManagedPropertyEntry" - }, - "description": "For CHOICE or MULTISELECT properties, the list of possible entries." } }, - "id": "ManagedProperty" + "id": "ApplicationPermission" }, "TermsAndConditions": { "id": "TermsAndConditions", "description": "A terms and conditions page to be accepted during provisioning.", "type": "object", "properties": { + "header": { + "$ref": "UserFacingMessage", + "description": "A short header which appears above the HTML content." + }, "content": { "$ref": "UserFacingMessage", "description": "A well-formatted HTML string. It will be parsed on the client with android.text.Html#fromHtml." - }, - "header": { - "description": "A short header which appears above the HTML content.", - "$ref": "UserFacingMessage" } } }, "ListOperationsResponse": { + "id": "ListOperationsResponse", "description": "The response message for Operations.ListOperations.", "type": "object", "properties": { @@ -511,10 +262,10 @@ "description": "The standard List next-page token.", "type": "string" } - }, - "id": "ListOperationsResponse" + } }, "AlwaysOnVpnPackage": { + "id": "AlwaysOnVpnPackage", "description": "Configuration for an always-on VPN connection.", "type": "object", "properties": { @@ -526,25 +277,24 @@ "description": "Disallows networking when the VPN is not connected.", "type": "boolean" } - }, - "id": "AlwaysOnVpnPackage" + } }, "MemoryInfo": { + "id": "MemoryInfo", "description": "Information about device memory and storage.", "type": "object", "properties": { "totalRam": { - "type": "string", "description": "Total RAM on device in bytes.", - "format": "int64" + "format": "int64", + "type": "string" }, "totalInternalStorage": { "description": "Total internal storage on device in bytes.", "format": "int64", "type": "string" } - }, - "id": "MemoryInfo" + } }, "PermissionGrant": { "description": "Configuration for an Android permission and its grant state.", @@ -555,12 +305,6 @@ "type": "string" }, "policy": { - "enum": [ - "PERMISSION_POLICY_UNSPECIFIED", - "PROMPT", - "GRANT", - "DENY" - ], "description": "The policy for granting the permission.", "type": "string", "enumDescriptions": [ @@ -568,21 +312,22 @@ "Prompt the user to grant a permission.", "Automatically grant a permission.", "Automatically deny a permission." + ], + "enum": [ + "PERMISSION_POLICY_UNSPECIFIED", + "PROMPT", + "GRANT", + "DENY" ] } }, "id": "PermissionGrant" }, "Enterprise": { + "id": "Enterprise", + "description": "The configuration applied to an enterprise.", "type": "object", "properties": { - "termsAndConditions": { - "description": "Terms and conditions that must be accepted when provisioning a device for this enterprise. A page of terms is generated for each value in this list.", - "type": "array", - "items": { - "$ref": "TermsAndConditions" - } - }, "name": { "description": "The name of the enterprise which is generated by the server during creation, in the form enterprises/{enterpriseId}.", "type": "string" @@ -603,41 +348,49 @@ "description": "The types of Google Pub/Sub notifications enabled for the enterprise.", "type": "array", "items": { + "type": "string", "enum": [ "NOTIFICATION_TYPE_UNSPECIFIED", "ENROLLMENT", "COMPLIANCE_REPORT", "STATUS_REPORT", "COMMAND" - ], - "type": "string" + ] } }, - "appAutoApprovalEnabled": { - "description": "Deprecated and unused.", - "type": "boolean" - }, "enterpriseDisplayName": { "description": "The name of the enterprise displayed to users.", "type": "string" }, + "appAutoApprovalEnabled": { + "description": "Deprecated and unused.", + "type": "boolean" + }, "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" }, "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" + "$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." + }, + "termsAndConditions": { + "description": "Terms and conditions that must be accepted when provisioning a device for this enterprise. A page of terms is generated for each value in this list.", + "type": "array", + "items": { + "$ref": "TermsAndConditions" + } } - }, - "id": "Enterprise", - "description": "The configuration applied to an enterprise." + } }, "WebToken": { - "id": "WebToken", "description": "A web token used to access the managed Google Play iframe.", "type": "object", "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" + }, "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" @@ -647,30 +400,78 @@ "type": "string" }, "permissions": { - "enumDescriptions": [ - "This value is ignored.", - "The permission to approve apps for the enterprise." - ], "description": "Permissions available to an admin in the embedded UI. An admin must have all of these permissions in order to view the UI.", "type": "array", "items": { + "type": "string", "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" + ] + }, + "enumDescriptions": [ + "This value is ignored.", + "The permission to approve apps for the enterprise." + ] } - } + }, + "id": "WebToken" }, "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.", "type": "object", "properties": { + "powerManagementEvents": { + "description": "Power management events on the device in chronological order. This information is only available if powerManagementEventsEnabled is true in the device's policy.", + "type": "array", + "items": { + "$ref": "PowerManagementEvent" + } + }, + "name": { + "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}.", + "type": "string" + }, + "enrollmentTokenName": { + "description": "If the device was enrolled with an enrollment token, this field contains the name of the token.", + "type": "string" + }, + "lastPolicyComplianceReportTime": { + "description": "The last time the device sent a policy compliance report.", + "format": "google-datetime", + "type": "string" + }, + "enrollmentTokenData": { + "description": "If the device was enrolled with an enrollment token with additional data provided, this field contains that data.", + "type": "string" + }, + "nonComplianceDetails": { + "description": "Details about policy settings that the device is not compliant with.", + "type": "array", + "items": { + "$ref": "NonComplianceDetail" + } + }, + "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.", + "type": "array", + "items": { + "type": "string" + } + }, + "lastStatusReportTime": { + "description": "The last time the device sent a status report.", + "format": "google-datetime", + "type": "string" + }, + "policyCompliant": { + "description": "Whether the device is compliant with its policy.", + "type": "boolean" + }, + "deviceSettings": { + "$ref": "DeviceSettings", + "description": "Device settings information. This information is only available if deviceSettingsEnabled is true in the device's policy." + }, "state": { "enumDescriptions": [ "This value is disallowed.", @@ -694,17 +495,17 @@ "format": "google-datetime", "type": "string" }, - "hardwareInfo": { - "$ref": "HardwareInfo", - "description": "Detailed information about the device hardware." + "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 can be modified by a patch request.", + "$ref": "UserFacingMessage" }, "softwareInfo": { "$ref": "SoftwareInfo", "description": "Detailed information about the device software. This information is only available if softwareInfoEnabled 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." + "hardwareInfo": { + "$ref": "HardwareInfo", + "description": "Detailed information about the device hardware." }, "appliedPolicyVersion": { "description": "The version of the policy currently applied to the device.", @@ -728,8 +529,8 @@ "type": "string" }, "networkInfo": { - "$ref": "NetworkInfo", - "description": "Device network information. This information is only available if networkInfoEnabled is true in the device's policy." + "description": "Device network information. This information is only available if networkInfoEnabled is true in the device's policy.", + "$ref": "NetworkInfo" }, "memoryEvents": { "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.", @@ -750,6 +551,8 @@ } }, "appliedState": { + "description": "The state currently applied to the device.", + "type": "string", "enumDescriptions": [ "This value is disallowed.", "The device is active.", @@ -763,13 +566,11 @@ "DISABLED", "DELETED", "PROVISIONING" - ], - "description": "The state currently applied to the device.", - "type": "string" + ] }, "appliedPolicyName": { - "type": "string", - "description": "The name of the policy currently applied to the device." + "description": "The name of the policy currently applied to the device.", + "type": "string" }, "lastPolicySyncTime": { "description": "The last time the device fetched its policy.", @@ -779,104 +580,59 @@ "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" - }, - "name": { - "type": "string", - "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}." - }, - "powerManagementEvents": { - "description": "Power management events on the device in chronological order. This information is only available if powerManagementEventsEnabled is true in the device's policy.", + } + }, + "id": "Device" + }, + "ListPoliciesResponse": { + "id": "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": "PowerManagementEvent" + "$ref": "Policy" } }, - "enrollmentTokenName": { - "description": "If the device was enrolled with an enrollment token, this field contains the name of the token.", + "nextPageToken": { + "description": "If there are more results, a token to retrieve next page of results.", "type": "string" - }, - "lastPolicyComplianceReportTime": { - "description": "The last time the device sent a policy compliance report.", - "format": "google-datetime", - "type": "string" - }, - "enrollmentTokenData": { - "description": "If the device was enrolled with an enrollment token with additional data provided, this field contains that data.", - "type": "string" - }, - "nonComplianceDetails": { - "description": "Details about policy settings that the device is not compliant with.", - "type": "array", - "items": { - "$ref": "NonComplianceDetail" - } - }, - "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.", - "type": "array", - "items": { - "type": "string" - } - }, - "lastStatusReportTime": { - "description": "The last time the device sent a status report.", - "format": "google-datetime", - "type": "string" - }, - "policyCompliant": { - "description": "Whether the device is compliant with its policy.", - "type": "boolean" - }, - "deviceSettings": { - "$ref": "DeviceSettings", - "description": "Device settings information. This information is only available if deviceSettingsEnabled is true in the device's policy." - } - }, - "id": "Device" - }, - "ListPoliciesResponse": { - "description": "Response to a request to list policies for a given enterprise.", - "type": "object", - "properties": { - "policies": { - "type": "array", - "items": { - "$ref": "Policy" - }, - "description": "The list of policies." - }, - "nextPageToken": { - "description": "If there are more results, a token to retrieve next page of results.", - "type": "string" - } - }, - "id": "ListPoliciesResponse" - }, - "ComplianceRule": { - "id": "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": { - "$ref": "NonComplianceDetailCondition", - "description": "A condition which is satisfied if there exists any matching NonComplianceDetail for the device." + } + } + }, + "ComplianceRule": { + "id": "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": { + "$ref": "NonComplianceDetailCondition", + "description": "A condition which is satisfied if there exists any matching NonComplianceDetail for the device." }, "disableApps": { - "type": "boolean", - "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." + "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" }, "apiLevelCondition": { - "$ref": "ApiLevelCondition", - "description": "A condition which is satisfied if the Android Framework API level on the device doesn't meet a minimum requirement." + "description": "A condition which is satisfied if the Android Framework API level on the device doesn't meet a minimum requirement.", + "$ref": "ApiLevelCondition" } } }, "SystemUpdate": { - "id": "SystemUpdate", "description": "Configuration for managing system updates", "type": "object", "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" + }, "type": { + "description": "The type of system update to configure.", + "type": "string", "enumDescriptions": [ "Follow the default update behavior for the device, which typically requires the user to accept system updates.", "Install automatically as soon as an update is available.", @@ -888,21 +644,15 @@ "AUTOMATIC", "WINDOWED", "POSTPONE" - ], - "description": "The type of system update to configure.", - "type": "string" + ] }, "startMinutes": { "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" - }, - "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" } - } + }, + "id": "SystemUpdate" }, "PackageNameList": { "id": "PackageNameList", @@ -910,35 +660,27 @@ "type": "object", "properties": { "packageNames": { + "description": "A list of package names.", "type": "array", "items": { "type": "string" - }, - "description": "A list of package names." + } } } }, "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": { + "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" }, "nonComplianceReason": { - "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" - ], "description": "The reason the device is not in compliance with the setting. If not set, then this condition matches any reason.", "type": "string", "enumDescriptions": [ @@ -953,27 +695,28 @@ "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." + ], + "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" ] - }, - "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" } }, - "id": "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" }, "PersistentPreferredActivity": { "description": "A default activity for handling intents that match a particular intent filter.", "type": "object", "properties": { - "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", @@ -984,6 +727,13 @@ "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" + } } }, "id": "PersistentPreferredActivity" @@ -1017,25 +767,8 @@ }, "id": "Application" }, - "UserFacingMessage": { - "description": "Provides a user-facing message with locale info. The maximum message length is 4096 characters.", - "type": "object", - "properties": { - "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" - }, - "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" - } - }, - "id": "UserFacingMessage" - }, "ManagedPropertyEntry": { + "id": "ManagedPropertyEntry", "description": "An entry of a managed property.", "type": "object", "properties": { @@ -1047,10 +780,28 @@ "description": "The human-readable name of the value. Localized.", "type": "string" } - }, - "id": "ManagedPropertyEntry" + } + }, + "UserFacingMessage": { + "id": "UserFacingMessage", + "description": "Provides a user-facing message with locale info. The maximum message length is 4096 characters.", + "type": "object", + "properties": { + "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" + }, + "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" + } + } }, "Command": { + "description": "A command.", "type": "object", "properties": { "createTime": { @@ -1059,6 +810,8 @@ "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.", + "type": "string", "enumDescriptions": [ "There was no error.", "An unknown error occurred.", @@ -1074,38 +827,38 @@ "MANAGEMENT_MODE", "INVALID_VALUE", "UNSUPPORTED" - ], - "description": "If the command failed, an error code explaining the failure. This is not set when the command is cancelled by the caller.", - "type": "string" + ] }, "newPassword": { "description": "For commands of type RESET_PASSWORD, optionally specifies the new password.", "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" + }, "resetPasswordFlags": { + "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." + ], "description": "For commands of type RESET_PASSWORD, optionally specifies flags.", "type": "array", "items": { + "type": "string", "enum": [ "RESET_PASSWORD_FLAG_UNSPECIFIED", "REQUIRE_ENTRY", "DO_NOT_ASK_CREDENTIALS_ON_BOOT", "LOCK_NOW" - ], - "type": "string" - }, - "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." - ] - }, - "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": { + "description": "The type of the command.", + "type": "string", "enumDescriptions": [ "This value is disallowed.", "Lock the device, as if the lock screen timeout had expired.", @@ -1117,9 +870,7 @@ "LOCK", "RESET_PASSWORD", "REBOOT" - ], - "description": "The type of the command.", - "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.", @@ -1127,26 +878,33 @@ "type": "string" } }, - "id": "Command", - "description": "A command." + "id": "Command" }, "ApplicationPolicy": { "description": "Policy for an individual app.", "type": "object", "properties": { - "delegatedScopes": { + "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. It does not override the permission_grants which applies to all apps.", + "type": "string", "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." + "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." ], + "enum": [ + "PERMISSION_POLICY_UNSPECIFIED", + "PROMPT", + "GRANT", + "DENY" + ] + }, + "delegatedScopes": { "description": "The scopes delegated to the app from Android Device Policy.", "type": "array", "items": { + "type": "string", "enum": [ "DELEGATED_SCOPE_UNSPECIFIED", "CERT_INSTALL", @@ -1155,15 +913,25 @@ "PERMISSION_GRANT", "PACKAGE_ACCESS", "ENABLE_SYSTEM_APP" - ], - "type": "string" - } + ] + }, + "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." + ] }, "packageName": { - "type": "string", - "description": "The package name of the app. For example, com.google.android.youtube for the YouTube app." + "description": "The package name of the app. For example, com.google.android.youtube for the YouTube app.", + "type": "string" }, "installType": { + "description": "The type of installation to perform.", + "type": "string", "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.", @@ -1173,9 +941,7 @@ "INSTALL_TYPE_UNSPECIFIED", "PREINSTALLED", "FORCE_INSTALLED" - ], - "description": "The type of installation to perform.", - "type": "string" + ] }, "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.", @@ -1200,41 +966,18 @@ }, "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" - }, - "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. It does not override the permission_grants which applies to all apps.", - "type": "string", - "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." - ], - "enum": [ - "PERMISSION_POLICY_UNSPECIFIED", - "PROMPT", - "GRANT", - "DENY" - ] } }, "id": "ApplicationPolicy" }, "MemoryEvent": { + "id": "MemoryEvent", "description": "An event related to memory and storage measurements.", "type": "object", "properties": { - "createTime": { - "description": "The creation time of the event.", - "format": "google-datetime", - "type": "string" - }, - "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" - }, "eventType": { + "description": "Event type.", + "type": "string", "enumDescriptions": [ "Unspecified. No events have this type.", "Free space in RAM was measured.", @@ -1250,39 +993,31 @@ "EXTERNAL_STORAGE_DETECTED", "EXTERNAL_STORAGE_REMOVED", "EXTERNAL_STORAGE_MEASURED" - ], - "description": "Event type.", + ] + }, + "createTime": { + "description": "The creation time of the event.", + "format": "google-datetime", + "type": "string" + }, + "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" } - }, - "id": "MemoryEvent" + } }, "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": {}, - "id": "Empty" + "properties": {} }, "HardwareStatus": { + "id": "HardwareStatus", "description": "Hardware status. Temperatures may be compared to the temperature thresholds available in hardwareInfo to determine hardware health.", "type": "object", "properties": { - "batteryTemperatures": { - "description": "Current battery temperatures in Celsius for each battery on the device.", - "type": "array", - "items": { - "format": "float", - "type": "number" - } - }, - "cpuTemperatures": { - "description": "Current CPU temperatures in Celsius for each CPU on the device.", - "type": "array", - "items": { - "format": "float", - "type": "number" - } - }, "gpuTemperatures": { "description": "Current GPU temperatures in Celsius for each GPU on the device.", "type": "array", @@ -1313,69 +1048,58 @@ } }, "skinTemperatures": { + "description": "Current device skin temperatures in Celsius.", "type": "array", "items": { "format": "float", "type": "number" - }, - "description": "Current device skin temperatures in Celsius." + } + }, + "cpuTemperatures": { + "description": "Current CPU temperatures in Celsius for each CPU on the device.", + "type": "array", + "items": { + "format": "float", + "type": "number" + } + }, + "batteryTemperatures": { + "description": "Current battery temperatures in Celsius for each battery on the device.", + "type": "array", + "items": { + "format": "float", + "type": "number" + } } - }, - "id": "HardwareStatus" + } }, "NetworkInfo": { + "id": "NetworkInfo", + "description": "Device network info.", "type": "object", "properties": { + "networkOperatorName": { + "description": "Alphabetic name of current registered operator. For example, Vodafone.", + "type": "string" + }, "imei": { "description": "IMEI number of the GSM device. For example, A1000031212.", "type": "string" }, "meid": { - "type": "string", - "description": "MEID number of the CDMA device. For example, A00000292788E1." + "description": "MEID number of the CDMA device. For example, A00000292788E1.", + "type": "string" }, "wifiMacAddress": { "description": "Wi-Fi MAC address of the device. For example, 7c:11:11:11:11:11.", "type": "string" - }, - "networkOperatorName": { - "description": "Alphabetic name of current registered operator. For example, Vodafone.", - "type": "string" } - }, - "id": "NetworkInfo", - "description": "Device network info." + } }, "DeviceSettings": { "description": "Information about security related device settings on device.", "type": "object", "properties": { - "encryptionStatus": { - "enum": [ - "ENCRYPTION_STATUS_UNSPECIFIED", - "UNSUPPORTED", - "INACTIVE", - "ACTIVATING", - "ACTIVE", - "ACTIVE_DEFAULT_KEY", - "ACTIVE_PER_USER" - ], - "description": "Encryption status from DevicePolicyManager.", - "type": "string", - "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." - ] - }, - "isDeviceSecure": { - "description": "Whether the device is secured with PIN/password.", - "type": "boolean" - }, "unknownSourcesEnabled": { "description": "Whether installing apps from unknown sources is enabled.", "type": "boolean" @@ -1384,17 +1108,43 @@ "description": "Whether Verify Apps (Google Play Protect (https://support.google.com/googleplay/answer/2812853)) is enabled on the device.", "type": "boolean" }, - "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" }, + "adbEnabled": { + "description": "Whether ADB (https://developer.android.com/studio/command-line/adb.html) is enabled on the device.", + "type": "boolean" + }, "isEncrypted": { "description": "Whether the storage encryption is enabled.", "type": "boolean" + }, + "encryptionStatus": { + "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." + ], + "enum": [ + "ENCRYPTION_STATUS_UNSPECIFIED", + "UNSUPPORTED", + "INACTIVE", + "ACTIVATING", + "ACTIVE", + "ACTIVE_DEFAULT_KEY", + "ACTIVE_PER_USER" + ], + "description": "Encryption status from DevicePolicyManager.", + "type": "string" + }, + "isDeviceSecure": { + "description": "Whether the device is secured with PIN/password.", + "type": "boolean" } }, "id": "DeviceSettings" @@ -1403,18 +1153,6 @@ "description": "Settings controlling the behavior of status reports.", "type": "object", "properties": { - "hardwareStatusEnabled": { - "description": "Whether hardware status 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" - }, "displayInfoEnabled": { "description": "Whether displays reporting is enabled.", "type": "boolean" @@ -1430,6 +1168,18 @@ "networkInfoEnabled": { "description": "Whether network info reporting is enabled.", "type": "boolean" + }, + "softwareInfoEnabled": { + "description": "Whether software info reporting is enabled.", + "type": "boolean" + }, + "hardwareStatusEnabled": { + "description": "Whether hardware status reporting is enabled.", + "type": "boolean" + }, + "memoryInfoEnabled": { + "description": "Whether memory info reporting is enabled.", + "type": "boolean" } }, "id": "StatusReportingSettings" @@ -1439,13 +1189,13 @@ "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": { - "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" + }, + "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" } } }, @@ -1453,34 +1203,18 @@ "description": "A policy resources represents a group settings that govern the behavior of a managed device and the apps installed on it.", "type": "object", "properties": { - "cameraDisabled": { - "type": "boolean", - "description": "Whether all cameras on the device are disabled." - }, - "wifiConfigDisabled": { - "type": "boolean", - "description": "Whether configuring Wi-Fi access points is disabled." - }, - "factoryResetDisabled": { - "description": "Whether factory resetting from settings is disabled.", - "type": "boolean" - }, - "addUserDisabled": { - "description": "Whether adding new users and profiles is disabled.", - "type": "boolean" - }, "setUserIconDisabled": { "description": "Whether changing the user icon 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" - }, "setWallpaperDisabled": { "description": "Whether changing the wallpaper 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" + }, "ensureVerifyAppsEnabled": { "description": "Whether app verification is force-enabled.", "type": "boolean" @@ -1490,21 +1224,21 @@ "type": "boolean" }, "openNetworkConfiguration": { + "description": "Network configuration for the device. See configure networks for more information.", "type": "object", "additionalProperties": { "description": "Properties of the object.", "type": "any" - }, - "description": "Network configuration for the device. See configure networks for more information." - }, - "shareLocationDisabled": { - "description": "Whether location sharing is disabled.", - "type": "boolean" + } }, "cellBroadcastsConfigDisabled": { "description": "Whether configuring cell broadcast is disabled.", "type": "boolean" }, + "shareLocationDisabled": { + "description": "Whether location sharing is disabled.", + "type": "boolean" + }, "androidDevicePolicyTracks": { "enumDescriptions": [ "This value is ignored.", @@ -1527,15 +1261,13 @@ "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 won't provide factory reset protection.", "type": "array", "items": { "type": "string" - }, - "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." + } }, "locationMode": { - "description": "The degree of location detection enabled. The user may change the value unless the user is otherwise blocked from accessing device settings.", - "type": "string", "enumDescriptions": [ "The current device value is not modified.", "All location detection methods are enabled, including GPS, networks, and other sensors.", @@ -1549,7 +1281,9 @@ "SENSORS_ONLY", "BATTERY_SAVING", "OFF" - ] + ], + "description": "The degree of location detection enabled. The user may change the value unless the user is otherwise blocked from accessing device settings.", + "type": "string" }, "installUnknownSourcesAllowed": { "description": "Whether the user is allowed to enable the \"Unknown Sources\" setting, which allows installation of apps from unknown sources.", @@ -1570,14 +1304,14 @@ "description": "Whether creating windows besides app windows is disabled.", "type": "boolean" }, - "autoTimeRequired": { - "description": "Whether auto time is required, which prevents the user from manually setting the date and time.", - "type": "boolean" - }, "removeUserDisabled": { "description": "Whether removing other users is disabled.", "type": "boolean" }, + "autoTimeRequired": { + "description": "Whether auto time is required, which prevents the user from manually setting the date and time.", + "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", @@ -1585,19 +1319,21 @@ "$ref": "ComplianceRule" } }, - "installAppsDisabled": { - "description": "Whether user installation of apps is disabled.", + "smsDisabled": { + "description": "Whether sending and receiving SMS messages is disabled.", "type": "boolean" }, "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." + "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" }, - "smsDisabled": { - "description": "Whether sending and receiving SMS messages is disabled.", + "installAppsDisabled": { + "description": "Whether user installation of apps is disabled.", "type": "boolean" }, "appAutoUpdatePolicy": { + "description": "The app auto update policy, which controls when automatic app updates can be applied.", + "type": "string", "enumDescriptions": [ "The auto-update policy is not set. Equivalent to CHOICE_TO_THE_USER.", "The user can control auto-updates.", @@ -1611,33 +1347,31 @@ "NEVER", "WIFI_ONLY", "ALWAYS" - ], - "description": "The app auto update policy, which controls when automatic app updates can be applied.", - "type": "string" - }, - "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" + ] }, "uninstallAppsDisabled": { "description": "Whether user uninstallation of applications 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" + }, "deviceOwnerLockScreenInfo": { "$ref": "UserFacingMessage", "description": "The device owner information to be shown on the lock screen." }, - "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" - }, "credentialsConfigDisabled": { "description": "Whether configuring user credentials is disabled.", "type": "boolean" }, - "accountTypesWithManagementDisabled": { - "description": "Account types that can't be managed by the user.", - "type": "array", + "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" + }, + "accountTypesWithManagementDisabled": { + "description": "Account types that can't be managed by the user.", + "type": "array", "items": { "type": "string" } @@ -1678,8 +1412,8 @@ "type": "boolean" }, "networkEscapeHatchEnabled": { - "type": "boolean", - "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." + "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" }, "name": { "description": "The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}.", @@ -1690,6 +1424,8 @@ "type": "boolean" }, "encryptionPolicy": { + "description": "Whether encryption is enabled", + "type": "string", "enumDescriptions": [ "This value is ignored, i.e. no encryption required", "Encryption required but no password required to boot", @@ -1699,13 +1435,11 @@ "ENCRYPTION_POLICY_UNSPECIFIED", "ENABLED_WITHOUT_PASSWORD", "ENABLED_WITH_PASSWORD" - ], - "description": "Whether encryption is enabled", - "type": "string" + ] }, "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." + "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" }, "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.", @@ -1715,14 +1449,14 @@ "description": "Whether transferring files over USB is disabled.", "type": "boolean" }, + "adjustVolumeDisabled": { + "description": "Whether adjusting the master volume is disabled.", + "type": "boolean" + }, "outgoingCallsDisabled": { "description": "Whether outgoing calls are disabled.", "type": "boolean" }, - "adjustVolumeDisabled": { - "type": "boolean", - "description": "Whether adjusting the master volume is disabled." - }, "defaultPermissionPolicy": { "enumDescriptions": [ "Policy not specified. If no policy is specified for a permission at any level, then the PROMPT behavior is used by default.", @@ -1739,6 +1473,10 @@ "description": "The default permission policy for runtime permission requests.", "type": "string" }, + "bluetoothConfigDisabled": { + "description": "Whether configuring bluetooth is disabled.", + "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.", "type": "array", @@ -1758,10 +1496,6 @@ "Power source is wireless." ] }, - "bluetoothConfigDisabled": { - "description": "Whether configuring bluetooth is disabled.", - "type": "boolean" - }, "outgoingBeamDisabled": { "description": "Whether using NFC to beam data from apps is disabled.", "type": "boolean" @@ -1779,8 +1513,8 @@ "type": "boolean" }, "alwaysOnVpnPackage": { - "$ref": "AlwaysOnVpnPackage", - "description": "Configuration for an always-on VPN connection. Use with vpn_config_disabled to prevent modification of this setting." + "description": "Configuration for an always-on VPN connection. Use with vpn_config_disabled to prevent modification of this setting.", + "$ref": "AlwaysOnVpnPackage" }, "version": { "description": "The version of the policy. This is a read-only field. The version is incremented each time the policy is updated.", @@ -1792,8 +1526,8 @@ "type": "boolean" }, "passwordRequirements": { - "description": "Password requirements.", - "$ref": "PasswordRequirements" + "$ref": "PasswordRequirements", + "description": "Password requirements." }, "tetheringConfigDisabled": { "description": "Whether configuring tethering and portable hotspots is disabled.", @@ -1813,10 +1547,20 @@ "type": "boolean" }, "kioskCustomLauncherEnabled": { - "type": "boolean", - "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." + "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" }, "keyguardDisabledFeatures": { + "enumDescriptions": [ + "This value is ignored.", + "Disable the camera on secure keyguard screens (e.g. PIN).", + "Disable showing all notifications on secure keyguard screens.", + "Disable unredacted notifications on secure keyguard screens.", + "Ignore trust agent state on secure keyguard screens.", + "Disable fingerprint sensor on keyguard secure screens.", + "Disable text entry into notifications on secure keyguard screens.", + "Disable all current and future keyguard customizations." + ], "description": "Disabled keyguard customizations, such as widgets.", "type": "array", "items": { @@ -1831,25 +1575,31 @@ "DISABLE_REMOTE_INPUT", "ALL_FEATURES" ] - }, - "enumDescriptions": [ - "This value is ignored.", - "Disable the camera on secure keyguard screens (e.g. PIN).", - "Disable showing all notifications on secure keyguard screens.", - "Disable unredacted notifications on secure keyguard screens.", - "Ignore trust agent state on secure keyguard screens.", - "Disable fingerprint sensor on keyguard secure screens.", - "Disable text entry into notifications on secure keyguard screens.", - "Disable all current and future keyguard customizations." - ] + } }, "longSupportMessage": { - "description": "A message displayed to the user in the device administators settings screen.", - "$ref": "UserFacingMessage" + "$ref": "UserFacingMessage", + "description": "A message displayed to the user in the device administators settings screen." }, "vpnConfigDisabled": { "description": "Whether configuring VPN is disabled.", "type": "boolean" + }, + "cameraDisabled": { + "description": "Whether all cameras on the device are disabled.", + "type": "boolean" + }, + "factoryResetDisabled": { + "description": "Whether factory resetting from settings is disabled.", + "type": "boolean" + }, + "wifiConfigDisabled": { + "description": "Whether configuring Wi-Fi access points is disabled.", + "type": "boolean" + }, + "addUserDisabled": { + "description": "Whether adding new users and profiles is disabled.", + "type": "boolean" } }, "id": "Policy" @@ -1900,25 +1650,27 @@ "type": "object", "properties": { "minApiLevel": { - "type": "integer", "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" + "format": "int32", + "type": "integer" } }, "id": "ApiLevelCondition" }, "SoftwareInfo": { + "id": "SoftwareInfo", + "description": "Information about device software.", "type": "object", "properties": { + "bootloaderVersion": { + "description": "The system bootloader version number, e.g. 0.6.7.", + "type": "string" + }, "androidDevicePolicyVersionCode": { "description": "The Android Device Policy app version code.", "format": "int32", "type": "integer" }, - "bootloaderVersion": { - "description": "The system bootloader version number, e.g. 0.6.7.", - "type": "string" - }, "deviceKernelVersion": { "description": "Kernel version, for example, 2.6.32.9-g103d848.", "type": "string" @@ -1932,27 +1684,26 @@ "description": "Security patch level, e.g. 2016-05-01.", "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.", + "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" }, "androidVersion": { "description": "The user-visible Android version string. For example, 6.0.1.", "type": "string" }, - "androidBuildNumber": { - "type": "string", - "description": "Android build ID string meant for displaying to the user. For example, shamu-userdebug 6.0.1 MOB30I 2756745 dev-keys." + "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" }, "androidDevicePolicyVersionName": { "description": "The Android Device Policy app version as displayed to the user.", "type": "string" } - }, - "id": "SoftwareInfo", - "description": "Information about device software." + } }, "ListDevicesResponse": { + "id": "ListDevicesResponse", "description": "Response to a request to list devices for a given enterprise.", "type": "object", "properties": { @@ -1967,48 +1718,57 @@ "$ref": "Device" } } - }, - "id": "ListDevicesResponse" + } }, "Operation": { + "id": "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." + "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" - }, - "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.", - "type": "object" + } } - }, - "id": "Operation", - "description": "This resource represents a long-running operation that is the result of a network API call." + } }, "ProxyInfo": { + "id": "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": { + "pacUri": { + "description": "The URI of the PAC script used to configure the proxy.", + "type": "string" + }, + "port": { + "description": "The port of the direct proxy.", + "format": "int32", + "type": "integer" + }, "host": { "description": "The host of the direct proxy.", "type": "string" @@ -2019,414 +1779,403 @@ "items": { "type": "string" } - }, - "pacUri": { - "description": "The URI of the PAC script used to configure the proxy.", + } + } + }, + "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": { + "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" }, - "port": { - "description": "The port of the direct proxy.", + "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" } - }, - "id": "ProxyInfo" - } - }, - "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": "Android Management", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/androidmanagement": { - "description": "Manage Android devices and apps for your customers" - } } - } - }, - "rootUrl": "https://androidmanagement.googleapis.com/", - "ownerDomain": "google.com", - "name": "androidmanagement", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Android Management API", - "ownerName": "Google", - "resources": { - "enterprises": { - "methods": { - "get": { - "description": "Gets an enterprise.", - "response": { - "$ref": "Enterprise" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ], - "parameters": { - "name": { - "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", - "required": true, - "type": "string", - "pattern": "^enterprises/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/enterprises/{enterprisesId}", - "path": "v1/{+name}", - "id": "androidmanagement.enterprises.get" + }, + "EnrollmentToken": { + "id": "EnrollmentToken", + "description": "An enrollment token.", + "type": "object", + "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" }, - "patch": { - "response": { - "$ref": "Enterprise" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ], - "parameters": { - "updateMask": { - "description": "The field mask indicating the fields to update. If not set, all modifiable fields will be modified.", - "format": "google-fieldmask", - "type": "string", - "location": "query" - }, - "name": { - "location": "path", - "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", - "required": true, - "type": "string", - "pattern": "^enterprises/[^/]+$" - } - }, - "flatPath": "v1/enterprises/{enterprisesId}", - "path": "v1/{+name}", - "id": "androidmanagement.enterprises.patch", - "request": { - "$ref": "Enterprise" - }, - "description": "Updates an enterprise." + "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" }, - "create": { - "flatPath": "v1/enterprises", - "path": "v1/enterprises", - "id": "androidmanagement.enterprises.create", - "description": "Creates an enterprise. This is the last step in the enterprise signup flow.", - "request": { - "$ref": "Enterprise" - }, - "response": { - "$ref": "Enterprise" + "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" + }, + "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" + }, + "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" + }, + "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" + } + } + }, + "PasswordRequirements": { + "description": "Requirements for the password used to unlock a device.", + "type": "object", + "properties": { + "passwordMinimumLowerCase": { + "description": "Minimum number of lower case letters required in the password. Only enforced when password_quality is COMPLEX.", + "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" + }, + "passwordMinimumUpperCase": { + "description": "Minimum number of upper case letters required in the password. Only enforced when password_quality is COMPLEX.", + "format": "int32", + "type": "integer" + }, + "passwordExpirationTimeout": { + "description": "Password expiration timeout.", + "format": "google-duration", + "type": "string" + }, + "passwordQuality": { + "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." + ], + "enum": [ + "PASSWORD_QUALITY_UNSPECIFIED", + "BIOMETRIC_WEAK", + "SOMETHING", + "NUMERIC", + "NUMERIC_COMPLEX", + "ALPHABETIC", + "ALPHANUMERIC", + "COMPLEX" + ], + "description": "The required password quality.", + "type": "string" + }, + "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" + }, + "passwordMinimumSymbols": { + "description": "Minimum number of 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" + }, + "passwordMinimumLetters": { + "description": "Minimum number of 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" + }, + "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" + } + }, + "id": "PasswordRequirements" + }, + "SignupUrl": { + "description": "An enterprise signup URL.", + "type": "object", + "properties": { + "url": { + "description": "A URL where an enterprise admin can register their enterprise. The page can't be rendered in an iframe.", + "type": "string" + }, + "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" + } + }, + "id": "SignupUrl" + }, + "NonComplianceDetail": { + "id": "NonComplianceDetail", + "description": "Provides detail about non-compliance with a policy setting.", + "type": "object", + "properties": { + "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.", + "type": "string", + "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." + ], + "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" + ] + }, + "packageName": { + "description": "The package name indicating which app is out of compliance, if applicable.", + "type": "string" + }, + "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" + }, + "settingName": { + "description": "The name of the policy setting. This is the JSON field name of a top-level Policy field.", + "type": "string" + }, + "nonComplianceReason": { + "description": "The reason the device is not in compliance with the setting.", + "type": "string", + "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." + ], + "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" + ] + } + } + } + }, + "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": "Android Management", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/androidmanagement": { + "description": "Manage Android devices and apps for your customers" + } + } + } + }, + "rootUrl": "https://androidmanagement.googleapis.com/", + "ownerDomain": "google.com", + "name": "androidmanagement", + "batchPath": "batch", + "fullyEncodeReservedExpansion": true, + "title": "Android Management API", + "ownerName": "Google", + "resources": { + "signupUrls": { + "methods": { + "create": { + "httpMethod": "POST", + "response": { + "$ref": "SignupUrl" }, "parameterOrder": [], - "httpMethod": "POST", "parameters": { - "projectId": { - "type": "string", - "location": "query", - "description": "The ID of the Google Cloud Platform project which will own the enterprise." - }, - "enterpriseToken": { - "location": "query", - "description": "The enterprise token appended to the callback URL.", - "type": "string" - }, - "signupUrlName": { - "location": "query", - "description": "The name of the SignupUrl used to sign up for the enterprise.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ] - } - }, - "resources": { - "devices": { - "methods": { - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "location": "path", - "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}.", - "required": true, - "type": "string", - "pattern": "^enterprises/[^/]+/devices/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ], - "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}", - "path": "v1/{+name}", - "id": "androidmanagement.enterprises.devices.delete", - "description": "Deletes a device. This operation wipes the device." - }, - "get": { - "description": "Gets a device.", - "response": { - "$ref": "Device" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ], - "parameters": { - "name": { - "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}.", - "required": true, - "type": "string", - "pattern": "^enterprises/[^/]+/devices/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}", - "path": "v1/{+name}", - "id": "androidmanagement.enterprises.devices.get" - }, - "list": { - "description": "Lists devices for a given enterprise.", - "response": { - "$ref": "ListDevicesResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ], - "parameters": { - "parent": { - "location": "path", - "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", - "required": true, - "type": "string", - "pattern": "^enterprises/[^/]+$" - }, - "pageToken": { - "description": "A token identifying a page of results returned by the server.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "The requested page size. The actual page size may be fixed to a min or max value.", - "format": "int32", - "type": "integer", - "location": "query" - } - }, - "flatPath": "v1/enterprises/{enterprisesId}/devices", - "path": "v1/{+parent}/devices", - "id": "androidmanagement.enterprises.devices.list" - }, - "patch": { - "response": { - "$ref": "Device" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ], - "parameters": { - "updateMask": { - "type": "string", - "location": "query", - "description": "The field mask indicating the fields to update. If not set, all modifiable fields will be modified.", - "format": "google-fieldmask" - }, - "name": { - "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}.", - "required": true, - "type": "string", - "pattern": "^enterprises/[^/]+/devices/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}", - "path": "v1/{+name}", - "id": "androidmanagement.enterprises.devices.patch", - "request": { - "$ref": "Device" - }, - "description": "Updates a device." + "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.", + "type": "string", + "location": "query" }, - "issueCommand": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ], - "parameters": { - "name": { - "pattern": "^enterprises/[^/]+/devices/[^/]+$", - "location": "path", - "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}:issueCommand", - "path": "v1/{+name}:issueCommand", - "id": "androidmanagement.enterprises.devices.issueCommand", - "request": { - "$ref": "Command" - }, - "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." + "projectId": { + "description": "The ID of the Google Cloud Platform project which will own the enterprise.", + "type": "string", + "location": "query" } }, - "resources": { - "operations": { - "methods": { - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "description": "The name of the operation resource to be deleted.", - "required": true, - "type": "string", - "pattern": "^enterprises/[^/]+/devices/[^/]+/operations/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ], - "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}/operations/{operationsId}", - "path": "v1/{+name}", - "id": "androidmanagement.enterprises.devices.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." - }, - "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": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ], - "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": "^enterprises/[^/]+/devices/[^/]+/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" - } - }, - "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}/operations", - "path": "v1/{+name}", - "id": "androidmanagement.enterprises.devices.operations.list" - }, - "get": { - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "name": { - "pattern": "^enterprises/[^/]+/devices/[^/]+/operations/[^/]+$", - "location": "path", - "description": "The name of the operation resource.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ], - "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}/operations/{operationsId}", - "id": "androidmanagement.enterprises.devices.operations.get", - "path": "v1/{+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." - }, - "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": { - "pattern": "^enterprises/[^/]+/devices/[^/]+/operations/[^/]+$", - "location": "path", - "description": "The name of the operation resource to be cancelled.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ], - "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}/operations/{operationsId}:cancel", - "path": "v1/{+name}:cancel", - "id": "androidmanagement.enterprises.devices.operations.cancel" - } - } + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ], + "flatPath": "v1/signupUrls", + "id": "androidmanagement.signupUrls.create", + "path": "v1/signupUrls", + "description": "Creates an enterprise signup URL." + } + } + }, + "enterprises": { + "methods": { + "create": { + "parameters": { + "enterpriseToken": { + "description": "The enterprise token appended to the callback URL.", + "type": "string", + "location": "query" + }, + "signupUrlName": { + "location": "query", + "description": "The name of the SignupUrl used to sign up for the enterprise.", + "type": "string" + }, + "projectId": { + "location": "query", + "description": "The ID of the Google Cloud Platform project which will own the enterprise.", + "type": "string" } - } + }, + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ], + "flatPath": "v1/enterprises", + "path": "v1/enterprises", + "id": "androidmanagement.enterprises.create", + "description": "Creates an enterprise. This is the last step in the enterprise signup flow.", + "request": { + "$ref": "Enterprise" + }, + "response": { + "$ref": "Enterprise" + }, + "parameterOrder": [], + "httpMethod": "POST" + }, + "get": { + "path": "v1/{+name}", + "id": "androidmanagement.enterprises.get", + "description": "Gets an enterprise.", + "response": { + "$ref": "Enterprise" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ], + "parameters": { + "name": { + "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", + "required": true, + "type": "string", + "pattern": "^enterprises/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/enterprises/{enterprisesId}" }, + "patch": { + "httpMethod": "PATCH", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Enterprise" + }, + "parameters": { + "name": { + "pattern": "^enterprises/[^/]+$", + "location": "path", + "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", + "required": true, + "type": "string" + }, + "updateMask": { + "location": "query", + "description": "The field mask indicating the fields to update. If not set, all modifiable fields will be modified.", + "format": "google-fieldmask", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ], + "flatPath": "v1/enterprises/{enterprisesId}", + "id": "androidmanagement.enterprises.patch", + "path": "v1/{+name}", + "description": "Updates an enterprise.", + "request": { + "$ref": "Enterprise" + } + } + }, + "resources": { "webTokens": { "methods": { "create": { @@ -2443,11 +2192,11 @@ "httpMethod": "POST", "parameters": { "parent": { + "pattern": "^enterprises/[^/]+$", "location": "path", "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", "required": true, - "type": "string", - "pattern": "^enterprises/[^/]+$" + "type": "string" } }, "scopes": [ @@ -2460,31 +2209,31 @@ } }, "policies": { - "methods": { - "delete": { - "description": "Deletes a policy. This operation is only permitted if no devices are currently referencing the policy.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", + "methods": { + "delete": { "scopes": [ "https://www.googleapis.com/auth/androidmanagement" ], "parameters": { "name": { - "location": "path", "description": "The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}.", "required": true, "type": "string", - "pattern": "^enterprises/[^/]+/policies/[^/]+$" + "pattern": "^enterprises/[^/]+/policies/[^/]+$", + "location": "path" } }, "flatPath": "v1/enterprises/{enterprisesId}/policies/{policiesId}", "path": "v1/{+name}", - "id": "androidmanagement.enterprises.policies.delete" + "id": "androidmanagement.enterprises.policies.delete", + "description": "Deletes a policy. This operation is only permitted if no devices are currently referencing the policy.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE" }, "get": { "description": "Gets a policy.", @@ -2495,26 +2244,23 @@ "name" ], "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ], "parameters": { "name": { + "pattern": "^enterprises/[^/]+/policies/[^/]+$", + "location": "path", "description": "The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}.", "required": true, - "type": "string", - "pattern": "^enterprises/[^/]+/policies/[^/]+$", - "location": "path" + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ], "flatPath": "v1/enterprises/{enterprisesId}/policies/{policiesId}", "path": "v1/{+name}", "id": "androidmanagement.enterprises.policies.get" }, "list": { - "flatPath": "v1/enterprises/{enterprisesId}/policies", - "path": "v1/{+parent}/policies", - "id": "androidmanagement.enterprises.policies.list", "description": "Lists policies for a given enterprise.", "response": { "$ref": "ListPoliciesResponse" @@ -2523,14 +2269,11 @@ "parent" ], "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ], "parameters": { "pageToken": { + "location": "query", "description": "A token identifying a page of results returned by the server.", - "type": "string", - "location": "query" + "type": "string" }, "pageSize": { "location": "query", @@ -2539,29 +2282,24 @@ "type": "integer" }, "parent": { - "location": "path", "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", "required": true, "type": "string", - "pattern": "^enterprises/[^/]+$" + "pattern": "^enterprises/[^/]+$", + "location": "path" } - } + }, + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ], + "flatPath": "v1/enterprises/{enterprisesId}/policies", + "path": "v1/{+parent}/policies", + "id": "androidmanagement.enterprises.policies.list" }, "patch": { - "flatPath": "v1/enterprises/{enterprisesId}/policies/{policiesId}", - "id": "androidmanagement.enterprises.policies.patch", - "path": "v1/{+name}", - "description": "Updates or creates a policy.", - "request": { - "$ref": "Policy" - }, - "httpMethod": "PATCH", - "parameterOrder": [ - "name" + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" ], - "response": { - "$ref": "Policy" - }, "parameters": { "updateMask": { "location": "query", @@ -2570,24 +2308,61 @@ "type": "string" }, "name": { + "pattern": "^enterprises/[^/]+/policies/[^/]+$", "location": "path", "description": "The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}.", "required": true, - "type": "string", - "pattern": "^enterprises/[^/]+/policies/[^/]+$" + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ] + "flatPath": "v1/enterprises/{enterprisesId}/policies/{policiesId}", + "path": "v1/{+name}", + "id": "androidmanagement.enterprises.policies.patch", + "request": { + "$ref": "Policy" + }, + "description": "Updates or creates a policy.", + "response": { + "$ref": "Policy" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "PATCH" } } }, "enrollmentTokens": { "methods": { + "create": { + "response": { + "$ref": "EnrollmentToken" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "parameters": { + "parent": { + "pattern": "^enterprises/[^/]+$", + "location": "path", + "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ], + "flatPath": "v1/enterprises/{enterprisesId}/enrollmentTokens", + "path": "v1/{+parent}/enrollmentTokens", + "id": "androidmanagement.enterprises.enrollmentTokens.create", + "description": "Creates an enrollment token for a given enterprise.", + "request": { + "$ref": "EnrollmentToken" + } + }, "delete": { - "path": "v1/{+name}", - "id": "androidmanagement.enterprises.enrollmentTokens.delete", "description": "Deletes an enrollment token. This operation invalidates the token, preventing its future use.", "response": { "$ref": "Empty" @@ -2601,144 +2376,331 @@ ], "parameters": { "name": { + "pattern": "^enterprises/[^/]+/enrollmentTokens/[^/]+$", "location": "path", "description": "The name of the enrollment token in the form enterprises/{enterpriseId}/enrollmentTokens/{enrollmentTokenId}.", "required": true, + "type": "string" + } + }, + "flatPath": "v1/enterprises/{enterprisesId}/enrollmentTokens/{enrollmentTokensId}", + "path": "v1/{+name}", + "id": "androidmanagement.enterprises.enrollmentTokens.delete" + } + } + }, + "applications": { + "methods": { + "get": { + "id": "androidmanagement.enterprises.applications.get", + "path": "v1/{+name}", + "description": "Gets info about an application.", + "httpMethod": "GET", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Application" + }, + "parameters": { + "name": { + "pattern": "^enterprises/[^/]+/applications/[^/]+$", + "location": "path", + "description": "The name of the application in the form enterprises/{enterpriseId}/applications/{package_name}.", + "required": true, + "type": "string" + }, + "languageCode": { + "location": "query", + "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.", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ], + "flatPath": "v1/enterprises/{enterprisesId}/applications/{applicationsId}" + } + } + }, + "devices": { + "methods": { + "delete": { + "httpMethod": "DELETE", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ], + "parameters": { + "name": { + "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}.", + "required": true, "type": "string", - "pattern": "^enterprises/[^/]+/enrollmentTokens/[^/]+$" + "pattern": "^enterprises/[^/]+/devices/[^/]+$", + "location": "path" } }, - "flatPath": "v1/enterprises/{enterprisesId}/enrollmentTokens/{enrollmentTokensId}" + "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}", + "id": "androidmanagement.enterprises.devices.delete", + "path": "v1/{+name}", + "description": "Deletes a device. This operation wipes the device." }, - "create": { - "request": { - "$ref": "EnrollmentToken" + "get": { + "description": "Gets a device.", + "httpMethod": "GET", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Device" }, - "description": "Creates an enrollment token for a given enterprise.", + "parameters": { + "name": { + "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}.", + "required": true, + "type": "string", + "pattern": "^enterprises/[^/]+/devices/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ], + "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}", + "id": "androidmanagement.enterprises.devices.get", + "path": "v1/{+name}" + }, + "list": { + "path": "v1/{+parent}/devices", + "id": "androidmanagement.enterprises.devices.list", + "description": "Lists devices for a given enterprise.", "response": { - "$ref": "EnrollmentToken" + "$ref": "ListDevicesResponse" }, "parameterOrder": [ "parent" ], - "httpMethod": "POST", + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/androidmanagement" ], "parameters": { + "pageToken": { + "location": "query", + "description": "A token identifying a page of results returned by the server.", + "type": "string" + }, + "pageSize": { + "location": "query", + "description": "The requested page size. The actual page size may be fixed to a min or max value.", + "format": "int32", + "type": "integer" + }, "parent": { + "pattern": "^enterprises/[^/]+$", + "location": "path", "description": "The name of the enterprise in the form enterprises/{enterpriseId}.", "required": true, - "type": "string", - "pattern": "^enterprises/[^/]+$", - "location": "path" + "type": "string" } }, - "flatPath": "v1/enterprises/{enterprisesId}/enrollmentTokens", - "path": "v1/{+parent}/enrollmentTokens", - "id": "androidmanagement.enterprises.enrollmentTokens.create" - } - } - }, - "applications": { - "methods": { - "get": { - "description": "Gets info about an application.", - "httpMethod": "GET", + "flatPath": "v1/enterprises/{enterprisesId}/devices" + }, + "patch": { + "response": { + "$ref": "Device" + }, "parameterOrder": [ "name" ], - "response": { - "$ref": "Application" + "httpMethod": "PATCH", + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ], + "parameters": { + "updateMask": { + "description": "The field mask indicating the fields to update. If not set, all modifiable fields will be modified.", + "format": "google-fieldmask", + "type": "string", + "location": "query" + }, + "name": { + "pattern": "^enterprises/[^/]+/devices/[^/]+$", + "location": "path", + "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}.", + "required": true, + "type": "string" + } + }, + "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}", + "path": "v1/{+name}", + "id": "androidmanagement.enterprises.devices.patch", + "request": { + "$ref": "Device" }, + "description": "Updates a device." + }, + "issueCommand": { + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ], "parameters": { "name": { - "description": "The name of the application in the form enterprises/{enterpriseId}/applications/{package_name}.", + "pattern": "^enterprises/[^/]+/devices/[^/]+$", + "location": "path", + "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}.", "required": true, - "type": "string", - "pattern": "^enterprises/[^/]+/applications/[^/]+$", - "location": "path" - }, - "languageCode": { - "location": "query", - "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.", "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" + "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}:issueCommand", + "path": "v1/{+name}:issueCommand", + "id": "androidmanagement.enterprises.devices.issueCommand", + "request": { + "$ref": "Command" + }, + "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.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" ], - "flatPath": "v1/enterprises/{enterprisesId}/applications/{applicationsId}", - "id": "androidmanagement.enterprises.applications.get", - "path": "v1/{+name}" + "httpMethod": "POST" } - } - } - } - }, - "signupUrls": { - "methods": { - "create": { - "description": "Creates an enterprise signup URL.", - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "SignupUrl" }, - "parameters": { - "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.", - "type": "string", - "location": "query" - }, - "projectId": { - "location": "query", - "description": "The ID of the Google Cloud Platform project which will own the enterprise.", - "type": "string" + "resources": { + "operations": { + "methods": { + "delete": { + "path": "v1/{+name}", + "id": "androidmanagement.enterprises.devices.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/androidmanagement" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "required": true, + "type": "string", + "pattern": "^enterprises/[^/]+/devices/[^/]+/operations/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}/operations/{operationsId}" + }, + "list": { + "id": "androidmanagement.enterprises.devices.operations.list", + "path": "v1/{+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.", + "httpMethod": "GET", + "response": { + "$ref": "ListOperationsResponse" + }, + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation's parent resource.", + "required": true, + "type": "string", + "pattern": "^enterprises/[^/]+/devices/[^/]+/operations$", + "location": "path" + }, + "pageToken": { + "description": "The standard list page token.", + "type": "string", + "location": "query" + }, + "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/androidmanagement" + ], + "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}/operations" + }, + "get": { + "parameters": { + "name": { + "description": "The name of the operation resource.", + "required": true, + "type": "string", + "pattern": "^enterprises/[^/]+/devices/[^/]+/operations/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ], + "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}/operations/{operationsId}", + "id": "androidmanagement.enterprises.devices.operations.get", + "path": "v1/{+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.", + "httpMethod": "GET", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Operation" + } + }, + "cancel": { + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/androidmanagement" + ], + "parameters": { + "name": { + "pattern": "^enterprises/[^/]+/devices/[^/]+/operations/[^/]+$", + "location": "path", + "description": "The name of the operation resource to be cancelled.", + "required": true, + "type": "string" + } + }, + "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}/operations/{operationsId}:cancel", + "path": "v1/{+name}:cancel", + "id": "androidmanagement.enterprises.devices.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." + } + } } - }, - "scopes": [ - "https://www.googleapis.com/auth/androidmanagement" - ], - "flatPath": "v1/signupUrls", - "id": "androidmanagement.signupUrls.create", - "path": "v1/signupUrls" + } } } } }, "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": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "oauth_token": { - "type": "string", - "location": "query", - "description": "OAuth 2.0 token for the current user." - }, "upload_protocol": { "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", "type": "string", @@ -2750,22 +2712,19 @@ "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", + "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" @@ -2774,8 +2733,11 @@ "enum": [ "1", "2" - ], - "description": "V1 error format.", + ] + }, + "callback": { + "location": "query", + "description": "JSONP", "type": "string" }, "alt": { @@ -2793,8 +2755,46 @@ "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": { + "description": "OAuth 2.0 token for the current user.", + "type": "string", + "location": "query" + }, + "bearer_token": { + "description": "OAuth bearer token.", + "type": "string", + "location": "query" } }, "version": "v1", - "baseUrl": "https://androidmanagement.googleapis.com/" + "baseUrl": "https://androidmanagement.googleapis.com/", + "servicePath": "", + "description": "The Android Management API provides remote enterprise management of Android devices and apps.", + "kind": "discovery#restDescription", + "basePath": "", + "id": "androidmanagement:v1", + "documentationLink": "https://developers.google.com/android/management", + "revision": "20180430" } diff --git a/DiscoveryJson/androidpublisher_v1.1.json b/DiscoveryJson/androidpublisher_v1.1.json index df389be186..159bb9f8ac 100644 --- a/DiscoveryJson/androidpublisher_v1.1.json +++ b/DiscoveryJson/androidpublisher_v1.1.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/JKgut2actEPgzMqtgugQnoyxDcA\"", + "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/iNAAsEc_jnla5iuh9kVWvuw2s6I\"", "discoveryVersion": "v1", "id": "androidpublisher:v1.1", "name": "androidpublisher", "canonicalName": "Android Publisher", "version": "v1.1", - "revision": "20180502", + "revision": "20180504", "title": "Google Play Developer API", "description": "Lets Android application developers access their Google Play accounts.", "ownerDomain": "google.com", diff --git a/DiscoveryJson/androidpublisher_v1.json b/DiscoveryJson/androidpublisher_v1.json index 8d7a9fe844..982c3b3483 100644 --- a/DiscoveryJson/androidpublisher_v1.json +++ b/DiscoveryJson/androidpublisher_v1.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/8aG_jh7JSk5qCenjaXS5MqRz9ZQ\"", + "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/8obd_v7WUnQkP6hd4iYiZhkv3F4\"", "discoveryVersion": "v1", "id": "androidpublisher:v1", "name": "androidpublisher", "canonicalName": "Android Publisher", "version": "v1", - "revision": "20180502", + "revision": "20180504", "title": "Google Play Developer API", "description": "Lets Android application developers access their Google Play accounts.", "ownerDomain": "google.com", diff --git a/DiscoveryJson/androidpublisher_v2.json b/DiscoveryJson/androidpublisher_v2.json index a8660dc30e..ff691380e2 100644 --- a/DiscoveryJson/androidpublisher_v2.json +++ b/DiscoveryJson/androidpublisher_v2.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/L9iuiiRunjd7yly6GEykFhzwrEQ\"", + "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/LDFr6YaJ8-u0RqM_DYpFxlF3LR4\"", "discoveryVersion": "v1", "id": "androidpublisher:v2", "name": "androidpublisher", "canonicalName": "Android Publisher", "version": "v2", - "revision": "20180502", + "revision": "20180504", "title": "Google Play Developer API", "description": "Lets Android application developers access their Google Play accounts.", "ownerDomain": "google.com", @@ -212,6 +212,42 @@ } } }, + "Bundle": { + "id": "Bundle", + "type": "object", + "properties": { + "sha1": { + "type": "string", + "description": "A sha1 hash of the upload payload, encoded as a hex string and matching the output of the sha1sum command." + }, + "sha256": { + "type": "string", + "description": "A sha256 hash of the upload payload, encoded as a hex string and matching the output of the sha256sum command." + }, + "versionCode": { + "type": "integer", + "description": "The version code of the Android App Bundle. As specified in the Android App Bundle's base module APK manifest file.", + "format": "int32" + } + } + }, + "BundlesListResponse": { + "id": "BundlesListResponse", + "type": "object", + "properties": { + "bundles": { + "type": "array", + "items": { + "$ref": "Bundle" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidpublisher#bundlesListResponse\".", + "default": "androidpublisher#bundlesListResponse" + } + } + }, "Comment": { "id": "Comment", "type": "object", @@ -1027,6 +1063,7 @@ }, "versionCodes": { "type": "array", + "description": "Version codes to make active on this track. Note that this list should contain all versions you wish to be active, including those you wish to retain from previous releases.", "items": { "type": "integer", "format": "int32" @@ -1676,6 +1713,85 @@ } } }, + "bundles": { + "methods": { + "list": { + "id": "androidpublisher.edits.bundles.list", + "path": "{packageName}/edits/{editId}/bundles", + "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": "BundlesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "upload": { + "id": "androidpublisher.edits.bundles.upload", + "path": "{packageName}/edits/{editId}/bundles", + "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": "Bundle" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ], + "supportsMediaUpload": true, + "mediaUpload": { + "accept": [ + "application/octet-stream" + ], + "maxSize": "2GB", + "protocols": { + "simple": { + "multipart": true, + "path": "/upload/androidpublisher/v2/applications/{packageName}/edits/{editId}/bundles" + }, + "resumable": { + "multipart": true, + "path": "/resumable/upload/androidpublisher/v2/applications/{packageName}/edits/{editId}/bundles" + } + } + } + } + } + }, "deobfuscationfiles": { "methods": { "upload": { diff --git a/DiscoveryJson/androidpublisher_v3.json b/DiscoveryJson/androidpublisher_v3.json index 9e89281fad..f160b3d5db 100644 --- a/DiscoveryJson/androidpublisher_v3.json +++ b/DiscoveryJson/androidpublisher_v3.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/BkJxqosH1a00zAdsgGajyPHSOBg\"", + "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/H-o8b_fFcJw8NU8kyQ0bDCyTZEI\"", "discoveryVersion": "v1", "id": "androidpublisher:v3", "name": "androidpublisher", "canonicalName": "Android Publisher", "version": "v3", - "revision": "20180502", + "revision": "20180504", "title": "Google Play Developer API", "description": "Lets Android application developers access their Google Play accounts.", "ownerDomain": "google.com", @@ -181,6 +181,42 @@ } } }, + "Bundle": { + "id": "Bundle", + "type": "object", + "properties": { + "sha1": { + "type": "string", + "description": "A sha1 hash of the upload payload, encoded as a hex string and matching the output of the sha1sum command." + }, + "sha256": { + "type": "string", + "description": "A sha256 hash of the upload payload, encoded as a hex string and matching the output of the sha256sum command." + }, + "versionCode": { + "type": "integer", + "description": "The version code of the Android App Bundle. As specified in the Android App Bundle's base module APK manifest file.", + "format": "int32" + } + } + }, + "BundlesListResponse": { + "id": "BundlesListResponse", + "type": "object", + "properties": { + "bundles": { + "type": "array", + "items": { + "$ref": "Bundle" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidpublisher#bundlesListResponse\".", + "default": "androidpublisher#bundlesListResponse" + } + } + }, "Comment": { "id": "Comment", "type": "object", @@ -1034,12 +1070,12 @@ }, "userFraction": { "type": "number", - "description": "Fraction of users who are eligible to receive the release. 0 \u003c= fraction \u003c 1. To be set, release status must be IN_PROGRESS or HALTED.", + "description": "Fraction of users who are eligible to receive the release. 0 \u003c= fraction \u003c 1. To be set, release status must be \"inProgress\" or \"halted\".", "format": "double" }, "versionCodes": { "type": "array", - "description": "A list of version codes of APKs that will be exposed to the users of this track when this release is rolled out.", + "description": "A list of all version codes of APKs that will be exposed to the users of this track when this release is rolled out. Note that this list should contain all versions you wish to be active, including those you wish to retain from previous releases.", "items": { "type": "string", "format": "int64" @@ -1429,6 +1465,85 @@ } } }, + "bundles": { + "methods": { + "list": { + "id": "androidpublisher.edits.bundles.list", + "path": "{packageName}/edits/{editId}/bundles", + "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": "BundlesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "upload": { + "id": "androidpublisher.edits.bundles.upload", + "path": "{packageName}/edits/{editId}/bundles", + "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": "Bundle" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ], + "supportsMediaUpload": true, + "mediaUpload": { + "accept": [ + "application/octet-stream" + ], + "maxSize": "2GB", + "protocols": { + "simple": { + "multipart": true, + "path": "/upload/androidpublisher/v3/applications/{packageName}/edits/{editId}/bundles" + }, + "resumable": { + "multipart": true, + "path": "/resumable/upload/androidpublisher/v3/applications/{packageName}/edits/{editId}/bundles" + } + } + } + } + } + }, "deobfuscationfiles": { "methods": { "upload": { diff --git a/DiscoveryJson/appengine_v1.json b/DiscoveryJson/appengine_v1.json index 5653553df1..3dbd52ca03 100644 --- a/DiscoveryJson/appengine_v1.json +++ b/DiscoveryJson/appengine_v1.json @@ -1,10 +1,333 @@ { + "batchPath": "batch", + "documentationLink": "https://cloud.google.com/appengine/docs/admin-api/", + "id": "appengine:v1", + "revision": "20180502", + "title": "App Engine Admin API", + "ownerName": "Google", + "discoveryVersion": "v1", + "version_module": true, "resources": { "apps": { + "methods": { + "create": { + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "Operation" + }, + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/apps", + "id": "appengine.apps.create", + "path": "v1/apps", + "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/).", + "request": { + "$ref": "Application" + } + }, + "repair": { + "path": "v1/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.", + "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" + }, + "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": { + "flatPath": "v1/apps/{appsId}", + "path": "v1/apps/{appsId}", + "id": "appengine.apps.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.", + "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" + } + } + } + }, "resources": { + "firewall": { + "resources": { + "ingressRules": { + "methods": { + "delete": { + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "appsId", + "ingressRulesId" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "ingressRulesId": { + "location": "path", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "type": "string" + }, + "appsId": { + "location": "path", + "description": "Part of `name`. Name of the Firewall resource to delete. Example: apps/myapp/firewall/ingressRules/100.", + "required": true, + "type": "string" + } + }, + "flatPath": "v1/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", + "path": "v1/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", + "id": "appengine.apps.firewall.ingressRules.delete", + "description": "Deletes the specified firewall rule." + }, + "list": { + "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": { + "location": "query", + "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" + }, + "appsId": { + "description": "Part of `parent`. Name of the Firewall collection to retrieve. Example: apps/myapp/firewall/ingressRules.", + "required": true, + "type": "string", + "location": "path" + }, + "pageToken": { + "location": "query", + "description": "Continuation token for fetching the next page of results.", + "type": "string" + } + }, + "flatPath": "v1/apps/{appsId}/firewall/ingressRules", + "path": "v1/apps/{appsId}/firewall/ingressRules", + "id": "appengine.apps.firewall.ingressRules.list", + "description": "Lists the firewall rules of an application." + }, + "create": { + "response": { + "$ref": "FirewallRule" + }, + "parameterOrder": [ + "appsId" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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" + } + }, + "flatPath": "v1/apps/{appsId}/firewall/ingressRules", + "path": "v1/apps/{appsId}/firewall/ingressRules", + "id": "appengine.apps.firewall.ingressRules.create", + "request": { + "$ref": "FirewallRule" + }, + "description": "Creates a firewall rule for the application." + }, + "get": { + "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.", + "response": { + "$ref": "FirewallRule" + }, + "parameterOrder": [ + "appsId", + "ingressRulesId" + ], + "httpMethod": "GET", + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the Firewall resource to retrieve. Example: apps/myapp/firewall/ingressRules/100.", + "required": true, + "type": "string", + "location": "path" + }, + "ingressRulesId": { + "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" + ] + }, + "patch": { + "request": { + "$ref": "FirewallRule" + }, + "description": "Updates the specified firewall rule.", + "response": { + "$ref": "FirewallRule" + }, + "parameterOrder": [ + "appsId", + "ingressRulesId" + ], + "httpMethod": "PATCH", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "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": { + "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" + } + }, + "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" + }, + "httpMethod": "POST", + "parameterOrder": [ + "appsId" + ], + "response": { + "$ref": "BatchUpdateIngressRulesResponse" + }, + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the Firewall collection to set. Example: apps/myapp/firewall/ingressRules.", + "required": true, + "type": "string", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/apps/{appsId}/firewall/ingressRules:batchUpdate", + "id": "appengine.apps.firewall.ingressRules.batchUpdate", + "path": "v1/apps/{appsId}/firewall/ingressRules:batchUpdate" + } + } + } + } + }, "locations": { "methods": { "list": { + "description": "Lists information about the supported locations for this service.", "response": { "$ref": "ListLocationsResponse" }, @@ -12,62 +335,60 @@ "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": { - "filter": { - "location": "query", - "description": "The standard list filter.", - "type": "string" - }, "appsId": { - "location": "path", "description": "Part of `name`. The resource that owns the locations collection, if applicable.", "required": true, - "type": "string" + "type": "string", + "location": "path" }, "pageToken": { - "location": "query", "description": "The standard list page token.", - "type": "string" + "type": "string", + "location": "query" }, "pageSize": { + "location": "query", "description": "The standard list page size.", "format": "int32", - "type": "integer", + "type": "integer" + }, + "filter": { + "description": "The standard list filter.", + "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}/locations", "path": "v1/apps/{appsId}/locations", - "id": "appengine.apps.locations.list", - "description": "Lists information about the supported locations for this service." + "id": "appengine.apps.locations.list" }, "get": { - "description": "Gets information about a location.", - "response": { - "$ref": "Location" - }, + "httpMethod": "GET", "parameterOrder": [ "appsId", "locationsId" ], - "httpMethod": "GET", + "response": { + "$ref": "Location" + }, "parameters": { - "locationsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, "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": [ @@ -76,91 +397,39 @@ "https://www.googleapis.com/auth/cloud-platform.read-only" ], "flatPath": "v1/apps/{appsId}/locations/{locationsId}", + "id": "appengine.apps.locations.get", "path": "v1/apps/{appsId}/locations/{locationsId}", - "id": "appengine.apps.locations.get" + "description": "Gets information about a location." } } }, "authorizedCertificates": { "methods": { - "create": { - "description": "Uploads the specified SSL certificate.", - "request": { - "$ref": "AuthorizedCertificate" - }, - "httpMethod": "POST", + "list": { + "httpMethod": "GET", "parameterOrder": [ "appsId" ], "response": { - "$ref": "AuthorizedCertificate" + "$ref": "ListAuthorizedCertificatesResponse" }, "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": "v1/apps/{appsId}/authorizedCertificates", - "id": "appengine.apps.authorizedCertificates.create", - "path": "v1/apps/{appsId}/authorizedCertificates" - }, - "delete": { - "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" + "type": "string", + "location": "path" + }, + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string", + "location": "query" }, - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource to delete. Example: apps/myapp/authorizedCertificates/12345.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "path": "v1/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "id": "appengine.apps.authorizedCertificates.delete", - "description": "Deletes the specified SSL certificate." - }, - "list": { - "description": "Lists all SSL certificates the user is authorized to administer.", - "response": { - "$ref": "ListAuthorizedCertificatesResponse" - }, - "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" + "type": "integer", + "location": "query" }, "view": { "location": "query", @@ -170,24 +439,20 @@ ], "description": "Controls the set of fields returned in the LIST response.", "type": "string" - }, - "appsId": { - "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", - "required": true, - "type": "string", - "location": "path" - }, - "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": "v1/apps/{appsId}/authorizedCertificates", + "id": "appengine.apps.authorizedCertificates.list", "path": "v1/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.", "response": { "$ref": "AuthorizedCertificate" }, @@ -196,63 +461,59 @@ "authorizedCertificatesId" ], "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/authorizedCertificates/12345.", "required": true, - "type": "string" + "type": "string", + "location": "path" }, "view": { + "description": "Controls the set of fields returned in the GET response.", + "type": "string", "location": "query", "enum": [ "BASIC_CERTIFICATE", "FULL_CERTIFICATE" - ], - "description": "Controls the set of fields returned in the GET response.", - "type": "string" + ] }, "authorizedCertificatesId": { - "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "required": true, - "type": "string" + "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", - "description": "Gets the specified SSL certificate." + "id": "appengine.apps.authorizedCertificates.get" }, "patch": { - "response": { - "$ref": "AuthorizedCertificate" - }, + "httpMethod": "PATCH", "parameterOrder": [ "appsId", "authorizedCertificatesId" ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], + "response": { + "$ref": "AuthorizedCertificate" + }, "parameters": { "appsId": { + "location": "path", "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/authorizedCertificates/12345.", "required": true, - "type": "string", - "location": "path" + "type": "string" }, "authorizedCertificatesId": { - "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "required": true, - "type": "string" + "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.", @@ -261,366 +522,234 @@ "location": "query" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "flatPath": "v1/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "path": "v1/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", "id": "appengine.apps.authorizedCertificates.patch", + "path": "v1/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "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" + } + }, + "create": { + "id": "appengine.apps.authorizedCertificates.create", + "path": "v1/apps/{appsId}/authorizedCertificates", + "description": "Uploads the specified SSL certificate.", "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." - } - } - }, - "services": { - "methods": { - "delete": { - "response": { - "$ref": "Operation" - }, + "httpMethod": "POST", "parameterOrder": [ - "appsId", - "servicesId" + "appsId" ], - "httpMethod": "DELETE", + "response": { + "$ref": "AuthorizedCertificate" + }, "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.", + "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", "required": true, - "type": "string" + "type": "string", + "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "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." + "flatPath": "v1/apps/{appsId}/authorizedCertificates" }, - "list": { - "description": "Lists all the services in the application.", + "delete": { + "flatPath": "v1/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "path": "v1/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "id": "appengine.apps.authorizedCertificates.delete", + "description": "Deletes the specified SSL certificate.", "response": { - "$ref": "ListServicesResponse" + "$ref": "Empty" }, "parameterOrder": [ - "appsId" + "appsId", + "authorizedCertificatesId" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "httpMethod": "GET", "parameters": { "appsId": { "location": "path", - "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "description": "Part of `name`. Name of the resource to delete. Example: apps/myapp/authorizedCertificates/12345.", "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" + "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}/services", - "path": "v1/apps/{appsId}/services", - "id": "appengine.apps.services.list" - }, - "get": { - "path": "v1/apps/{appsId}/services/{servicesId}", - "id": "appengine.apps.services.get", - "description": "Gets the current configuration of the specified service.", + } + } + } + }, + "services": { + "methods": { + "delete": { + "description": "Deletes the specified service and all enclosed versions.", "response": { - "$ref": "Service" + "$ref": "Operation" }, "parameterOrder": [ "appsId", "servicesId" ], - "httpMethod": "GET", + "httpMethod": "DELETE", "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" + "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", "required": true, - "type": "string" + "type": "string", + "location": "path" }, - "servicesId": { + "appsId": { "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", "required": true, "type": "string" } }, - "flatPath": "v1/apps/{appsId}/services/{servicesId}" - }, - "patch": { "flatPath": "v1/apps/{appsId}/services/{servicesId}", "path": "v1/apps/{appsId}/services/{servicesId}", - "id": "appengine.apps.services.patch", - "request": { - "$ref": "Service" - }, - "description": "Updates the configuration of the specified service.", + "id": "appengine.apps.services.delete" + }, + "list": { + "description": "Lists all the services in the application.", "response": { - "$ref": "Operation" + "$ref": "ListServicesResponse" }, "parameterOrder": [ - "appsId", - "servicesId" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "appsId" ], + "httpMethod": "GET", "parameters": { - "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/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" - }, - "updateMask": { - "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, - "type": "string" - }, "appsId": { - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default.", + "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", "required": true, "type": "string", - "location": "path" - } - } - } - }, - "resources": { - "versions": { - "resources": { - "instances": { - "methods": { - "delete": { - "id": "appengine.apps.services.versions.instances.delete", - "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", - "description": "Stops a running instance.", - "httpMethod": "DELETE", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "servicesId", - "versionsId", - "instancesId" - ], - "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/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": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}" - }, - "list": { - "response": { - "$ref": "ListInstancesResponse" - }, - "parameterOrder": [ - "appsId", - "servicesId", - "versionsId" - ], - "httpMethod": "GET", - "parameters": { - "servicesId": { - "description": "Part of `parent`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, - "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": { - "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" - }, - "versionsId": { - "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": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances", - "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances", - "id": "appengine.apps.services.versions.instances.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)." - }, - "get": { - "description": "Gets instance information.", - "response": { - "$ref": "Instance" - }, - "parameterOrder": [ - "appsId", - "servicesId", - "versionsId", - "instancesId" - ], - "httpMethod": "GET", - "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" - } - }, - "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": { - "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" - }, - "httpMethod": "POST", - "parameterOrder": [ - "appsId", - "servicesId", - "versionsId", - "instancesId" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "versionsId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "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/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": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug", - "id": "appengine.apps.services.versions.instances.debug", - "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug" - } - } + "location": "path" + }, + "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" + } + }, + "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": { + "flatPath": "v1/apps/{appsId}/services/{servicesId}", + "id": "appengine.apps.services.get", + "path": "v1/apps/{appsId}/services/{servicesId}", + "description": "Gets the current configuration of the specified service.", + "httpMethod": "GET", + "response": { + "$ref": "Service" + }, + "parameterOrder": [ + "appsId", + "servicesId" + ], + "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" + } + }, + "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": { + "request": { + "$ref": "Service" + }, + "description": "Updates the configuration of the specified service.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "appsId", + "servicesId" + ], + "httpMethod": "PATCH", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "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/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" + }, + "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": { + "location": "path", + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default.", + "required": true, + "type": "string" } }, + "flatPath": "v1/apps/{appsId}/services/{servicesId}", + "path": "v1/apps/{appsId}/services/{servicesId}", + "id": "appengine.apps.services.patch" + } + }, + "resources": { + "versions": { "methods": { "create": { + "request": { + "$ref": "Version" + }, + "description": "Deploys code and resource files to a new version.", "response": { "$ref": "Operation" }, @@ -634,10 +763,10 @@ ], "parameters": { "servicesId": { - "location": "path", "description": "Part of `parent`. See documentation of `appsId`.", "required": true, - "type": "string" + "type": "string", + "location": "path" }, "appsId": { "location": "path", @@ -648,18 +777,9 @@ }, "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions", "path": "v1/apps/{appsId}/services/{servicesId}/versions", - "id": "appengine.apps.services.versions.create", - "request": { - "$ref": "Version" - }, - "description": "Deploys code and resource files to a new version." + "id": "appengine.apps.services.versions.create" }, "delete": { - "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "id": "appengine.apps.services.versions.delete", - "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "description": "Deletes an existing Version resource.", - "httpMethod": "DELETE", "response": { "$ref": "Operation" }, @@ -668,13 +788,8 @@ "servicesId", "versionsId" ], + "httpMethod": "DELETE", "parameters": { - "versionsId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, "servicesId": { "description": "Part of `name`. See documentation of `appsId`.", "required": true, @@ -682,18 +797,27 @@ "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": { + "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}", + "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "id": "appengine.apps.services.versions.delete", + "description": "Deletes an existing Version resource." }, "list": { - "description": "Lists the versions of a service.", "response": { "$ref": "ListVersionsResponse" }, @@ -703,17 +827,11 @@ ], "httpMethod": "GET", "parameters": { - "servicesId": { - "description": "Part of `parent`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, "appsId": { - "location": "path", "description": "Part of `parent`. Name of the parent Service resource. Example: apps/myapp/services/default.", "required": true, - "type": "string" + "type": "string", + "location": "path" }, "pageToken": { "location": "query", @@ -727,12 +845,18 @@ "type": "integer" }, "view": { - "location": "query", "enum": [ "BASIC", "FULL" ], "description": "Controls the set of fields returned in the List response.", + "type": "string", + "location": "query" + }, + "servicesId": { + "location": "path", + "description": "Part of `parent`. See documentation of `appsId`.", + "required": true, "type": "string" } }, @@ -743,9 +867,12 @@ ], "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions", "path": "v1/apps/{appsId}/services/{servicesId}/versions", - "id": "appengine.apps.services.versions.list" + "id": "appengine.apps.services.versions.list", + "description": "Lists the versions of a service." }, "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.", + "httpMethod": "GET", "response": { "$ref": "Version" }, @@ -754,12 +881,6 @@ "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 `name`. See documentation of `appsId`.", @@ -789,10 +910,14 @@ "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}", - "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}", "id": "appengine.apps.services.versions.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." + "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}" }, "patch": { "response": { @@ -804,9 +929,6 @@ "versionsId" ], "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { "updateMask": { "description": "Standard field mask for the set of fields to be updated.", @@ -815,31 +937,231 @@ "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/versions/1.", + "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/cloud-platform" + ], + "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" + } + } + }, + "resources": { + "instances": { + "methods": { + "delete": { + "description": "Stops a running instance.", + "httpMethod": "DELETE", + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId", + "instancesId" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "versionsId": { + "location": "path", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "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 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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", + "id": "appengine.apps.services.versions.instances.delete", + "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}" + }, + "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": { + "location": "path", + "description": "Part of `parent`. See documentation of `appsId`.", + "required": true, + "type": "string" + }, + "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": { + "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" + }, + "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", + "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)." }, - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default/versions/1.", - "required": true, - "type": "string" + "get": { + "httpMethod": "GET", + "response": { + "$ref": "Instance" + }, + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId", + "instancesId" + ], + "parameters": { + "versionsId": { + "location": "path", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "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 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" + } + }, + "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}", + "id": "appengine.apps.services.versions.instances.get", + "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", + "description": "Gets instance information." }, - "versionsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" + "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", + "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}", - "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "id": "appengine.apps.services.versions.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/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." + } } } } @@ -848,6 +1170,7 @@ "authorizedDomains": { "methods": { "list": { + "description": "Lists all domains the user is authorized to administer.", "response": { "$ref": "ListAuthorizedDomainsResponse" }, @@ -855,6 +1178,11 @@ "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", @@ -863,40 +1191,36 @@ "type": "integer" }, "appsId": { - "location": "path", "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", "required": true, - "type": "string" + "type": "string", + "location": "path" }, "pageToken": { + "location": "query", "description": "Continuation token for fetching the next page of results.", - "type": "string", - "location": "query" + "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}/authorizedDomains", "path": "v1/apps/{appsId}/authorizedDomains", - "id": "appengine.apps.authorizedDomains.list", - "description": "Lists all domains the user is authorized to administer." + "id": "appengine.apps.authorizedDomains.list" } } }, "operations": { "methods": { "list": { + "id": "appengine.apps.operations.list", + "path": "v1/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.", - "response": { - "$ref": "ListOperationsResponse" - }, + "httpMethod": "GET", "parameterOrder": [ "appsId" ], - "httpMethod": "GET", + "response": { + "$ref": "ListOperationsResponse" + }, "parameters": { "filter": { "location": "query", @@ -904,10 +1228,10 @@ "type": "string" }, "appsId": { - "location": "path", "description": "Part of `name`. The name of the operation's parent resource.", "required": true, - "type": "string" + "type": "string", + "location": "path" }, "pageToken": { "description": "The standard list page token.", @@ -926,9 +1250,7 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "flatPath": "v1/apps/{appsId}/operations", - "path": "v1/apps/{appsId}/operations", - "id": "appengine.apps.operations.list" + "flatPath": "v1/apps/{appsId}/operations" }, "get": { "response": { @@ -939,25 +1261,25 @@ "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": { - "operationsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" - }, "appsId": { "location": "path", "description": "Part of `name`. The name of the operation resource.", "required": true, "type": "string" + }, + "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": "v1/apps/{appsId}/operations/{operationsId}", "path": "v1/apps/{appsId}/operations/{operationsId}", "id": "appengine.apps.operations.get", @@ -967,38 +1289,10 @@ }, "domainMappings": { "methods": { - "delete": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "domainMappingsId" - ], - "httpMethod": "DELETE", - "parameters": { - "domainMappingsId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, - "appsId": { - "description": "Part of `name`. Name of the resource to delete. Example: apps/myapp/domainMappings/example.com.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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." - }, "list": { + "flatPath": "v1/apps/{appsId}/domainMappings", + "path": "v1/apps/{appsId}/domainMappings", + "id": "appengine.apps.domainMappings.list", "description": "Lists the domain mappings on an application.", "response": { "$ref": "ListDomainMappingsResponse" @@ -1008,457 +1302,171 @@ ], "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": "v1/apps/{appsId}/domainMappings", - "path": "v1/apps/{appsId}/domainMappings", - "id": "appengine.apps.domainMappings.list" - }, - "get": { - "id": "appengine.apps.domainMappings.get", - "path": "v1/apps/{appsId}/domainMappings/{domainMappingsId}", - "description": "Gets the specified domain mapping.", - "httpMethod": "GET", - "parameterOrder": [ - "appsId", - "domainMappingsId" - ], - "response": { - "$ref": "DomainMapping" - }, - "parameters": { + }, "appsId": { "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/domainMappings/example.com.", + "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", "required": true, "type": "string" }, - "domainMappingsId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "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": "v1/apps/{appsId}/domainMappings/{domainMappingsId}" + ] }, - "patch": { + "get": { "response": { - "$ref": "Operation" + "$ref": "DomainMapping" }, "parameterOrder": [ "appsId", "domainMappingsId" ], - "httpMethod": "PATCH", - "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": { - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/domainMappings/example.com.", - "required": true, - "type": "string", - "location": "path" - } - }, + "httpMethod": "GET", "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/apps/{appsId}/domainMappings/{domainMappingsId}", - "path": "v1/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" - } - }, - "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" - }, - "httpMethod": "POST", - "parameterOrder": [ - "appsId" + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "response": { - "$ref": "Operation" - }, "parameters": { "appsId": { "location": "path", - "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/domainMappings/example.com.", "required": true, "type": "string" }, - "overrideStrategy": { - "location": "query", - "enum": [ - "UNSPECIFIED_DOMAIN_OVERRIDE_STRATEGY", - "STRICT", - "OVERRIDE" - ], - "description": "Whether the domain creation should override any existing mappings for this domain. By default, overrides are rejected.", + "domainMappingsId": { + "location": "path", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, "type": "string" } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/apps/{appsId}/domainMappings", - "id": "appengine.apps.domainMappings.create", - "path": "v1/apps/{appsId}/domainMappings" - } - } - }, - "firewall": { - "resources": { - "ingressRules": { - "methods": { - "delete": { - "description": "Deletes the specified firewall rule.", - "response": { - "$ref": "Empty" - }, - "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.", - "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.delete" - }, - "list": { - "flatPath": "v1/apps/{appsId}/firewall/ingressRules", - "path": "v1/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": { - "appsId": { - "location": "path", - "description": "Part of `parent`. Name of the Firewall collection to retrieve. Example: apps/myapp/firewall/ingressRules.", - "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" - }, - "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" - } - } - }, - "create": { - "response": { - "$ref": "FirewallRule" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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" - } - }, - "flatPath": "v1/apps/{appsId}/firewall/ingressRules", - "path": "v1/apps/{appsId}/firewall/ingressRules", - "id": "appengine.apps.firewall.ingressRules.create", - "request": { - "$ref": "FirewallRule" - }, - "description": "Creates a firewall rule for the application." - }, - "patch": { - "flatPath": "v1/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", - "path": "v1/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", - "id": "appengine.apps.firewall.ingressRules.patch", - "request": { - "$ref": "FirewallRule" - }, - "description": "Updates the specified firewall rule.", - "response": { - "$ref": "FirewallRule" - }, - "parameterOrder": [ - "appsId", - "ingressRulesId" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "ingressRulesId": { - "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.", - "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" - } - } - }, - "get": { - "path": "v1/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", - "id": "appengine.apps.firewall.ingressRules.get", - "description": "Gets the specified firewall rule.", - "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}" + }, + "flatPath": "v1/apps/{appsId}/domainMappings/{domainMappingsId}", + "path": "v1/apps/{appsId}/domainMappings/{domainMappingsId}", + "id": "appengine.apps.domainMappings.get", + "description": "Gets the specified domain mapping." + }, + "patch": { + "httpMethod": "PATCH", + "parameterOrder": [ + "appsId", + "domainMappingsId" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "domainMappingsId": { + "location": "path", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "type": "string" }, - "batchUpdate": { - "flatPath": "v1/apps/{appsId}/firewall/ingressRules:batchUpdate", - "id": "appengine.apps.firewall.ingressRules.batchUpdate", - "path": "v1/apps/{appsId}/firewall/ingressRules: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" - }, - "httpMethod": "POST", - "parameterOrder": [ - "appsId" - ], - "response": { - "$ref": "BatchUpdateIngressRulesResponse" - }, - "parameters": { - "appsId": { - "description": "Part of `name`. Name of the Firewall collection to set. Example: apps/myapp/firewall/ingressRules.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "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 resource to update. Example: apps/myapp/domainMappings/example.com.", + "required": true, + "type": "string" } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/apps/{appsId}/domainMappings/{domainMappingsId}", + "id": "appengine.apps.domainMappings.patch", + "path": "v1/apps/{appsId}/domainMappings/{domainMappingsId}", + "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" } - } - } - } - }, - "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", - "parameters": { - "appsId": { - "description": "Part of `name`. Name of the application to repair. Example: apps/myapp", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId" - ], - "httpMethod": "PATCH", - "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 Application resource to update. Example: apps/myapp.", - "required": true, - "type": "string" + "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", + "parameters": { + "appsId": { + "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "required": true, + "type": "string", + "location": "path" + }, + "overrideStrategy": { + "enum": [ + "UNSPECIFIED_DOMAIN_OVERRIDE_STRATEGY", + "STRICT", + "OVERRIDE" + ], + "description": "Whether the domain creation should override any existing mappings for this domain. By default, overrides are rejected.", + "type": "string", + "location": "query" + } + }, + "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.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "appsId", + "domainMappingsId" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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" + } + }, + "flatPath": "v1/apps/{appsId}/domainMappings/{domainMappingsId}", + "path": "v1/apps/{appsId}/domainMappings/{domainMappingsId}", + "id": "appengine.apps.domainMappings.delete" } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/apps/{appsId}", - "path": "v1/apps/{appsId}", - "id": "appengine.apps.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" - } - }, - "create": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/apps", - "path": "v1/apps", - "id": "appengine.apps.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/).", - "request": { - "$ref": "Application" } } } @@ -1471,14 +1479,9 @@ "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", + "default": "true", "location": "query" }, "bearer_token": { @@ -1486,46 +1489,57 @@ "description": "OAuth bearer token.", "type": "string" }, + "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", - "location": "query" + "default": "true" }, "fields": { - "location": "query", "description": "Selector specifying which fields to include in a partial response.", - "type": "string" + "type": "string", + "location": "query" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string", + "location": "query" }, - "uploadType": { + "callback": { "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "description": "JSONP", "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" + "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", @@ -1533,1704 +1547,1705 @@ ], "location": "query", "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], + "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" - }, - "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" } }, "schemas": { - "NetworkUtilization": { - "description": "Target scaling by network usage. Only applicable in the App Engine flexible environment.", + "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": { - "targetSentBytesPerSecond": { - "description": "Target bytes sent per second.", - "format": "int32", - "type": "integer" + "name": { + "description": "Full path to the AuthorizedDomain resource in the API. Example: apps/myapp/authorizedDomains/example.com.@OutputOnly", + "type": "string" }, - "targetSentPacketsPerSecond": { - "description": "Target packets sent per second.", - "format": "int32", - "type": "integer" + "id": { + "description": "Fully qualified domain name of the domain authorized for use. Example: example.com.", + "type": "string" + } + }, + "id": "AuthorizedDomain" + }, + "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 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" }, - "targetReceivedBytesPerSecond": { - "description": "Target bytes received per second.", - "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" + } + }, + "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": { + "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" }, - "targetReceivedPacketsPerSecond": { - "description": "Target packets received per second.", - "format": "int32", - "type": "integer" + "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" + }, + "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" + } + }, + "id": "OperationMetadataV1Beta" + }, + "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" + }, + "ListIngressRulesResponse": { + "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", + "description": "Response message for Firewall.ListIngressRules.", + "type": "object" + }, + "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": { + "$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" + }, + "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" + }, + "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": "NetworkUtilization" + "id": "BatchUpdateIngressRulesResponse" }, - "Location": { - "description": "A resource that represents Google Cloud Platform location.", + "ListInstancesResponse": { + "description": "Response message for Instances.ListInstances.", "type": "object", "properties": { - "locationId": { - "description": "The canonical id for this location. For example: \"us-east1\".", - "type": "string" - }, - "displayName": { - "description": "The friendly name for this location, typically a nearby city name. For example, \"Tokyo\".", - "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" + "instances": { + "description": "The instances belonging to the requested version.", + "type": "array", + "items": { + "$ref": "Instance" + } }, - "name": { - "description": "Resource name for the location, which may vary between implementations. For example: \"projects/example-project/locations/us-east1\"", + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", "type": "string" } }, - "id": "Location" + "id": "ListInstancesResponse" }, - "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", + "ListDomainMappingsResponse": { "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" + "domainMappings": { + "description": "The domain mappings for the application.", + "type": "array", + "items": { + "$ref": "DomainMapping" + } }, - "checkInterval": { - "description": "Interval between health checks.", - "format": "google-duration", + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", "type": "string" } }, - "id": "HealthCheck" + "id": "ListDomainMappingsResponse", + "description": "Response message for DomainMappings.ListDomainMappings.", + "type": "object" }, - "ReadinessCheck": { - "description": "Readiness checking configuration for VM instances. Unhealthy instances are removed from traffic rotation.", - "type": "object", + "OperationMetadataV1Alpha": { "properties": { - "successThreshold": { - "description": "Number of consecutive successful checks required before receiving traffic.", - "format": "uint32", - "type": "integer" + "createVersionMetadata": { + "$ref": "CreateVersionMetadataV1Alpha" }, - "host": { - "description": "Host header to send when performing a HTTP Readiness check. Example: \"myapp.appspot.com\"", + "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" }, - "checkInterval": { - "description": "Interval between health checks.", - "format": "google-duration", + "user": { + "description": "User who requested this operation.@OutputOnly", "type": "string" }, - "timeout": { - "description": "Time before the check is considered failed.", - "format": "google-duration", + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", "type": "string" }, - "failureThreshold": { - "description": "Number of consecutive failed checks required before removing traffic.", - "format": "uint32", - "type": "integer" + "ephemeralMessage": { + "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", + "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", + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1alpha.Versions.CreateVersion.@OutputOnly", "type": "string" }, - "path": { - "description": "The request path.", + "endTime": { + "description": "Time that this operation completed.@OutputOnly", + "format": "google-datetime", "type": "string" } }, - "id": "ReadinessCheck" + "id": "OperationMetadataV1Alpha", + "description": "Metadata for the given google.longrunning.Operation.", + "type": "object" }, - "StandardSchedulerSettings": { + "UrlDispatchRule": { + "description": "Rules to match an HTTP request and dispatch that request to a service.", + "type": "object", "properties": { - "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" + "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" }, - "targetThroughputUtilization": { - "description": "Target throughput utilization ratio to maintain when scaling", - "format": "double", - "type": "number" + "domain": { + "description": "Domain name to match against. The wildcard \"*\" is supported if specified before a period: \"*.\".Defaults to matching all domains: \"*\".", + "type": "string" }, - "maxInstances": { - "description": "Maximum number of instances to run for this version. Set to zero to disable max_instances configuration.", - "format": "int32", - "type": "integer" + "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": "StandardSchedulerSettings", - "description": "Scheduler settings for standard environment.", - "type": "object" + "id": "UrlDispatchRule" }, - "DebugInstanceRequest": { + "ListVersionsResponse": { + "description": "Response message for Versions.ListVersions.", + "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).", + "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": "DebugInstanceRequest", - "description": "Request message for Instances.DebugInstance.", - "type": "object" + "id": "ListVersionsResponse" }, - "CreateVersionMetadataV1Alpha": { - "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1alpha.CreateVersionRequest.", + "ListAuthorizedDomainsResponse": { + "description": "Response message for AuthorizedDomains.ListAuthorizedDomains.", "type": "object", "properties": { - "cloudBuildId": { - "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", + "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": "CreateVersionMetadataV1Alpha" + "id": "ListAuthorizedDomainsResponse" }, - "OperationMetadataV1Beta5": { - "description": "Metadata for the given google.longrunning.Operation.", + "DomainMapping": { + "description": "A domain serving an App Engine application.", "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", + "name": { + "description": "Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@OutputOnly", "type": "string" }, - "method": { - "description": "API method name that initiated this operation. Example: google.appengine.v1beta5.Version.CreateVersion.@OutputOnly", - "type": "string" + "sslSettings": { + "$ref": "SslSettings", + "description": "SSL configuration for this domain. If unconfigured, this domain will not serve with SSL." }, - "insertTime": { - "description": "Timestamp that this operation was created.@OutputOnly", - "format": "google-datetime", + "id": { + "description": "Relative name of the domain serving the application. Example: example.com.", "type": "string" }, - "endTime": { - "description": "Timestamp that this operation completed.@OutputOnly", - "format": "google-datetime", + "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" + }, + "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" + }, + "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": "OperationMetadataV1Beta5" + "id": "ApiEndpointHandler" }, - "Version": { - "description": "A Version resource is a specific set of source code and configuration files that are deployed into a service.", + "AutomaticScaling": { + "description": "Automatic scaling is based on request rate, response latencies, and other application metrics.", "type": "object", "properties": { - "automaticScaling": { - "$ref": "AutomaticScaling", - "description": "Automatic scaling is based on request rate, response latencies, and other application metrics." + "networkUtilization": { + "description": "Target scaling by network usage.", + "$ref": "NetworkUtilization" }, - "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" + "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" }, - "runtimeChannel": { - "description": "The channel of the runtime to use. Only available for some runtimes. Defaults to the default channel.", + "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" }, - "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.", - "$ref": "HealthCheck" - }, - "threadsafe": { - "description": "Whether multiple requests can be dispatched to this version at once.", - "type": "boolean" + "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" }, - "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." + "cpuUtilization": { + "$ref": "CpuUtilization", + "description": "Target scaling by CPU usage." }, - "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." + "diskUtilization": { + "description": "Target scaling by disk usage.", + "$ref": "DiskUtilization" }, - "name": { - "description": "Full path to the Version resource in the API. Example: apps/myapp/services/default/versions/v1.@OutputOnly", + "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" }, - "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" + "requestUtilization": { + "$ref": "RequestUtilization", + "description": "Target scaling by request utilization." }, - "versionUrl": { - "description": "Serving URL for this version. Example: \"https://myversion-dot-myservice-dot-myapp.appspot.com\"@OutputOnly", - "type": "string" + "maxIdleInstances": { + "description": "Maximum number of idle instances that should be maintained for this version.", + "format": "int32", + "type": "integer" }, - "vm": { - "description": "Whether to deploy this version in a container on a virtual machine.", - "type": "boolean" + "standardSchedulerSettings": { + "$ref": "StandardSchedulerSettings", + "description": "Scheduler settings for standard environment." }, - "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" + "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" }, - "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" + "maxTotalInstances": { + "description": "Maximum number of instances that should be started to handle requests for this version.", + "format": "int32", + "type": "integer" }, - "deployment": { - "$ref": "Deployment", - "description": "Code and application artifacts that make up this version.Only returned in GET requests if view=FULL is set." + "minTotalInstances": { + "description": "Minimum number of running instances that should be maintained for this version.", + "format": "int32", + "type": "integer" + } + }, + "id": "AutomaticScaling" + }, + "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" }, - "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", + "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" - }, - "createTime": { - "description": "Time that this version was created.@OutputOnly", - "format": "google-datetime", + } + }, + "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": { + "displayName": { + "description": "The user-specified display name of the certificate. This is not guaranteed to be unique. Example: My Certificate.", "type": "string" }, - "inboundServices": { - "description": "Before an application can receive email or XMPP messages, the application must be configured to enable the service.", - "type": "array", - "items": { - "enum": [ - "INBOUND_SERVICE_UNSPECIFIED", - "INBOUND_SERVICE_MAIL", - "INBOUND_SERVICE_MAIL_BOUNCE", - "INBOUND_SERVICE_XMPP_ERROR", - "INBOUND_SERVICE_XMPP_MESSAGE", - "INBOUND_SERVICE_XMPP_SUBSCRIBE", - "INBOUND_SERVICE_XMPP_PRESENCE", - "INBOUND_SERVICE_CHANNEL_PRESENCE", - "INBOUND_SERVICE_WARMUP" - ], - "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." - ] - }, - "resources": { - "$ref": "Resources", - "description": "Machine resources for this version. Only applicable in the App Engine flexible environment." + "certificateRawData": { + "$ref": "CertificateRawData", + "description": "The SSL certificate serving the AuthorizedCertificate resource. This must be obtained independently from a certificate authority." }, - "errorHandlers": { - "description": "Custom static error pages. Limited to 10KB per page.Only returned in GET requests if view=FULL is set.", + "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": { - "$ref": "ErrorHandler" + "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/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", + "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" }, - "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.", + "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": { - "$ref": "Library" + "type": "string" } }, - "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 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" - }, - "runtime": { - "description": "Desired runtime. Example: python27.", + "id": { + "description": "Relative name of the certificate. This is a unique value autogenerated on AuthorizedCertificate resource creation. Example: 12345.@OutputOnly", "type": "string" - }, - "createdBy": { - "description": "Email address of the user who created this version.@OutputOnly", + } + }, + "id": "AuthorizedCertificate" + }, + "ResourceRecord": { + "properties": { + "name": { + "description": "Relative name of the object affected by this record. Only applicable for CNAME records. Example: 'www'.", "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": { + "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" }, - "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 instances. Unhealthy instances are stopped and replaced with new instancesOnly returned in GET requests if view=FULL is set.", - "$ref": "LivenessCheck" - }, - "network": { - "$ref": "Network", - "description": "Extra network settings. Only applicable in the App Engine flexible environment." - }, - "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 for this version.Defaults to standard.", + "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", + "description": "A DNS resource record.", + "type": "object" + }, + "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" }, - "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 Google Compute Engine zones that are supported by this version in the App Engine flexible environment.", - "type": "array", - "items": { - "type": "string" - } + "version": { + "description": "Version of the library to select, or \"latest\".", + "type": "string" } }, - "id": "Version" - }, - "RepairApplicationRequest": { - "description": "Request message for 'Applications.RepairApplication'.", - "type": "object", - "properties": {}, - "id": "RepairApplicationRequest" + "id": "Library" }, - "CertificateRawData": { - "description": "An SSL certificate obtained from a certificate authority.", + "ListLocationsResponse": { + "description": "The response message for Locations.ListLocations.", "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" + "locations": { + "description": "A list of locations that matches the specified filter in the request.", + "type": "array", + "items": { + "$ref": "Location" + } }, - "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", + "nextPageToken": { + "description": "The standard List next-page token.", "type": "string" } }, - "id": "CertificateRawData" + "id": "ListLocationsResponse" }, - "ScriptHandler": { + "ContainerInfo": { "properties": { - "scriptPath": { - "description": "Path to the script from the application root directory.", + "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": "ScriptHandler", - "description": "Executes a script to handle the request that matches the URL pattern.", + "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" }, - "FileInfo": { - "description": "Single source file that is part of the version to be deployed. Each source file that is deployed must be specified separately.", + "RequestUtilization": { + "description": "Target scaling by request utilization. Only applicable in the App Engine flexible environment.", "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" + "targetRequestCountPerSecond": { + "description": "Target requests per second.", + "format": "int32", + "type": "integer" }, - "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" + "targetConcurrentRequests": { + "description": "Target number of concurrent requests.", + "format": "int32", + "type": "integer" } }, - "id": "FileInfo" + "id": "RequestUtilization" }, - "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).", + "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).", "type": "object", "properties": { "name": { - "description": "Full path to the AuthorizedDomain resource in the API. Example: apps/myapp/authorizedDomains/example.com.@OutputOnly", + "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" }, - "id": { - "description": "Fully qualified domain name of the domain authorized for use. Example: example.com.", + "configId": { + "description": "Endpoints service configuration id as specified by the Service Management API. For example \"2016-09-19r1\"", "type": "string" } }, - "id": "AuthorizedDomain" + "id": "EndpointsApiService" }, - "TrafficSplit": { - "description": "Traffic routing configuration for versions within a single service. Traffic splits define how traffic directed to the service is assigned to versions.", + "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": { - "shardBy": { + "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": { + "description": "30x code to use when performing redirects for the secure field. Defaults to 302.", + "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." + "Not specified. 302 is assumed.", + "301 Moved Permanently code.", + "302 Moved Temporarily code.", + "303 See Other code.", + "307 Temporary Redirect code." ], "enum": [ - "UNSPECIFIED", - "COOKIE", - "IP", - "RANDOM" + "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" + ] + }, + "securityLevel": { + "enum": [ + "SECURE_UNSPECIFIED", + "SECURE_DEFAULT", + "SECURE_NEVER", + "SECURE_OPTIONAL", + "SECURE_ALWAYS" ], - "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.", + "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" + ] + }, + "script": { + "$ref": "ScriptHandler", + "description": "Executes a script to handle the request that matches this URL pattern." + }, + "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" }, - "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" + "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" } }, - "id": "TrafficSplit" + "id": "UrlMap" }, - "OperationMetadataV1Beta": { - "description": "Metadata for the given google.longrunning.Operation.", + "ApiConfigHandler": { + "description": "Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers.", "type": "object", "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" - }, - "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", + "script": { + "description": "Path to the script from the application root directory.", "type": "string" }, - "user": { - "description": "User who requested this operation.@OutputOnly", + "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" }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "url": { + "description": "URL to serve the endpoint at.", "type": "string" }, - "ephemeralMessage": { - "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", - "type": "string" - } - }, - "id": "OperationMetadataV1Beta" - }, - "ListServicesResponse": { - "description": "Response message for Services.ListServices.", - "type": "object", - "properties": { - "services": { - "description": "The services belonging to the requested application.", - "type": "array", - "items": { - "$ref": "Service" - } + "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" + ] }, - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", + "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" } }, - "id": "ListServicesResponse" + "id": "ApiConfigHandler" }, - "ListIngressRulesResponse": { - "description": "Response message for Firewall.ListIngressRules.", + "Operation": { + "description": "This resource represents a long-running operation that is the result of a network API call.", "type": "object", "properties": { - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "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" }, - "ingressRules": { - "description": "The ingress FirewallRules for this application.", - "type": "array", - "items": { - "$ref": "FirewallRule" - } - } - }, - "id": "ListIngressRulesResponse" - }, - "Resources": { - "description": "Machine resources for a version.", - "type": "object", - "properties": { - "volumes": { - "description": "User specified volumes.", - "type": "array", - "items": { - "$ref": "Volume" - } + "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" }, - "diskGb": { - "description": "Disk size (GB) needed.", - "format": "double", - "type": "number" + "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" }, - "cpu": { - "description": "Number of CPU cores needed.", - "format": "double", - "type": "number" + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." }, - "memoryGb": { - "description": "Memory (GB) needed.", - "format": "double", - "type": "number" + "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": "Resources" + "id": "Operation" }, - "Deployment": { - "description": "Code and application artifacts used to deploy a version to App Engine.", - "type": "object", + "StaticFilesHandler": { "properties": { - "zip": { - "$ref": "ZipInfo", - "description": "The zip file for this deployment, if this is a zip deployment." + "requireMatchingFile": { + "description": "Whether this handler should match the request if the file referenced by the handler does not exist.", + "type": "boolean" }, - "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" + "expiration": { + "description": "Time a static file served by this handler should be cached by web proxies and browsers.", + "format": "google-duration", + "type": "string" }, - "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", + "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": { - "$ref": "FileInfo" - } + "type": "string" + }, + "description": "HTTP headers to use for all responses from these URLs.", + "type": "object" }, - "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." - } - }, - "id": "Deployment" - }, - "Volume": { - "properties": { - "volumeType": { - "description": "Underlying volume type, e.g. 'tmpfs'.", + "uploadPathRegex": { + "description": "Regular expression that matches the file paths for all files that should be referenced by this handler.", "type": "string" }, - "sizeGb": { - "description": "Volume size in gigabytes.", - "format": "double", - "type": "number" + "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" }, - "name": { - "description": "Unique name for the volume.", + "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" } }, - "id": "Volume", - "description": "Volumes mounted within the app container. Only applicable in the App Engine flexible environment.", + "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" }, - "BatchUpdateIngressRulesResponse": { - "description": "Response message for Firewall.UpdateAllIngressRules.", + "DiskUtilization": { + "description": "Target scaling by disk usage. Only applicable in the App Engine flexible environment.", "type": "object", "properties": { - "ingressRules": { - "description": "The full list of ingress FirewallRules for this application.", - "type": "array", - "items": { - "$ref": "FirewallRule" - } - } - }, - "id": "BatchUpdateIngressRulesResponse" - }, - "ListInstancesResponse": { - "properties": { - "instances": { - "description": "The instances belonging to the requested version.", - "type": "array", - "items": { - "$ref": "Instance" - } + "targetReadBytesPerSecond": { + "description": "Target bytes read per second.", + "format": "int32", + "type": "integer" }, - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" + "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": "ListInstancesResponse", - "description": "Response message for Instances.ListInstances.", - "type": "object" + "id": "DiskUtilization" }, - "ListDomainMappingsResponse": { + "BasicScaling": { "properties": { - "domainMappings": { - "description": "The domain mappings for the application.", - "type": "array", - "items": { - "$ref": "DomainMapping" - } + "maxInstances": { + "description": "Maximum number of instances to create for this version.", + "format": "int32", + "type": "integer" }, - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", + "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": "ListDomainMappingsResponse", - "description": "Response message for DomainMappings.ListDomainMappings.", + "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" }, - "OperationMetadataV1Alpha": { + "CpuUtilization": { + "description": "Target scaling by CPU usage.", + "type": "object", "properties": { - "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": { - "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", + "aggregationWindowLength": { + "description": "Period of time over which CPU utilization is calculated.", + "format": "google-duration", "type": "string" }, - "user": { - "description": "User who requested this operation.@OutputOnly", - "type": "string" + "targetUtilization": { + "description": "Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.", + "format": "double", + "type": "number" } }, - "id": "OperationMetadataV1Alpha", - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object" + "id": "CpuUtilization" }, - "UrlDispatchRule": { - "description": "Rules to match an HTTP request and dispatch that request to a service.", + "IdentityAwareProxy": { + "description": "Identity-Aware Proxy", "type": "object", "properties": { - "domain": { - "description": "Domain name to match against. The wildcard \"*\" is supported if specified before a period: \"*.\".Defaults to matching all domains: \"*\".", + "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" }, - "service": { - "description": "Resource ID of a service in this application that should serve the matched request. The service must already exist. Example: default.", + "oauth2ClientId": { + "description": "OAuth2 client ID to use for the authentication flow.", "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.", + "oauth2ClientSecretSha256": { + "description": "Hex-encoded SHA-256 hash of the client secret.@OutputOnly", "type": "string" } }, - "id": "UrlDispatchRule" + "id": "IdentityAwareProxy" }, - "ListVersionsResponse": { - "description": "Response message for Versions.ListVersions.", + "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": { - "versions": { - "description": "The versions belonging to the requested service.", + "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": { - "$ref": "Version" + "type": "object", + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + } } }, - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", + "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": "ListVersionsResponse" + "id": "Status" }, - "ListAuthorizedDomainsResponse": { - "description": "Response message for AuthorizedDomains.ListAuthorizedDomains.", + "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": { - "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" - } + "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": "ListAuthorizedDomainsResponse" + "id": "ManualScaling" }, - "ApiEndpointHandler": { + "CreateVersionMetadataV1": { "properties": { - "scriptPath": { - "description": "Path to the script from the application root directory.", + "cloudBuildId": { + "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", "type": "string" } }, - "id": "ApiEndpointHandler", - "description": "Uses Google Cloud Endpoints to handle requests.", + "id": "CreateVersionMetadataV1", + "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1.CreateVersionRequest.", "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", - "properties": {}, - "id": "Empty" - }, - "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" - }, - "ZipInfo": { - "description": "The zip file information for a zip deployment.", + "LocationMetadata": { + "description": "Metadata for the given google.cloud.location.Location.", "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" + "flexibleEnvironmentAvailable": { + "description": "App Engine flexible environment is available in the given location.@OutputOnly", + "type": "boolean" }, - "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" + "standardEnvironmentAvailable": { + "description": "App Engine standard environment is available in the given location.@OutputOnly", + "type": "boolean" } }, - "id": "ZipInfo" + "id": "LocationMetadata" }, - "AutomaticScaling": { - "description": "Automatic scaling is based on request rate, response latencies, and other application metrics.", + "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": { - "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" - }, - "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" - }, - "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", + "name": { + "description": "Full path to the Service resource in the API. Example: apps/myapp/services/default.@OutputOnly", "type": "string" }, - "cpuUtilization": { - "$ref": "CpuUtilization", - "description": "Target scaling by CPU usage." - }, - "diskUtilization": { - "description": "Target scaling by disk usage.", - "$ref": "DiskUtilization" + "split": { + "$ref": "TrafficSplit", + "description": "Mapping that defines fractional HTTP traffic diversion to different versions within the service." }, - "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", + "id": { + "description": "Relative name of the service within the application. Example: default.@OutputOnly", "type": "string" - }, - "standardSchedulerSettings": { - "description": "Scheduler settings for standard environment.", - "$ref": "StandardSchedulerSettings" - }, - "maxIdleInstances": { - "description": "Maximum number of idle instances that should be maintained for this version.", - "format": "int32", - "type": "integer" - }, - "requestUtilization": { - "description": "Target scaling by request utilization.", - "$ref": "RequestUtilization" - }, - "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 for this version.", - "format": "int32", - "type": "integer" - }, - "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." } }, - "id": "AutomaticScaling" + "id": "Service" }, - "AuthorizedCertificate": { + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "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", - "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.", + "nextPageToken": { + "description": "The standard List next-page token.", "type": "string" }, - "certificateRawData": { - "description": "The SSL certificate serving the AuthorizedCertificate resource. This must be obtained independently from a certificate authority.", - "$ref": "CertificateRawData" - }, - "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", + "operations": { + "description": "A list of operations that matches the specified filter in the request.", "type": "array", "items": { - "type": "string" + "$ref": "Operation" } - }, - "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" } }, - "id": "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" + "id": "ListOperationsResponse" }, - "ResourceRecord": { + "FirewallRule": { + "description": "A single firewall rule that is evaluated against incoming traffic and provides an action to take on matched requests.", + "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).", + "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" }, - "name": { - "description": "Relative name of the object affected by this record. Only applicable for CNAME records. Example: 'www'.", - "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" }, - "type": { + "action": { "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." + "", + "Matching requests are allowed.", + "Matching requests are denied." ], "enum": [ - "RECORD_TYPE_UNSPECIFIED", - "A", - "AAAA", - "CNAME" + "UNSPECIFIED_ACTION", + "ALLOW", + "DENY" ], - "description": "Resource record type. Example: AAAA.", + "description": "The action to take on matched requests.", + "type": "string" + }, + "description": { + "description": "An optional string description of this rule. This field has a maximum length of 100 characters.", "type": "string" } }, - "id": "ResourceRecord", - "description": "A DNS resource record.", - "type": "object" + "id": "FirewallRule" }, - "Library": { - "description": "Third-party Python runtime library that is required by the application.", + "OperationMetadata": { + "description": "Metadata for the given google.longrunning.Operation.", "type": "object", "properties": { - "version": { - "description": "Version of the library to select, or \"latest\".", + "insertTime": { + "description": "Timestamp that this operation was created.@OutputOnly", + "format": "google-datetime", "type": "string" }, - "name": { - "description": "Name of the library. Example: \"django\".", + "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": "Library" + "id": "OperationMetadata" }, - "ListLocationsResponse": { + "ListAuthorizedCertificatesResponse": { + "description": "Response message for AuthorizedCertificates.ListAuthorizedCertificates.", + "type": "object", "properties": { - "locations": { - "description": "A list of locations that matches the specified filter in the request.", + "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": "Location" + "$ref": "AuthorizedCertificate" } - }, - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" } }, - "id": "ListLocationsResponse", - "description": "The response message for Locations.ListLocations.", - "type": "object" + "id": "ListAuthorizedCertificatesResponse" }, - "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.", + "CreateVersionMetadataV1Beta": { + "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1beta.CreateVersionRequest.", "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\"", + "cloudBuildId": { + "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", "type": "string" } }, - "id": "ContainerInfo" + "id": "CreateVersionMetadataV1Beta" }, - "RequestUtilization": { - "description": "Target scaling by request utilization. Only applicable in the App Engine flexible environment.", + "FeatureSettings": { + "description": "The feature specific settings to be used in the application. These define behaviors that are user configurable.", "type": "object", "properties": { - "targetRequestCountPerSecond": { - "description": "Target requests per second.", - "format": "int32", - "type": "integer" - }, - "targetConcurrentRequests": { - "description": "Target number of concurrent requests.", - "format": "int32", - "type": "integer" + "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": "RequestUtilization" + "id": "FeatureSettings" }, - "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).", + "ErrorHandler": { + "description": "Custom static error page to be served when an error occurs.", "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\"", + "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" }, - "configId": { - "description": "Endpoints service configuration id as specified by the Service Management API. For example \"2016-09-19r1\"", + "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": "EndpointsApiService" + "id": "ErrorHandler" }, - "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.", + "SslSettings": { + "description": "SSL configuration for a DomainMapping resource.", "type": "object", "properties": { - "script": { - "$ref": "ScriptHandler", - "description": "Executes a script to handle the request that matches this URL pattern." - }, - "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.", + "certificateId": { + "description": "ID of the AuthorizedCertificate resource configuring SSL for the application. Clearing this field will remove SSL support. Example: 12345.", "type": "string" - }, - "apiEndpoint": { - "description": "Uses API Endpoints to handle requests.", - "$ref": "ApiEndpointHandler" - }, - "staticFiles": { - "$ref": "StaticFilesHandler", - "description": "Returns the contents of a file, such as an image, as the response." - }, - "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." - ] - }, - "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": { - "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", - "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." - ] } }, - "id": "UrlMap" + "id": "SslSettings" }, - "ApiConfigHandler": { - "description": "Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers.", + "OperationMetadataV1": { + "description": "Metadata for the given google.longrunning.Operation.", "type": "object", "properties": { - "login": { - "enum": [ - "LOGIN_UNSPECIFIED", - "LOGIN_OPTIONAL", - "LOGIN_ADMIN", - "LOGIN_REQUIRED" - ], - "description": "Level of login required to access this resource. Defaults to optional.", - "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." - ] + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", + "type": "array", + "items": { + "type": "string" + } }, - "url": { - "description": "URL to serve the endpoint at.", + "insertTime": { + "description": "Time that this operation was created.@OutputOnly", + "format": "google-datetime", "type": "string" }, - "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.", + "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" }, - "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.", + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1.Versions.CreateVersion.@OutputOnly", "type": "string" }, - "script": { - "description": "Path to the script from the application root directory.", + "endTime": { + "description": "Time that this operation completed.@OutputOnly", + "format": "google-datetime", "type": "string" + }, + "createVersionMetadata": { + "$ref": "CreateVersionMetadataV1" } }, - "id": "ApiConfigHandler" + "id": "OperationMetadataV1" }, - "Operation": { + "Network": { "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" + "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" + } }, - "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.", + "instanceTag": { + "description": "Tag to apply to the instance during creation. Only applicable in the App Engine flexible environment.", "type": "string" }, - "error": { - "$ref": "Status", - "description": "The error result of the operation in case of failure or cancellation." + "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" }, - "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": "Google Compute Engine network where the virtual machines are created. Specify the short name, not the resource path.Defaults to default.", + "type": "string" } }, - "id": "Operation", - "description": "This resource represents a long-running operation that is the result of a network API call.", + "id": "Network", + "description": "Extra network settings. Only applicable in the App Engine flexible environment.", "type": "object" }, - "StaticFilesHandler": { + "Application": { + "description": "An Application resource contains the top-level configuration of an App Engine application.", + "type": "object", "properties": { - "uploadPathRegex": { - "description": "Regular expression that matches the file paths for all files that should be referenced by this handler.", + "defaultCookieExpiration": { + "description": "Cookie expiration policy for this application.", + "format": "google-duration", "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.", + "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" }, - "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.", + "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" }, - "requireMatchingFile": { - "description": "Whether this handler should match the request if the file referenced by the handler does not exist.", - "type": "boolean" + "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." + ], + "enum": [ + "UNSPECIFIED", + "SERVING", + "USER_DISABLED", + "SYSTEM_DISABLED" + ] }, - "expiration": { - "description": "Time a static file served by this handler should be cached by web proxies and browsers.", - "format": "google-duration", + "defaultHostname": { + "description": "Hostname used to reach this application, as resolved by App Engine.@OutputOnly", "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" + "featureSettings": { + "description": "The feature specific settings to be used in the application.", + "$ref": "FeatureSettings" }, - "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" - }, - "DiskUtilization": { - "description": "Target scaling by disk usage. Only applicable in the App Engine flexible environment.", - "type": "object", - "properties": { - "targetWriteBytesPerSecond": { - "description": "Target bytes written per second.", - "format": "int32", - "type": "integer" + "authDomain": { + "description": "Google Apps authentication domain that controls which users can access this application.Defaults to open access for any Google Account.", + "type": "string" }, - "targetReadBytesPerSecond": { - "description": "Target bytes read per second.", - "format": "int32", - "type": "integer" + "iap": { + "$ref": "IdentityAwareProxy" }, - "targetReadOpsPerSecond": { - "description": "Target ops read per seconds.", - "format": "int32", - "type": "integer" + "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" }, - "targetWriteOpsPerSecond": { - "description": "Target ops written per second.", - "format": "int32", - "type": "integer" + "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" } }, - "id": "DiskUtilization" + "id": "Application" }, - "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.", + "Instance": { + "description": "An Instance resource is the computing unit that App Engine uses to automatically scale an application.", "type": "object", "properties": { - "maxInstances": { - "description": "Maximum number of instances to create for this version.", + "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" + }, + "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" }, - "idleTimeout": { - "description": "Duration of time after the last request that an instance must wait before the instance is shut down.", - "format": "google-duration", + "id": { + "description": "Relative name of the instance within the version. Example: instance-1.@OutputOnly", "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", + }, + "memoryUsage": { + "description": "Total memory in use (bytes).@OutputOnly", + "format": "int64", "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" + "vmIp": { + "description": "The IP address of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "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", + "errors": { + "description": "Number of errors since this instance was started.@OutputOnly", + "format": "int32", + "type": "integer" + }, + "availability": { + "enumDescriptions": [ + "", + "", + "" + ], + "enum": [ + "UNSPECIFIED", + "RESIDENT", + "DYNAMIC" + ], + "description": "Availability of the instance.@OutputOnly", "type": "string" }, - "oauth2ClientId": { - "description": "OAuth2 client ID to use for the authentication flow.", + "vmStatus": { + "description": "Status of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", "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": { - "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.", + "startTime": { + "description": "Time that this instance was started.@OutputOnly", + "format": "google-datetime", "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" - } + "vmDebugEnabled": { + "description": "Whether this instance is in debug mode. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "type": "boolean" }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", + "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" } }, - "id": "Status" + "id": "Instance" }, - "ManualScaling": { + "LivenessCheck": { "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", + "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" - } - }, - "id": "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" - }, - "CreateVersionMetadataV1": { - "properties": { - "cloudBuildId": { - "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", + }, + "timeout": { + "description": "Time before the check is considered failed.", + "format": "google-duration", + "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" + }, + "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" } }, - "id": "CreateVersionMetadataV1", - "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1.CreateVersionRequest.", + "id": "LivenessCheck", + "description": "Health checking configuration for VM instances. Unhealthy instances are killed and replaced with new instances.", "type": "object" }, - "LocationMetadata": { - "description": "Metadata for the given google.cloud.location.Location.", + "BatchUpdateIngressRulesRequest": { + "description": "Request message for Firewall.BatchUpdateIngressRules.", "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" + "ingressRules": { + "description": "A list of FirewallRules to replace the existing set.", + "type": "array", + "items": { + "$ref": "FirewallRule" + } } }, - "id": "LocationMetadata" + "id": "BatchUpdateIngressRulesRequest" }, - "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.", + "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": { - "split": { - "$ref": "TrafficSplit", - "description": "Mapping that defines fractional HTTP traffic diversion to different versions within the service." - }, - "id": { - "description": "Relative name of the service within the application. Example: default.@OutputOnly", + "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" }, - "name": { - "description": "Full path to the Service resource in the API. Example: apps/myapp/services/default.@OutputOnly", + "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" } }, - "id": "Service" + "id": "CloudBuildOptions" }, - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", + "NetworkUtilization": { + "description": "Target scaling by network usage. Only applicable in the App Engine flexible environment.", "type": "object", "properties": { - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" + "targetReceivedPacketsPerSecond": { + "description": "Target packets received per second.", + "format": "int32", + "type": "integer" }, - "operations": { - "description": "A list of operations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Operation" - } + "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" } }, - "id": "ListOperationsResponse" + "id": "NetworkUtilization" }, - "OperationMetadata": { + "Location": { "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" + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Cross-service attributes for the location. For example\n{\"cloud.googleapis.com/region\": \"us-east1\"}\n", + "type": "object" }, - "operationType": { - "description": "Type of this operation. Deprecated, use method field instead. Example: \"create_version\".@OutputOnly", + "name": { + "description": "Resource name for the location, which may vary between implementations. For example: \"projects/example-project/locations/us-east1\"", "type": "string" }, - "insertTime": { - "description": "Timestamp that this operation was created.@OutputOnly", - "format": "google-datetime", + "locationId": { + "description": "The canonical id for this location. For example: \"us-east1\".", "type": "string" }, - "user": { - "description": "User who requested this operation.@OutputOnly", + "displayName": { + "description": "The friendly name for this location, typically a nearby city name. For example, \"Tokyo\".", "type": "string" }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/modules/default.@OutputOnly", - "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": "OperationMetadata", - "description": "Metadata for the given google.longrunning.Operation.", + "id": "Location", + "description": "A resource that represents Google Cloud Platform location.", "type": "object" }, - "FirewallRule": { - "description": "A single firewall rule that is evaluated against incoming traffic and provides an action to take on matched requests.", + "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": { - "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.", + "host": { + "description": "Host header to send when performing an HTTP health check. Example: \"myapp.appspot.com\"", "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", + "restartThreshold": { + "description": "Number of consecutive failed health checks required before an instance is restarted.", + "format": "uint32", "type": "integer" }, - "action": { - "enumDescriptions": [ - "", - "Matching requests are allowed.", - "Matching requests are denied." - ], - "enum": [ - "UNSPECIFIED_ACTION", - "ALLOW", - "DENY" - ], - "description": "The action to take on matched requests.", - "type": "string" + "healthyThreshold": { + "description": "Number of consecutive successful health checks required before receiving traffic.", + "format": "uint32", + "type": "integer" }, - "description": { - "description": "An optional string description of this rule. This field has a maximum length of 100 characters.", + "checkInterval": { + "description": "Interval between health checks.", + "format": "google-duration", "type": "string" - } - }, - "id": "FirewallRule" - }, - "ListAuthorizedCertificatesResponse": { - "description": "Response message for AuthorizedCertificates.ListAuthorizedCertificates.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", + }, + "timeout": { + "description": "Time before the health check is considered failed.", + "format": "google-duration", "type": "string" }, - "certificates": { - "description": "The SSL certificates the user is authorized to administer.", - "type": "array", - "items": { - "$ref": "AuthorizedCertificate" - } + "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" } }, - "id": "ListAuthorizedCertificatesResponse" + "id": "HealthCheck" }, - "CreateVersionMetadataV1Beta": { - "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1beta.CreateVersionRequest.", + "ReadinessCheck": { + "description": "Readiness checking configuration for VM instances. Unhealthy instances are removed from traffic rotation.", "type": "object", "properties": { - "cloudBuildId": { - "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", + "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" + }, + "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" + }, + "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", + "type": "string" + }, + "path": { + "description": "The request path.", "type": "string" } }, - "id": "CreateVersionMetadataV1Beta" + "id": "ReadinessCheck" }, - "FeatureSettings": { - "description": "The feature specific settings to be used in the application. These define behaviors that are user configurable.", + "DebugInstanceRequest": { + "description": "Request message for Instances.DebugInstance.", "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" + "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": "FeatureSettings" + "id": "DebugInstanceRequest" }, - "ErrorHandler": { - "description": "Custom static error page to be served when an error occurs.", + "StandardSchedulerSettings": { + "description": "Scheduler settings for standard environment.", "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" + "targetCpuUtilization": { + "description": "Target CPU utilization ratio to maintain when scaling.", + "format": "double", + "type": "number" }, - "mimeType": { - "description": "MIME type of file. Defaults to text/html.", - "type": "string" + "targetThroughputUtilization": { + "description": "Target throughput utilization ratio to maintain when scaling", + "format": "double", + "type": "number" }, - "staticFile": { - "description": "Static file content to be served for this error.", - "type": "string" + "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" } }, - "id": "ErrorHandler" + "id": "StandardSchedulerSettings" }, - "OperationMetadataV1": { + "OperationMetadataV1Beta5": { "description": "Metadata for the given google.longrunning.Operation.", "type": "object", "properties": { - "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", + "description": "API method name that initiated this operation. Example: google.appengine.v1beta5.Version.CreateVersion.@OutputOnly", "type": "string" }, - "endTime": { - "description": "Time that this operation completed.@OutputOnly", + "insertTime": { + "description": "Timestamp that this operation was created.@OutputOnly", "format": "google-datetime", "type": "string" }, - "createVersionMetadata": { - "$ref": "CreateVersionMetadataV1" - }, - "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", + "endTime": { + "description": "Timestamp that this operation completed.@OutputOnly", "format": "google-datetime", "type": "string" }, @@ -3243,280 +3258,273 @@ "type": "string" } }, - "id": "OperationMetadataV1" + "id": "OperationMetadataV1Beta5" }, - "SslSettings": { - "description": "SSL configuration for a DomainMapping resource.", - "type": "object", + "CreateVersionMetadataV1Alpha": { "properties": { - "certificateId": { - "description": "ID of the AuthorizedCertificate resource configuring SSL for the application. Clearing this field will remove SSL support. Example: 12345.", + "cloudBuildId": { + "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", "type": "string" } }, - "id": "SslSettings" + "id": "CreateVersionMetadataV1Alpha", + "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1alpha.CreateVersionRequest.", + "type": "object" }, - "Application": { - "description": "An Application resource contains the top-level configuration of an App Engine application.", + "Version": { + "description": "A Version resource is a specific set of source code and configuration files that are deployed into a service.", "type": "object", "properties": { - "defaultHostname": { - "description": "Hostname used to reach this application, as resolved by App Engine.@OutputOnly", - "type": "string" + "threadsafe": { + "description": "Whether multiple requests can be dispatched to this version at once.", + "type": "boolean" }, - "featureSettings": { - "description": "The feature specific settings to be used in the application.", - "$ref": "FeatureSettings" + "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." }, - "iap": { - "$ref": "IdentityAwareProxy" + "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." }, - "authDomain": { - "description": "Google Apps authentication domain that controls which users can access this application.Defaults to open access for any Google Account.", + "name": { + "description": "Full path to the Version resource in the API. Example: apps/myapp/services/default/versions/v1.@OutputOnly", "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" + "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." }, - "defaultBucket": { - "description": "Google Cloud Storage bucket that can be used by this application to store content.@OutputOnly", - "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." }, - "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" - } + "vm": { + "description": "Whether to deploy this version in a container on a virtual machine.", + "type": "boolean" }, - "gcrDomain": { - "description": "The Google Container Registry domain used for storing managed build docker images for this application.", + "versionUrl": { + "description": "Serving URL for this version. Example: \"https://myversion-dot-myservice-dot-myapp.appspot.com\"@OutputOnly", "type": "string" }, - "name": { - "description": "Full path to the Application resource in the API. Example: apps/myapp.@OutputOnly", + "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" }, - "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.", + "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" }, - "defaultCookieExpiration": { - "description": "Cookie expiration policy for this application.", - "format": "google-duration", + "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": { + "description": "Code and application artifacts that make up this version.Only returned in GET requests if view=FULL is set.", + "$ref": "Deployment" + }, + "createTime": { + "description": "Time that this version was created.@OutputOnly", + "format": "google-datetime", "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).", + "inboundServices": { + "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." + ], + "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", + "INBOUND_SERVICE_MAIL_BOUNCE", + "INBOUND_SERVICE_XMPP_ERROR", + "INBOUND_SERVICE_XMPP_MESSAGE", + "INBOUND_SERVICE_XMPP_SUBSCRIBE", + "INBOUND_SERVICE_XMPP_PRESENCE", + "INBOUND_SERVICE_CHANNEL_PRESENCE", + "INBOUND_SERVICE_WARMUP" + ] + } + }, + "resources": { + "$ref": "Resources", + "description": "Machine resources for this version. Only applicable in the App Engine flexible environment." + }, + "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", "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." - ], - "enum": [ - "UNSPECIFIED", - "SERVING", - "USER_DISABLED", - "SYSTEM_DISABLED" - ], - "description": "Serving status of this application.", - "type": "string" - } - }, - "id": "Application" - }, - "Network": { - "description": "Extra network settings. Only applicable in the App Engine flexible environment.", - "type": "object", - "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.", + "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": { - "type": "string" + "$ref": "Library" } }, - "instanceTag": { - "description": "Tag to apply to the instance during creation. 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" }, - "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" + "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" }, - "name": { - "description": "Google Compute Engine network where the virtual machines are created. Specify the short name, not the resource path.Defaults to default.", + "runtime": { + "description": "Desired runtime. Example: python27.", "type": "string" - } - }, - "id": "Network" - }, - "Instance": { - "description": "An Instance resource is the computing unit that App Engine uses to automatically scale an application.", - "type": "object", - "properties": { - "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", + "createdBy": { + "description": "Email address of the user who created this version.@OutputOnly", "type": "string" }, - "vmIp": { - "description": "The IP address of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "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" }, - "memoryUsage": { - "description": "Total memory in use (bytes).@OutputOnly", - "format": "int64", - "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" + } }, - "errors": { - "description": "Number of errors since this instance was started.@OutputOnly", - "format": "int32", - "type": "integer" + "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.", + "$ref": "LivenessCheck" }, - "availability": { - "enumDescriptions": [ - "", - "", - "" - ], - "enum": [ - "UNSPECIFIED", - "RESIDENT", - "DYNAMIC" - ], - "description": "Availability of the instance.@OutputOnly", - "type": "string" + "network": { + "description": "Extra network settings. Only applicable in the App Engine flexible environment.", + "$ref": "Network" }, - "vmStatus": { - "description": "Status of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" + "betaSettings": { + "additionalProperties": { + "type": "string" + }, + "description": "Metadata settings that are supplied to this version to enable beta runtime features.", + "type": "object" }, - "startTime": { - "description": "Time that this instance was started.@OutputOnly", - "format": "google-datetime", + "env": { + "description": "App Engine execution environment for this version.Defaults to standard.", "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" + "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" + } }, - "appEngineRelease": { - "description": "App Engine release this instance is running on.@OutputOnly", - "type": "string" + "zones": { + "description": "The Google Compute Engine zones that are supported by this version in the App Engine flexible environment.", + "type": "array", + "items": { + "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" + "automaticScaling": { + "$ref": "AutomaticScaling", + "description": "Automatic scaling is based on request rate, response latencies, and other application metrics." }, - "vmId": { - "description": "Virtual machine ID of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "runtimeChannel": { + "description": "The channel of the runtime to use. Only available for some runtimes. Defaults to the default channel.", "type": "string" }, - "qps": { - "description": "Average queries per second (QPS) over the last minute.@OutputOnly", - "format": "float", - "type": "number" - }, - "name": { - "description": "Full path to the Instance resource in the API. Example: apps/myapp/services/default/versions/v1/instances/instance-1.@OutputOnly", + "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" }, - "vmZoneName": { - "description": "Zone where the virtual machine is located. Only applicable for instances in App Engine flexible environment.@OutputOnly", - "type": "string" + "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": "Instance" + "id": "Version" }, - "LivenessCheck": { - "description": "Health checking configuration for VM instances. Unhealthy instances are killed and replaced with new instances.", + "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": { - "path": { - "description": "The request path.", + "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" }, - "host": { - "description": "Host header to send when performing a HTTP Liveness check. Example: \"myapp.appspot.com\"", + "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" - }, - "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", + } + }, + "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.", "type": "string" }, - "timeout": { - "description": "Time before the check is considered failed.", - "format": "google-duration", + "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" }, - "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", + "sha1Sum": { + "description": "The SHA1 hash of the file, in hex.", "type": "string" } }, - "id": "LivenessCheck" + "id": "FileInfo" }, - "BatchUpdateIngressRulesRequest": { - "description": "Request message for Firewall.BatchUpdateIngressRules.", + "ScriptHandler": { + "description": "Executes a script to handle the request that matches the URL pattern.", "type": "object", "properties": { - "ingressRules": { - "description": "A list of FirewallRules to replace the existing set.", - "type": "array", - "items": { - "$ref": "FirewallRule" - } - } - }, - "id": "BatchUpdateIngressRulesRequest" - }, - "CloudBuildOptions": { - "properties": { - "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" - }, - "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.", + "scriptPath": { + "description": "Path to the script from the application root directory.", "type": "string" } }, - "id": "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" + "id": "ScriptHandler" } }, "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" + "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", @@ -3524,14 +3532,14 @@ "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" - }, - "https://www.googleapis.com/auth/appengine.admin": { - "description": "View and manage your applications deployed on Google App Engine" } } } @@ -3542,13 +3550,5 @@ "rootUrl": "https://appengine.googleapis.com/", "basePath": "", "ownerDomain": "google.com", - "name": "appengine", - "batchPath": "batch", - "revision": "20180502", - "documentationLink": "https://cloud.google.com/appengine/docs/admin-api/", - "id": "appengine:v1", - "title": "App Engine Admin API", - "discoveryVersion": "v1", - "ownerName": "Google", - "version_module": true + "name": "appengine" } diff --git a/DiscoveryJson/appengine_v1alpha.json b/DiscoveryJson/appengine_v1alpha.json index 539fc568fe..7c15cf1212 100644 --- a/DiscoveryJson/appengine_v1alpha.json +++ b/DiscoveryJson/appengine_v1alpha.json @@ -1,123 +1,71 @@ { - "rootUrl": "https://appengine.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "appengine", - "batchPath": "batch", - "revision": "20180502", - "documentationLink": "https://cloud.google.com/appengine/docs/admin-api/", - "id": "appengine:v1alpha", - "title": "App Engine Admin API", - "discoveryVersion": "v1", "ownerName": "Google", + "discoveryVersion": "v1", "resources": { "apps": { "resources": { - "authorizedCertificates": { + "locations": { "methods": { - "delete": { - "flatPath": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "path": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "id": "appengine.apps.authorizedCertificates.delete", - "description": "Deletes the specified SSL certificate.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "appsId", - "authorizedCertificatesId" - ], - "httpMethod": "DELETE", - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, "list": { - "description": "Lists all SSL certificates the user is authorized to administer.", + "description": "Lists information about the supported locations for this service.", "response": { - "$ref": "ListAuthorizedCertificatesResponse" + "$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": { - "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" - }, "appsId": { - "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", "required": true, "type": "string", - "location": "path" + "location": "path", + "description": "Part of `name`. The resource that owns the locations collection, if applicable." }, "pageToken": { - "description": "Continuation token for fetching the next page of results.", + "description": "The standard list page token.", "type": "string", "location": "query" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "filter": { + "type": "string", + "location": "query", + "description": "The standard list filter." } }, - "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" + "flatPath": "v1alpha/apps/{appsId}/locations", + "path": "v1alpha/apps/{appsId}/locations", + "id": "appengine.apps.locations.list" }, "get": { + "description": "Gets information about a location.", + "httpMethod": "GET", "response": { - "$ref": "AuthorizedCertificate" + "$ref": "Location" }, "parameterOrder": [ "appsId", - "authorizedCertificatesId" + "locationsId" ], - "httpMethod": "GET", "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" + "type": "string", + "location": "path", + "description": "Part of `name`. Resource name for the location." }, - "authorizedCertificatesId": { + "locationsId": { "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "required": true, @@ -129,186 +77,133 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "flatPath": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "path": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "id": "appengine.apps.authorizedCertificates.get", - "description": "Gets the specified SSL certificate." - }, - "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" - }, + "flatPath": "v1alpha/apps/{appsId}/locations/{locationsId}", + "id": "appengine.apps.locations.get", + "path": "v1alpha/apps/{appsId}/locations/{locationsId}" + } + } + }, + "domainMappings": { + "methods": { + "create": { + "httpMethod": "POST", "parameterOrder": [ - "appsId", - "authorizedCertificatesId" + "appsId" ], - "httpMethod": "PATCH", + "response": { + "$ref": "Operation" + }, "parameters": { "appsId": { "location": "path", - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/authorizedCertificates/12345.", + "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", "required": true, "type": "string" }, - "authorizedCertificatesId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, + "overrideStrategy": { "type": "string", - "location": "path" + "location": "query", + "enum": [ + "UNSPECIFIED_DOMAIN_OVERRIDE_STRATEGY", + "STRICT", + "OVERRIDE" + ], + "description": "Whether the domain creation should override any existing mappings for this domain. By default, overrides are rejected." }, - "updateMask": { + "noManagedCertificate": { + "type": "boolean", "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" + "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." } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "path": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "id": "appengine.apps.authorizedCertificates.patch" + "flatPath": "v1alpha/apps/{appsId}/domainMappings", + "id": "appengine.apps.domainMappings.create", + "path": "v1alpha/apps/{appsId}/domainMappings", + "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" + } }, - "create": { + "delete": { "response": { - "$ref": "AuthorizedCertificate" + "$ref": "Operation" }, "parameterOrder": [ - "appsId" + "appsId", + "domainMappingsId" ], - "httpMethod": "POST", + "httpMethod": "DELETE", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "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": { "location": "path", - "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "description": "Part of `name`. See documentation of `appsId`.", "required": true, "type": "string" } }, - "flatPath": "v1alpha/apps/{appsId}/authorizedCertificates", - "path": "v1alpha/apps/{appsId}/authorizedCertificates", - "id": "appengine.apps.authorizedCertificates.create", - "request": { - "$ref": "AuthorizedCertificate" - }, - "description": "Uploads the specified SSL certificate." - } - } - }, - "authorizedDomains": { - "methods": { + "flatPath": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}", + "path": "v1alpha/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." + }, "list": { - "flatPath": "v1alpha/apps/{appsId}/authorizedDomains", - "path": "v1alpha/apps/{appsId}/authorizedDomains", - "id": "appengine.apps.authorizedDomains.list", - "description": "Lists all domains the user is authorized to administer.", "response": { - "$ref": "ListAuthorizedDomainsResponse" + "$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", - "location": "path" + "type": "string" }, "pageToken": { + "location": "query", "description": "Continuation token for fetching the next page of results.", - "type": "string", - "location": "query" + "type": "string" }, "pageSize": { - "location": "query", "description": "Maximum results to return per page.", "format": "int32", - "type": "integer" - } - } - } - } - }, - "operations": { - "methods": { - "list": { - "flatPath": "v1alpha/apps/{appsId}/operations", - "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": { - "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": { - "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" - ] - }, - "get": { - "flatPath": "v1alpha/apps/{appsId}/operations/{operationsId}", - "path": "v1alpha/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", + "flatPath": "v1alpha/apps/{appsId}/domainMappings", + "path": "v1alpha/apps/{appsId}/domainMappings", + "id": "appengine.apps.domainMappings.list", + "description": "Lists the domain mappings on an application." + }, + "get": { "parameters": { "appsId": { - "location": "path", - "description": "Part of `name`. The name of the operation resource.", + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/domainMappings/example.com.", "required": true, - "type": "string" + "type": "string", + "location": "path" }, - "operationsId": { + "domainMappingsId": { "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "required": true, @@ -319,114 +214,109 @@ "https://www.googleapis.com/auth/appengine.admin", "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" - ] - } - } - }, - "locations": { - "methods": { - "list": { - "path": "v1alpha/apps/{appsId}/locations", - "id": "appengine.apps.locations.list", - "description": "Lists information about the supported locations for this service.", + ], + "flatPath": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}", + "path": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}", + "id": "appengine.apps.domainMappings.get", + "description": "Gets the specified domain mapping.", "response": { - "$ref": "ListLocationsResponse" + "$ref": "DomainMapping" }, "parameterOrder": [ - "appsId" + "appsId", + "domainMappingsId" + ], + "httpMethod": "GET" + }, + "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.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "appsId", + "domainMappingsId" + ], + "httpMethod": "PATCH", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "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 resource that owns the locations collection, if applicable.", + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/domainMappings/example.com.", "required": true, "type": "string", "location": "path" }, - "pageToken": { - "description": "The standard list page token.", + "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": { + "description": "Standard field mask for the set of fields to be updated.", + "format": "google-fieldmask", "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": "v1alpha/apps/{appsId}/locations" - }, - "get": { - "description": "Gets information about a location.", - "response": { - "$ref": "Location" - }, + "flatPath": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}", + "path": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}", + "id": "appengine.apps.domainMappings.patch" + } + } + }, + "authorizedCertificates": { + "methods": { + "delete": { + "httpMethod": "DELETE", "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" + "authorizedCertificatesId" ], + "response": { + "$ref": "Empty" + }, "parameters": { - "locationsId": { + "authorizedCertificatesId": { "description": "Part of `name`. See documentation of `appsId`.", "required": true, "type": "string", "location": "path" }, "appsId": { - "description": "Part of `name`. Resource name for the location.", + "description": "Part of `name`. Name of the resource to delete. Example: apps/myapp/authorizedCertificates/12345.", "required": true, "type": "string", "location": "path" } }, - "flatPath": "v1alpha/apps/{appsId}/locations/{locationsId}", - "path": "v1alpha/apps/{appsId}/locations/{locationsId}", - "id": "appengine.apps.locations.get" - } - } - }, - "domainMappings": { - "methods": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "id": "appengine.apps.authorizedCertificates.delete", + "path": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "description": "Deletes the specified SSL certificate." + }, "list": { - "path": "v1alpha/apps/{appsId}/domainMappings", - "id": "appengine.apps.domainMappings.list", - "description": "Lists the domain mappings on an application.", "response": { - "$ref": "ListDomainMappingsResponse" + "$ref": "ListAuthorizedCertificatesResponse" }, "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": "Maximum results to return per page.", - "format": "int32", - "type": "integer", - "location": "query" - }, "appsId": { "location": "path", "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", @@ -437,98 +327,122 @@ "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" } }, - "flatPath": "v1alpha/apps/{appsId}/domainMappings" + "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 domain mapping.", + "httpMethod": "GET", "response": { - "$ref": "DomainMapping" + "$ref": "AuthorizedCertificate" }, "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" + "authorizedCertificatesId" ], "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 requested. Example: apps/myapp/domainMappings/example.com.", + "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" } }, - "flatPath": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}", - "path": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}", - "id": "appengine.apps.domainMappings.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" + ], + "flatPath": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "id": "appengine.apps.authorizedCertificates.get", + "path": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "description": "Gets the specified SSL certificate." }, "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.", - "response": { - "$ref": "Operation" - }, + "httpMethod": "PATCH", "parameterOrder": [ "appsId", - "domainMappingsId" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "authorizedCertificatesId" ], + "response": { + "$ref": "AuthorizedCertificate" + }, "parameters": { + "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/domainMappings/example.com.", + "location": "path", + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/authorizedCertificates/12345.", "required": true, - "type": "string", - "location": "path" + "type": "string" }, - "domainMappingsId": { + "authorizedCertificatesId": { "description": "Part of `name`. See documentation of `appsId`.", "required": true, "type": "string", "location": "path" - }, - "noManagedCertificate": { - "location": "query", - "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" - }, - "updateMask": { - "description": "Standard field mask for the set of fields to be updated.", - "format": "google-fieldmask", - "type": "string", - "location": "query" } }, - "flatPath": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}", - "path": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}", - "id": "appengine.apps.domainMappings.patch" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "id": "appengine.apps.authorizedCertificates.patch", + "path": "v1alpha/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "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" + } }, "create": { - "flatPath": "v1alpha/apps/{appsId}/domainMappings", - "path": "v1alpha/apps/{appsId}/domainMappings", - "id": "appengine.apps.domainMappings.create", "request": { - "$ref": "DomainMapping" + "$ref": "AuthorizedCertificate" }, - "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.", + "description": "Uploads the specified SSL certificate.", "response": { - "$ref": "Operation" + "$ref": "AuthorizedCertificate" }, "parameterOrder": [ "appsId" @@ -537,6 +451,31 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], + "parameters": { + "appsId": { + "location": "path", + "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "required": true, + "type": "string" + } + }, + "flatPath": "v1alpha/apps/{appsId}/authorizedCertificates", + "path": "v1alpha/apps/{appsId}/authorizedCertificates", + "id": "appengine.apps.authorizedCertificates.create" + } + } + }, + "authorizedDomains": { + "methods": { + "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.", @@ -544,53 +483,105 @@ "type": "string", "location": "path" }, - "overrideStrategy": { + "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" + } + }, + "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", + "path": "v1alpha/apps/{appsId}/authorizedDomains", + "id": "appengine.apps.authorizedDomains.list" + } + } + }, + "operations": { + "methods": { + "list": { + "response": { + "$ref": "ListOperationsResponse" + }, + "parameterOrder": [ + "appsId" + ], + "httpMethod": "GET", + "parameters": { + "appsId": { + "description": "Part of `name`. The name of the operation's parent resource.", + "required": true, + "type": "string", + "location": "path" + }, + "pageToken": { "location": "query", - "enum": [ - "UNSPECIFIED_DOMAIN_OVERRIDE_STRATEGY", - "STRICT", - "OVERRIDE" - ], - "description": "Whether the domain creation should override any existing mappings for this domain. By default, overrides are rejected.", + "description": "The standard list page token.", "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.", - "type": "boolean", + "pageSize": { + "location": "query", + "description": "The standard list page size.", + "format": "int32", + "type": "integer" + }, + "filter": { + "description": "The standard list filter.", + "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": "v1alpha/apps/{appsId}/operations", + "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." }, - "delete": { - "flatPath": "v1alpha/apps/{appsId}/domainMappings/{domainMappingsId}", - "path": "v1alpha/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.", + "get": { "response": { "$ref": "Operation" }, "parameterOrder": [ "appsId", - "domainMappingsId" + "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" ], - "httpMethod": "DELETE", "parameters": { "appsId": { - "description": "Part of `name`. Name of the resource to delete. Example: apps/myapp/domainMappings/example.com.", + "description": "Part of `name`. The name of the operation resource.", "required": true, "type": "string", "location": "path" }, - "domainMappingsId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", + "operationsId": { "required": true, - "type": "string" + "type": "string", + "location": "path", + "description": "Part of `name`. See documentation of `appsId`." } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "flatPath": "v1alpha/apps/{appsId}/operations/{operationsId}", + "path": "v1alpha/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." } } } @@ -598,47 +589,31 @@ } }, "parameters": { - "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" }, + "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", - "location": "query" + "default": "true" }, "oauth_token": { + "type": "string", "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" + "description": "OAuth 2.0 token for the current user." }, "bearer_token": { "location": "query", @@ -646,9 +621,9 @@ "type": "string" }, "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", "type": "string", - "location": "query" + "location": "query", + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")." }, "prettyPrint": { "location": "query", @@ -656,19 +631,17 @@ "type": "boolean", "default": "true" }, - "fields": { - "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" }, - "uploadType": { + "fields": { "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "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" @@ -677,201 +650,176 @@ "enum": [ "1", "2" - ] + ], + "description": "V1 error format.", + "type": "string" }, "callback": { - "description": "JSONP", "type": "string", - "location": "query" + "location": "query", + "description": "JSONP" + }, + "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." } }, "schemas": { - "ListAuthorizedDomainsResponse": { - "description": "Response message for AuthorizedDomains.ListAuthorizedDomains.", + "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": { - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", + "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" }, - "domains": { - "description": "The authorized domains belonging to the user.", + "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": { - "$ref": "AuthorizedDomain" + "type": "object", + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + } } } }, - "id": "ListAuthorizedDomainsResponse" + "id": "Status" }, - "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 {}.", + "AuthorizedDomain": { "type": "object", - "properties": {}, - "id": "Empty" - }, - "DomainMapping": { "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.", + "description": "Fully qualified domain name of the domain authorized for use. 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" - } + "name": { + "description": "Full path to the AuthorizedDomain resource in the API. Example: apps/myapp/authorizedDomains/example.com.@OutputOnly", + "type": "string" } }, - "id": "DomainMapping", - "description": "A domain serving an App Engine application.", - "type": "object" + "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)." }, - "Location": { - "description": "A resource that represents Google Cloud Platform location.", + "LocationMetadata": { + "description": "Metadata for the given google.cloud.location.Location.", "type": "object", "properties": { - "locationId": { - "description": "The canonical id for this location. For example: \"us-east1\".", - "type": "string" - }, - "displayName": { - "description": "The friendly name for this location, typically a nearby city name. For example, \"Tokyo\".", - "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" - } + "flexibleEnvironmentAvailable": { + "type": "boolean", + "description": "App Engine flexible environment is available in the given location.@OutputOnly" }, - "name": { - "description": "Resource name for the location, which may vary between implementations. For example: \"projects/example-project/locations/us-east1\"", - "type": "string" + "standardEnvironmentAvailable": { + "description": "App Engine standard environment is available in the given location.@OutputOnly", + "type": "boolean" } }, - "id": "Location" + "id": "LocationMetadata" }, - "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.", + "CreateVersionMetadataV1": { + "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1.CreateVersionRequest.", "type": "object", "properties": { - "name": { - "description": "Full path to the AuthorizedCertificate resource in the API. Example: apps/myapp/authorizedCertificates/12345.@OutputOnly", + "cloudBuildId": { + "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", "type": "string" + } + }, + "id": "CreateVersionMetadataV1" + }, + "OperationMetadataV1Beta": { + "id": "OperationMetadataV1Beta", + "description": "Metadata for the given google.longrunning.Operation.", + "type": "object", + "properties": { + "createVersionMetadata": { + "$ref": "CreateVersionMetadataV1Beta" }, - "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", + "warning": { + "description": "Durable messages that persist on every operation poll. @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", + "insertTime": { + "description": "Time that this operation was created.@OutputOnly", + "format": "google-datetime", "type": "string" }, - "displayName": { - "description": "The user-specified display name of the certificate. This is not guaranteed to be unique. Example: My Certificate.", + "user": { + "description": "User who requested this operation.@OutputOnly", "type": "string" }, - "certificateRawData": { - "$ref": "CertificateRawData", - "description": "The SSL certificate serving the AuthorizedCertificate resource. This must be obtained independently from a certificate authority." - }, - "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" - }, - "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", - "format": "google-datetime", + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@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).", + }, + "ephemeralMessage": { + "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", "type": "string" }, - "name": { - "description": "Relative name of the object affected by this record. Only applicable for CNAME records. Example: 'www'.", + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1beta.Versions.CreateVersion.@OutputOnly", "type": "string" }, - "type": { - "enum": [ - "A", - "AAAA", - "CNAME" - ], - "description": "Resource record type. Example: AAAA.", + "endTime": { "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." - ] + "description": "Time that this operation completed.@OutputOnly", + "format": "google-datetime" } - }, - "id": "ResourceRecord" + } }, - "CreateVersionMetadataV1Alpha": { - "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1alpha.CreateVersionRequest.", + "ListOperationsResponse": { + "id": "ListOperationsResponse", + "description": "The response message for Operations.ListOperations.", "type": "object", "properties": { - "cloudBuildId": { - "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", + "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": "CreateVersionMetadataV1Alpha" + } }, - "OperationMetadataV1Beta5": { + "OperationMetadata": { "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", + "user": { + "type": "string", + "description": "User who requested this operation.@OutputOnly" + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/modules/default.@OutputOnly", "type": "string" }, - "insertTime": { - "description": "Timestamp that this operation was created.@OutputOnly", - "format": "google-datetime", + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1beta4.Version.CreateVersion.@OutputOnly", "type": "string" }, "endTime": { @@ -879,157 +827,127 @@ "format": "google-datetime", "type": "string" }, - "user": { - "description": "User who requested this operation.@OutputOnly", + "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/services/default.@OutputOnly", + "insertTime": { + "description": "Timestamp that this operation was created.@OutputOnly", + "format": "google-datetime", "type": "string" } }, - "id": "OperationMetadataV1Beta5" + "id": "OperationMetadata" }, - "ListLocationsResponse": { - "description": "The response message for Locations.ListLocations.", + "ListAuthorizedCertificatesResponse": { + "description": "Response message for AuthorizedCertificates.ListAuthorizedCertificates.", "type": "object", "properties": { "nextPageToken": { - "description": "The standard List next-page token.", + "description": "Continuation token for fetching the next page of results.", "type": "string" }, - "locations": { - "description": "A list of locations that matches the specified filter in the request.", + "certificates": { + "description": "The SSL certificates the user is authorized to administer.", "type": "array", "items": { - "$ref": "Location" + "$ref": "AuthorizedCertificate" } } }, - "id": "ListLocationsResponse" + "id": "ListAuthorizedCertificatesResponse" }, - "CertificateRawData": { + "CreateVersionMetadataV1Beta": { + "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1beta.CreateVersionRequest.", + "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", + "cloudBuildId": { + "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", + "type": "string" + } + }, + "id": "CreateVersionMetadataV1Beta" + }, + "ManagedCertificate": { + "description": "A certificate managed by App Engine.", + "type": "object", + "properties": { + "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" }, - "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", + "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" } }, - "id": "CertificateRawData", - "description": "An SSL certificate obtained from a certificate authority.", - "type": "object" + "id": "ManagedCertificate" }, - "Operation": { - "description": "This resource represents a long-running operation that is the result of a network API call.", + "SslSettings": { + "description": "SSL configuration for a DomainMapping resource.", "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.", + "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" }, - "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.", + "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" - }, - "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" + "id": "SslSettings" }, - "Status": { + "OperationMetadataV1": { + "type": "object", "properties": { - "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.", + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", "type": "array", "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } + "type": "string" } }, - "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 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" - }, - "AuthorizedDomain": { - "properties": { - "id": { - "description": "Fully qualified domain name of the domain authorized for use. Example: example.com.", + "insertTime": { + "description": "Time that this operation was created.@OutputOnly", + "format": "google-datetime", "type": "string" }, - "name": { - "description": "Full path to the AuthorizedDomain resource in the API. Example: apps/myapp/authorizedDomains/example.com.@OutputOnly", + "user": { + "description": "User who requested this operation.@OutputOnly", "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" - }, - "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" - }, - "CreateVersionMetadataV1": { - "properties": { - "cloudBuildId": { - "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", "type": "string" - } - }, - "id": "CreateVersionMetadataV1", - "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1.CreateVersionRequest.", - "type": "object" - }, - "OperationMetadataV1Beta": { - "properties": { + }, + "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", + "description": "API method that initiated this operation. Example: google.appengine.v1.Versions.CreateVersion.@OutputOnly", "type": "string" }, "endTime": { @@ -1038,8 +956,32 @@ "type": "string" }, "createVersionMetadata": { - "$ref": "CreateVersionMetadataV1Beta" + "$ref": "CreateVersionMetadataV1" + } + }, + "id": "OperationMetadataV1", + "description": "Metadata for the given google.longrunning.Operation." + }, + "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" + } + }, + "id": "ListDomainMappingsResponse" + }, + "OperationMetadataV1Alpha": { + "properties": { "warning": { "description": "Durable messages that persist on every operation poll. @OutputOnly", "type": "array", @@ -1052,262 +994,311 @@ "format": "google-datetime", "type": "string" }, + "user": { + "type": "string", + "description": "User who requested this operation.@OutputOnly" + }, "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", + "ephemeralMessage": { + "type": "string", + "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly" + }, + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1alpha.Versions.CreateVersion.@OutputOnly", "type": "string" }, - "ephemeralMessage": { - "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", + "endTime": { + "description": "Time that this operation completed.@OutputOnly", + "format": "google-datetime", "type": "string" + }, + "createVersionMetadata": { + "$ref": "CreateVersionMetadataV1Alpha" } }, - "id": "OperationMetadataV1Beta", + "id": "OperationMetadataV1Alpha", "description": "Metadata for the given google.longrunning.Operation.", "type": "object" }, - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", + "ListAuthorizedDomainsResponse": { + "description": "Response message for AuthorizedDomains.ListAuthorizedDomains.", "type": "object", "properties": { - "operations": { - "description": "A list of operations that matches the specified filter in the request.", + "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": "Operation" + "$ref": "AuthorizedDomain" } - }, - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" } }, - "id": "ListOperationsResponse" + "id": "ListAuthorizedDomainsResponse" }, - "OperationMetadata": { + "DomainMapping": { "properties": { - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/modules/default.@OutputOnly", + "name": { + "description": "Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@OutputOnly", "type": "string" }, - "user": { - "description": "User who requested this operation.@OutputOnly", + "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" }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1beta4.Version.CreateVersion.@OutputOnly", + "resourceRecords": { + "type": "array", + "items": { + "$ref": "ResourceRecord" + }, + "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" + } + }, + "id": "DomainMapping", + "description": "A domain serving an App Engine application.", + "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", + "properties": {}, + "id": "Empty" + }, + "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. For example: \"projects/example-project/locations/us-east1\"", "type": "string" }, - "endTime": { - "description": "Timestamp that this operation completed.@OutputOnly", - "format": "google-datetime", + "locationId": { + "description": "The canonical id for this location. For example: \"us-east1\".", "type": "string" }, - "operationType": { - "description": "Type of this operation. Deprecated, use method field instead. Example: \"create_version\".@OutputOnly", + "displayName": { + "description": "The friendly name for this location, typically a nearby city name. For example, \"Tokyo\".", "type": "string" }, - "insertTime": { - "description": "Timestamp that this operation was created.@OutputOnly", - "format": "google-datetime", - "type": "string" + "metadata": { + "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 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": "OperationMetadata", - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object" + "id": "Location" }, - "ListAuthorizedCertificatesResponse": { - "description": "Response message for AuthorizedCertificates.ListAuthorizedCertificates.", + "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": { - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", + "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" }, - "certificates": { - "description": "The SSL certificates the user is authorized to administer.", + "displayName": { + "description": "The user-specified display name of the certificate. This is not guaranteed to be unique. Example: My Certificate.", + "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" + }, + "certificateRawData": { + "description": "The SSL certificate serving the AuthorizedCertificate resource. This must be obtained independently from a certificate authority.", + "$ref": "CertificateRawData" + }, + "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": { - "$ref": "AuthorizedCertificate" + "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", + }, + "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": { + "type": "string", + "description": "Full path to the AuthorizedCertificate resource in the API. Example: apps/myapp/authorizedCertificates/12345.@OutputOnly" + }, + "domainMappingsCount": { + "type": "integer", + "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" } }, - "id": "CreateVersionMetadataV1Beta" + "id": "AuthorizedCertificate" }, - "ManagedCertificate": { - "description": "A certificate managed by App Engine.", + "ResourceRecord": { + "description": "A DNS resource record.", "type": "object", "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", + "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" }, - "status": { + "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": [ - "", - "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." + "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": [ - "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" - }, - "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" + "A", + "AAAA", + "CNAME" + ] } }, - "id": "SslSettings" + "id": "ResourceRecord" }, - "OperationMetadataV1": { + "OperationMetadataV1Beta5": { "description": "Metadata for the given google.longrunning.Operation.", "type": "object", "properties": { - "createVersionMetadata": { - "$ref": "CreateVersionMetadataV1" - }, - "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": { + "type": "string", + "description": "User who requested this operation.@OutputOnly" }, "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", + "method": { + "description": "API method name that initiated this operation. Example: google.appengine.v1beta5.Version.CreateVersion.@OutputOnly", "type": "string" }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1.Versions.CreateVersion.@OutputOnly", + "insertTime": { + "description": "Timestamp that this operation was created.@OutputOnly", + "format": "google-datetime", "type": "string" }, "endTime": { - "description": "Time that this operation completed.@OutputOnly", + "description": "Timestamp that this operation completed.@OutputOnly", "format": "google-datetime", "type": "string" } }, - "id": "OperationMetadataV1" + "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" }, - "ListDomainMappingsResponse": { + "ListLocationsResponse": { + "type": "object", "properties": { "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", + "description": "The standard List next-page token.", "type": "string" }, - "domainMappings": { - "description": "The domain mappings for the application.", + "locations": { + "description": "A list of locations that matches the specified filter in the request.", "type": "array", "items": { - "$ref": "DomainMapping" + "$ref": "Location" } } }, - "id": "ListDomainMappingsResponse", - "description": "Response message for DomainMappings.ListDomainMappings.", - "type": "object" + "id": "ListLocationsResponse", + "description": "The response message for Locations.ListLocations." }, - "OperationMetadataV1Alpha": { - "description": "Metadata for the given google.longrunning.Operation.", + "CertificateRawData": { + "id": "CertificateRawData", + "description": "An SSL certificate obtained from a certificate authority.", "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" - }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "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" }, - "user": { - "description": "User who requested this operation.@OutputOnly", + "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" }, - "ephemeralMessage": { - "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", - "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" }, - "method": { - "description": "API method that initiated this operation. Example: google.appengine.v1alpha.Versions.CreateVersion.@OutputOnly", + "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" }, - "endTime": { - "description": "Time that this operation completed.@OutputOnly", - "format": "google-datetime", - "type": "string" + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." }, - "createVersionMetadata": { - "$ref": "CreateVersionMetadataV1Alpha" + "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 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": "OperationMetadataV1Alpha" + "id": "Operation" } }, "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" + "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", @@ -1329,5 +1320,14 @@ }, "kind": "discovery#restDescription", "description": "The App Engine Admin API enables developers to provision and manage their App Engine applications.", - "servicePath": "" + "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": "20180502", + "title": "App Engine Admin API" } diff --git a/DiscoveryJson/appengine_v1beta.json b/DiscoveryJson/appengine_v1beta.json index a2fba85cdc..d7560ae2c3 100644 --- a/DiscoveryJson/appengine_v1beta.json +++ b/DiscoveryJson/appengine_v1beta.json @@ -1,22 +1,28 @@ { - "basePath": "", - "ownerDomain": "google.com", - "name": "appengine", - "batchPath": "batch", - "revision": "20180502", - "documentationLink": "https://cloud.google.com/appengine/docs/admin-api/", - "id": "appengine:v1beta", - "title": "App Engine Admin API", - "discoveryVersion": "v1", "ownerName": "Google", + "discoveryVersion": "v1", "resources": { "apps": { "methods": { - "repair": { + "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/).", "request": { - "$ref": "RepairApplicationRequest" + "$ref": "Application" + }, + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "Operation" }, - "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.", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta/apps", + "id": "appengine.apps.create", + "path": "v1beta/apps" + }, + "repair": { "response": { "$ref": "Operation" }, @@ -37,12 +43,13 @@ }, "flatPath": "v1beta/apps/{appsId}:repair", "path": "v1beta/apps/{appsId}:repair", - "id": "appengine.apps.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": { - "path": "v1beta/apps/{appsId}", - "id": "appengine.apps.get", - "description": "Gets information about an application.", "response": { "$ref": "Application" }, @@ -63,16 +70,12 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "flatPath": "v1beta/apps/{appsId}" - }, - "patch": { "flatPath": "v1beta/apps/{appsId}", "path": "v1beta/apps/{appsId}", - "id": "appengine.apps.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" - }, + "id": "appengine.apps.get", + "description": "Gets information about an application." + }, + "patch": { "response": { "$ref": "Operation" }, @@ -80,6 +83,9 @@ "appsId" ], "httpMethod": "PATCH", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "updateMask": { "description": "Standard field mask for the set of fields to be updated.", @@ -88,237 +94,336 @@ "location": "query" }, "appsId": { - "location": "path", "description": "Part of `name`. Name of the Application resource to update. Example: apps/myapp.", "required": true, - "type": "string" + "type": "string", + "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "create": { - "flatPath": "v1beta/apps", - "id": "appengine.apps.create", - "path": "v1beta/apps", - "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/{appsId}", + "path": "v1beta/apps/{appsId}", + "id": "appengine.apps.patch", "request": { "$ref": "Application" }, - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "Operation" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "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." } }, "resources": { - "authorizedCertificates": { - "methods": { - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "appsId", - "authorizedCertificatesId" - ], - "httpMethod": "DELETE", - "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": "v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "path": "v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "id": "appengine.apps.authorizedCertificates.delete", - "description": "Deletes the specified SSL certificate." - }, - "list": { - "path": "v1beta/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": { - "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": { - "enum": [ - "BASIC_CERTIFICATE", - "FULL_CERTIFICATE" + "firewall": { + "resources": { + "ingressRules": { + "methods": { + "delete": { + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "appsId", + "ingressRulesId" ], - "description": "Controls the set of fields returned in the LIST 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}/authorizedCertificates" - }, - "get": { - "description": "Gets the specified SSL certificate.", - "response": { - "$ref": "AuthorizedCertificate" - }, - "parameterOrder": [ - "appsId", - "authorizedCertificatesId" - ], - "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/authorizedCertificates/12345.", - "required": true, - "type": "string", - "location": "path" + "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.", + "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}", + "path": "v1beta/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", + "id": "appengine.apps.firewall.ingressRules.delete", + "description": "Deletes the specified firewall rule." }, - "view": { - "location": "query", - "enum": [ - "BASIC_CERTIFICATE", - "FULL_CERTIFICATE" + "list": { + "description": "Lists the firewall rules of an application.", + "response": { + "$ref": "ListIngressRulesResponse" + }, + "parameterOrder": [ + "appsId" ], - "description": "Controls the set of fields returned in the GET response.", - "type": "string" + "httpMethod": "GET", + "parameters": { + "pageSize": { + "description": "Maximum results to return per page.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "matchingAddress": { + "location": "query", + "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" + }, + "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" + } + }, + "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}/firewall/ingressRules", + "path": "v1beta/apps/{appsId}/firewall/ingressRules", + "id": "appengine.apps.firewall.ingressRules.list" }, - "authorizedCertificatesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "path": "v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "id": "appengine.apps.authorizedCertificates.get" - }, - "patch": { - "response": { - "$ref": "AuthorizedCertificate" - }, + "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": "v1beta/apps/{appsId}/firewall/ingressRules", + "id": "appengine.apps.firewall.ingressRules.create", + "path": "v1beta/apps/{appsId}/firewall/ingressRules", + "description": "Creates a firewall rule for the application.", + "request": { + "$ref": "FirewallRule" + } + }, + "get": { + "response": { + "$ref": "FirewallRule" + }, + "parameterOrder": [ + "appsId", + "ingressRulesId" + ], + "httpMethod": "GET", + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the Firewall resource to retrieve. Example: apps/myapp/firewall/ingressRules/100.", + "required": true, + "type": "string", + "location": "path" + }, + "ingressRulesId": { + "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": "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": { + "response": { + "$ref": "FirewallRule" + }, + "parameterOrder": [ + "appsId", + "ingressRulesId" + ], + "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": { + "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": "v1beta/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", + "path": "v1beta/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", + "id": "appengine.apps.firewall.ingressRules.patch", + "request": { + "$ref": "FirewallRule" + }, + "description": "Updates the specified firewall rule." + }, + "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" + }, + "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": "v1beta/apps/{appsId}/firewall/ingressRules:batchUpdate", + "path": "v1beta/apps/{appsId}/firewall/ingressRules:batchUpdate", + "id": "appengine.apps.firewall.ingressRules.batchUpdate" + } + } + } + } + }, + "locations": { + "methods": { + "list": { + "description": "Lists information about the supported locations for this service.", + "response": { + "$ref": "ListLocationsResponse" + }, "parameterOrder": [ - "appsId", - "authorizedCertificatesId" + "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" ], - "httpMethod": "PATCH", "parameters": { - "updateMask": { + "pageSize": { "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" + "description": "The standard list page size.", + "format": "int32", + "type": "integer" }, - "appsId": { - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/authorizedCertificates/12345.", - "required": true, + "filter": { + "description": "The standard list filter.", "type": "string", - "location": "path" + "location": "query" }, - "authorizedCertificatesId": { + "appsId": { "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", + "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/cloud-platform" - ], - "flatPath": "v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "path": "v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", - "id": "appengine.apps.authorizedCertificates.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" - } + "flatPath": "v1beta/apps/{appsId}/locations", + "path": "v1beta/apps/{appsId}/locations", + "id": "appengine.apps.locations.list" }, - "create": { - "request": { - "$ref": "AuthorizedCertificate" - }, - "description": "Uploads the specified SSL certificate.", + "get": { + "httpMethod": "GET", "response": { - "$ref": "AuthorizedCertificate" + "$ref": "Location" }, "parameterOrder": [ - "appsId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "appsId", + "locationsId" ], "parameters": { "appsId": { + "description": "Part of `name`. Resource name for the location.", + "required": true, + "type": "string", + "location": "path" + }, + "locationsId": { "location": "path", - "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "description": "Part of `name`. See documentation of `appsId`.", "required": true, "type": "string" } }, - "flatPath": "v1beta/apps/{appsId}/authorizedCertificates", - "path": "v1beta/apps/{appsId}/authorizedCertificates", - "id": "appengine.apps.authorizedCertificates.create" + "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}/locations/{locationsId}", + "id": "appengine.apps.locations.get", + "path": "v1beta/apps/{appsId}/locations/{locationsId}", + "description": "Gets information about a location." } } }, - "services": { + "authorizedCertificates": { "methods": { "list": { - "response": { - "$ref": "ListServicesResponse" - }, + "description": "Lists all SSL certificates the user is authorized to administer.", + "httpMethod": "GET", "parameterOrder": [ "appsId" ], - "httpMethod": "GET", + "response": { + "$ref": "ListAuthorizedCertificatesResponse" + }, "parameters": { + "pageSize": { + "location": "query", + "description": "Maximum results to return per page.", + "format": "int32", + "type": "integer" + }, + "view": { + "enum": [ + "BASIC_CERTIFICATE", + "FULL_CERTIFICATE" + ], + "description": "Controls the set of fields returned in the LIST response.", + "type": "string", + "location": "query" + }, "appsId": { "location": "path", "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", @@ -329,12 +434,6 @@ "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" } }, "scopes": [ @@ -342,104 +441,130 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "flatPath": "v1beta/apps/{appsId}/services", - "path": "v1beta/apps/{appsId}/services", - "id": "appengine.apps.services.list", - "description": "Lists all the services in the application." + "flatPath": "v1beta/apps/{appsId}/authorizedCertificates", + "id": "appengine.apps.authorizedCertificates.list", + "path": "v1beta/apps/{appsId}/authorizedCertificates" }, "get": { + "description": "Gets the specified SSL certificate.", "response": { - "$ref": "Service" + "$ref": "AuthorizedCertificate" }, "parameterOrder": [ "appsId", - "servicesId" + "authorizedCertificatesId" ], "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/services/default.", - "required": true, - "type": "string" + "view": { + "enum": [ + "BASIC_CERTIFICATE", + "FULL_CERTIFICATE" + ], + "description": "Controls the set of fields returned in the GET response.", + "type": "string", + "location": "query" }, - "servicesId": { + "authorizedCertificatesId": { "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/authorizedCertificates/12345.", + "required": true, + "type": "string" } }, - "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." + "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}", + "path": "v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "id": "appengine.apps.authorizedCertificates.get" }, "patch": { - "description": "Updates the configuration of the specified service.", + "flatPath": "v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "id": "appengine.apps.authorizedCertificates.patch", + "path": "v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "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": "Service" - }, - "response": { - "$ref": "Operation" + "$ref": "AuthorizedCertificate" }, + "httpMethod": "PATCH", "parameterOrder": [ "appsId", - "servicesId" + "authorizedCertificatesId" ], - "httpMethod": "PATCH", + "response": { + "$ref": "AuthorizedCertificate" + }, "parameters": { "appsId": { - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default.", + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/authorizedCertificates/12345.", "required": true, "type": "string", "location": "path" }, - "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/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" - }, - "updateMask": { - "location": "query", - "description": "Standard field mask for the set of fields to be updated.", - "format": "google-fieldmask", - "type": "string" - }, - "servicesId": { + "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": "v1beta/apps/{appsId}/services/{servicesId}", - "path": "v1beta/apps/{appsId}/services/{servicesId}", - "id": "appengine.apps.services.patch" + ] }, - "delete": { - "description": "Deletes the specified service and all enclosed versions.", + "create": { "response": { - "$ref": "Operation" + "$ref": "AuthorizedCertificate" }, "parameterOrder": [ - "appsId", - "servicesId" + "appsId" ], - "httpMethod": "DELETE", + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "servicesId": { + "appsId": { + "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "required": true, + "type": "string", + "location": "path" + } + }, + "flatPath": "v1beta/apps/{appsId}/authorizedCertificates", + "path": "v1beta/apps/{appsId}/authorizedCertificates", + "id": "appengine.apps.authorizedCertificates.create", + "request": { + "$ref": "AuthorizedCertificate" + }, + "description": "Uploads the specified SSL certificate." + }, + "delete": { + "httpMethod": "DELETE", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "appsId", + "authorizedCertificatesId" + ], + "parameters": { + "authorizedCertificatesId": { "description": "Part of `name`. See documentation of `appsId`.", "required": true, "type": "string", @@ -447,236 +572,82 @@ }, "appsId": { "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", + "description": "Part of `name`. Name of the resource to delete. Example: apps/myapp/authorizedCertificates/12345.", "required": true, "type": "string" } }, - "flatPath": "v1beta/apps/{appsId}/services/{servicesId}", - "path": "v1beta/apps/{appsId}/services/{servicesId}", - "id": "appengine.apps.services.delete" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "id": "appengine.apps.authorizedCertificates.delete", + "path": "v1beta/apps/{appsId}/authorizedCertificates/{authorizedCertificatesId}", + "description": "Deletes the specified SSL certificate." } - }, + } + }, + "services": { "resources": { "versions": { - "resources": { - "instances": { - "methods": { - "list": { - "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).", - "httpMethod": "GET", - "response": { - "$ref": "ListInstancesResponse" - }, - "parameterOrder": [ - "appsId", - "servicesId", - "versionsId" - ], - "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 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": { - "location": "query", - "description": "Maximum results to return per page.", - "format": "int32", - "type": "integer" - }, - "versionsId": { - "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" - ] + "methods": { + "delete": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "servicesId": { + "location": "path", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "type": "string" }, - "get": { - "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", - "id": "appengine.apps.services.versions.instances.get", - "description": "Gets instance information.", - "response": { - "$ref": "Instance" - }, - "parameterOrder": [ - "appsId", - "servicesId", - "versionsId", - "instancesId" - ], - "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 `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": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}" + "appsId": { + "location": "path", + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1.", + "required": true, + "type": "string" }, - "debug": { - "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.", - "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": { - "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": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - } - } - }, - "delete": { - "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", - "id": "appengine.apps.services.versions.instances.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": { - "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/cloud-platform" - ], - "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}" + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "type": "string", + "location": "path" } - } - } - }, - "methods": { - "list": { - "response": { - "$ref": "ListVersionsResponse" }, + "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "id": "appengine.apps.services.versions.delete", + "description": "Deletes an existing Version resource." + }, + "list": { + "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions", + "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" ], - "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" - ], + "response": { + "$ref": "ListVersionsResponse" + }, "parameters": { "servicesId": { + "location": "path", "description": "Part of `parent`. See documentation of `appsId`.", "required": true, - "type": "string", - "location": "path" + "type": "string" }, "appsId": { "description": "Part of `parent`. Name of the parent Service resource. Example: apps/myapp/services/default.", @@ -705,13 +676,15 @@ "type": "string" } }, - "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions", - "path": "v1beta/apps/{appsId}/services/{servicesId}/versions", - "id": "appengine.apps.services.versions.list", - "description": "Lists the versions of a 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" + ] }, "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.", + "httpMethod": "GET", "response": { "$ref": "Version" }, @@ -720,34 +693,33 @@ "servicesId", "versionsId" ], - "httpMethod": "GET", "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.", "required": true, - "type": "string" + "type": "string", + "location": "path" }, "versionsId": { + "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "required": true, - "type": "string", - "location": "path" + "type": "string" }, "view": { - "location": "query", "enum": [ "BASIC", "FULL" ], "description": "Controls the set of fields returned in the Get response.", - "type": "string" + "type": "string", + "location": "query" + }, + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "type": "string", + "location": "path" } }, "scopes": [ @@ -756,10 +728,13 @@ "https://www.googleapis.com/auth/cloud-platform.read-only" ], "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "id": "appengine.apps.services.versions.get" + "id": "appengine.apps.services.versions.get", + "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}" }, "patch": { + "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "path": "v1beta/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/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.", "request": { "$ref": "Version" @@ -801,16 +776,9 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "id": "appengine.apps.services.versions.patch" + ] }, "create": { - "request": { - "$ref": "Version" - }, - "description": "Deploys code and resource files to a new version.", "response": { "$ref": "Operation" }, @@ -819,140 +787,285 @@ "servicesId" ], "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { - "appsId": { - "location": "path", - "description": "Part of `parent`. Name of the parent resource to create this version under. Example: apps/myapp/services/default.", - "required": true, - "type": "string" - }, "servicesId": { "description": "Part of `parent`. See documentation of `appsId`.", "required": true, "type": "string", "location": "path" - } - }, - "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions", - "path": "v1beta/apps/{appsId}/services/{servicesId}/versions", - "id": "appengine.apps.services.versions.create" - }, - "delete": { - "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`.", + "location": "path", + "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" + "type": "string" } }, - "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "id": "appengine.apps.services.versions.delete", - "description": "Deletes an existing Version resource." - } - } - } - } - }, - "authorizedDomains": { - "methods": { - "list": { - "path": "v1beta/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": { - "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" + "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", + "description": "Deploys code and resource files to a new version.", + "request": { + "$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" - ], - "flatPath": "v1beta/apps/{appsId}/authorizedDomains" - } - } - }, - "operations": { + "resources": { + "instances": { + "methods": { + "debug": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId", + "instancesId" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "versionsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "type": "string", + "location": "path" + }, + "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" + } + }, + "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": { + "description": "Stops a running instance.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId", + "instancesId" + ], + "httpMethod": "DELETE", + "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" + } + }, + "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" + }, + "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": { + "location": "path", + "description": "Part of `parent`. See documentation of `appsId`.", + "required": true, + "type": "string" + }, + "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": { + "location": "query", + "description": "Maximum results to return per page.", + "format": "int32", + "type": "integer" + }, + "versionsId": { + "location": "path", + "description": "Part of `parent`. See documentation of `appsId`.", + "required": true, + "type": "string" + } + }, + "flatPath": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances", + "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances", + "id": "appengine.apps.services.versions.instances.list" + }, + "get": { + "description": "Gets instance information.", + "httpMethod": "GET", + "response": { + "$ref": "Instance" + }, + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId", + "instancesId" + ], + "parameters": { + "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" + }, + "servicesId": { + "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}", + "id": "appengine.apps.services.versions.instances.get", + "path": "v1beta/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}" + } + } + } + } + } + }, "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.", + "delete": { + "httpMethod": "DELETE", + "parameterOrder": [ + "appsId", + "servicesId" + ], "response": { - "$ref": "ListOperationsResponse" + "$ref": "Operation" }, + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta/apps/{appsId}/services/{servicesId}", + "id": "appengine.apps.services.delete", + "path": "v1beta/apps/{appsId}/services/{servicesId}", + "description": "Deletes the specified service and all enclosed versions." + }, + "list": { + "httpMethod": "GET", "parameterOrder": [ "appsId" ], - "httpMethod": "GET", + "response": { + "$ref": "ListServicesResponse" + }, "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.", + "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", "required": true, "type": "string" }, "pageToken": { - "description": "The standard list page token.", - "type": "string", - "location": "query" + "location": "query", + "description": "Continuation token for fetching the next page of results.", + "type": "string" }, "pageSize": { - "description": "The standard list page size.", + "description": "Maximum results to return per page.", "format": "int32", "type": "integer", "location": "query" @@ -963,33 +1076,30 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "flatPath": "v1beta/apps/{appsId}/operations", - "path": "v1beta/apps/{appsId}/operations", - "id": "appengine.apps.operations.list" + "flatPath": "v1beta/apps/{appsId}/services", + "id": "appengine.apps.services.list", + "path": "v1beta/apps/{appsId}/services", + "description": "Lists all the services in the application." }, "get": { - "flatPath": "v1beta/apps/{appsId}/operations/{operationsId}", - "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" - }, + "httpMethod": "GET", "parameterOrder": [ "appsId", - "operationsId" + "servicesId" ], - "httpMethod": "GET", + "response": { + "$ref": "Service" + }, "parameters": { - "appsId": { - "description": "Part of `name`. The name of the operation resource.", + "servicesId": { + "location": "path", + "description": "Part of `name`. See documentation of `appsId`.", "required": true, - "type": "string", - "location": "path" + "type": "string" }, - "operationsId": { + "appsId": { "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", "required": true, "type": "string" } @@ -998,101 +1108,89 @@ "https://www.googleapis.com/auth/appengine.admin", "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" - ] - } - } - }, - "domainMappings": { - "methods": { - "delete": { - "path": "v1beta/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" + ], + "flatPath": "v1beta/apps/{appsId}/services/{servicesId}", + "id": "appengine.apps.services.get", + "path": "v1beta/apps/{appsId}/services/{servicesId}", + "description": "Gets the current configuration of the specified service." + }, + "patch": { + "description": "Updates the configuration of the specified service.", + "request": { + "$ref": "Service" }, + "httpMethod": "PATCH", "parameterOrder": [ "appsId", - "domainMappingsId" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "servicesId" ], + "response": { + "$ref": "Operation" + }, "parameters": { - "domainMappingsId": { - "location": "path", + "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" + "type": "string", + "location": "path" }, "appsId": { "location": "path", - "description": "Part of `name`. Name of the resource to delete. Example: apps/myapp/domainMappings/example.com.", + "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" } }, - "flatPath": "v1beta/apps/{appsId}/domainMappings/{domainMappingsId}" - }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta/apps/{appsId}/services/{servicesId}", + "id": "appengine.apps.services.patch", + "path": "v1beta/apps/{appsId}/services/{servicesId}" + } + } + }, + "authorizedDomains": { + "methods": { "list": { - "description": "Lists the domain mappings on an application.", + "id": "appengine.apps.authorizedDomains.list", + "path": "v1beta/apps/{appsId}/authorizedDomains", + "description": "Lists all domains the user is authorized to administer.", + "httpMethod": "GET", "response": { - "$ref": "ListDomainMappingsResponse" + "$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": { - "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": { "description": "Maximum results to return per page.", "format": "int32", "type": "integer", "location": "query" - } - }, - "flatPath": "v1beta/apps/{appsId}/domainMappings", - "path": "v1beta/apps/{appsId}/domainMappings", - "id": "appengine.apps.domainMappings.list" - }, - "get": { - "response": { - "$ref": "DomainMapping" - }, - "parameterOrder": [ - "appsId", - "domainMappingsId" - ], - "httpMethod": "GET", - "parameters": { + }, "appsId": { - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/domainMappings/example.com.", + "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", "required": true, "type": "string", "location": "path" }, - "domainMappingsId": { - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string", - "location": "path" + "pageToken": { + "location": "query", + "description": "Continuation token for fetching the next page of results.", + "type": "string" } }, "scopes": [ @@ -1100,362 +1198,252 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "flatPath": "v1beta/apps/{appsId}/domainMappings/{domainMappingsId}", - "path": "v1beta/apps/{appsId}/domainMappings/{domainMappingsId}", - "id": "appengine.apps.domainMappings.get", - "description": "Gets the specified domain mapping." - }, - "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" + "flatPath": "v1beta/apps/{appsId}/authorizedDomains" + } + } + }, + "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" }, - "httpMethod": "PATCH", "parameterOrder": [ - "appsId", - "domainMappingsId" + "appsId" ], - "response": { - "$ref": "Operation" - }, + "httpMethod": "GET", "parameters": { - "updateMask": { + "pageSize": { "location": "query", - "description": "Standard field mask for the set of fields to be updated.", - "format": "google-fieldmask", + "description": "The standard list page size.", + "format": "int32", + "type": "integer" + }, + "filter": { + "location": "query", + "description": "The standard list filter.", "type": "string" }, "appsId": { "location": "path", - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/domainMappings/example.com.", + "description": "Part of `name`. The name of the operation's parent resource.", "required": true, "type": "string" }, - "domainMappingsId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" + "pageToken": { + "description": "The standard list page token.", + "type": "string", + "location": "query" } }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "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/{domainMappingsId}", - "id": "appengine.apps.domainMappings.patch", - "path": "v1beta/apps/{appsId}/domainMappings/{domainMappingsId}" + "flatPath": "v1beta/apps/{appsId}/operations", + "path": "v1beta/apps/{appsId}/operations", + "id": "appengine.apps.operations.list" }, - "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" - }, + "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" + "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" ], - "httpMethod": "POST", "parameters": { - "overrideStrategy": { - "description": "Whether the domain creation should override any existing mappings for this domain. By default, overrides are rejected.", + "operationsId": { + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, "type": "string", - "location": "query", - "enum": [ - "UNSPECIFIED_DOMAIN_OVERRIDE_STRATEGY", - "STRICT", - "OVERRIDE" - ] + "location": "path" }, "appsId": { - "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", + "description": "Part of `name`. The name of the operation resource.", "required": true, "type": "string", "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta/apps/{appsId}/domainMappings", - "path": "v1beta/apps/{appsId}/domainMappings", - "id": "appengine.apps.domainMappings.create" + "flatPath": "v1beta/apps/{appsId}/operations/{operationsId}", + "path": "v1beta/apps/{appsId}/operations/{operationsId}", + "id": "appengine.apps.operations.get" } } }, - "firewall": { - "resources": { - "ingressRules": { - "methods": { - "list": { - "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": { - "appsId": { - "location": "path", - "description": "Part of `parent`. Name of the Firewall collection to retrieve. Example: apps/myapp/firewall/ingressRules.", - "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" - }, - "matchingAddress": { - "location": "query", - "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" - } - }, - "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." - }, - "create": { - "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" - } - }, - "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", - "description": "Creates a firewall rule for the application.", - "request": { - "$ref": "FirewallRule" - } - }, - "get": { - "description": "Gets the specified firewall rule.", - "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": "v1beta/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", - "path": "v1beta/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", - "id": "appengine.apps.firewall.ingressRules.get" - }, - "patch": { - "description": "Updates the specified firewall rule.", - "request": { - "$ref": "FirewallRule" - }, - "response": { - "$ref": "FirewallRule" - }, - "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": { - "description": "Part of `name`. Name of the Firewall resource to update. Example: apps/myapp/firewall/ingressRules/100.", - "required": true, - "type": "string", - "location": "path" - }, - "ingressRulesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - } - }, - "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" - }, - "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" - }, - "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": "v1beta/apps/{appsId}/firewall/ingressRules:batchUpdate" - }, - "delete": { - "path": "v1beta/apps/{appsId}/firewall/ingressRules/{ingressRulesId}", - "id": "appengine.apps.firewall.ingressRules.delete", - "description": "Deletes the specified firewall rule.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "appsId", - "ingressRulesId" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "domainMappings": { + "methods": { + "create": { + "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.", + "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": { + "location": "query", + "enum": [ + "UNSPECIFIED_DOMAIN_OVERRIDE_STRATEGY", + "STRICT", + "OVERRIDE" ], - "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": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1beta/apps/{appsId}/firewall/ingressRules/{ingressRulesId}" + "description": "Whether the domain creation should override any existing mappings for this domain. By default, overrides are rejected.", + "type": "string" } - } - } - } - }, - "locations": { - "methods": { + }, + "flatPath": "v1beta/apps/{appsId}/domainMappings", + "path": "v1beta/apps/{appsId}/domainMappings", + "id": "appengine.apps.domainMappings.create" + }, + "delete": { + "response": { + "$ref": "Operation" + }, + "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": { + "location": "path", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "type": "string" + } + }, + "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", + "description": "Deletes the specified domain mapping. A user must be authorized to administer the associated domain in order to delete a DomainMapping resource." + }, "list": { + "flatPath": "v1beta/apps/{appsId}/domainMappings", + "id": "appengine.apps.domainMappings.list", + "path": "v1beta/apps/{appsId}/domainMappings", + "description": "Lists the domain mappings on an application.", "httpMethod": "GET", "parameterOrder": [ "appsId" ], "response": { - "$ref": "ListLocationsResponse" + "$ref": "ListDomainMappingsResponse" }, "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": { - "description": "Part of `name`. The resource that owns the locations collection, if applicable.", + "location": "path", + "description": "Part of `parent`. Name of the parent Application resource. Example: apps/myapp.", "required": true, - "type": "string", - "location": "path" + "type": "string" }, "pageToken": { "location": "query", - "description": "The standard list page token.", + "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": "v1beta/apps/{appsId}/locations", - "id": "appengine.apps.locations.list", - "path": "v1beta/apps/{appsId}/locations", - "description": "Lists information about the supported locations for this service." + ] }, "get": { - "id": "appengine.apps.locations.get", - "path": "v1beta/apps/{appsId}/locations/{locationsId}", - "description": "Gets information about a location.", - "httpMethod": "GET", + "response": { + "$ref": "DomainMapping" + }, "parameterOrder": [ "appsId", - "locationsId" + "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": { + "location": "path", + "description": "Part of `name`. Name of the resource requested. 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" + } + }, + "flatPath": "v1beta/apps/{appsId}/domainMappings/{domainMappingsId}", + "path": "v1beta/apps/{appsId}/domainMappings/{domainMappingsId}", + "id": "appengine.apps.domainMappings.get", + "description": "Gets the specified domain mapping." + }, + "patch": { "response": { - "$ref": "Location" + "$ref": "Operation" }, + "parameterOrder": [ + "appsId", + "domainMappingsId" + ], + "httpMethod": "PATCH", "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`. Resource name for the location.", + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/domainMappings/example.com.", "required": true, "type": "string" }, - "locationsId": { + "domainMappingsId": { "description": "Part of `name`. See documentation of `appsId`.", "required": true, "type": "string", @@ -1463,11 +1451,15 @@ } }, "scopes": [ - "https://www.googleapis.com/auth/appengine.admin", - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" + "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta/apps/{appsId}/locations/{locationsId}" + "flatPath": "v1beta/apps/{appsId}/domainMappings/{domainMappingsId}", + "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" + } } } } @@ -1497,13 +1489,11 @@ "location": "query" }, "callback": { + "location": "query", "description": "JSONP", - "type": "string", - "location": "query" + "type": "string" }, "$.xgafv": { - "description": "V1 error format.", - "type": "string", "enumDescriptions": [ "v1 error format", "v2 error format" @@ -1512,9 +1502,17 @@ "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", @@ -1522,61 +1520,240 @@ ], "location": "query", "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string" + "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" }, - "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" + "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" + } + }, + "schemas": { + "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": { + "$ref": "StandardSchedulerSettings", + "description": "Scheduler settings for standard environment." + }, + "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 for this version.", + "format": "int32", + "type": "integer" + }, + "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." + }, + "customMetrics": { + "description": "Target scaling by user-provided metrics.", + "type": "array", + "items": { + "$ref": "CustomMetric" + } + }, + "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" + }, + "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" + }, + "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": { + "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": "ZipInfo" }, - "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" + "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" + }, + "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" + }, + "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" }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" + "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" }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" + "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" }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - } - }, - "schemas": { "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" } + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" } }, "id": "ListLocationsResponse" @@ -1593,8 +1770,6 @@ "id": "ContainerInfo" }, "RequestUtilization": { - "description": "Target scaling by request utilization. Only applicable in the App Engine flexible environment.", - "type": "object", "properties": { "targetRequestCountPerSecond": { "description": "Target requests per second.", @@ -1607,7 +1782,9 @@ "type": "integer" } }, - "id": "RequestUtilization" + "id": "RequestUtilization", + "description": "Target scaling by request utilization. Only applicable in the App Engine flexible environment.", + "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).", @@ -1622,18 +1799,18 @@ "type": "string" }, "rolloutStrategy": { - "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." - ], "enum": [ "UNSPECIFIED_ROLLOUT_STRATEGY", "FIXED", "MANAGED" ], "description": "Endpoints rollout strategy. If FIXED, config_id must be specified. If MANAGED, config_id must be omitted.", - "type": "string" + "type": "string", + "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." + ] } }, "id": "EndpointsApiService" @@ -1642,9 +1819,96 @@ "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": { + "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" + }, + "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", + "type": "string" + }, + "apiEndpoint": { + "$ref": "ApiEndpointHandler", + "description": "Uses API Endpoints to handle requests." + } + }, + "id": "UrlMap" + }, + "ApiConfigHandler": { + "description": "Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers.", + "type": "object", + "properties": { + "login": { "enumDescriptions": [ "Not specified. LOGIN_OPTIONAL is assumed.", "Does not require that the user is signed in.", @@ -1656,32 +1920,12 @@ "LOGIN_OPTIONAL", "LOGIN_ADMIN", "LOGIN_REQUIRED" - ] - }, - "apiEndpoint": { - "description": "Uses API Endpoints to handle requests.", - "$ref": "ApiEndpointHandler" - }, - "staticFiles": { - "$ref": "StaticFilesHandler", - "description": "Returns the contents of a file, such as an image, as the response." - }, - "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.", + "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": { @@ -1703,39 +1947,37 @@ "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 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", - "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" }, "script": { - "$ref": "ScriptHandler", - "description": "Executes a script to handle the request that matches this URL pattern." - }, - "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.", + "description": "Path to the script from the application root directory.", "type": "string" } }, - "id": "UrlMap" + "id": "ApiConfigHandler" }, "Operation": { + "description": "This resource represents a long-running operation that is the result of a network API call.", + "type": "object", "properties": { "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" - }, - "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.", @@ -1746,87 +1988,40 @@ "$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" - } + }, + "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.", "type": "boolean" } }, - "id": "Operation", - "description": "This resource represents a long-running operation that is the result of a network API call.", - "type": "object" + "id": "Operation" }, - "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": { - "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 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.", + "expiration": { + "description": "Time a static file served by this handler should be cached by web proxies and browsers.", + "format": "google-duration", "type": "string" }, - "script": { - "description": "Path to the script from the application root directory.", - "type": "string" + "httpHeaders": { + "description": "HTTP headers to use for all responses from these URLs.", + "type": "object", + "additionalProperties": { + "type": "string" + } }, - "login": { - "description": "Level of login required to access this resource. Defaults to optional.", - "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." - ], - "enum": [ - "LOGIN_UNSPECIFIED", - "LOGIN_OPTIONAL", - "LOGIN_ADMIN", - "LOGIN_REQUIRED" - ] + "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" }, - "url": { - "description": "URL to serve the endpoint at.", - "type": "string" - } - }, - "id": "ApiConfigHandler", - "description": "Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers.", - "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" @@ -1842,49 +2037,24 @@ "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": { - "description": "HTTP headers to use for all responses from these URLs.", - "type": "object", - "additionalProperties": { - "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" + "id": "StaticFilesHandler" }, - "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.", + "DiskUtilization": { + "description": "Target scaling by disk usage. Only applicable in the App Engine flexible environment.", "type": "object", "properties": { - "maxInstances": { - "description": "Maximum number of instances to create for this version.", + "targetReadBytesPerSecond": { + "description": "Target bytes read per second.", + "format": "int32", + "type": "integer" + }, + "targetReadOpsPerSecond": { + "description": "Target ops read per seconds.", "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": { "targetWriteOpsPerSecond": { "description": "Target ops written per second.", "format": "int32", @@ -1894,23 +2064,28 @@ "description": "Target bytes written per second.", "format": "int32", "type": "integer" - }, - "targetReadBytesPerSecond": { - "description": "Target bytes read per second.", + } + }, + "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" }, - "targetReadOpsPerSecond": { - "description": "Target ops read per seconds.", - "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": "DiskUtilization" + "id": "BasicScaling" }, "CpuUtilization": { - "description": "Target scaling by CPU usage.", - "type": "object", "properties": { "aggregationWindowLength": { "description": "Period of time over which CPU utilization is calculated.", @@ -1923,12 +2098,18 @@ "type": "number" } }, - "id": "CpuUtilization" + "id": "CpuUtilization", + "description": "Target scaling by CPU usage.", + "type": "object" }, "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" @@ -1940,10 +2121,6 @@ "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" @@ -1952,6 +2129,10 @@ "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": { + "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", @@ -1967,10 +2148,6 @@ "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" @@ -1988,27 +2165,27 @@ "id": "ManualScaling" }, "CreateVersionMetadataV1": { + "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1.CreateVersionRequest.", + "type": "object", "properties": { "cloudBuildId": { "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", "type": "string" } }, - "id": "CreateVersionMetadataV1", - "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1.CreateVersionRequest.", - "type": "object" + "id": "CreateVersionMetadataV1" }, "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" + }, + "flexibleEnvironmentAvailable": { + "description": "App Engine flexible environment is available in the given location.@OutputOnly", + "type": "boolean" } }, "id": "LocationMetadata" @@ -2017,6 +2194,10 @@ "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": { + "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" @@ -2024,26 +2205,22 @@ "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": { "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" } - }, - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" } }, "id": "ListOperationsResponse", @@ -2054,6 +2231,14 @@ "description": "A single firewall rule that is evaluated against incoming traffic and provides an action to take on matched requests.", "type": "object", "properties": { + "description": { + "description": "An optional string description of this rule. This field has a maximum length of 100 characters.", + "type": "string" + }, + "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", @@ -2072,14 +2257,6 @@ ], "description": "The action to take on matched requests.", "type": "string" - }, - "description": { - "description": "An optional string description of this rule. This field has a maximum length of 100 characters.", - "type": "string" - }, - "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" } }, "id": "FirewallRule" @@ -2088,15 +2265,6 @@ "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", @@ -2113,13 +2281,20 @@ "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" }, "ListAuthorizedCertificatesResponse": { - "description": "Response message for AuthorizedCertificates.ListAuthorizedCertificates.", - "type": "object", "properties": { "nextPageToken": { "description": "Continuation token for fetching the next page of results.", @@ -2133,81 +2308,75 @@ } } }, - "id": "ListAuthorizedCertificatesResponse" + "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", - "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1beta.CreateVersionRequest.", - "type": "object" + "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" + }, + "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" } }, "id": "FeatureSettings" }, - "OperationMetadataV1": { - "description": "Metadata for the given google.longrunning.Operation.", + "ErrorHandler": { + "description": "Custom static error page to be served when an error occurs.", "type": "object", "properties": { - "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" - }, - "createVersionMetadata": { - "$ref": "CreateVersionMetadataV1" - }, - "insertTime": { - "description": "Time that this operation was created.@OutputOnly", - "format": "google-datetime", + "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" }, - "warning": { - "description": "Durable messages that persist on every operation poll. @OutputOnly", - "type": "array", - "items": { - "type": "string" - } - }, - "user": { - "description": "User who requested this operation.@OutputOnly", + "mimeType": { + "description": "MIME type of file. Defaults to text/html.", "type": "string" }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "staticFile": { + "description": "Static file content to be served for this error.", "type": "string" } }, - "id": "OperationMetadataV1" + "id": "ErrorHandler" }, "SslSettings": { - "description": "SSL configuration for a DomainMapping resource.", - "type": "object", "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" @@ -2223,81 +2392,72 @@ "AUTOMATIC", "MANUAL" ] - }, - "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" } }, - "id": "SslSettings" + "id": "SslSettings", + "description": "SSL configuration for a DomainMapping resource.", + "type": "object" }, - "ErrorHandler": { + "OperationMetadataV1": { + "description": "Metadata for the given google.longrunning.Operation.", + "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.", + "ephemeralMessage": { + "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly", "type": "string" }, - "mimeType": { - "description": "MIME type of file. Defaults to text/html.", + "method": { + "description": "API method that initiated this operation. Example: google.appengine.v1.Versions.CreateVersion.@OutputOnly", "type": "string" }, - "staticFile": { - "description": "Static file content to be served for this error.", + "endTime": { + "description": "Time that this operation completed.@OutputOnly", + "format": "google-datetime", "type": "string" - } - }, - "id": "ErrorHandler", - "description": "Custom static error page to be served when an error occurs.", - "type": "object" - }, - "Network": { - "description": "Extra network settings. Only applicable in the App Engine flexible environment.", - "type": "object", - "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.", + }, + "createVersionMetadata": { + "$ref": "CreateVersionMetadataV1" + }, + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", "type": "array", "items": { "type": "string" } }, - "instanceTag": { - "description": "Tag to apply to the instance during creation. Only applicable in the App Engine flexible environment.", + "insertTime": { + "description": "Time that this operation was created.@OutputOnly", + "format": "google-datetime", "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.", + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@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.", + "user": { + "description": "User who requested this operation.@OutputOnly", "type": "string" - }, - "sessionAffinity": { - "description": "Enable session affinity.", - "type": "boolean" } }, - "id": "Network" + "id": "OperationMetadataV1" }, "Application": { - "description": "An Application resource contains the top-level configuration of an App Engine application.", - "type": "object", "properties": { + "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" + }, + "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", @@ -2313,15 +2473,15 @@ "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" }, - "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" @@ -2349,51 +2509,53 @@ "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" } }, - "id": "Application" + "id": "Application", + "description": "An Application resource contains the top-level configuration of an App Engine application.", + "type": "object" }, - "Instance": { + "Network": { "properties": { - "qps": { - "description": "Average queries per second (QPS) over the last minute.@OutputOnly", - "format": "float", - "type": "number" + "sessionAffinity": { + "description": "Enable session affinity.", + "type": "boolean" }, - "vmId": { - "description": "Virtual machine ID of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "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 instance during creation. Only applicable in the App Engine flexible environment.", "type": "string" }, - "vmZoneName": { - "description": "Zone where the virtual machine is located. Only applicable for instances in App Engine flexible environment.@OutputOnly", + "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" }, "name": { - "description": "Full path to the Instance resource in the API. Example: apps/myapp/services/default/versions/v1/instances/instance-1.@OutputOnly", + "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" + }, + "Instance": { + "description": "An Instance resource is the computing unit that App Engine uses to automatically scale an application.", + "type": "object", + "properties": { "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", + }, + "id": { + "description": "Relative name of the instance within the version. Example: instance-1.@OutputOnly", "type": "string" }, "memoryUsage": { @@ -2401,8 +2563,8 @@ "format": "int64", "type": "string" }, - "id": { - "description": "Relative name of the instance within the version. Example: instance-1.@OutputOnly", + "vmIp": { + "description": "The IP address of this instance. Only applicable for instances in App Engine flexible environment.@OutputOnly", "type": "string" }, "errors": { @@ -2410,22 +2572,22 @@ "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": { - "enumDescriptions": [ - "", - "", - "" - ], "enum": [ "UNSPECIFIED", "RESIDENT", "DYNAMIC" ], "description": "Availability of the instance.@OutputOnly", + "type": "string", + "enumDescriptions": [ + "", + "", + "" + ] + }, + "vmStatus": { + "description": "Status of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment.@OutputOnly", "type": "string" }, "startTime": { @@ -2449,11 +2611,26 @@ "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" + }, + "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" } }, - "id": "Instance", - "description": "An Instance resource is the computing unit that App Engine uses to automatically scale an application.", - "type": "object" + "id": "Instance" }, "LivenessCheck": { "description": "Health checking configuration for VM instances. Unhealthy instances are killed and replaced with new instances.", @@ -2510,6 +2687,8 @@ "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": { "cloudBuildTimeout": { "description": "The Cloud Build timeout used as part of any dependent builds performed by version creation. Defaults to 10 minutes.", @@ -2521,9 +2700,7 @@ "type": "string" } }, - "id": "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" + "id": "CloudBuildOptions" }, "Location": { "description": "A resource that represents Google Cloud Platform location.", @@ -2560,7 +2737,14 @@ "id": "Location" }, "NetworkUtilization": { + "description": "Target scaling by network usage. Only applicable in the App Engine flexible environment.", + "type": "object", "properties": { + "targetReceivedPacketsPerSecond": { + "description": "Target packets received per second.", + "format": "int32", + "type": "integer" + }, "targetSentBytesPerSecond": { "description": "Target bytes sent per second.", "format": "int32", @@ -2575,18 +2759,13 @@ "description": "Target bytes received per second.", "format": "int32", "type": "integer" - }, - "targetReceivedPacketsPerSecond": { - "description": "Target packets received per second.", - "format": "int32", - "type": "integer" } }, - "id": "NetworkUtilization", - "description": "Target scaling by network usage. Only applicable in the App Engine flexible environment.", - "type": "object" + "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": { "unhealthyThreshold": { "description": "Number of consecutive failed health checks required before removing traffic.", @@ -2601,13 +2780,13 @@ "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.", + "restartThreshold": { + "description": "Number of consecutive failed health checks required before an instance is restarted.", "format": "uint32", "type": "integer" }, - "restartThreshold": { - "description": "Number of consecutive failed health checks required before an instance is restarted.", + "healthyThreshold": { + "description": "Number of consecutive successful health checks required before receiving traffic.", "format": "uint32", "type": "integer" }, @@ -2622,17 +2801,12 @@ "type": "string" } }, - "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" + "id": "HealthCheck" }, "ReadinessCheck": { + "description": "Readiness checking configuration for VM instances. Unhealthy instances are removed from traffic rotation.", + "type": "object", "properties": { - "checkInterval": { - "description": "Interval between health checks.", - "format": "google-duration", - "type": "string" - }, "timeout": { "description": "Time before the check is considered failed.", "format": "google-duration", @@ -2660,10 +2834,24 @@ "host": { "description": "Host header to send when performing a HTTP Readiness check. Example: \"myapp.appspot.com\"", "type": "string" + }, + "checkInterval": { + "description": "Interval between health checks.", + "format": "google-duration", + "type": "string" } }, - "id": "ReadinessCheck", - "description": "Readiness checking configuration for VM instances. Unhealthy instances are removed from traffic rotation.", + "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": { @@ -2693,30 +2881,18 @@ }, "id": "StandardSchedulerSettings" }, - "DebugInstanceRequest": { - "description": "Request message for Instances.DebugInstance.", + "OperationMetadataV1Beta5": { + "description": "Metadata for the given google.longrunning.Operation.", "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).", + "user": { + "description": "User who requested this operation.@OutputOnly", "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", + }, + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", "type": "string" - } - }, - "id": "CreateVersionMetadataV1Alpha" - }, - "OperationMetadataV1Beta5": { - "properties": { + }, "method": { "description": "API method name that initiated this operation. Example: google.appengine.v1beta5.Version.CreateVersion.@OutputOnly", "type": "string" @@ -2730,88 +2906,25 @@ "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", + } + }, + "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": "OperationMetadataV1Beta5", - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object" + "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", "properties": { - "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", - "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" - }, - "createTime": { - "description": "Time that this version was created.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "inboundServices": { - "description": "Before an application can receive email or XMPP messages, the application must be configured to enable the service.", - "type": "array", - "items": { - "enum": [ - "INBOUND_SERVICE_UNSPECIFIED", - "INBOUND_SERVICE_MAIL", - "INBOUND_SERVICE_MAIL_BOUNCE", - "INBOUND_SERVICE_XMPP_ERROR", - "INBOUND_SERVICE_XMPP_MESSAGE", - "INBOUND_SERVICE_XMPP_SUBSCRIBE", - "INBOUND_SERVICE_XMPP_PRESENCE", - "INBOUND_SERVICE_CHANNEL_PRESENCE", - "INBOUND_SERVICE_WARMUP" - ], - "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." - ] - }, - "resources": { - "$ref": "Resources", - "description": "Machine resources for this version. Only applicable in the App Engine flexible environment." - }, "errorHandlers": { "description": "Custom static error pages. Limited to 10KB per page.Only returned in GET requests if view=FULL is set.", "type": "array", @@ -2859,12 +2972,12 @@ "type": "object" }, "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." + "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.", + "$ref": "LivenessCheck" }, "network": { - "description": "Extra network settings. Only applicable in the App Engine flexible environment.", - "$ref": "Network" + "$ref": "Network", + "description": "Extra network settings. Only applicable in the App Engine flexible environment." }, "betaSettings": { "additionalProperties": { @@ -2895,18 +3008,18 @@ "$ref": "AutomaticScaling", "description": "Automatic scaling is based on request rate, response latencies, and other application metrics." }, - "runtimeChannel": { - "description": "The channel of the runtime to use. Only available for some runtimes. Defaults to the default channel.", - "type": "string" - }, "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" }, + "runtimeChannel": { + "description": "The channel of the runtime to use. Only available for some runtimes. Defaults to the default channel.", + "type": "string" + }, "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.", - "$ref": "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." }, "threadsafe": { "description": "Whether multiple requests can be dispatched to this version at once.", @@ -2929,40 +3042,89 @@ "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." + "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" + }, + "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" }, - "versionUrl": { - "description": "Serving URL for this version. Example: \"https://myversion-dot-myservice-dot-myapp.appspot.com\"@OutputOnly", + "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. No instances will be created and the scaling settings are ignored until the state of the version changes to SERVING." + ] + }, + "deployment": { + "description": "Code and application artifacts that make up this version.Only returned in GET requests if view=FULL is set.", + "$ref": "Deployment" + }, + "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" + }, + "createTime": { + "description": "Time that this version was created.@OutputOnly", + "format": "google-datetime", "type": "string" + }, + "resources": { + "$ref": "Resources", + "description": "Machine resources for this version. Only applicable in the App Engine flexible environment." + }, + "inboundServices": { + "description": "Before an application can receive email or XMPP messages, the application must be configured to enable the service.", + "type": "array", + "items": { + "enum": [ + "INBOUND_SERVICE_UNSPECIFIED", + "INBOUND_SERVICE_MAIL", + "INBOUND_SERVICE_MAIL_BOUNCE", + "INBOUND_SERVICE_XMPP_ERROR", + "INBOUND_SERVICE_XMPP_MESSAGE", + "INBOUND_SERVICE_XMPP_SUBSCRIBE", + "INBOUND_SERVICE_XMPP_PRESENCE", + "INBOUND_SERVICE_CHANNEL_PRESENCE", + "INBOUND_SERVICE_WARMUP" + ], + "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." + ] } }, "id": "Version" }, "RepairApplicationRequest": { - "properties": {}, - "id": "RepairApplicationRequest", "description": "Request message for 'Applications.RepairApplication'.", - "type": "object" - }, - "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" + "properties": {}, + "id": "RepairApplicationRequest" }, "BuildInfo": { "properties": { @@ -2975,18 +3137,24 @@ "description": "Google Cloud Container Builder build information.", "type": "object" }, - "ScriptHandler": { - "description": "Executes a script to handle the request that matches the URL pattern.", + "CertificateRawData": { + "description": "An SSL certificate obtained from a certificate authority.", "type": "object", "properties": { - "scriptPath": { - "description": "Path to the script from the application root directory.", + "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": "ScriptHandler" + "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.", @@ -3001,30 +3169,43 @@ "type": "string" } }, - "id": "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" + "id": "FileInfo" }, - "AuthorizedDomain": { + "ScriptHandler": { + "description": "Executes a script to handle the request that matches the URL pattern.", + "type": "object", "properties": { - "id": { - "description": "Fully qualified domain name of the domain authorized for use. Example: example.com.", + "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", + "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" + "id": "AuthorizedDomain" }, "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", "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", @@ -3032,13 +3213,7 @@ "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", - "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" }, "allocations": { "additionalProperties": { @@ -3049,7 +3224,9 @@ "type": "object" } }, - "id": "TrafficSplit" + "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": { "description": "Metadata for the given google.longrunning.Operation.", @@ -3067,14 +3244,14 @@ "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" }, + "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" @@ -3094,9 +3271,25 @@ }, "id": "OperationMetadataV1Beta" }, - "ListIngressRulesResponse": { - "description": "Response message for Firewall.ListIngressRules.", + "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" + }, + "ListIngressRulesResponse": { "properties": { "nextPageToken": { "description": "Continuation token for fetching the next page of results.", @@ -3110,41 +3303,54 @@ } } }, - "id": "ListIngressRulesResponse" + "id": "ListIngressRulesResponse", + "description": "Response message for Firewall.ListIngressRules.", + "type": "object" }, - "ListServicesResponse": { - "description": "Response message for Services.ListServices.", + "Resources": { + "description": "Machine resources for a version.", "type": "object", "properties": { - "services": { - "description": "The services belonging to the requested application.", + "cpu": { + "description": "Number of CPU cores needed.", + "format": "double", + "type": "number" + }, + "memoryGb": { + "description": "Memory (GB) needed.", + "format": "double", + "type": "number" + }, + "volumes": { + "description": "User specified volumes.", "type": "array", "items": { - "$ref": "Service" + "$ref": "Volume" } }, - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" + "diskGb": { + "description": "Disk size (GB) needed.", + "format": "double", + "type": "number" } }, - "id": "ListServicesResponse" + "id": "Resources" }, "Deployment": { "description": "Code and application artifacts used to deploy a version to App Engine.", "type": "object", "properties": { "zip": { - "description": "The zip file for this deployment, if this is a zip deployment.", - "$ref": "ZipInfo" + "$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." + "description": "Google Cloud Container Builder build information. Only applicable for instances running in the App Engine flexible environment.", + "$ref": "BuildInfo" }, "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.", @@ -3154,47 +3360,30 @@ } }, "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" + "$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." } }, "id": "Deployment" }, - "Resources": { + "BatchUpdateIngressRulesResponse": { "properties": { - "volumes": { - "description": "User specified volumes.", + "ingressRules": { + "description": "The full list of ingress FirewallRules for this application.", "type": "array", "items": { - "$ref": "Volume" + "$ref": "FirewallRule" } - }, - "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", - "description": "Machine resources for a version.", + "id": "BatchUpdateIngressRulesResponse", + "description": "Response message for Firewall.UpdateAllIngressRules.", "type": "object" }, "Volume": { + "description": "Volumes mounted within the app container. Only applicable in the App Engine flexible environment.", + "type": "object", "properties": { - "volumeType": { - "description": "Underlying volume type, e.g. 'tmpfs'.", - "type": "string" - }, "sizeGb": { "description": "Volume size in gigabytes.", "format": "double", @@ -3203,30 +3392,26 @@ "name": { "description": "Unique name for the volume.", "type": "string" + }, + "volumeType": { + "description": "Underlying volume type, e.g. 'tmpfs'.", + "type": "string" } }, - "id": "Volume", - "description": "Volumes mounted within the app container. Only applicable in the App Engine flexible environment.", - "type": "object" - }, - "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" + "id": "Volume" }, "CustomMetric": { "description": "Allows autoscaling based on Stackdriver metrics.", "type": "object", "properties": { + "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" + }, + "filter": { + "description": "Allows filtering on the metric's fields.", + "type": "string" + }, "metricName": { "description": "The name of the metric.", "type": "string" @@ -3240,21 +3425,11 @@ "description": "The target value for the metric.", "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" - }, - "filter": { - "description": "Allows filtering on the metric's fields.", - "type": "string" } }, "id": "CustomMetric" }, "ManagedCertificate": { - "description": "A certificate managed by App Engine.", - "type": "object", "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", @@ -3262,8 +3437,6 @@ "type": "string" }, "status": { - "description": "Status of certificate management. Refers to the most recent certificate acquisition or renewal attempt.@OutputOnly", - "type": "string", "enumDescriptions": [ "", "Certificate was successfully obtained and inserted into the serving system.", @@ -3281,10 +3454,14 @@ "FAILED_PERMANENT", "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" + "id": "ManagedCertificate", + "description": "A certificate managed by App Engine.", + "type": "object" }, "ListInstancesResponse": { "description": "Response message for Instances.ListInstances.", @@ -3308,32 +3485,45 @@ "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" } - }, - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" } }, "id": "ListDomainMappingsResponse" }, "OperationMetadataV1Alpha": { - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", "properties": { - "user": { - "description": "User who requested this operation.@OutputOnly", + "createVersionMetadata": { + "$ref": "CreateVersionMetadataV1Alpha" + }, + "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" @@ -3346,31 +3536,16 @@ "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" } }, - "id": "OperationMetadataV1Alpha" + "id": "OperationMetadataV1Alpha", + "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.", + "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" @@ -3378,11 +3553,13 @@ "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", - "description": "Rules to match an HTTP request and dispatch that request to a service.", - "type": "object" + "id": "UrlDispatchRule" }, "ListVersionsResponse": { "description": "Response message for Versions.ListVersions.", @@ -3420,35 +3597,8 @@ }, "id": "ListAuthorizedDomainsResponse" }, - "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" - }, "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" @@ -3459,194 +3609,36 @@ "items": { "$ref": "ResourceRecord" } - } - }, - "id": "DomainMapping" - }, - "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'.", - "type": "string" - } - }, - "id": "ZipInfo" - }, - "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": { - "description": "Target scaling by request utilization.", - "$ref": "RequestUtilization" - }, - "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 for this version.", - "format": "int32", - "type": "integer" - }, - "minTotalInstances": { - "description": "Minimum number of running instances that should be maintained for this version.", - "format": "int32", - "type": "integer" - }, - "networkUtilization": { - "description": "Target scaling by network usage.", - "$ref": "NetworkUtilization" - }, - "customMetrics": { - "description": "Target scaling by user-provided metrics.", - "type": "array", - "items": { - "$ref": "CustomMetric" - } - }, - "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": { - "$ref": "CpuUtilization", - "description": "Target scaling by CPU usage." - } - }, - "id": "AutomaticScaling" - }, - "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": { - "displayName": { - "description": "The user-specified display name of the certificate. This is not guaranteed to be unique. Example: My Certificate.", - "type": "string" - }, - "certificateRawData": { - "description": "The SSL certificate serving the AuthorizedCertificate resource. This must be obtained independently from a certificate authority.", - "$ref": "CertificateRawData" - }, - "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" - }, - "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", - "format": "google-datetime", - "type": "string" }, "name": { - "description": "Full path to the AuthorizedCertificate resource in the API. Example: apps/myapp/authorizedCertificates/12345.@OutputOnly", + "description": "Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@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" + "sslSettings": { + "$ref": "SslSettings", + "description": "SSL configuration for this domain. If unconfigured, this domain will not serve with SSL." } }, - "id": "AuthorizedCertificate" + "id": "DomainMapping", + "description": "A domain serving an App Engine application.", + "type": "object" }, - "ResourceRecord": { - "description": "A DNS resource record.", + "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": { - "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" - ] - }, - "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" + "properties": {}, + "id": "Empty" }, - "Library": { - "description": "Third-party Python runtime library that is required by the application.", + "ApiEndpointHandler": { + "description": "Uses Google Cloud Endpoints to handle requests.", "type": "object", "properties": { - "version": { - "description": "Version of the library to select, or \"latest\".", - "type": "string" - }, - "name": { - "description": "Name of the library. Example: \"django\".", + "scriptPath": { + "description": "Path to the script from the application root directory.", "type": "string" } }, - "id": "Library" + "id": "ApiEndpointHandler" } }, "icons": { @@ -3659,14 +3651,14 @@ "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" - }, - "https://www.googleapis.com/auth/appengine.admin": { - "description": "View and manage your applications deployed on Google App Engine" } } } @@ -3674,5 +3666,13 @@ "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/" + "rootUrl": "https://appengine.googleapis.com/", + "basePath": "", + "ownerDomain": "google.com", + "name": "appengine", + "batchPath": "batch", + "id": "appengine:v1beta", + "documentationLink": "https://cloud.google.com/appengine/docs/admin-api/", + "revision": "20180502", + "title": "App Engine Admin API" } diff --git a/DiscoveryJson/appengine_v1beta4.json b/DiscoveryJson/appengine_v1beta4.json index 60ecf5b649..6e1a4b64f9 100644 --- a/DiscoveryJson/appengine_v1beta4.json +++ b/DiscoveryJson/appengine_v1beta4.json @@ -1,31 +1,30 @@ { - "batchPath": "batch", - "revision": "20180502", - "documentationLink": "https://cloud.google.com/appengine/docs/admin-api/", "id": "appengine:v1beta4", + "documentationLink": "https://cloud.google.com/appengine/docs/admin-api/", + "revision": "20180502", "title": "App Engine Admin API", - "discoveryVersion": "v1", "ownerName": "Google", + "discoveryVersion": "v1", "resources": { "apps": { "methods": { "create": { - "flatPath": "v1beta4/apps", "path": "v1beta4/apps", "id": "appengine.apps.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/).", "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/).", "response": { "$ref": "Operation" }, "parameterOrder": [], "httpMethod": "POST", + "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "parameters": {} + "flatPath": "v1beta4/apps" }, "get": { "description": "Gets information about an application.", @@ -38,15 +37,15 @@ "httpMethod": "GET", "parameters": { "ensureResourcesExist": { + "location": "query", "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" + "type": "boolean" }, "appsId": { + "location": "path", "description": "Part of `name`. Name of the application to get. Example: apps/myapp.", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, "scopes": [ @@ -57,6 +56,10 @@ "id": "appengine.apps.get" }, "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)", + "request": { + "$ref": "Application" + }, "httpMethod": "PATCH", "parameterOrder": [ "appsId" @@ -65,16 +68,16 @@ "$ref": "Operation" }, "parameters": { - "appsId": { - "description": "Part of `name`. Name of the Application resource to update. Example: apps/myapp.", - "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", + "location": "query" + }, + "appsId": { + "location": "path", + "description": "Part of `name`. Name of the Application resource to update. Example: apps/myapp.", + "required": true, "type": "string" } }, @@ -83,11 +86,7 @@ ], "flatPath": "v1beta4/apps/{appsId}", "id": "appengine.apps.patch", - "path": "v1beta4/apps/{appsId}", - "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)", - "request": { - "$ref": "Application" - } + "path": "v1beta4/apps/{appsId}" } }, "resources": { @@ -107,6 +106,11 @@ "https://www.googleapis.com/auth/cloud-platform.read-only" ], "parameters": { + "filter": { + "location": "query", + "description": "The standard list filter.", + "type": "string" + }, "appsId": { "location": "path", "description": "Part of `name`. The resource that owns the locations collection, if applicable.", @@ -114,20 +118,15 @@ "type": "string" }, "pageToken": { - "location": "query", "description": "The standard list page token.", - "type": "string" + "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": "v1beta4/apps/{appsId}/locations", @@ -136,7 +135,7 @@ "description": "Lists information about the supported locations for this service." }, "get": { - "httpMethod": "GET", + "description": "Gets information about a location.", "response": { "$ref": "Location" }, @@ -144,12 +143,18 @@ "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" + "type": "string", + "location": "path" }, "locationsId": { "location": "path", @@ -158,22 +163,15 @@ "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/{locationsId}", - "id": "appengine.apps.locations.get", "path": "v1beta4/apps/{appsId}/locations/{locationsId}", - "description": "Gets information about a location." + "id": "appengine.apps.locations.get" } } }, "modules": { "methods": { "delete": { - "description": "Deletes the specified module and all enclosed versions.", "httpMethod": "DELETE", "response": { "$ref": "Operation" @@ -184,10 +182,10 @@ ], "parameters": { "appsId": { + "location": "path", "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default.", "required": true, - "type": "string", - "location": "path" + "type": "string" }, "modulesId": { "location": "path", @@ -201,11 +199,13 @@ ], "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}", "id": "appengine.apps.modules.delete", - "path": "v1beta4/apps/{appsId}/modules/{modulesId}" + "path": "v1beta4/apps/{appsId}/modules/{modulesId}", + "description": "Deletes the specified module and all enclosed versions." }, "get": { + "path": "v1beta4/apps/{appsId}/modules/{modulesId}", + "id": "appengine.apps.modules.get", "description": "Gets the current configuration of the specified module.", - "httpMethod": "GET", "response": { "$ref": "Module" }, @@ -213,33 +213,29 @@ "appsId", "modulesId" ], + "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": { - "modulesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default.", "required": true, - "type": "string" + "type": "string", + "location": "path" }, - "appsId": { + "modulesId": { "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default.", + "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": "v1beta4/apps/{appsId}/modules/{modulesId}", - "id": "appengine.apps.modules.get", - "path": "v1beta4/apps/{appsId}/modules/{modulesId}" + "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}" }, "list": { - "flatPath": "v1beta4/apps/{appsId}/modules", - "path": "v1beta4/apps/{appsId}/modules", - "id": "appengine.apps.modules.list", "description": "Lists all the modules in the application.", "response": { "$ref": "ListModulesResponse" @@ -256,9 +252,9 @@ "type": "string" }, "pageToken": { - "location": "query", "description": "Continuation token for fetching the next page of results.", - "type": "string" + "type": "string", + "location": "query" }, "pageSize": { "location": "query", @@ -271,9 +267,18 @@ "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": { + "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" }, @@ -293,15 +298,15 @@ "location": "path" }, "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).", - "type": "boolean" + "type": "boolean", + "location": "query" }, "modulesId": { + "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "required": true, - "type": "string", - "location": "path" + "type": "string" }, "mask": { "location": "query", @@ -310,87 +315,109 @@ "type": "string" } }, - "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." + "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}" } }, "resources": { "versions": { "methods": { - "delete": { - "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}", - "id": "appengine.apps.modules.versions.delete", - "description": "Deletes an existing version.", + "create": { + "request": { + "$ref": "Version" + }, + "description": "Deploys code and resource files to a new version.", "response": { "$ref": "Operation" }, "parameterOrder": [ "appsId", - "modulesId", - "versionsId" + "modulesId" ], - "httpMethod": "DELETE", + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { "appsId": { - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1.", + "location": "path", + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/modules/default.", "required": true, - "type": "string", - "location": "path" + "type": "string" }, "modulesId": { "description": "Part of `name`. See documentation of `appsId`.", "required": true, "type": "string", "location": "path" + } + }, + "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions", + "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions", + "id": "appengine.apps.modules.versions.create" + }, + "delete": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "appsId", + "modulesId", + "versionsId" + ], + "httpMethod": "DELETE", + "parameters": { + "appsId": { + "location": "path", + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1.", + "required": true, + "type": "string" }, - "versionsId": { + "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" } }, - "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}" + "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", + "description": "Deletes an existing version." }, "get": { - "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}", - "id": "appengine.apps.modules.versions.get", "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}", + "id": "appengine.apps.modules.versions.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.", - "httpMethod": "GET", + "response": { + "$ref": "Version" + }, "parameterOrder": [ "appsId", "modulesId", "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" - ], + "httpMethod": "GET", "parameters": { "appsId": { - "location": "path", "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1.", "required": true, - "type": "string" + "type": "string", + "location": "path" }, "modulesId": { + "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "required": true, - "type": "string", - "location": "path" + "type": "string" }, "versionsId": { "location": "path", @@ -399,26 +426,31 @@ "type": "string" }, "view": { + "description": "Controls the set of fields returned in the Get response.", + "type": "string", + "location": "query", "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": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}" }, "list": { - "description": "Lists the versions of a module.", - "httpMethod": "GET", + "response": { + "$ref": "ListVersionsResponse" + }, "parameterOrder": [ "appsId", "modulesId" ], - "response": { - "$ref": "ListVersionsResponse" - }, + "httpMethod": "GET", "parameters": { "appsId": { "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default.", @@ -427,15 +459,15 @@ "location": "path" }, "pageToken": { - "location": "query", "description": "Continuation token for fetching the next page of results.", - "type": "string" + "type": "string", + "location": "query" }, "pageSize": { + "location": "query", "description": "Maximum results to return per page.", "format": "int32", - "type": "integer", - "location": "query" + "type": "integer" }, "modulesId": { "location": "path", @@ -444,13 +476,13 @@ "type": "string" }, "view": { + "description": "Controls the set of fields returned in the List response.", "type": "string", "location": "query", "enum": [ "BASIC", "FULL" - ], - "description": "Controls the set of fields returned in the List response." + ] } }, "scopes": [ @@ -459,17 +491,11 @@ "https://www.googleapis.com/auth/cloud-platform.read-only" ], "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions", + "path": "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": { - "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" - }, "response": { "$ref": "Operation" }, @@ -480,17 +506,11 @@ ], "httpMethod": "PATCH", "parameters": { - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/modules/default/versions/1.", - "required": true, - "type": "string" - }, "modulesId": { + "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "required": true, - "type": "string", - "location": "path" + "type": "string" }, "versionsId": { "description": "Part of `name`. See documentation of `appsId`.", @@ -499,46 +519,25 @@ "location": "path" }, "mask": { - "type": "string", "location": "query", "description": "Standard field mask for the set of fields to be updated.", - "format": "google-fieldmask" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "create": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "modulesId" - ], - "httpMethod": "POST", - "parameters": { - "appsId": { - "location": "path", - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/modules/default.", - "required": true, + "format": "google-fieldmask", "type": "string" }, - "modulesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", + "appsId": { + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/modules/default/versions/1.", "required": true, - "type": "string" + "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", - "description": "Deploys code and resource files to a new version.", + "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" } @@ -547,9 +546,9 @@ "resources": { "instances": { "methods": { - "get": { + "debug": { "response": { - "$ref": "Instance" + "$ref": "Operation" }, "parameterOrder": [ "appsId", @@ -557,24 +556,19 @@ "versionsId", "instancesId" ], - "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" - ], + "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" + "type": "string", + "location": "path" }, "instancesId": { - "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "required": true, - "type": "string" + "type": "string", + "location": "path" }, "modulesId": { "description": "Part of `name`. See documentation of `appsId`.", @@ -589,65 +583,66 @@ "type": "string" } }, - "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.get", - "description": "Gets instance information." + "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", + "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" + } }, - "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).", + "delete": { "response": { - "$ref": "ListInstancesResponse" + "$ref": "Operation" }, "parameterOrder": [ "appsId", "modulesId", - "versionsId" + "versionsId", + "instancesId" ], - "httpMethod": "GET", + "httpMethod": "DELETE", "parameters": { "appsId": { "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1.", + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1/instances/instance-1.", "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" + "instancesId": { + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "type": "string", + "location": "path" }, "modulesId": { - "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "required": true, - "type": "string" + "type": "string", + "location": "path" }, "versionsId": { - "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "required": true, - "type": "string" + "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" + "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances", - "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances", - "id": "appengine.apps.modules.versions.instances.list" + "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", + "description": "Stops a running instance." }, - "debug": { + "get": { + "description": "Gets instance information.", "response": { - "$ref": "Operation" + "$ref": "Instance" }, "parameterOrder": [ "appsId", @@ -655,16 +650,18 @@ "versionsId", "instancesId" ], - "httpMethod": "POST", + "httpMethod": "GET", "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "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/instances/instance-1.", "required": true, - "type": "string", - "location": "path" + "type": "string" }, "instancesId": { "description": "Part of `name`. See documentation of `appsId`.", @@ -673,10 +670,10 @@ "location": "path" }, "modulesId": { - "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "required": true, - "type": "string" + "type": "string", + "location": "path" }, "versionsId": { "location": "path", @@ -685,43 +682,30 @@ "type": "string" } }, - "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", - "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": { + "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", - "description": "Stops a running instance.", - "response": { - "$ref": "Operation" - }, + "id": "appengine.apps.modules.versions.instances.get" + }, + "list": { + "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", + "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).", + "httpMethod": "GET", "parameterOrder": [ "appsId", "modulesId", - "versionsId", - "instancesId" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "versionsId" ], + "response": { + "$ref": "ListInstancesResponse" + }, "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" + "pageSize": { + "location": "query", + "description": "Maximum results to return per page.", + "format": "int32", + "type": "integer" }, "modulesId": { "description": "Part of `name`. See documentation of `appsId`.", @@ -730,13 +714,28 @@ "location": "path" }, "versionsId": { - "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "required": true, - "type": "string" + "type": "string", + "location": "path" + }, + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/modules/default/versions/v1.", + "required": true, + "type": "string", + "location": "path" + }, + "pageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string", + "location": "query" } }, - "flatPath": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances/{instancesId}" + "scopes": [ + "https://www.googleapis.com/auth/appengine.admin", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] } } } @@ -747,9 +746,6 @@ "operations": { "methods": { "list": { - "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.", "response": { "$ref": "ListOperationsResponse" }, @@ -770,15 +766,15 @@ "location": "path" }, "pageToken": { + "description": "The standard list page token.", "type": "string", - "location": "query", - "description": "The standard list page token." + "location": "query" }, "pageSize": { + "location": "query", "description": "The standard list page size.", "format": "int32", - "type": "integer", - "location": "query" + "type": "integer" } }, "scopes": [ @@ -786,29 +782,27 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "flatPath": "v1beta4/apps/{appsId}/operations" + "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": { "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.", "httpMethod": "GET", - "parameterOrder": [ - "appsId", - "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" + "parameterOrder": [ + "appsId", + "operationsId" ], "parameters": { "operationsId": { - "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "required": true, - "type": "string" + "type": "string", + "location": "path" }, "appsId": { "description": "Part of `name`. The name of the operation resource.", @@ -817,6 +811,11 @@ "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": "v1beta4/apps/{appsId}/operations/{operationsId}", "id": "appengine.apps.operations.get", "path": "v1beta4/apps/{appsId}/operations/{operationsId}" @@ -827,14 +826,25 @@ } }, "parameters": { - "bearer_token": { - "description": "OAuth bearer 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" }, - "oauth_token": { + "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": { @@ -848,23 +858,17 @@ "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" + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string", + "location": "query" }, "$.xgafv": { - "type": "string", "enumDescriptions": [ "v1 error format", "v2 error format" @@ -874,7 +878,13 @@ "1", "2" ], - "description": "V1 error format." + "description": "V1 error format.", + "type": "string" + }, + "callback": { + "location": "query", + "description": "JSONP", + "type": "string" }, "alt": { "type": "string", @@ -892,265 +902,58 @@ "proto" ] }, - "key": { + "access_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.", + "description": "OAuth access token.", "type": "string" }, - "access_token": { - "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": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" } }, "schemas": { - "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" - }, - "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" - }, - "TrafficSplit": { - "properties": { - "shardBy": { - "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", - "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." - ] - }, - "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" - } - }, - "id": "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" - }, - "OperationMetadataV1Beta": { - "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.v1beta.Versions.CreateVersion.@OutputOnly", - "type": "string" - }, - "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" - } - }, - "id": "OperationMetadataV1Beta" - }, - "ListModulesResponse": { - "description": "Response message for Modules.ListModules.", + "ListInstancesResponse": { + "description": "Response message for Instances.ListInstances.", "type": "object", "properties": { "nextPageToken": { "description": "Continuation token for fetching the next page of results.", "type": "string" }, - "modules": { - "description": "The modules belonging to the requested application.", - "type": "array", - "items": { - "$ref": "Module" - } - } - }, - "id": "ListModulesResponse" - }, - "Resources": { - "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", - "description": "Machine resources for a version.", - "type": "object" - }, - "Deployment": { - "description": "Code and application artifacts used to deploy a version to App Engine.", - "type": "object", - "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." - }, - "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", - "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" - }, - "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" + "id": "ListInstancesResponse" }, "OperationMetadataV1Alpha": { - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", "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" - }, - "description": "Durable messages that persist on every operation poll. @OutputOnly" + } }, - "user": { - "description": "User who requested this operation.@OutputOnly", + "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" @@ -1168,12 +971,18 @@ "$ref": "CreateVersionMetadataV1Alpha" } }, - "id": "OperationMetadataV1Alpha" + "id": "OperationMetadataV1Alpha", + "description": "Metadata for the given google.longrunning.Operation.", + "type": "object" }, "UrlDispatchRule": { "description": "Rules to match an HTTP request and dispatch that request to a module.", "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" @@ -1181,33 +990,10 @@ "module": { "description": "Resource ID of a module in this application that should serve the matched request. The module 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" }, - "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" - }, "ListVersionsResponse": { "description": "Response message for Versions.ListVersions.", "type": "object", @@ -1226,78 +1012,63 @@ }, "id": "ListVersionsResponse" }, - "ApiEndpointHandler": { - "description": "Uses Google Cloud Endpoints to handle requests.", + "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": { - "scriptPath": { - "type": "string", - "description": "Path to the script from the application root directory." + "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." } }, - "id": "ApiEndpointHandler" + "id": "Module" }, - "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.", + "ApiEndpointHandler": { + "description": "Uses Google Cloud Endpoints to handle requests.", "type": "object", "properties": { - "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" - }, - "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.", + "scriptPath": { + "description": "Path to the script from the application root directory.", "type": "string" } }, - "id": "StaticDirectoryHandler" + "id": "ApiEndpointHandler" }, "AutomaticScaling": { + "description": "Automatic scaling is based on request rate, response latencies, and other application metrics.", "type": "object", "properties": { "minPendingLatency": { - "type": "string", "description": "Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it.", - "format": "google-duration" + "format": "google-duration", + "type": "string" }, "requestUtilization": { "$ref": "RequestUtilization", "description": "Target scaling by request utilization." }, "maxIdleInstances": { - "type": "integer", "description": "Maximum number of idle instances that should be maintained for this version.", - "format": "int32" + "format": "int32", + "type": "integer" }, "minIdleInstances": { - "type": "integer", "description": "Minimum number of idle instances that should be maintained for this version. Only applicable for the default version of a module.", - "format": "int32" + "format": "int32", + "type": "integer" }, "maxTotalInstances": { - "type": "integer", "description": "Maximum number of instances that should be started to handle requests.", - "format": "int32" + "format": "int32", + "type": "integer" }, "minTotalInstances": { "description": "Minimum number of instances that should be maintained for this version.", @@ -1305,13 +1076,13 @@ "type": "integer" }, "networkUtilization": { - "$ref": "NetworkUtilization", - "description": "Target scaling by network usage." + "description": "Target scaling by network usage.", + "$ref": "NetworkUtilization" }, "maxConcurrentRequests": { - "type": "integer", "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" + "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.", @@ -1328,20 +1099,54 @@ "$ref": "CpuUtilization" }, "diskUtilization": { - "$ref": "DiskUtilization", - "description": "Target scaling by disk usage." + "description": "Target scaling by disk usage.", + "$ref": "DiskUtilization" + } + }, + "id": "AutomaticScaling" + }, + "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" + }, + "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" + }, + "httpHeaders": { + "additionalProperties": { + "type": "string" + }, + "description": "HTTP headers to use for all responses from these URLs.", + "type": "object" + }, + "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": "AutomaticScaling", - "description": "Automatic scaling is based on request rate, response latencies, and other application metrics." + "id": "StaticDirectoryHandler" }, "Library": { "description": "Third-party Python runtime library that is required by the application.", "type": "object", "properties": { "version": { - "type": "string", - "description": "Version of the library to select, or \"latest\"." + "description": "Version of the library to select, or \"latest\".", + "type": "string" }, "name": { "description": "Name of the library. Example: \"django\".", @@ -1354,82 +1159,88 @@ "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" } + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" } }, "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" + "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" }, "RequestUtilization": { - "id": "RequestUtilization", "description": "Target scaling by request utilization. Only applicable for VM runtimes.", "type": "object", "properties": { "targetRequestCountPerSec": { - "type": "integer", "description": "Target requests per second.", - "format": "int32" + "format": "int32", + "type": "integer" }, "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. 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).", + "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": { - "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\"", + "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" }, - "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" + "apiEndpoint": { + "description": "Uses API Endpoints to handle requests.", + "$ref": "ApiEndpointHandler" }, - "rolloutStrategy": { - "description": "Endpoints rollout strategy. If FIXED, config_id must be specified. If MANAGED, config_id must be omitted.", - "type": "string", + "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" + }, + "staticFiles": { + "$ref": "StaticFilesHandler", + "description": "Returns the contents of a file, such as an image, as the response." + }, + "redirectHttpResponseCode": { "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." + "Not specified. 302 is assumed.", + "301 Moved Permanently code.", + "302 Moved Temporarily code.", + "303 See Other code.", + "307 Temporary Redirect code." ], - "enum": [ - "UNSPECIFIED_ROLLOUT_STRATEGY", - "FIXED", - "MANAGED" - ] - } - }, - "id": "EndpointsApiService" - }, - "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": { "enum": [ "REDIRECT_HTTP_RESPONSE_CODE_UNSPECIFIED", "REDIRECT_HTTP_RESPONSE_CODE_301", @@ -1438,17 +1249,9 @@ "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." - ] + "type": "string" }, "securityLevel": { - "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.", @@ -1463,7 +1266,8 @@ "SECURE_OPTIONAL", "SECURE_ALWAYS" ], - "description": "Security (HTTPS) enforcement for this URL." + "description": "Security (HTTPS) enforcement for this URL.", + "type": "string" }, "authFailAction": { "enumDescriptions": [ @@ -1480,114 +1284,55 @@ "type": "string" }, "script": { - "$ref": "ScriptHandler", - "description": "Executes a script to handle the request that matches this URL pattern." + "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 auth_fail_action is taken." - ], - "enum": [ - "LOGIN_UNSPECIFIED", - "LOGIN_OPTIONAL", - "LOGIN_ADMIN", - "LOGIN_REQUIRED" - ] - }, - "apiEndpoint": { - "$ref": "ApiEndpointHandler", - "description": "Uses API Endpoints to handle requests." - }, - "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" - }, - "staticFiles": { - "$ref": "StaticFilesHandler", - "description": "Returns the contents of a file, such as an image, as the response." } }, "id": "UrlMap" }, - "ApiConfigHandler": { - "description": "Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers.", + "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).", "type": "object", "properties": { - "url": { - "description": "URL to serve the endpoint at.", + "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" }, - "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": { - "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", - "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." - ] - }, - "script": { - "type": "string", - "description": "Path to the script from the application root directory." + "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" }, - "login": { + "rolloutStrategy": { "enum": [ - "LOGIN_UNSPECIFIED", - "LOGIN_OPTIONAL", - "LOGIN_ADMIN", - "LOGIN_REQUIRED" + "UNSPECIFIED_ROLLOUT_STRATEGY", + "FIXED", + "MANAGED" ], - "description": "Level of login required to access this resource. Defaults to optional.", + "description": "Endpoints rollout strategy. If FIXED, config_id must be specified. If MANAGED, config_id must be omitted.", "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." + "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." ] } }, - "id": "ApiConfigHandler" + "id": "EndpointsApiService" }, "Operation": { - "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": { - "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 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" @@ -1607,14 +1352,74 @@ }, "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": { - "type": "boolean", - "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." } }, "id": "Operation", - "description": "This resource represents a long-running operation that is the result of a network API call." + "description": "This resource represents a long-running operation that is the result of a network API call.", + "type": "object" + }, + "ApiConfigHandler": { + "properties": { + "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" + }, + "url": { + "description": "URL to serve the endpoint at.", + "type": "string" + }, + "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": { + "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", + "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." + ] + } + }, + "id": "ApiConfigHandler", + "description": "Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers.", + "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.", @@ -1626,8 +1431,8 @@ "type": "string" }, "applicationReadable": { - "type": "boolean", - "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." + "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": { @@ -1645,8 +1450,8 @@ "type": "string" }, "mimeType": { - "type": "string", - "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." + "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.", @@ -1655,10 +1460,32 @@ }, "id": "StaticFilesHandler" }, + "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 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" + }, "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", @@ -1670,64 +1497,34 @@ "type": "integer" }, "targetReadOpsPerSec": { - "type": "integer", "description": "Target ops read per second.", - "format": "int32" - }, - "targetReadBytesPerSec": { - "description": "Target bytes read per second.", "format": "int32", "type": "integer" } }, "id": "DiskUtilization" }, - "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": { - "maxInstances": { - "description": "Maximum number of instances to create for this version.", - "format": "int32", - "type": "integer" - }, - "idleTimeout": { - "type": "string", - "description": "Duration of time after the last request that an instance must wait before the instance is shut down.", - "format": "google-duration" - } - }, - "id": "BasicScaling" - }, "CpuUtilization": { - "id": "CpuUtilization", - "description": "Target scaling by CPU usage.", - "type": "object", "properties": { "aggregationWindowLength": { - "type": "string", "description": "Period of time over which CPU utilization is calculated.", - "format": "google-duration" + "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", + "description": "Target scaling by CPU usage.", + "type": "object" }, "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" @@ -1735,6 +1532,14 @@ "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": "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" } }, "id": "IdentityAwareProxy" @@ -1743,15 +1548,6 @@ "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", @@ -1762,11 +1558,22 @@ }, "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" }, "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", "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.", @@ -1774,38 +1581,35 @@ "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" + "id": "ManualScaling" + }, + "CreateVersionMetadataV1": { + "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1.CreateVersionRequest.", + "type": "object", + "properties": { + "cloudBuildId": { + "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", + "type": "string" + } + }, + "id": "CreateVersionMetadataV1" }, "LocationMetadata": { - "id": "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" - } - } - }, - "CreateVersionMetadataV1": { - "type": "object", - "properties": { - "cloudBuildId": { - "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", - "type": "string" + }, + "standardEnvironmentAvailable": { + "description": "App Engine standard environment is available in the given location.@OutputOnly", + "type": "boolean" } }, - "id": "CreateVersionMetadataV1", - "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1.CreateVersionRequest." + "id": "LocationMetadata" }, "ListOperationsResponse": { - "type": "object", "properties": { "nextPageToken": { "description": "The standard List next-page token.", @@ -1820,24 +1624,11 @@ } }, "id": "ListOperationsResponse", - "description": "The response message for Operations.ListOperations." + "description": "The response message for Operations.ListOperations.", + "type": "object" }, "OperationMetadata": { - "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", @@ -1850,10 +1641,24 @@ "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" + }, + "operationType": { + "description": "Type of this operation. Deprecated, use method field instead. Example: \"create_version\".@OutputOnly", + "type": "string" } }, "id": "OperationMetadata", - "description": "Metadata for the given google.longrunning.Operation." + "description": "Metadata for the given google.longrunning.Operation.", + "type": "object" }, "CreateVersionMetadataV1Beta": { "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1beta.CreateVersionRequest.", @@ -1866,41 +1671,25 @@ }, "id": "CreateVersionMetadataV1Beta" }, - "ErrorHandler": { - "description": "Custom static error page to be served when an error occurs.", + "OperationMetadataV1": { + "description": "Metadata for the given google.longrunning.Operation.", "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.", + "createVersionMetadata": { + "$ref": "CreateVersionMetadataV1" + }, + "insertTime": { + "description": "Time that this operation was created.@OutputOnly", + "format": "google-datetime", "type": "string" }, - "mimeType": { - "type": "string", - "description": "MIME type of file. Defaults to text/html." + "warning": { + "description": "Durable messages that persist on every operation poll. @OutputOnly", + "type": "array", + "items": { + "type": "string" + } }, - "staticFile": { - "description": "Static file content to be served for this error.", - "type": "string" - } - }, - "id": "ErrorHandler" - }, - "OperationMetadataV1": { - "properties": { "user": { "description": "User who requested this operation.@OutputOnly", "type": "string" @@ -1921,37 +1710,51 @@ "description": "Time that this operation completed.@OutputOnly", "format": "google-datetime", "type": "string" + } + }, + "id": "OperationMetadataV1" + }, + "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" }, - "createVersionMetadata": { - "$ref": "CreateVersionMetadataV1" - }, - "warning": { - "description": "Durable messages that persist on every operation poll. @OutputOnly", - "type": "array", - "items": { - "type": "string" - } + "mimeType": { + "description": "MIME type of file. Defaults to text/html.", + "type": "string" }, - "insertTime": { - "description": "Time that this operation was created.@OutputOnly", - "format": "google-datetime", + "staticFile": { + "description": "Static file content to be served for this error.", "type": "string" } }, - "id": "OperationMetadataV1", - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object" + "id": "ErrorHandler" }, "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" - }, - "description": "List of ports, or port pairs, to forward from the virtual machine to the application container." + } }, "instanceTag": { "description": "Tag to apply to the VM instance during creation.", @@ -1962,33 +1765,12 @@ "type": "string" } }, - "id": "Network" + "id": "Network", + "description": "Extra network settings. Only applicable for VM runtimes.", + "type": "object" }, "Application": { - "description": "An Application resource contains the top-level configuration of an App Engine application.", - "type": "object", "properties": { - "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" - }, - "defaultBucket": { - "type": "string", - "description": "Google Cloud Storage bucket that can be used by this application to store content.@OutputOnly" - }, "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", @@ -2004,17 +1786,42 @@ "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" }, - "iap": { - "$ref": "IdentityAwareProxy" + "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" + }, + "defaultBucket": { + "description": "Google Cloud Storage bucket that can be used by this application to store content.@OutputOnly", + "type": "string" } }, - "id": "Application" + "id": "Application", + "description": "An Application resource contains the top-level configuration of an App Engine application.", + "type": "object" }, "Instance": { + "description": "An Instance resource is the computing unit that App Engine uses to automatically scale an application.", + "type": "object", "properties": { "requests": { "description": "Number of requests since this instance was started.@OutputOnly", @@ -2043,6 +1850,10 @@ "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/modules/default/versions/v1/instances/instance-1.@OutputOnly", "type": "string" @@ -2051,10 +1862,6 @@ "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" - }, "averageLatency": { "description": "Average latency (ms) over the last minute.@OutputOnly", "format": "int32", @@ -2078,60 +1885,62 @@ "format": "uint32", "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": { - "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" + "type": "string", + "enumDescriptions": [ + "", + "", + "" + ] } }, - "id": "Instance", - "description": "An Instance resource is the computing unit that App Engine uses to automatically scale an application.", - "type": "object" + "id": "Instance" }, "NetworkUtilization": { + "description": "Target scaling by network usage. Only applicable for VM runtimes.", + "type": "object", "properties": { - "targetSentBytesPerSec": { - "description": "Target bytes sent per second.", + "targetReceivedBytesPerSec": { + "description": "Target bytes received per second.", "format": "int32", "type": "integer" }, - "targetReceivedPacketsPerSec": { - "description": "Target packets received per second.", + "targetSentPacketsPerSec": { + "description": "Target packets sent per second.", "format": "int32", "type": "integer" }, - "targetReceivedBytesPerSec": { - "description": "Target bytes received per second.", + "targetSentBytesPerSec": { + "description": "Target bytes sent per second.", "format": "int32", "type": "integer" }, - "targetSentPacketsPerSec": { - "description": "Target packets sent per second.", + "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" + "id": "NetworkUtilization" }, "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. For example: \"projects/example-project/locations/us-east1\"", + "type": "string" + }, "locationId": { "description": "The canonical id for this location. For example: \"us-east1\".", "type": "string" @@ -2152,12 +1961,8 @@ "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" + "description": "Cross-service attributes for the location. For example\n{\"cloud.googleapis.com/region\": \"us-east1\"}\n", + "type": "object" } }, "id": "Location" @@ -2166,18 +1971,9 @@ "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": { - "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": { - "type": "string", - "description": "Host header to send when performing an HTTP health check. Example: \"myapp.appspot.com\"" + "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.", @@ -2198,6 +1994,15 @@ "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" } }, "id": "HealthCheck" @@ -2218,15 +2023,15 @@ "id": "SourceReference" }, "DebugInstanceRequest": { + "description": "Request message for Instances.DebugInstance.", "type": "object", "properties": { "sshKey": { - "type": "string", - "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)." + "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." + "id": "DebugInstanceRequest" }, "OperationMetadataV1Beta5": { "description": "Metadata for the given google.longrunning.Operation.", @@ -2258,7 +2063,6 @@ "id": "OperationMetadataV1Beta5" }, "CreateVersionMetadataV1Alpha": { - "id": "CreateVersionMetadataV1Alpha", "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1alpha.CreateVersionRequest.", "type": "object", "properties": { @@ -2266,12 +2070,39 @@ "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 module.", "type": "object", "properties": { + "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-\".", + "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" + }, + "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" @@ -2292,8 +2123,8 @@ "$ref": "AutomaticScaling" }, "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." + "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.", @@ -2308,12 +2139,12 @@ "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." + "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" + "$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.", @@ -2342,14 +2173,13 @@ "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." + "description": "Code and application artifacts that make up this version.Only returned in GET requests if view=FULL is set.", + "$ref": "Deployment" }, "inboundServices": { "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", @@ -2360,7 +2190,8 @@ "INBOUND_SERVICE_XMPP_PRESENCE", "INBOUND_SERVICE_CHANNEL_PRESENCE", "INBOUND_SERVICE_WARMUP" - ] + ], + "type": "string" }, "enumDescriptions": [ "Not specified.", @@ -2402,47 +2233,215 @@ "type": "string" }, "creationTime": { - "type": "string", "description": "Time that this version was created.@OutputOnly", - "format": "google-datetime" + "format": "google-datetime", + "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" + } + }, + "id": "Version" + }, + "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" + }, + "FileInfo": { + "properties": { + "mimeType": { + "description": "The MIME type of the file.Defaults to the value from Google Cloud Storage.", + "type": "string" }, - "runtime": { - "description": "Desired runtime. Example: python27.", + "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": { - "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-\".", + "sha1Sum": { + "description": "The SHA1 hash of the file, in hex.", "type": "string" + } + }, + "id": "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" + }, + "TrafficSplit": { + "properties": { + "shardBy": { + "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", + "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." + ] }, - "envVariables": { + "allocations": { "additionalProperties": { - "type": "string" + "format": "double", + "type": "number" }, - "description": "Environment variables made available to the application.Only returned in GET requests if view=FULL is set.", + "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" + } + }, + "id": "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" + }, + "OperationMetadataV1Beta": { + "properties": { + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", + "type": "string" }, - "network": { - "description": "Extra network settings. Only applicable for VM runtimes.", - "$ref": "Network" + "user": { + "description": "User who requested this operation.@OutputOnly", + "type": "string" }, - "betaSettings": { - "additionalProperties": { + "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" + }, + "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" + } + }, + "id": "OperationMetadataV1Beta", + "description": "Metadata for the given google.longrunning.Operation.", + "type": "object" + }, + "ListModulesResponse": { + "properties": { + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + }, + "modules": { + "description": "The modules belonging to the requested application.", + "type": "array", + "items": { + "$ref": "Module" + } + } + }, + "id": "ListModulesResponse", + "description": "Response message for Modules.ListModules.", + "type": "object" + }, + "Resources": { + "properties": { + "cpu": { + "description": "Number of CPU cores needed.", + "format": "double", + "type": "number" + }, + "memoryGb": { + "description": "Memory (GB) needed.", + "format": "double", + "type": "number" + }, + "volumes": { + "description": "User specified volumes.", + "type": "array", + "items": { + "$ref": "Volume" + } + }, + "diskGb": { + "description": "Disk size (GB) needed.", + "format": "double", + "type": "number" + } + }, + "id": "Resources", + "description": "Machine resources for a version.", + "type": "object" + }, + "Deployment": { + "description": "Code and application artifacts used to deploy a version to App Engine.", + "type": "object", + "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." + }, + "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": "Metadata settings that are supplied to this version to enable beta runtime features.", + "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": "Version" + "id": "Deployment" + }, + "Volume": { + "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.", + "type": "string" + } + }, + "id": "Volume", + "description": "Volumes mounted within the app container. Only applicable for VM runtimes.", + "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" + "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", @@ -2450,23 +2449,24 @@ "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" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" } } } }, - "servicePath": "", - "description": "The App Engine Admin API enables developers to provision and manage their App Engine applications.", "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" + "name": "appengine", + "batchPath": "batch" } diff --git a/DiscoveryJson/appengine_v1beta5.json b/DiscoveryJson/appengine_v1beta5.json index d42ec73916..31a5b1b1d8 100644 --- a/DiscoveryJson/appengine_v1beta5.json +++ b/DiscoveryJson/appengine_v1beta5.json @@ -1,5 +1,4 @@ { - "title": "App Engine Admin API", "discoveryVersion": "v1", "ownerName": "Google", "resources": { @@ -7,21 +6,18 @@ "methods": { "get": { "description": "Gets information about an application.", - "response": { - "$ref": "Application" - }, + "httpMethod": "GET", "parameterOrder": [ "appsId" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], + "response": { + "$ref": "Application" + }, "parameters": { "ensureResourcesExist": { - "location": "query", "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" + "type": "boolean", + "location": "query" }, "appsId": { "location": "path", @@ -30,15 +26,14 @@ "type": "string" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "flatPath": "v1beta5/apps/{appsId}", - "path": "v1beta5/apps/{appsId}", - "id": "appengine.apps.get" + "id": "appengine.apps.get", + "path": "v1beta5/apps/{appsId}" }, "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/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)", - "request": { - "$ref": "Application" - }, "response": { "$ref": "Operation" }, @@ -47,17 +42,17 @@ ], "httpMethod": "PATCH", "parameters": { + "appsId": { + "location": "path", + "description": "Part of `name`. Name of the Application resource to update. Example: apps/myapp.", + "required": true, + "type": "string" + }, "mask": { "location": "query", "description": "Standard field mask for the set of fields to be updated.", "format": "google-fieldmask", "type": "string" - }, - "appsId": { - "required": true, - "type": "string", - "location": "path", - "description": "Part of `name`. Name of the Application resource to update. Example: apps/myapp." } }, "scopes": [ @@ -65,7 +60,11 @@ ], "flatPath": "v1beta5/apps/{appsId}", "path": "v1beta5/apps/{appsId}", - "id": "appengine.apps.patch" + "id": "appengine.apps.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/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)", + "request": { + "$ref": "Application" + } }, "create": { "request": { @@ -88,45 +87,158 @@ }, "resources": { "services": { + "methods": { + "delete": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "appsId", + "servicesId" + ], + "httpMethod": "DELETE", + "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": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", + "required": true, + "type": "string", + "location": "path" + } + }, + "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}", + "path": "v1beta5/apps/{appsId}/services/{servicesId}", + "id": "appengine.apps.services.delete", + "description": "Deletes the specified service and all enclosed versions." + }, + "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": "v1beta5/apps/{appsId}/services/{servicesId}", + "path": "v1beta5/apps/{appsId}/services/{servicesId}", + "id": "appengine.apps.services.get", + "description": "Gets the current configuration of the specified service." + }, + "list": { + "httpMethod": "GET", + "parameterOrder": [ + "appsId" + ], + "response": { + "$ref": "ListServicesResponse" + }, + "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource requested. Example: apps/myapp.", + "required": true, + "type": "string", + "location": "path" + }, + "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" + } + }, + "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", + "id": "appengine.apps.services.list", + "path": "v1beta5/apps/{appsId}/services", + "description": "Lists all the services in the application." + }, + "patch": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "appsId", + "servicesId" + ], + "httpMethod": "PATCH", + "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 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/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", + "location": "query" + }, + "mask": { + "description": "Standard field mask for the set of fields to be updated.", + "format": "google-fieldmask", + "type": "string", + "location": "query" + } + }, + "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}", + "path": "v1beta5/apps/{appsId}/services/{servicesId}", + "id": "appengine.apps.services.patch", + "request": { + "$ref": "Service" + }, + "description": "Updates the configuration of the specified service." + } + }, "resources": { "versions": { "methods": { - "create": { - "description": "Deploys new code and resource files to a new version.", - "request": { - "$ref": "Version" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "servicesId" - ], - "httpMethod": "POST", - "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 to update. For example: \"apps/myapp/services/default\".", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions", - "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions", - "id": "appengine.apps.services.versions.create" - }, "delete": { - "description": "Deletes an existing version.", "response": { "$ref": "Operation" }, @@ -136,34 +248,38 @@ "versionsId" ], "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { - "servicesId": { + "versionsId": { "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.", + "servicesId": { + "description": "Part of `name`. See documentation of `appsId`.", "required": true, "type": "string", "location": "path" }, - "versionsId": { + "appsId": { "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", + "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/cloud-platform" - ], "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}", "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "id": "appengine.apps.services.versions.delete" + "id": "appengine.apps.services.versions.delete", + "description": "Deletes an existing version." }, "get": { + "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "id": "appengine.apps.services.versions.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" }, @@ -173,12 +289,23 @@ "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 `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" + "type": "string", + "location": "path" }, "versionsId": { "description": "Part of `name`. See documentation of `appsId`.", @@ -194,32 +321,21 @@ ], "description": "Controls the set of fields returned in the Get response.", "type": "string" - }, - "servicesId": { - "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}/services/{servicesId}/versions/{versionsId}", - "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}", - "id": "appengine.apps.services.versions.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": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}" }, "list": { - "parameters": { - "servicesId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "type": "string" - }, + "description": "Lists the versions of a service.", + "response": { + "$ref": "ListVersionsResponse" + }, + "parameterOrder": [ + "appsId", + "servicesId" + ], + "httpMethod": "GET", + "parameters": { "appsId": { "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default.", "required": true, @@ -227,9 +343,9 @@ "location": "path" }, "pageToken": { - "type": "string", "location": "query", - "description": "Continuation token for fetching the next page of results." + "description": "Continuation token for fetching the next page of results.", + "type": "string" }, "pageSize": { "location": "query", @@ -245,6 +361,12 @@ ], "description": "Controls the set of fields returned in the List response.", "type": "string" + }, + "servicesId": { + "location": "path", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "type": "string" } }, "scopes": [ @@ -254,35 +376,32 @@ ], "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions", "path": "v1beta5/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" + "id": "appengine.apps.services.versions.list" }, "patch": { + "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "id": "appengine.apps.services.versions.patch", + "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "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.", "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/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.", - "response": { - "$ref": "Operation" - }, + "httpMethod": "PATCH", "parameterOrder": [ "appsId", "servicesId", "versionsId" ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], + "response": { + "$ref": "Operation" + }, "parameters": { + "appsId": { + "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default/versions/1.", + "required": true, + "type": "string", + "location": "path" + }, "versionsId": { "description": "Part of `name`. See documentation of `appsId`.", "required": true, @@ -290,36 +409,61 @@ "location": "path" }, "mask": { - "location": "query", "description": "Standard field mask for the set of fields to be updated.", "format": "google-fieldmask", - "type": "string" + "type": "string", + "location": "query" }, "servicesId": { "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "required": true, "type": "string" - }, + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "appsId", + "servicesId" + ], + "httpMethod": "POST", + "parameters": { "appsId": { "location": "path", - "description": "Part of `name`. Name of the resource to update. Example: apps/myapp/services/default/versions/1.", + "description": "Part of `name`. Name of the resource to update. For example: \"apps/myapp/services/default\".", + "required": true, + "type": "string" + }, + "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.patch" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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" + } } }, "resources": { "instances": { "methods": { "debug": { - "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug", - "path": "v1beta5/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" @@ -335,34 +479,37 @@ ], "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" + "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" + "type": "string", + "location": "path" }, "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" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ] + ], + "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug", + "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug", + "id": "appengine.apps.services.versions.instances.debug" }, "delete": { "description": "Stops a running instance.", @@ -384,22 +531,22 @@ "location": "path" }, "appsId": { - "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" + "type": "string", + "location": "path" }, "instancesId": { + "description": "Part of `name`. See documentation of `appsId`.", "required": true, "type": "string", - "location": "path", - "description": "Part of `name`. See documentation of `appsId`." + "location": "path" }, "versionsId": { - "location": "path", "description": "Part of `name`. See documentation of `appsId`.", "required": true, - "type": "string" + "type": "string", + "location": "path" } }, "scopes": [ @@ -410,6 +557,7 @@ "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}" }, "get": { + "description": "Gets instance information.", "response": { "$ref": "Instance" }, @@ -420,261 +568,108 @@ "instancesId" ], "httpMethod": "GET", - "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": { - "required": true, - "type": "string", - "location": "path", - "description": "Part of `name`. Name of the resource requested. Example: apps/myapp/services/default/versions/v1/instances/instance-1." - }, - "instancesId": { - "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": "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", - "description": "Gets instance information." - }, - "list": { - "id": "appengine.apps.services.versions.instances.list", - "path": "v1beta5/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).", - "httpMethod": "GET", - "parameterOrder": [ - "appsId", - "servicesId", - "versionsId" - ], - "response": { - "$ref": "ListInstancesResponse" - }, "parameters": { "versionsId": { - "location": "path", - "description": "Part of `name`. See documentation of `appsId`.", - "required": true, - "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 requested. Example: apps/myapp/services/default/versions/v1.", + "servicesId": { + "location": "path", + "description": "Part of `name`. See documentation of `appsId`.", "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": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances" - } - } - } - } - } - }, - "methods": { - "delete": { - "id": "appengine.apps.services.delete", - "path": "v1beta5/apps/{appsId}/services/{servicesId}", - "description": "Deletes the specified service and all enclosed versions.", - "httpMethod": "DELETE", - "parameterOrder": [ - "appsId", - "servicesId" - ], - "response": { - "$ref": "Operation" - }, - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta5/apps/{appsId}/services/{servicesId}" - }, - "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": "v1beta5/apps/{appsId}/services/{servicesId}", - "path": "v1beta5/apps/{appsId}/services/{servicesId}", - "id": "appengine.apps.services.get", - "description": "Gets the current configuration of the specified service.", - "response": { - "$ref": "Service" - }, - "parameterOrder": [ - "appsId", - "servicesId" - ], - "httpMethod": "GET" - }, - "list": { - "path": "v1beta5/apps/{appsId}/services", - "id": "appengine.apps.services.list", - "description": "Lists all the services in the application.", - "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": { - "type": "string", - "location": "query", - "description": "Continuation token for fetching the next page of results." - }, - "pageSize": { - "type": "integer", - "location": "query", - "description": "Maximum results to return per page.", - "format": "int32" - } - }, - "flatPath": "v1beta5/apps/{appsId}/services" - }, - "patch": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "appsId", - "servicesId" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "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/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" - }, - "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.", - "required": true, - "type": "string", - "location": "path" + "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" + } + }, + "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": { + "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", + "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", + "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" + }, + "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 `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}/services/{servicesId}", - "path": "v1beta5/apps/{appsId}/services/{servicesId}", - "id": "appengine.apps.services.patch", - "request": { - "$ref": "Service" - }, - "description": "Updates the configuration of the specified service." + } } } }, "operations": { "methods": { "list": { - "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.", + "httpMethod": "GET", "response": { "$ref": "ListOperationsResponse" }, "parameterOrder": [ "appsId" ], - "httpMethod": "GET", "parameters": { "filter": { "description": "The standard list filter.", @@ -682,49 +677,34 @@ "location": "query" }, "appsId": { + "location": "path", "description": "Part of `name`. The name of the operation's parent resource.", "required": true, - "type": "string", - "location": "path" + "type": "string" }, "pageToken": { + "location": "query", "description": "The standard list page token.", - "type": "string", - "location": "query" + "type": "string" }, "pageSize": { - "location": "query", "description": "The standard list page size.", "format": "int32", - "type": "integer" + "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", + "id": "appengine.apps.operations.list", + "path": "v1beta5/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": { - "parameters": { - "appsId": { - "required": true, - "type": "string", - "location": "path", - "description": "Part of `name`. The name of the operation resource." - }, - "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": "v1beta5/apps/{appsId}/operations/{operationsId}", "path": "v1beta5/apps/{appsId}/operations/{operationsId}", "id": "appengine.apps.operations.get", @@ -736,14 +716,32 @@ "appsId", "operationsId" ], - "httpMethod": "GET" + "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`. The name of the operation resource.", + "required": true, + "type": "string" + }, + "operationsId": { + "location": "path", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "type": "string" + } + } } } }, "locations": { "methods": { "list": { - "description": "Lists information about the supported locations for this service.", "response": { "$ref": "ListLocationsResponse" }, @@ -764,9 +762,9 @@ "location": "path" }, "pageToken": { + "location": "query", "description": "The standard list page token.", - "type": "string", - "location": "query" + "type": "string" }, "pageSize": { "description": "The standard list page size.", @@ -782,23 +780,18 @@ }, "flatPath": "v1beta5/apps/{appsId}/locations", "path": "v1beta5/apps/{appsId}/locations", - "id": "appengine.apps.locations.list" + "id": "appengine.apps.locations.list", + "description": "Lists information about the supported locations for this service." }, "get": { - "description": "Gets information about a location.", - "response": { - "$ref": "Location" - }, + "httpMethod": "GET", "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" - ], + "response": { + "$ref": "Location" + }, "parameters": { "appsId": { "location": "path", @@ -813,9 +806,15 @@ "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": "v1beta5/apps/{appsId}/locations/{locationsId}", + "id": "appengine.apps.locations.get", "path": "v1beta5/apps/{appsId}/locations/{locationsId}", - "id": "appengine.apps.locations.get" + "description": "Gets information about a location." } } } @@ -823,28 +822,9 @@ } }, "parameters": { - "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." - }, - "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" @@ -853,9 +833,7 @@ "enum": [ "1", "2" - ], - "description": "V1 error format.", - "type": "string" + ] }, "callback": { "description": "JSONP", @@ -863,6 +841,12 @@ "location": "query" }, "alt": { + "enum": [ + "json", + "media", + "proto" + ], + "type": "string", "enumDescriptions": [ "Responses with Content-Type of application/json", "Media download with context-dependent Content-Type", @@ -870,13 +854,7 @@ ], "location": "query", "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string" + "default": "json" }, "access_token": { "location": "query", @@ -889,9 +867,9 @@ "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", - "location": "query" + "type": "string" }, "pp": { "description": "Pretty-print response.", @@ -904,13 +882,95 @@ "description": "OAuth 2.0 token for the current user.", "type": "string" }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - } - }, - "schemas": { + "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": { + "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" + } + }, + "schemas": { + "ListInstancesResponse": { + "description": "Response message for Instances.ListInstances.", + "type": "object", + "properties": { + "nextPageToken": { + "description": "Continuation token for fetching the next page of results.", + "type": "string" + }, + "instances": { + "description": "The instances belonging to the requested version.", + "type": "array", + "items": { + "$ref": "Instance" + } + } + }, + "id": "ListInstancesResponse" + }, + "OperationMetadataV1Alpha": { + "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" + }, + "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": { + "type": "string" + } + }, + "insertTime": { + "description": "Time that this operation was created.@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", @@ -960,26 +1020,23 @@ "id": "ApiEndpointHandler" }, "AutomaticScaling": { + "description": "Automatic scaling is based on request rate, response latencies, and other application metrics.", "type": "object", "properties": { - "diskUtilization": { - "$ref": "DiskUtilization", - "description": "Target scaling by disk usage." - }, "minPendingLatency": { - "type": "string", "description": "Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it.", - "format": "google-duration" - }, - "requestUtilization": { - "$ref": "RequestUtilization", - "description": "Target scaling by request utilization." + "format": "google-duration", + "type": "string" }, "maxIdleInstances": { "description": "Maximum number of idle instances that should be maintained for this version.", "format": "int32", "type": "integer" }, + "requestUtilization": { + "$ref": "RequestUtilization", + "description": "Target scaling by request utilization." + }, "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", @@ -999,72 +1056,75 @@ "$ref": "NetworkUtilization", "description": "Target scaling by network 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" - }, "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" }, + "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" + }, "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" + "$ref": "CpuUtilization", + "description": "Target scaling by CPU usage." + }, + "diskUtilization": { + "description": "Target scaling by disk usage.", + "$ref": "DiskUtilization" } }, - "id": "AutomaticScaling", - "description": "Automatic scaling is based on request rate, response latencies, and other application metrics." + "id": "AutomaticScaling" }, "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" - }, - "name": { - "type": "string", - "description": "Name of the library. Example: \"django\"." } }, - "id": "Library", - "description": "Third-party Python runtime library that is required by the application." + "id": "Library" }, "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" } - }, - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" } }, - "id": "ListLocationsResponse" + "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": { - "type": "string", - "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\"" + "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", - "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" + "id": "ContainerInfo" }, "RequestUtilization": { "description": "Target scaling by request utilization. Only applicable for VM runtimes.", @@ -1083,6 +1143,35 @@ }, "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. 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": "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" + }, + "rolloutStrategy": { + "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." + ], + "enum": [ + "UNSPECIFIED_ROLLOUT_STRATEGY", + "FIXED", + "MANAGED" + ], + "description": "Endpoints rollout strategy. If FIXED, config_id must be specified. If MANAGED, config_id must be omitted.", + "type": "string" + } + }, + "id": "EndpointsApiService" + }, "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", @@ -1092,8 +1181,8 @@ "description": "Uses API Endpoints to handle requests." }, "staticFiles": { - "description": "Returns the contents of a file, such as an image, as the response.", - "$ref": "StaticFilesHandler" + "$ref": "StaticFilesHandler", + "description": "Returns the contents of a file, such as an image, as the response." }, "redirectHttpResponseCode": { "enumDescriptions": [ @@ -1132,34 +1221,28 @@ ] }, "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" + "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": { - "$ref": "ScriptHandler", - "description": "Executes a script to handle the request that matches this URL pattern." + "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": { - "enum": [ - "LOGIN_UNSPECIFIED", - "LOGIN_OPTIONAL", - "LOGIN_ADMIN", - "LOGIN_REQUIRED" - ], "description": "Level of login required to access this resource.", "type": "string", "enumDescriptions": [ @@ -1167,41 +1250,19 @@ "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" ] } }, "id": "UrlMap" }, - "EndpointsApiService": { - "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. 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": "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" - }, - "rolloutStrategy": { - "enum": [ - "UNSPECIFIED_ROLLOUT_STRATEGY", - "FIXED", - "MANAGED" - ], - "description": "Endpoints rollout strategy. If FIXED, config_id must be specified. If MANAGED, config_id must be omitted.", - "type": "string", - "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." - ] - } - } - }, "ApiConfigHandler": { + "description": "Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers.", "type": "object", "properties": { "script": { @@ -1261,46 +1322,44 @@ "type": "string" } }, - "id": "ApiConfigHandler", - "description": "Google Cloud Endpoints (https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers." + "id": "ApiConfigHandler" }, "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": { + "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" - }, - "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." + } }, - "done": { - "type": "boolean", - "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." + "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": { + "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": "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.", + "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" + "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" } }, "id": "Operation" }, "StaticFilesHandler": { - "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.", @@ -1336,20 +1395,30 @@ } }, "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." + "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" }, - "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": { - "targetWriteOpsPerSec": { - "description": "Target ops written per second.", + "maxInstances": { + "description": "Maximum number of instances to create for this version.", "format": "int32", "type": "integer" }, - "targetWriteBytesPerSec": { - "type": "integer", - "description": "Target bytes written per second.", - "format": "int32" - }, + "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 for VM runtimes.", + "type": "object", + "properties": { "targetReadOpsPerSec": { "description": "Target ops read per second.", "format": "int32", @@ -1359,28 +1428,19 @@ "description": "Target bytes read per second.", "format": "int32", "type": "integer" - } - }, - "id": "DiskUtilization", - "description": "Target scaling by disk usage. Only applicable for VM runtimes.", - "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.", + }, + "targetWriteOpsPerSec": { + "description": "Target ops written per second.", "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" + "targetWriteBytesPerSec": { + "description": "Target bytes written per second.", + "format": "int32", + "type": "integer" } }, - "id": "BasicScaling" + "id": "DiskUtilization" }, "CpuUtilization": { "description": "Target scaling by CPU usage.", @@ -1392,38 +1452,14 @@ "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": { - "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": "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" + "description": "Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.", + "format": "double", + "type": "number" } }, - "id": "IdentityAwareProxy", - "description": "Identity-Aware Proxy", - "type": "object" + "id": "CpuUtilization" }, "Status": { - "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.", @@ -1447,10 +1483,33 @@ } }, "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." + "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" + }, + "IdentityAwareProxy": { + "description": "Identity-Aware Proxy", + "type": "object", + "properties": { + "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" + }, + "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" + } + }, + "id": "IdentityAwareProxy" }, "ManualScaling": { - "id": "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": { @@ -1459,32 +1518,33 @@ "format": "int32", "type": "integer" } - } - }, - "CreateVersionMetadataV1": { - "id": "CreateVersionMetadataV1", - "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1.CreateVersionRequest.", - "type": "object", - "properties": { - "cloudBuildId": { - "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", - "type": "string" - } - } + }, + "id": "ManualScaling" }, "LocationMetadata": { + "description": "Metadata for the given google.cloud.location.Location.", + "type": "object", "properties": { "flexibleEnvironmentAvailable": { - "type": "boolean", - "description": "App Engine flexible environment is available in the given location.@OutputOnly" + "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.", + "id": "LocationMetadata" + }, + "CreateVersionMetadataV1": { + "properties": { + "cloudBuildId": { + "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", + "type": "string" + } + }, + "id": "CreateVersionMetadataV1", + "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1.CreateVersionRequest.", "type": "object" }, "Service": { @@ -1496,8 +1556,8 @@ "type": "string" }, "split": { - "$ref": "TrafficSplit", - "description": "Mapping that defines fractional HTTP traffic diversion to different versions within the service." + "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", @@ -1507,25 +1567,31 @@ "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" } - }, - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" } }, - "id": "ListOperationsResponse", - "description": "The response message for Operations.ListOperations.", - "type": "object" + "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", @@ -1540,22 +1606,16 @@ "format": "google-datetime", "type": "string" }, - "target": { - "type": "string", - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/modules/default.@OutputOnly" - }, "user": { "description": "User who requested this operation.@OutputOnly", "type": "string" }, - "method": { - "type": "string", - "description": "API method that initiated this operation. Example: google.appengine.v1beta4.Version.CreateVersion.@OutputOnly" + "target": { + "description": "Name of the resource that this operation is acting on. Example: apps/myapp/modules/default.@OutputOnly", + "type": "string" } }, - "id": "OperationMetadata", - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object" + "id": "OperationMetadata" }, "CreateVersionMetadataV1Beta": { "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1beta.CreateVersionRequest.", @@ -1569,14 +1629,15 @@ "id": "CreateVersionMetadataV1Beta" }, "ErrorHandler": { - "description": "Custom static error page to be served when an error occurs.", - "type": "object", "properties": { - "staticFile": { - "description": "Static file content to be served for this error.", - "type": "string" - }, "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", @@ -1585,46 +1646,31 @@ "ERROR_CODE_TIMEOUT" ], "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." - ] + "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" + "id": "ErrorHandler", + "description": "Custom static error page to be served when an error occurs.", + "type": "object" }, "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", + "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" }, - "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" @@ -1640,13 +1686,25 @@ }, "createVersionMetadata": { "$ref": "CreateVersionMetadataV1" + }, + "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" } }, - "id": "OperationMetadataV1" + "id": "OperationMetadataV1", + "description": "Metadata for the given google.longrunning.Operation.", + "type": "object" }, "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.", @@ -1660,24 +1718,32 @@ "type": "string" }, "subnetworkName": { - "type": "string", - "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." + "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" + "id": "Network", + "description": "Extra network settings. Only applicable for VM runtimes.", + "type": "object" }, "Application": { - "id": "Application", "description": "An Application resource contains the top-level configuration of an App Engine application.", "type": "object", "properties": { + "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" + }, "id": { - "type": "string", - "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." + "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.", @@ -1710,43 +1776,12 @@ "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" } - } + }, + "id": "Application" }, "Instance": { - "description": "An Instance resource is the computing unit that App Engine uses to automatically scale an application.", - "type": "object", "properties": { - "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" - }, "requests": { "description": "Number of requests since this instance was started.@OutputOnly", "format": "int32", @@ -1803,33 +1838,58 @@ "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": { + "enum": [ + "UNSPECIFIED", + "RESIDENT", + "DYNAMIC" + ], + "description": "Availability of the instance.@OutputOnly", + "type": "string", + "enumDescriptions": [ + "", + "", + "" + ] + }, + "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" + "id": "Instance", + "description": "An Instance resource is the computing unit that App Engine uses to automatically scale an application.", + "type": "object" }, "NetworkUtilization": { "description": "Target scaling by network usage. Only applicable for VM runtimes.", "type": "object", "properties": { - "targetSentBytesPerSec": { - "description": "Target bytes sent per second.", + "targetReceivedBytesPerSec": { + "description": "Target bytes received per second.", "format": "int32", "type": "integer" }, - "targetReceivedPacketsPerSec": { - "description": "Target packets received per second.", + "targetSentPacketsPerSec": { + "description": "Target packets sent per second.", "format": "int32", "type": "integer" }, - "targetReceivedBytesPerSec": { - "description": "Target bytes received per second.", + "targetSentBytesPerSec": { + "description": "Target bytes sent per second.", "format": "int32", "type": "integer" }, - "targetSentPacketsPerSec": { - "type": "integer", - "description": "Target packets sent per second.", - "format": "int32" + "targetReceivedPacketsPerSec": { + "description": "Target packets received per second.", + "format": "int32", + "type": "integer" } }, "id": "NetworkUtilization" @@ -1838,32 +1898,32 @@ "description": "A resource that represents Google Cloud Platform location.", "type": "object", "properties": { + "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" + }, "locationId": { "description": "The canonical id for this location. For example: \"us-east1\".", "type": "string" }, "displayName": { - "type": "string", - "description": "The friendly name for this location, typically a nearby city name. For example, \"Tokyo\"." + "description": "The friendly name for this location, typically a nearby city name. For example, \"Tokyo\".", + "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": { - "type": "object", - "additionalProperties": { - "type": "string" + "type": "any" }, - "description": "Cross-service attributes for the location. For example\n{\"cloud.googleapis.com/region\": \"us-east1\"}\n" - }, - "name": { - "description": "Resource name for the location, which may vary between implementations. For example: \"projects/example-project/locations/us-east1\"", - "type": "string" + "description": "Service-specific metadata. For example the available capacity at the given location.", + "type": "object" } }, "id": "Location" @@ -1872,6 +1932,11 @@ "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", @@ -1882,8 +1947,8 @@ "type": "boolean" }, "host": { - "type": "string", - "description": "Host header to send when performing an HTTP health check. Example: \"myapp.appspot.com\"" + "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.", @@ -1891,19 +1956,14 @@ "type": "integer" }, "restartThreshold": { - "type": "integer", "description": "Number of consecutive failed health checks required before an instance is restarted.", - "format": "uint32" + "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", - "type": "string" } }, "id": "HealthCheck" @@ -1912,32 +1972,47 @@ "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" + }, + "repository": { + "description": "URI string identifying the repository. Example: \"https://source.developers.google.com/p/app-123/r/default\"", + "type": "string" } }, "id": "SourceReference" }, "DebugInstanceRequest": { - "id": "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", + "description": "Request message for Instances.DebugInstance.", + "type": "object" + }, + "CreateVersionMetadataV1Alpha": { + "properties": { + "cloudBuildId": { + "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly", + "type": "string" + } + }, + "id": "CreateVersionMetadataV1Alpha", + "description": "Metadata for the given google.longrunning.Operation during a google.appengine.v1alpha.CreateVersionRequest.", + "type": "object" }, "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" + }, "insertTime": { "description": "Timestamp that this operation was created.@OutputOnly", "format": "google-datetime", @@ -1955,56 +2030,56 @@ "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": { - "type": "string", - "description": "The Cloud Build ID if one was created as part of the version create. @OutputOnly" - } - }, - "id": "CreateVersionMetadataV1Alpha" - }, "Version": { "properties": { + "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-\".", + "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": { "$ref": "Network", "description": "Extra network settings. Only applicable for VM runtimes." }, "betaSettings": { - "description": "Metadata settings that are supplied to this version to enable beta runtime features.", - "type": "object", "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 to use for this version.Defaults to 1.", "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" - }, - "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." + } }, "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." + "description": "Automatic scaling is based on request rate, response latencies, and other application metrics.", + "$ref": "AutomaticScaling" }, "diskUsageBytes": { "description": "Total size of version files hosted on App Engine disk in bytes.@OutputOnly", @@ -2012,8 +2087,8 @@ "type": "string" }, "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.", - "$ref": "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.", @@ -2032,40 +2107,52 @@ "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." + "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" }, "instanceClass": { - "type": "string", - "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." + "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 from serving. 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", - "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": { "description": "Code and application artifacts that make up this version.Only returned in GET requests if view=FULL is set.", "$ref": "Deployment" }, + "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" + }, "inboundServices": { + "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." + ], + "description": "Before an application can receive email or XMPP messages, the application must be configured to enable the service.", "type": "array", "items": { "enum": [ @@ -2080,19 +2167,7 @@ "INBOUND_SERVICE_WARMUP" ], "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." - ], - "description": "Before an application can receive email or XMPP messages, the application must be configured to enable the service." + } }, "resources": { "$ref": "Resources", @@ -2117,51 +2192,27 @@ "$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" - }, "creationTime": { "description": "Time that this version was created.@OutputOnly", "format": "google-datetime", "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 module. Example: v1. Version names can contain only lowercase letters, numbers, or hyphens. Reserved names: \"default\", \"latest\", and any name with the prefix \"ah-\".", + "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" }, - "envVariables": { - "description": "Environment variables made available to the application.Only returned in GET requests if view=FULL is set.", - "type": "object", - "additionalProperties": { - "type": "string" - } + "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" } }, "id": "Version", "description": "A Version resource is a specific set of source code and configuration files that are deployed into a service.", "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" - }, "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.", @@ -2176,8 +2227,17 @@ "type": "string" } }, - "id": "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" + }, + "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" }, "TrafficSplit": { @@ -2213,6 +2273,14 @@ "description": "Metadata for the given google.longrunning.Operation.", "type": "object", "properties": { + "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", @@ -2220,11 +2288,6 @@ "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" @@ -2245,9 +2308,6 @@ "description": "Time that this operation completed.@OutputOnly", "format": "google-datetime", "type": "string" - }, - "createVersionMetadata": { - "$ref": "CreateVersionMetadataV1Beta" } }, "id": "OperationMetadataV1Beta" @@ -2257,11 +2317,11 @@ "type": "object", "properties": { "services": { + "description": "The services belonging to the requested application.", "type": "array", "items": { "$ref": "Service" - }, - "description": "The services belonging to the requested application." + } }, "nextPageToken": { "description": "Continuation token for fetching the next page of results.", @@ -2271,6 +2331,7 @@ "id": "ListServicesResponse" }, "Resources": { + "description": "Machine resources for a version.", "type": "object", "properties": { "volumes": { @@ -2296,16 +2357,15 @@ "type": "number" } }, - "id": "Resources", - "description": "Machine resources for a version." + "id": "Resources" }, "Deployment": { "description": "Code and application artifacts used to deploy a version to App Engine.", "type": "object", "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." + "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.", @@ -2325,7 +2385,6 @@ "id": "Deployment" }, "Volume": { - "type": "object", "properties": { "volumeType": { "description": "Underlying volume type, e.g. 'tmpfs'.", @@ -2342,73 +2401,13 @@ } }, "id": "Volume", - "description": "Volumes mounted within the app container. Only applicable for VM runtimes." - }, - "ListInstancesResponse": { - "description": "Response message for Instances.ListInstances.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "Continuation token for fetching the next page of results.", - "type": "string" - }, - "instances": { - "description": "The instances belonging to the requested version.", - "type": "array", - "items": { - "$ref": "Instance" - } - } - }, - "id": "ListInstancesResponse" - }, - "OperationMetadataV1Alpha": { - "description": "Metadata for the given google.longrunning.Operation.", - "type": "object", - "properties": { - "ephemeralMessage": { - "type": "string", - "description": "Ephemeral message that may change every time the operation is polled. @OutputOnly" - }, - "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" - }, - "insertTime": { - "description": "Time that this operation was created.@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "warning": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Durable messages that persist on every operation poll. @OutputOnly" - }, - "target": { - "description": "Name of the resource that this operation is acting on. Example: apps/myapp/services/default.@OutputOnly", - "type": "string" - }, - "user": { - "type": "string", - "description": "User who requested this operation.@OutputOnly" - } - }, - "id": "OperationMetadataV1Alpha" + "description": "Volumes mounted within the app container. Only applicable for VM runtimes.", + "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" + "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": "v1beta5", @@ -2428,9 +2427,9 @@ } } }, - "servicePath": "", - "description": "The App Engine Admin API enables developers to provision and manage their App Engine applications.", "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", @@ -2438,5 +2437,6 @@ "batchPath": "batch", "revision": "20180502", "documentationLink": "https://cloud.google.com/appengine/docs/admin-api/", - "id": "appengine:v1beta5" + "id": "appengine:v1beta5", + "title": "App Engine Admin API" } diff --git a/DiscoveryJson/appsactivity_v1.json b/DiscoveryJson/appsactivity_v1.json index 4c874821d6..49ec283bd1 100644 --- a/DiscoveryJson/appsactivity_v1.json +++ b/DiscoveryJson/appsactivity_v1.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/_6PLCCKxG2-ttHrVs0aIBiLZdeA\"", + "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/qsYQtiW_VtQT38AUz_Yd4cY0F4M\"", "discoveryVersion": "v1", "id": "appsactivity:v1", "name": "appsactivity", "version": "v1", - "revision": "20180507", + "revision": "20180508", "title": "G Suite Activity API", "description": "Provides a historical view of activity.", "ownerDomain": "google.com", diff --git a/DiscoveryJson/bigquerydatatransfer_v1.json b/DiscoveryJson/bigquerydatatransfer_v1.json index b7162cbe67..21a345e86c 100644 --- a/DiscoveryJson/bigquerydatatransfer_v1.json +++ b/DiscoveryJson/bigquerydatatransfer_v1.json @@ -1,4 +1,26 @@ { + "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/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" + } + } + } + }, + "rootUrl": "https://bigquerydatatransfer.googleapis.com/", + "ownerDomain": "google.com", + "name": "bigquerydatatransfer", + "batchPath": "batch", + "fullyEncodeReservedExpansion": true, + "title": "BigQuery Data Transfer API", "ownerName": "Google", "resources": { "projects": { @@ -14,23 +36,13 @@ "name" ], "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": { - "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", - "pattern": "^projects/[^/]+$", - "location": "path" + "type": "string" }, "pageToken": { "location": "query", @@ -38,113 +50,125 @@ "type": "string" }, "pageSize": { - "location": "query", "description": "The standard list page size.", "format": "int32", - "type": "integer" + "type": "integer", + "location": "query" + }, + "filter": { + "description": "The standard list filter.", + "type": "string", + "location": "query" } }, + "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": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}", - "id": "bigquerydatatransfer.projects.locations.get", - "path": "v1/{+name}", - "description": "Gets information about a location.", - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], "response": { "$ref": "Location" }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", "parameters": { "name": { - "required": true, - "type": "string", "pattern": "^projects/[^/]+/locations/[^/]+$", "location": "path", - "description": "Resource name for the location." + "description": "Resource name for the location.", + "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" - ] + ], + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}", + "path": "v1/{+name}", + "id": "bigquerydatatransfer.projects.locations.get", + "description": "Gets information about a location." } }, "resources": { "dataSources": { "methods": { "get": { + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataSources/{dataSourcesId}", "id": "bigquerydatatransfer.projects.locations.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" ], + "response": { + "$ref": "DataSource" + }, "parameters": { "name": { + "pattern": "^projects/[^/]+/locations/[^/]+/dataSources/[^/]+$", + "location": "path", "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/[^/]+/locations/[^/]+/dataSources/[^/]+$", - "location": "path" + "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/{dataSourcesId}" + ] }, "list": { - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], + "path": "v1/{+parent}/dataSources", + "id": "bigquerydatatransfer.projects.locations.dataSources.list", + "description": "Lists supported data sources and returns their settings,\nwhich can be used for UI rendering.", "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" + "parameterOrder": [ + "parent" ], + "httpMethod": "GET", "parameters": { + "parent": { + "pattern": "^projects/[^/]+/locations/[^/]+$", + "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" + }, "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" + "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" - }, - "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/[^/]+/locations/[^/]+$" } }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataSources", - "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." + "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" @@ -158,11 +182,11 @@ "httpMethod": "POST", "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/[^/]+/locations/[^/]+/dataSources/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/locations/[^/]+/dataSources/[^/]+$" } }, "scopes": [ @@ -170,15 +194,17 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataSources/{dataSourcesId}:checkValidCreds", - "path": "v1/{+name}:checkValidCreds", - "id": "bigquerydatatransfer.projects.locations.dataSources.checkValidCreds" + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataSources/{dataSourcesId}:checkValidCreds" } } }, "transferConfigs": { "methods": { "patch": { + "request": { + "$ref": "TransferConfig" + }, + "description": "Updates a data transfer configuration.\nAll fields must be set, even if they are not updated.", "response": { "$ref": "TransferConfig" }, @@ -186,92 +212,87 @@ "name" ], "httpMethod": "PATCH", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { - "updateMask": { - "location": "query", - "description": "Required list of fields to be updated in this request.", - "format": "google-fieldmask", - "type": "string" - }, "name": { - "required": true, - "type": "string", "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+$", "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." + "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" }, "authorizationCode": { - "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&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." + "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/cloud-platform" - ], "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}", "path": "v1/{+name}", - "id": "bigquerydatatransfer.projects.locations.transferConfigs.patch", - "description": "Updates a data transfer configuration.\nAll fields must be set, even if they are not updated.", - "request": { - "$ref": "TransferConfig" - } + "id": "bigquerydatatransfer.projects.locations.transferConfigs.patch" }, "get": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}", - "id": "bigquerydatatransfer.projects.locations.transferConfigs.get", - "path": "v1/{+name}", "description": "Returns information about a data transfer config.", - "httpMethod": "GET", "response": { "$ref": "TransferConfig" }, "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}`", "required": true, "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+$" } }, "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" }, "delete": { - "path": "v1/{+name}", - "id": "bigquerydatatransfer.projects.locations.transferConfigs.delete", - "description": "Deletes a data transfer configuration,\nincluding any associated transfer runs and logs.", - "response": { - "$ref": "Empty" - }, + "httpMethod": "DELETE", "parameterOrder": [ "name" ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform" - ], + "response": { + "$ref": "Empty" + }, "parameters": { "name": { + "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+$", + "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/[^/]+$", - "location": "path" + "type": "string" } }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}" + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}", + "id": "bigquerydatatransfer.projects.locations.transferConfigs.delete", + "path": "v1/{+name}", + "description": "Deletes a data transfer configuration,\nincluding any associated transfer runs and logs." }, "list": { - "description": "Returns information about all data transfers in the project.", "response": { "$ref": "ListTransferConfigsResponse" }, @@ -280,29 +301,29 @@ ], "httpMethod": "GET", "parameters": { - "parent": { - "description": "The BigQuery project id for which data sources\nshould be returned: `projects/{project_id}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path" - }, - "dataSourceIds": { - "repeated": true, - "location": "query", - "description": "When specified, only configurations of requested data sources are returned.", - "type": "string" - }, "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.", "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", - "location": "query" + "type": "integer" + }, + "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": { + "location": "query", + "description": "When specified, only configurations of requested data sources are returned.", + "type": "string", + "repeated": true } }, "scopes": [ @@ -312,19 +333,21 @@ ], "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs", "path": "v1/{+parent}/transferConfigs", - "id": "bigquerydatatransfer.projects.locations.transferConfigs.list" + "id": "bigquerydatatransfer.projects.locations.transferConfigs.list", + "description": "Returns information about all data transfers in the project." }, "create": { - "response": { + "description": "Creates a new data transfer configuration.", + "request": { "$ref": "TransferConfig" }, + "httpMethod": "POST", "parameterOrder": [ "parent" ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], + "response": { + "$ref": "TransferConfig" + }, "parameters": { "authorizationCode": { "location": "query", @@ -332,22 +355,23 @@ "type": "string" }, "parent": { - "pattern": "^projects/[^/]+/locations/[^/]+$", - "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" + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "location": "path" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs", - "path": "v1/{+parent}/transferConfigs", "id": "bigquerydatatransfer.projects.locations.transferConfigs.create", - "request": { - "$ref": "TransferConfig" - }, - "description": "Creates a new data transfer configuration." + "path": "v1/{+parent}/transferConfigs" }, "scheduleRuns": { + "id": "bigquerydatatransfer.projects.locations.transferConfigs.scheduleRuns", + "path": "v1/{+parent}: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.", "request": { "$ref": "ScheduleTransferRunsRequest" @@ -372,86 +396,53 @@ "https://www.googleapis.com/auth/bigquery", "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}:scheduleRuns", - "id": "bigquerydatatransfer.projects.locations.transferConfigs.scheduleRuns", - "path": "v1/{+parent}:scheduleRuns" + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}:scheduleRuns" } }, "resources": { "runs": { - "resources": { - "transferLogs": { - "methods": { - "list": { - "response": { - "$ref": "ListTransferLogsResponse" - }, - "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": "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/[^/]+$" - }, - "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.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Page size. The default page size is the maximum value of 1000 results.", - "format": "int32", - "type": "integer" - }, - "messageTypes": { - "repeated": true, - "location": "query", - "enum": [ - "MESSAGE_SEVERITY_UNSPECIFIED", - "INFO", - "WARNING", - "ERROR" - ], - "description": "Message types to return. If not populated - INFO, WARNING and ERROR\nmessages are returned.", - "type": "string" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}/runs/{runsId}/transferLogs", - "path": "v1/{+parent}/transferLogs", - "id": "bigquerydatatransfer.projects.locations.transferConfigs.runs.transferLogs.list", - "description": "Returns user facing log messages for the data transfer run." - } - } - } - }, "methods": { - "get": { - "description": "Returns information about the particular transfer run.", - "httpMethod": "GET", + "delete": { + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}/runs/{runsId}", + "id": "bigquerydatatransfer.projects.locations.transferConfigs.runs.delete", + "path": "v1/{+name}", + "description": "Deletes the specified transfer run.", + "httpMethod": "DELETE", + "response": { + "$ref": "Empty" + }, "parameterOrder": [ "name" ], + "parameters": { + "name": { + "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/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "httpMethod": "GET", "response": { "$ref": "TransferRun" }, + "parameterOrder": [ + "name" + ], "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/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+/runs/[^/]+$" } }, "scopes": [ @@ -461,10 +452,10 @@ ], "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}/runs/{runsId}", "id": "bigquerydatatransfer.projects.locations.transferConfigs.runs.get", - "path": "v1/{+name}" + "path": "v1/{+name}", + "description": "Returns information about the particular transfer run." }, "list": { - "description": "Returns information about running and completed jobs.", "response": { "$ref": "ListTransferRunsResponse" }, @@ -472,27 +463,12 @@ "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": { - "states": { - "type": "string", - "repeated": true, - "location": "query", - "enum": [ - "TRANSFER_STATE_UNSPECIFIED", - "PENDING", - "RUNNING", - "SUCCEEDED", - "FAILED", - "CANCELLED" - ], - "description": "When specified, only transfer runs with requested states are returned." - }, - "pageSize": { - "description": "Page size. The default page size is the maximum value of 1000 results.", - "format": "int32", - "type": "integer", - "location": "query" - }, "runAttempt": { "location": "query", "enum": [ @@ -503,52 +479,98 @@ "type": "string" }, "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/[^/]+/locations/[^/]+/transferConfigs/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+$" }, "pageToken": { "location": "query", "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" + }, + "states": { + "location": "query", + "enum": [ + "TRANSFER_STATE_UNSPECIFIED", + "PENDING", + "RUNNING", + "SUCCEEDED", + "FAILED", + "CANCELLED" + ], + "description": "When specified, only transfer runs with requested states are returned.", + "type": "string", + "repeated": true + }, + "pageSize": { + "description": "Page size. The default page size is the maximum value of 1000 results.", + "format": "int32", + "type": "integer", + "location": "query" } }, - "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}/runs", "path": "v1/{+parent}/runs", - "id": "bigquerydatatransfer.projects.locations.transferConfigs.runs.list" - }, - "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}/runs/{run_id}`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+/runs/[^/]+$" + "id": "bigquerydatatransfer.projects.locations.transferConfigs.runs.list", + "description": "Returns information about running and completed jobs." + } + }, + "resources": { + "transferLogs": { + "methods": { + "list": { + "response": { + "$ref": "ListTransferLogsResponse" + }, + "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": { + "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.", + "type": "string" + }, + "pageSize": { + "location": "query", + "description": "Page size. The default page size is the maximum value of 1000 results.", + "format": "int32", + "type": "integer" + }, + "messageTypes": { + "repeated": true, + "location": "query", + "enum": [ + "MESSAGE_SEVERITY_UNSPECIFIED", + "INFO", + "WARNING", + "ERROR" + ], + "description": "Message types to return. If not populated - INFO, WARNING and ERROR\nmessages are returned.", + "type": "string" + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}/runs/{runsId}/transferLogs", + "path": "v1/{+parent}/transferLogs", + "id": "bigquerydatatransfer.projects.locations.transferConfigs.runs.transferLogs.list", + "description": "Returns user facing log messages for the data transfer run." } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/transferConfigs/{transferConfigsId}/runs/{runsId}", - "path": "v1/{+name}", - "id": "bigquerydatatransfer.projects.locations.transferConfigs.runs.delete", - "description": "Deletes the specified transfer run.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE" + } } } } @@ -559,7 +581,6 @@ "dataSources": { "methods": { "get": { - "description": "Retrieves a supported data source and returns its settings,\nwhich can be used for UI rendering.", "response": { "$ref": "DataSource" }, @@ -567,77 +588,71 @@ "name" ], "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": { "name": { - "location": "path", - "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/[^/]+$" + "pattern": "^projects/[^/]+/dataSources/[^/]+$", + "location": "path", + "description": "The field will contain name of the resource requested, for example:\n`projects/{project_id}/dataSources/{data_source_id}`" } }, + "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}", "path": "v1/{+name}", - "id": "bigquerydatatransfer.projects.dataSources.get" + "id": "bigquerydatatransfer.projects.dataSources.get", + "description": "Retrieves a supported data source and returns its settings,\nwhich can be used for UI rendering." }, "list": { - "flatPath": "v1/projects/{projectsId}/dataSources", - "path": "v1/{+parent}/dataSources", - "id": "bigquerydatatransfer.projects.dataSources.list", - "description": "Lists supported data sources and returns their settings,\nwhich can be used for UI rendering.", + "httpMethod": "GET", "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": { + "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/[^/]+$", + "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" }, "pageSize": { - "description": "Page size. The default page size is the maximum value of 1000 results.", - "format": "int32", "type": "integer", - "location": "query" - }, - "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/[^/]+$", - "location": "path" + "location": "query", + "description": "Page size. The default page size is the maximum value of 1000 results.", + "format": "int32" } - } + }, + "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", + "id": "bigquerydatatransfer.projects.dataSources.list", + "path": "v1/{+parent}/dataSources", + "description": "Lists supported data sources and returns their settings,\nwhich can be used for UI rendering." }, "checkValidCreds": { - "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/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/dataSources/[^/]+$" } }, "scopes": [ @@ -646,88 +661,36 @@ "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", + "id": "bigquerydatatransfer.projects.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" - } - } - } - }, - "transferConfigs": { - "methods": { - "delete": { - "description": "Deletes a data transfer configuration,\nincluding any associated transfer runs and logs.", + }, "response": { - "$ref": "Empty" + "$ref": "CheckValidCredsResponse" }, "parameterOrder": [ "name" ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/transferConfigs/[^/]+$", - "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" - } - }, - "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}", - "path": "v1/{+name}", - "id": "bigquerydatatransfer.projects.transferConfigs.delete" - }, - "list": { - "response": { - "$ref": "ListTransferConfigsResponse" + "httpMethod": "POST" + } + } + }, + "transferConfigs": { + "methods": { + "create": { + "description": "Creates a new data transfer configuration.", + "request": { + "$ref": "TransferConfig" }, + "httpMethod": "POST", "parameterOrder": [ "parent" ], - "httpMethod": "GET", - "parameters": { - "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": { - "repeated": true, - "location": "query", - "description": "When specified, only configurations of requested data sources are returned.", - "type": "string" - }, - "pageToken": { - "type": "string", - "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." - }, - "pageSize": { - "type": "integer", - "location": "query", - "description": "Page size. The default page size is the maximum value of 1000 results.", - "format": "int32" - } + "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}/transferConfigs", - "path": "v1/{+parent}/transferConfigs", - "id": "bigquerydatatransfer.projects.transferConfigs.list", - "description": "Returns information about all data transfers in the project." - }, - "create": { "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.", @@ -735,11 +698,11 @@ "location": "query" }, "parent": { - "pattern": "^projects/[^/]+$", "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" + "type": "string", + "pattern": "^projects/[^/]+$" } }, "scopes": [ @@ -747,63 +710,92 @@ ], "flatPath": "v1/projects/{projectsId}/transferConfigs", "id": "bigquerydatatransfer.projects.transferConfigs.create", - "path": "v1/{+parent}/transferConfigs", - "description": "Creates a new data transfer configuration.", + "path": "v1/{+parent}/transferConfigs" + }, + "scheduleRuns": { + "path": "v1/{+parent}:scheduleRuns", + "id": "bigquerydatatransfer.projects.transferConfigs.scheduleRuns", "request": { - "$ref": "TransferConfig" + "$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" }, - "httpMethod": "POST", "parameterOrder": [ "parent" ], - "response": { - "$ref": "TransferConfig" - } + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "parent": { + "description": "Transfer configuration name in the form:\n`projects/{project_id}/transferConfigs/{config_id}`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/transferConfigs/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}:scheduleRuns" }, - "scheduleRuns": { + "patch": { + "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}", + "path": "v1/{+name}", + "id": "bigquerydatatransfer.projects.transferConfigs.patch", "request": { - "$ref": "ScheduleTransferRunsRequest" + "$ref": "TransferConfig" }, - "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.", + "description": "Updates a data transfer configuration.\nAll fields must be set, even if they are not updated.", "response": { - "$ref": "ScheduleTransferRunsResponse" + "$ref": "TransferConfig" }, "parameterOrder": [ - "parent" + "name" ], - "httpMethod": "POST", + "httpMethod": "PATCH", "scopes": [ - "https://www.googleapis.com/auth/bigquery", "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "parent": { - "description": "Transfer configuration name in the form:\n`projects/{project_id}/transferConfigs/{config_id}`.", + "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/[^/]+/transferConfigs/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/transferConfigs/[^/]+$" + }, + "authorizationCode": { + "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&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." + }, + "updateMask": { + "location": "query", + "description": "Required list of fields to be updated in this request.", + "format": "google-fieldmask", + "type": "string" } - }, - "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}:scheduleRuns", - "path": "v1/{+parent}:scheduleRuns", - "id": "bigquerydatatransfer.projects.transferConfigs.scheduleRuns" + } }, "get": { - "httpMethod": "GET", + "description": "Returns information about a data transfer config.", "response": { "$ref": "TransferConfig" }, "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}`", "required": true, "type": "string", - "pattern": "^projects/[^/]+/transferConfigs/[^/]+$" + "pattern": "^projects/[^/]+/transferConfigs/[^/]+$", + "location": "path", + "description": "The field will contain name of the resource requested, for example:\n`projects/{project_id}/transferConfigs/{config_id}`" } }, "scopes": [ @@ -812,137 +804,84 @@ "https://www.googleapis.com/auth/cloud-platform.read-only" ], "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}", - "id": "bigquerydatatransfer.projects.transferConfigs.get", "path": "v1/{+name}", - "description": "Returns information about a data transfer config." + "id": "bigquerydatatransfer.projects.transferConfigs.get" }, - "patch": { + "delete": { + "description": "Deletes a data transfer configuration,\nincluding any associated transfer runs and logs.", + "httpMethod": "DELETE", "response": { - "$ref": "TransferConfig" + "$ref": "Empty" }, "parameterOrder": [ "name" ], - "httpMethod": "PATCH", "parameters": { "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", "pattern": "^projects/[^/]+/transferConfigs/[^/]+$", - "location": "path" - }, - "authorizationCode": { - "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&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." - }, - "updateMask": { - "location": "query", - "description": "Required list of fields to be updated in this request.", - "format": "google-fieldmask", + "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" } }, "scopes": [ + "https://www.googleapis.com/auth/bigquery", "https://www.googleapis.com/auth/cloud-platform" ], "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}", - "path": "v1/{+name}", - "id": "bigquerydatatransfer.projects.transferConfigs.patch", - "description": "Updates a data transfer configuration.\nAll fields must be set, even if they are not updated.", - "request": { - "$ref": "TransferConfig" - } + "id": "bigquerydatatransfer.projects.transferConfigs.delete", + "path": "v1/{+name}" + }, + "list": { + "id": "bigquerydatatransfer.projects.transferConfigs.list", + "path": "v1/{+parent}/transferConfigs", + "description": "Returns information about all data transfers in the project.", + "httpMethod": "GET", + "parameterOrder": [ + "parent" + ], + "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" + ], + "parameters": { + "parent": { + "pattern": "^projects/[^/]+$", + "location": "path", + "description": "The BigQuery project id for which data sources\nshould be returned: `projects/{project_id}`.", + "required": true, + "type": "string" + }, + "dataSourceIds": { + "description": "When specified, only configurations of requested data sources are returned.", + "type": "string", + "repeated": true, + "location": "query" + }, + "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.", + "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}/transferConfigs" } }, "resources": { "runs": { - "resources": { - "transferLogs": { - "methods": { - "list": { - "description": "Returns user facing log messages for the data transfer run.", - "httpMethod": "GET", - "response": { - "$ref": "ListTransferLogsResponse" - }, - "parameterOrder": [ - "parent" - ], - "parameters": { - "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.", - "type": "string" - }, - "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.", - "type": "string", - "repeated": true, - "location": "query", - "enum": [ - "MESSAGE_SEVERITY_UNSPECIFIED", - "INFO", - "WARNING", - "ERROR" - ] - }, - "parent": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/transferConfigs/[^/]+/runs/[^/]+$", - "location": "path", - "description": "Transfer run name in the form:\n`projects/{project_id}/transferConfigs/{config_Id}/runs/{run_id}`." - } - }, - "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}/transferLogs", - "id": "bigquerydatatransfer.projects.transferConfigs.runs.transferLogs.list", - "path": "v1/{+parent}/transferLogs" - } - } - } - }, "methods": { - "delete": { - "description": "Deletes the specified transfer run.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "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/[^/]+/transferConfigs/[^/]+/runs/[^/]+$", - "location": "path" - } - }, - "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": { - "description": "Returns information about the particular transfer run.", "response": { "$ref": "TransferRun" }, @@ -957,31 +896,54 @@ ], "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/[^/]+/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}`" + "pattern": "^projects/[^/]+/transferConfigs/[^/]+/runs/[^/]+$" } }, "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}/runs/{runsId}", "path": "v1/{+name}", - "id": "bigquerydatatransfer.projects.transferConfigs.runs.get" + "id": "bigquerydatatransfer.projects.transferConfigs.runs.get", + "description": "Returns information about the particular transfer run." }, "list": { + "response": { + "$ref": "ListTransferRunsResponse" + }, + "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": { + "type": "string", + "location": "query", + "enum": [ + "RUN_ATTEMPT_UNSPECIFIED", + "LATEST" + ], + "description": "Indicates how run attempts are to be pulled." + }, + "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", + "pattern": "^projects/[^/]+/transferConfigs/[^/]+$", + "location": "path" + }, "pageToken": { + "location": "query", "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" + "type": "string" }, "states": { - "location": "query", "enum": [ "TRANSFER_STATE_UNSPECIFIED", "PENDING", @@ -992,42 +954,102 @@ ], "description": "When specified, only transfer runs with requested states are returned.", "type": "string", - "repeated": true + "repeated": true, + "location": "query" }, "pageSize": { + "location": "query", "description": "Page size. The default page size is the maximum value of 1000 results.", "format": "int32", - "type": "integer", - "location": "query" - }, - "runAttempt": { - "enum": [ - "RUN_ATTEMPT_UNSPECIFIED", - "LATEST" - ], - "description": "Indicates how run attempts are to be pulled.", - "type": "string", - "location": "query" - }, - "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", - "pattern": "^projects/[^/]+/transferConfigs/[^/]+$", - "location": "path" + "type": "integer" } }, "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.", + "description": "Returns information about running and completed jobs." + }, + "delete": { + "parameters": { + "name": { + "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/[^/]+/transferConfigs/[^/]+/runs/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/transferConfigs/{transferConfigsId}/runs/{runsId}", + "id": "bigquerydatatransfer.projects.transferConfigs.runs.delete", + "path": "v1/{+name}", + "description": "Deletes the specified transfer run.", + "httpMethod": "DELETE", "response": { - "$ref": "ListTransferRunsResponse" + "$ref": "Empty" }, "parameterOrder": [ - "parent" - ], - "httpMethod": "GET" + "name" + ] + } + }, + "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" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "parameters": { + "parent": { + "location": "path", + "description": "Transfer run name in the form:\n`projects/{project_id}/transferConfigs/{config_Id}/runs/{run_id}`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/transferConfigs/[^/]+/runs/[^/]+$" + }, + "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.", + "type": "string" + }, + "pageSize": { + "description": "Page size. The default page size is the maximum value of 1000 results.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "messageTypes": { + "location": "query", + "enum": [ + "MESSAGE_SEVERITY_UNSPECIFIED", + "INFO", + "WARNING", + "ERROR" + ], + "description": "Message types to return. If not populated - INFO, WARNING and ERROR\nmessages are returned.", + "type": "string", + "repeated": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/bigquery", + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } + } } } } @@ -1037,24 +1059,64 @@ } }, "parameters": { - "prettyPrint": { + "key": { "location": "query", - "description": "Returns response with indentations and line breaks.", + "description": "API key. 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": { "type": "boolean", - "default": "true" + "default": "true", + "location": "query", + "description": "Pretty-print response." }, - "fields": { + "bearer_token": { + "description": "OAuth bearer token.", + "type": "string", + "location": "query" + }, + "oauth_token": { + "type": "string", "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" + "description": "OAuth 2.0 token for the current user." + }, + "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": { "location": "query", "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", "type": "string" }, - "$.xgafv": { + "fields": { + "description": "Selector specifying which fields to include in a partial response.", "type": "string", + "location": "query" + }, + "callback": { + "location": "query", + "description": "JSONP", + "type": "string" + }, + "$.xgafv": { "enumDescriptions": [ "v1 error format", "v2 error format" @@ -1064,15 +1126,10 @@ "1", "2" ], - "description": "V1 error format." - }, - "callback": { - "location": "query", - "description": "JSONP", + "description": "V1 error format.", "type": "string" }, "alt": { - "default": "json", "enum": [ "json", "media", @@ -1085,43 +1142,8 @@ "Responses with Content-Type of application/x-protobuf" ], "location": "query", - "description": "Data format for response." - }, - "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": { - "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" + "description": "Data format for response.", + "default": "json" } }, "version": "v1", @@ -1130,38 +1152,70 @@ "description": "Transfers data from partner SaaS applications to Google BigQuery on a scheduled, managed basis.", "servicePath": "", "basePath": "", - "revision": "20180429", - "documentationLink": "https://cloud.google.com/bigquery/", "id": "bigquerydatatransfer:v1", + "documentationLink": "https://cloud.google.com/bigquery/", + "revision": "20180508", "discoveryVersion": "v1", "version_module": true, "schemas": { + "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": { + "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" + } + } + }, + "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" + "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 `{}`." }, "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": { - "description": "The canonical id for this location. For example: `\"us-east1\"`.", - "type": "string" - }, - "displayName": { - "description": "The friendly name for this location, typically a nearby city name.\nFor example, \"Tokyo\".", - "type": "string" - }, "metadata": { "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" + "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.", "type": "object" @@ -1172,11 +1226,24 @@ }, "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": { + "type": "string", + "description": "The canonical id for this location. For example: `\"us-east1\"`." + }, + "displayName": { + "description": "The friendly name for this location, typically a nearby city name.\nFor example, \"Tokyo\".", + "type": "string" } }, "id": "Location" }, "TransferConfig": { + "id": "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": { @@ -1185,7 +1252,6 @@ "type": "string" }, "state": { - "type": "string", "enumDescriptions": [ "State placeholder.", "Data transfer is scheduled and is waiting to be picked up by\ndata transfer backend.", @@ -1202,25 +1268,26 @@ "FAILED", "CANCELLED" ], - "description": "Output only. State of the most recently updated transfer run." + "description": "Output only. State of the most recently updated transfer run.", + "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", + "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" }, "destinationDatasetId": { "description": "The BigQuery target dataset id.", "type": "string" }, - "name": { - "type": "string", - "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." + "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" }, "params": { "additionalProperties": { - "description": "Properties of the object.", - "type": "any" + "type": "any", + "description": "Properties of the object." }, "description": "Data transfer specific parameters.", "type": "object" @@ -1233,15 +1300,15 @@ "description": "User specified display name for the data transfer.", "type": "string" }, + "disabled": { + "description": "Is this config disabled. When set to true, no runs are scheduled\nfor a given transfer.", + "type": "boolean" + }, "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", @@ -1256,25 +1323,15 @@ "format": "int32", "type": "integer" } - }, - "id": "TransferConfig" + } }, "TransferRun": { - "type": "object", "properties": { "dataSourceId": { "description": "Output only. Data source id.", "type": "string" }, "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", @@ -1284,28 +1341,36 @@ "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", + "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." + ] + }, + "destinationDatasetId": { + "description": "Output only. The BigQuery target dataset id.", "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": { - "type": "string", - "description": "Output only. The BigQuery target dataset id." + "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" }, "params": { - "type": "object", "additionalProperties": { "description": "Properties of the object.", "type": "any" }, - "description": "Output only. Data transfer specific parameters." + "description": "Output only. Data transfer specific parameters.", + "type": "object" }, "endTime": { "description": "Output only. Time when transfer run ended.\nParameter ignored by server for input requests.", @@ -1336,13 +1401,14 @@ "type": "string" }, "runTime": { - "type": "string", "description": "For batch transfer runs, specifies the date and time that\ndata should be ingested.", - "format": "google-datetime" + "format": "google-datetime", + "type": "string" } }, "id": "TransferRun", - "description": "Represents a data transfer run." + "description": "Represents a data transfer run.", + "type": "object" }, "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.", @@ -1355,8 +1421,8 @@ "type": "object", "properties": { "hasValidCreds": { - "description": "If set to `true`, the credentials exist and are valid.", - "type": "boolean" + "type": "boolean", + "description": "If set to `true`, the credentials exist and are valid." } }, "id": "CheckValidCredsResponse" @@ -1366,33 +1432,15 @@ "type": "object", "properties": { "runs": { - "description": "The transfer runs that were scheduled.", "type": "array", "items": { "$ref": "TransferRun" - } + }, + "description": "The transfer runs that were scheduled." } }, "id": "ScheduleTransferRunsResponse" }, - "ListTransferLogsResponse": { - "description": "The returned list transfer run messages.", - "type": "object", - "properties": { - "transferMessages": { - "description": "Output only. The stored pipeline transfer messages.", - "type": "array", - "items": { - "$ref": "TransferMessage" - } - }, - "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" - } - }, - "id": "ListTransferLogsResponse" - }, "TransferMessage": { "description": "Represents a user facing message for a particular data transfer run.", "type": "object", @@ -1403,8 +1451,6 @@ "type": "string" }, "severity": { - "description": "Message severity.", - "type": "string", "enumDescriptions": [ "No severity specified.", "Informational message.", @@ -1416,7 +1462,9 @@ "INFO", "WARNING", "ERROR" - ] + ], + "description": "Message severity.", + "type": "string" }, "messageText": { "type": "string", @@ -1425,6 +1473,24 @@ }, "id": "TransferMessage" }, + "ListTransferLogsResponse": { + "id": "ListTransferLogsResponse", + "description": "The returned list transfer run messages.", + "type": "object", + "properties": { + "transferMessages": { + "description": "Output only. The stored pipeline transfer messages.", + "type": "array", + "items": { + "$ref": "TransferMessage" + } + }, + "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" + } + } + }, "ListDataSourcesResponse": { "description": "Returns list of supported data sources and their metadata.", "type": "object", @@ -1447,44 +1513,12 @@ "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": { - "repeated": { - "description": "Can parameter have multiple values.", - "type": "boolean" - }, - "displayName": { - "description": "Parameter display name in the user interface.", - "type": "string" - }, - "immutable": { - "description": "Cannot be changed after initial creation.", - "type": "boolean" - }, - "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" - }, - "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", @@ -1495,7 +1529,16 @@ "PLUS_PAGE" ], "description": "Parameter type.", - "type": "string" + "type": "string", + "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." + ] }, "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.", @@ -1513,57 +1556,62 @@ } }, "minValue": { + "type": "number", "description": "For integer and double values specifies minimum allowed value.", - "format": "double", - "type": "number" + "format": "double" }, "validationHelpUrl": { "description": "URL to a help document to further explain the naming requirements.", "type": "string" }, "validationRegex": { - "type": "string", - "description": "Regular expression which can be used for parameter validation." + "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", + "description": "Is parameter required." + }, + "repeated": { + "description": "Can parameter have multiple values.", "type": "boolean" - } - }, - "id": "DataSourceParameter" - }, - "ListLocationsResponse": { - "description": "The response message for Locations.ListLocations.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "The standard List next-page token.", + }, + "displayName": { + "description": "Parameter display name in the user interface.", "type": "string" }, - "locations": { - "description": "A list of locations that matches the specified filter in the request.", + "immutable": { + "description": "Cannot be changed after initial creation.", + "type": "boolean" + }, + "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" + }, + "fields": { + "description": "When parameter is a record, describes child fields.", "type": "array", "items": { - "$ref": "Location" + "$ref": "DataSourceParameter" } } }, - "id": "ListLocationsResponse" + "id": "DataSourceParameter" }, "ListTransferRunsResponse": { "description": "The returned list of pipelines in the project.", "type": "object", "properties": { "transferRuns": { + "description": "Output only. The stored pipeline transfer runs.", "type": "array", "items": { "$ref": "TransferRun" - }, - "description": "Output only. The stored pipeline transfer runs." + } }, "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.", @@ -1572,25 +1620,44 @@ }, "id": "ListTransferRunsResponse" }, + "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" + }, "ListTransferConfigsResponse": { "description": "The returned list of pipelines in the project.", "type": "object", "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.", "type": "array", "items": { "$ref": "TransferConfig" } - }, - "nextPageToken": { - "type": "string", - "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." } }, "id": "ListTransferConfigsResponse" }, "DataSource": { + "id": "DataSource", "description": "Represents data source metadata. Metadata is sufficient to\nrender UI and request proper OAuth tokens.", "type": "object", "properties": { @@ -1602,8 +1669,8 @@ } }, "name": { - "description": "Output only. Data source resource name.", - "type": "string" + "type": "string", + "description": "Output only. Data source resource name." }, "minimumScheduleInterval": { "description": "The minimum interval for scheduler to schedule runs.", @@ -1615,18 +1682,18 @@ "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" + "type": "string", + "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." + ] }, "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.", @@ -1642,8 +1709,6 @@ "type": "integer" }, "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.", - "type": "string", "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.", @@ -1653,7 +1718,9 @@ "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": { "type": "array", @@ -1667,8 +1734,8 @@ "type": "string" }, "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" + "type": "string", + "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`." }, "supportsMultipleTransfers": { "type": "boolean", @@ -1679,11 +1746,12 @@ "type": "boolean" }, "defaultDataRefreshWindowDays": { + "type": "integer", "description": "Default data refresh window on days.\nOnly meaningful when `data_refresh_type` = `SLIDING_WINDOW`.", - "format": "int32", - "type": "integer" + "format": "int32" }, "transferType": { + "description": "Deprecated. This field has no effect.", "type": "string", "enumDescriptions": [ "Invalid or Unknown transfer type placeholder.", @@ -1694,8 +1762,7 @@ "TRANSFER_TYPE_UNSPECIFIED", "BATCH", "STREAMING" - ], - "description": "Deprecated. This field has no effect." + ] }, "description": { "description": "User friendly data source description string.", @@ -1705,79 +1772,12 @@ "description": "Data source id.", "type": "string" } - }, - "id": "DataSource" - }, - "ScheduleTransferRunsRequest": { - "description": "A request to schedule transfer runs for a time range.", - "type": "object", - "properties": { - "startTime": { - "type": "string", - "description": "Start time of the range of transfer runs. For example,\n`\"2017-05-25T00:00:00+00:00\"`.", - "format": "google-datetime" - }, - "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" - }, - "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" + } } }, "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": "BigQuery Data Transfer", - "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.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://bigquerydatatransfer.googleapis.com/", - "ownerDomain": "google.com", - "name": "bigquerydatatransfer", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "BigQuery Data Transfer API" + } } diff --git a/DiscoveryJson/calendar_v3.json b/DiscoveryJson/calendar_v3.json index f0079d6bf0..191261e3a9 100644 --- a/DiscoveryJson/calendar_v3.json +++ b/DiscoveryJson/calendar_v3.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/xORU0p5HmmFGarq6IhTKV-6zsC0\"", + "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/MtPdLfSc9_xH4l7gmHDfdK3AHNE\"", "discoveryVersion": "v1", "id": "calendar:v3", "name": "calendar", "version": "v3", - "revision": "20180501", + "revision": "20180506", "title": "Calendar API", "description": "Manipulates events and other calendar data.", "ownerDomain": "google.com", diff --git a/DiscoveryJson/chat_v1.json b/DiscoveryJson/chat_v1.json index 3e85ddf6e9..7d7125e399 100644 --- a/DiscoveryJson/chat_v1.json +++ b/DiscoveryJson/chat_v1.json @@ -1,347 +1,93 @@ { - "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": "Hangouts Chat", - "rootUrl": "https://chat.googleapis.com/", - "ownerDomain": "google.com", - "name": "chat", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Hangouts Chat API", - "ownerName": "Google", - "resources": { - "spaces": { - "methods": { - "list": { - "httpMethod": "GET", - "parameterOrder": [], - "response": { - "$ref": "ListSpacesResponse" - }, - "parameters": { - "pageToken": { - "location": "query", - "description": "A token identifying a page of results the server should return.", - "type": "string" - }, - "pageSize": { - "location": "query", - "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", - "type": "integer" - } - }, - "flatPath": "v1/spaces", - "id": "chat.spaces.list", - "path": "v1/spaces", - "description": "Lists spaces the caller is a member of." + "discoveryVersion": "v1", + "version_module": true, + "schemas": { + "WidgetMarkup": { + "description": "A widget is a UI element that presents texts, images, etc.", + "type": "object", + "properties": { + "image": { + "description": "Display an image in this widget.", + "$ref": "Image" }, - "get": { - "description": "Returns a space.", - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Space" - }, - "parameters": { - "name": { - "location": "path", - "description": "Required. Resource name of the space, in the form \"spaces/*\".\n\nExample: spaces/AAAAMpdlehY", - "required": true, - "type": "string", - "pattern": "^spaces/[^/]+$" - } - }, - "flatPath": "v1/spaces/{spacesId}", - "id": "chat.spaces.get", - "path": "v1/{+name}" - } - }, - "resources": { - "members": { - "methods": { - "list": { - "path": "v1/{+parent}/members", - "id": "chat.spaces.members.list", - "description": "Lists human memberships in a space.", - "response": { - "$ref": "ListMembershipsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "pageToken": { - "location": "query", - "description": "A token identifying a page of results the server should return.", - "type": "string" - }, - "pageSize": { - "type": "integer", - "location": "query", - "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" - }, - "parent": { - "pattern": "^spaces/[^/]+$", - "location": "path", - "description": "Required. The resource name of the space for which membership list is to be\nfetched, in the form \"spaces/*\".\n\nExample: spaces/AAAAMpdlehY", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/spaces/{spacesId}/members" - }, - "get": { - "description": "Returns a membership.", - "httpMethod": "GET", - "response": { - "$ref": "Membership" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "location": "path", - "description": "Required. Resource name of the membership to be retrieved, in the form\n\"spaces/*/members/*\".\n\nExample: spaces/AAAAMpdlehY/members/105115627578887013105", - "required": true, - "type": "string", - "pattern": "^spaces/[^/]+/members/[^/]+$" - } - }, - "flatPath": "v1/spaces/{spacesId}/members/{membersId}", - "id": "chat.spaces.members.get", - "path": "v1/{+name}" - } + "buttons": { + "description": "A list of buttons. Buttons is also oneof data and only one of these\nfields should be set.", + "type": "array", + "items": { + "$ref": "Button" } }, - "messages": { - "methods": { - "delete": { - "description": "Deletes a message.", - "httpMethod": "DELETE", - "response": { - "$ref": "Empty" - }, - "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", - "required": true, - "type": "string", - "pattern": "^spaces/[^/]+/messages/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/spaces/{spacesId}/messages/{messagesId}", - "id": "chat.spaces.messages.delete", - "path": "v1/{+name}" - }, - "get": { - "description": "Returns a message.", - "response": { - "$ref": "Message" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "location": "path", - "description": "Required. Resource name of the message to be retrieved, in the form\n\"spaces/*/messages/*\".\n\nExample: spaces/AAAAMpdlehY/messages/UMxbHmzDlr4.UMxbHmzDlr4", - "required": true, - "type": "string", - "pattern": "^spaces/[^/]+/messages/[^/]+$" - } - }, - "flatPath": "v1/spaces/{spacesId}/messages/{messagesId}", - "path": "v1/{+name}", - "id": "chat.spaces.messages.get" - }, - "update": { - "id": "chat.spaces.messages.update", - "path": "v1/{+name}", - "description": "Updates a message.", - "request": { - "$ref": "Message" - }, - "httpMethod": "PUT", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Message" - }, - "parameters": { - "name": { - "location": "path", - "description": "Resource name, in the form \"spaces/*/messages/*\".\n\nExample: spaces/AAAAMpdlehY/messages/UMxbHmzDlr4.UMxbHmzDlr4", - "required": true, - "type": "string", - "pattern": "^spaces/[^/]+/messages/[^/]+$" - }, - "updateMask": { - "location": "query", - "description": "Required. The field paths to be updated.\n\nCurrently supported field paths: \"text\", \"cards\".", - "format": "google-fieldmask", - "type": "string" - } - }, - "flatPath": "v1/spaces/{spacesId}/messages/{messagesId}" - }, - "create": { - "request": { - "$ref": "Message" - }, - "description": "Creates a message.", - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "Message" - }, - "parameters": { - "parent": { - "pattern": "^spaces/[^/]+$", - "location": "path", - "description": "Required. Space resource name, in the form \"spaces/*\".\nExample: spaces/AAAAMpdlehY", - "required": true, - "type": "string" - }, - "threadKey": { - "location": "query", - "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.", - "type": "string" - } - }, - "flatPath": "v1/spaces/{spacesId}/messages", - "id": "chat.spaces.messages.create", - "path": "v1/{+parent}/messages" - } - } + "textParagraph": { + "description": "Display a text paragraph in this widget.", + "$ref": "TextParagraph" + }, + "keyValue": { + "$ref": "KeyValue", + "description": "Display a key value item in this widget." } - } - } - }, - "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" - }, - "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": { - "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": { - "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" - ] + }, + "id": "WidgetMarkup" }, - "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" + "ActionResponse": { + "description": "Parameters that a bot can use to configure how it's response is posted.", + "type": "object", + "properties": { + "type": { + "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." + ], + "enum": [ + "TYPE_UNSPECIFIED", + "NEW_MESSAGE", + "UPDATE_MESSAGE", + "REQUEST_CONFIG" + ], + "description": "The type of bot response.", + "type": "string" + }, + "url": { + "description": "URL for users to auth or config. (Only for REQUEST_CONFIG response types.)", + "type": "string" + } + }, + "id": "ActionResponse" }, - "access_token": { - "type": "string", - "location": "query", - "description": "OAuth access token." + "Space": { + "properties": { + "name": { + "description": "Resource name of the space, in the form \"spaces/*\".\n\nExample: spaces/AAAAMpdlehYs", + "type": "string" + }, + "displayName": { + "description": "Output only. The display name (only if the space is a room).", + "type": "string" + }, + "type": { + "enumDescriptions": [ + "", + "", + "" + ], + "enum": [ + "TYPE_UNSPECIFIED", + "ROOM", + "DM" + ], + "description": "Output only. The type of a space.", + "type": "string" + } + }, + "id": "Space", + "description": "A room or DM in Hangouts Chat.", + "type": "object" }, - "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://chat.googleapis.com/", - "description": "Enables bots to fetch information and perform actions in the new Hangouts Chat.", - "kind": "discovery#restDescription", - "servicePath": "", - "basePath": "", - "revision": "20180502", - "documentationLink": "https://developers.google.com/hangouts/chat", - "id": "chat:v1", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { "Card": { "description": "A card is a UI element that can contain UI widgets such as texts, images.", "type": "object", "properties": { - "name": { - "description": "Name of the card.", - "type": "string" - }, "sections": { "description": "Sections are separated by a line divider.", "type": "array", @@ -350,15 +96,19 @@ } }, "cardActions": { + "description": "The actions of this card.", "type": "array", "items": { "$ref": "CardAction" - }, - "description": "The actions of this card." + } }, "header": { - "$ref": "CardHeader", - "description": "The header of the card. A header usually contains a title and an image." + "description": "The header of the card. A header usually contains a title and an image.", + "$ref": "CardHeader" + }, + "name": { + "description": "Name of the card.", + "type": "string" } }, "id": "Card" @@ -368,65 +118,64 @@ "description": "A message in Hangouts Chat.", "type": "object", "properties": { - "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.", - "type": "array", - "items": { - "$ref": "Card" - } - }, - "sender": { - "$ref": "User", - "description": "The user who created the message." - }, - "thread": { - "$ref": "Thread", - "description": "The thread the message belongs to." - }, - "annotations": { - "description": "Output only. Annotations associated with the text in this message.", - "type": "array", - "items": { - "$ref": "Annotation" - } - }, "name": { "description": "Resource name, in the form \"spaces/*/messages/*\".\n\nExample: spaces/AAAAMpdlehY/messages/UMxbHmzDlr4.UMxbHmzDlr4", "type": "string" }, "previewText": { - "type": "string", - "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." - }, - "space": { - "description": "The space the message belongs to.", - "$ref": "Space" + "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" }, "text": { "description": "Plain-text body of the message.", "type": "string" }, - "fallbackText": { - "type": "string", - "description": "A plain-text description of the message's cards, used when the actual cards\ncannot be displayed (e.g. mobile notifications)." + "space": { + "$ref": "Space", + "description": "The space the message belongs to." }, "argumentText": { "description": "Plain-text body of the message with all bot mentions stripped out.", "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" + }, "actionResponse": { - "$ref": "ActionResponse", - "description": "Input only. Parameters that a bot can use to configure how its response is\nposted." + "description": "Input only. Parameters that a bot can use to configure how its response is\nposted.", + "$ref": "ActionResponse" }, "createTime": { "description": "Output only. The time at which the message was created in Hangouts Chat\nserver.", "format": "google-datetime", "type": "string" + }, + "sender": { + "$ref": "User", + "description": "The user who created the message." + }, + "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.", + "type": "array", + "items": { + "$ref": "Card" + } + }, + "thread": { + "description": "The thread the message belongs to.", + "$ref": "Thread" + }, + "annotations": { + "description": "Output only. Annotations associated with the text in this message.", + "type": "array", + "items": { + "$ref": "Annotation" + } } } }, "OnClick": { - "id": "OnClick", "description": "An onclick action (e.g. open a link).", "type": "object", "properties": { @@ -438,70 +187,60 @@ "description": "A form action will be trigger by this onclick if specified.", "$ref": "FormAction" } - } + }, + "id": "OnClick" }, "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.", "type": "object", "properties": { - "key": { - "description": "The name of the parameter for the action script.", - "type": "string" - }, "value": { "description": "The value of the parameter.", "type": "string" + }, + "key": { + "type": "string", + "description": "The name of the parameter for the action script." } }, "id": "ActionParameter" }, "User": { - "description": "A user in Hangouts Chat.", - "type": "object", "properties": { - "name": { - "description": "Resource name, in the format \"users/*\".", - "type": "string" - }, - "displayName": { - "description": "The user's display name.", - "type": "string" - }, "type": { - "enum": [ - "TYPE_UNSPECIFIED", - "HUMAN", - "BOT" - ], "description": "User type.", "type": "string", "enumDescriptions": [ "Default value for the enum. DO NOT USE.", "Human user.", "Bot user." + ], + "enum": [ + "TYPE_UNSPECIFIED", + "HUMAN", + "BOT" ] - } - }, - "id": "User" - }, - "TextParagraph": { - "properties": { - "text": { + }, + "name": { + "description": "Resource name, in the format \"users/*\".", + "type": "string" + }, + "displayName": { + "description": "The user's display name.", "type": "string" } }, - "id": "TextParagraph", - "description": "A paragraph of text. Formatted text supported.", + "id": "User", + "description": "A user in Hangouts Chat.", "type": "object" }, "Membership": { - "id": "Membership", "description": "Represents a membership relation in Hangouts Chat.", "type": "object", "properties": { "member": { - "description": "Member details.", - "$ref": "User" + "$ref": "User", + "description": "Member details." }, "createTime": { "description": "The creation time of the membership a.k.a the time at which the member\njoined the space, if applicable.", @@ -528,25 +267,25 @@ "description": "Resource name of the membership, in the form \"spaces/*/members/*\".\n\nExample: spaces/AAAAMpdlehY/members/105115627578887013105", "type": "string" } - } + }, + "id": "Membership" + }, + "TextParagraph": { + "description": "A paragraph of text. Formatted text supported.", + "type": "object", + "properties": { + "text": { + "type": "string" + } + }, + "id": "TextParagraph" }, "ImageButton": { "description": "An image button with an onclick action.", "type": "object", "properties": { - "onClick": { - "$ref": "OnClick", - "description": "The onclick action." - }, - "iconUrl": { - "description": "The icon specified by a URL.", - "type": "string" - }, - "name": { - "type": "string", - "description": "The name of this image_button which will be used for accessibility.\nDefault value will be provided if developers don't specify." - }, "icon": { + "type": "string", "enumDescriptions": [ "", "", @@ -613,64 +352,73 @@ "VIDEO_CAMERA", "VIDEO_PLAY" ], - "description": "The icon specified by an enum that indices to an icon provided by Chat\nAPI.", + "description": "The icon specified by an enum that indices to an icon provided by Chat\nAPI." + }, + "onClick": { + "description": "The onclick action.", + "$ref": "OnClick" + }, + "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" } }, "id": "ImageButton" }, - "CardHeader": { + "ListSpacesResponse": { + "type": "object", "properties": { - "subtitle": { - "description": "The subtitle of the card header.", - "type": "string" + "spaces": { + "description": "List of spaces in the requested (or first) page.", + "type": "array", + "items": { + "$ref": "Space" + } }, - "imageUrl": { - "description": "The URL of the image in the card header.", + "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" - }, + } + }, + "id": "ListSpacesResponse" + }, + "CardHeader": { + "properties": { "imageStyle": { + "enum": [ + "IMAGE_STYLE_UNSPECIFIED", + "IMAGE", + "AVATAR" + ], "description": "The image's type (e.g. square border or circular border).", "type": "string", "enumDescriptions": [ "", "Square border.", "Circular border." - ], - "enum": [ - "IMAGE_STYLE_UNSPECIFIED", - "IMAGE", - "AVATAR" ] }, "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" + }, + "subtitle": { + "description": "The subtitle of the card header.", + "type": "string" + }, + "imageUrl": { + "description": "The URL of the image in the card header.", + "type": "string" } }, "id": "CardHeader", "type": "object" }, - "ListSpacesResponse": { - "type": "object", - "properties": { - "spaces": { - "description": "List of spaces in the requested (or first) page.", - "type": "array", - "items": { - "$ref": "Space" - } - }, - "nextPageToken": { - "type": "string", - "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." - } - }, - "id": "ListSpacesResponse" - }, "TextButton": { - "description": "A button with text and onclick action.", - "type": "object", "properties": { "text": { "description": "The text of the button.", @@ -681,57 +429,49 @@ "description": "The onclick action of the button." } }, - "id": "TextButton" + "id": "TextButton", + "description": "A button with text and onclick action.", + "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": {} + "properties": {}, + "id": "Empty" }, "KeyValue": { - "id": "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.", "type": "object", "properties": { + "onClick": { + "$ref": "OnClick", + "description": "The onclick action. Only the top label, bottom label and content region\nare clickable." + }, + "contentMultiline": { + "description": "If the content should be multiline.", + "type": "boolean" + }, + "topLabel": { + "description": "The text of the top label. Formatted text supported.", + "type": "string" + }, + "iconUrl": { + "description": "The icon specified by a URL.", + "type": "string" + }, + "content": { + "description": "The text of the content. Formatted text supported and always required.", + "type": "string" + }, + "button": { + "$ref": "Button", + "description": "A button that can be clicked to trigger an action." + }, "bottomLabel": { "description": "The text of the bottom label. Formatted text supported.", "type": "string" }, "icon": { - "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" - ], "description": "An enum value that will be replaced by the Chat API with the\ncorresponding icon image.", "type": "string", "enumDescriptions": [ @@ -766,36 +506,45 @@ "", "", "" + ], + "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" ] - }, - "contentMultiline": { - "description": "If the content should be multiline.", - "type": "boolean" - }, - "onClick": { - "description": "The onclick action. Only the top label, bottom label and content region\nare clickable.", - "$ref": "OnClick" - }, - "topLabel": { - "description": "The text of the top label. Formatted text supported.", - "type": "string" - }, - "iconUrl": { - "description": "The icon specified by a URL.", - "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" } - } + }, + "id": "KeyValue" }, "Thread": { - "id": "Thread", "description": "A thread in Hangouts Chat.", "type": "object", "properties": { @@ -803,28 +552,28 @@ "description": "Resource name, in the form \"spaces/*/threads/*\".\n\nExample: spaces/AAAAMpdlehY/threads/UMxbHmzDlr4", "type": "string" } - } + }, + "id": "Thread" }, "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).", "type": "object", "properties": { - "header": { - "description": "The header of the section, text formatted supported.", - "type": "string" - }, "widgets": { "description": "A section must contain at least 1 widget.", "type": "array", "items": { "$ref": "WidgetMarkup" } + }, + "header": { + "description": "The header of the section, text formatted supported.", + "type": "string" } }, - "id": "Section" + "id": "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)." }, "OpenLink": { - "type": "object", "properties": { "url": { "description": "The URL to open.", @@ -832,9 +581,11 @@ } }, "id": "OpenLink", - "description": "A link that opens a new window." + "description": "A link that opens a new window.", + "type": "object" }, "Button": { + "description": "A button. Can be a text button or an image button.", "type": "object", "properties": { "textButton": { @@ -846,218 +597,467 @@ "description": "A button with image and onclick action." } }, - "id": "Button", - "description": "A button. Can be a text button or an image button." + "id": "Button" + }, + "ListMembershipsResponse": { + "type": "object", + "properties": { + "memberships": { + "description": "List of memberships in the requested (or first) page.", + "type": "array", + "items": { + "$ref": "Membership" + } + }, + "nextPageToken": { + "type": "string", + "description": "Continuation token to retrieve the next page of results. It will be empty\nfor the last page of results." + } + }, + "id": "ListMembershipsResponse" + }, + "FormAction": { + "id": "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.", + "type": "object", + "properties": { + "actionMethodName": { + "description": "Apps Script function to invoke when the containing element is\nclicked/activated.", + "type": "string" + }, + "parameters": { + "description": "List of action parameters.", + "type": "array", + "items": { + "$ref": "ActionParameter" + } + } + } + }, + "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.", + "type": "object", + "properties": { + "onClick": { + "$ref": "OnClick", + "description": "The onclick action for this action item." + }, + "actionLabel": { + "description": "The label used to be displayed in the action menu item.", + "type": "string" + } + }, + "id": "CardAction" + }, + "UserMentionMetadata": { + "description": "Annotation metadata for user mentions (@).", + "type": "object", + "properties": { + "user": { + "$ref": "User", + "description": "The user mentioned." + }, + "type": { + "enumDescriptions": [ + "Default value for the enum. DO NOT USE.", + "Add user to space.", + "Mention user in space." + ], + "enum": [ + "TYPE_UNSPECIFIED", + "ADD", + "MENTION" + ], + "description": "The type of user mention.", + "type": "string" + } + }, + "id": "UserMentionMetadata" }, - "ListMembershipsResponse": { - "type": "object", + "Image": { "properties": { - "memberships": { - "description": "List of memberships in the requested (or first) page.", - "type": "array", - "items": { - "$ref": "Membership" - } - }, - "nextPageToken": { - "description": "Continuation token to retrieve the next page of results. It will be empty\nfor the last page of results.", + "imageUrl": { + "description": "The URL of the image.", "type": "string" + }, + "onClick": { + "description": "The onclick action.", + "$ref": "OnClick" + }, + "aspectRatio": { + "type": "number", + "description": "The aspect ratio of this image (width/height).", + "format": "double" } }, - "id": "ListMembershipsResponse" + "id": "Image", + "description": "An image that is specified by a URL and can have an onclick action.", + "type": "object" }, - "FormAction": { - "id": "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.", + "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```", "type": "object", "properties": { - "actionMethodName": { + "userMention": { + "$ref": "UserMentionMetadata", + "description": "The metadata of user mention." + }, + "type": { + "enum": [ + "ANNOTATION_TYPE_UNSPECIFIED", + "USER_MENTION" + ], + "description": "The type of this annotation.", "type": "string", - "description": "Apps Script function to invoke when the containing element is\nclicked/activated." + "enumDescriptions": [ + "Default value for the enum. DO NOT USE.", + "A user is mentioned." + ] }, - "parameters": { - "description": "List of action parameters.", - "type": "array", - "items": { - "$ref": "ActionParameter" + "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" + } + }, + "id": "Annotation" + } + }, + "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": "Hangouts Chat", + "rootUrl": "https://chat.googleapis.com/", + "ownerDomain": "google.com", + "name": "chat", + "batchPath": "batch", + "fullyEncodeReservedExpansion": true, + "title": "Hangouts Chat API", + "ownerName": "Google", + "resources": { + "spaces": { + "methods": { + "list": { + "response": { + "$ref": "ListSpacesResponse" + }, + "parameterOrder": [], + "httpMethod": "GET", + "parameters": { + "pageToken": { + "location": "query", + "description": "A token identifying a page of results the server should return.", + "type": "string" + }, + "pageSize": { + "location": "query", + "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", + "type": "integer" + } + }, + "flatPath": "v1/spaces", + "path": "v1/spaces", + "id": "chat.spaces.list", + "description": "Lists spaces the caller is a member of." + }, + "get": { + "description": "Returns a space.", + "response": { + "$ref": "Space" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "parameters": { + "name": { + "description": "Required. Resource name of the space, in the form \"spaces/*\".\n\nExample: spaces/AAAAMpdlehY", + "required": true, + "type": "string", + "pattern": "^spaces/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/spaces/{spacesId}", + "path": "v1/{+name}", + "id": "chat.spaces.get" + } + }, + "resources": { + "messages": { + "methods": { + "get": { + "response": { + "$ref": "Message" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "parameters": { + "name": { + "location": "path", + "description": "Required. Resource name of the message to be retrieved, in the form\n\"spaces/*/messages/*\".\n\nExample: spaces/AAAAMpdlehY/messages/UMxbHmzDlr4.UMxbHmzDlr4", + "required": true, + "type": "string", + "pattern": "^spaces/[^/]+/messages/[^/]+$" + } + }, + "flatPath": "v1/spaces/{spacesId}/messages/{messagesId}", + "path": "v1/{+name}", + "id": "chat.spaces.messages.get", + "description": "Returns a message." + }, + "update": { + "response": { + "$ref": "Message" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "PUT", + "parameters": { + "name": { + "description": "Resource name, in the form \"spaces/*/messages/*\".\n\nExample: spaces/AAAAMpdlehY/messages/UMxbHmzDlr4.UMxbHmzDlr4", + "required": true, + "type": "string", + "pattern": "^spaces/[^/]+/messages/[^/]+$", + "location": "path" + }, + "updateMask": { + "description": "Required. The field paths to be updated.\n\nCurrently supported field paths: \"text\", \"cards\".", + "format": "google-fieldmask", + "type": "string", + "location": "query" + } + }, + "flatPath": "v1/spaces/{spacesId}/messages/{messagesId}", + "path": "v1/{+name}", + "id": "chat.spaces.messages.update", + "request": { + "$ref": "Message" + }, + "description": "Updates a message." + }, + "create": { + "response": { + "$ref": "Message" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "parameters": { + "parent": { + "description": "Required. Space resource name, in the form \"spaces/*\".\nExample: spaces/AAAAMpdlehY", + "required": true, + "type": "string", + "pattern": "^spaces/[^/]+$", + "location": "path" + }, + "threadKey": { + "location": "query", + "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.", + "type": "string" + } + }, + "flatPath": "v1/spaces/{spacesId}/messages", + "path": "v1/{+parent}/messages", + "id": "chat.spaces.messages.create", + "request": { + "$ref": "Message" + }, + "description": "Creates a message." + }, + "delete": { + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "parameters": { + "name": { + "pattern": "^spaces/[^/]+/messages/[^/]+$", + "location": "path", + "description": "Required. Resource name of the message to be deleted, in the form\n\"spaces/*/messages/*\"\n\nExample: spaces/AAAAMpdlehY/messages/UMxbHmzDlr4.UMxbHmzDlr4", + "required": true, + "type": "string" + } + }, + "flatPath": "v1/spaces/{spacesId}/messages/{messagesId}", + "path": "v1/{+name}", + "id": "chat.spaces.messages.delete", + "description": "Deletes a message." + } + } + }, + "members": { + "methods": { + "list": { + "httpMethod": "GET", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "ListMembershipsResponse" + }, + "parameters": { + "pageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string", + "location": "query" + }, + "pageSize": { + "type": "integer", + "location": "query", + "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" + }, + "parent": { + "required": true, + "type": "string", + "pattern": "^spaces/[^/]+$", + "location": "path", + "description": "Required. The resource name of the space for which membership list is to be\nfetched, in the form \"spaces/*\".\n\nExample: spaces/AAAAMpdlehY" + } + }, + "flatPath": "v1/spaces/{spacesId}/members", + "id": "chat.spaces.members.list", + "path": "v1/{+parent}/members", + "description": "Lists human memberships in a space." + }, + "get": { + "parameters": { + "name": { + "description": "Required. Resource name of the membership to be retrieved, in the form\n\"spaces/*/members/*\".\n\nExample: spaces/AAAAMpdlehY/members/105115627578887013105", + "required": true, + "type": "string", + "pattern": "^spaces/[^/]+/members/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/spaces/{spacesId}/members/{membersId}", + "path": "v1/{+name}", + "id": "chat.spaces.members.get", + "description": "Returns a membership.", + "response": { + "$ref": "Membership" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET" + } } } } + } + }, + "parameters": { + "upload_protocol": { + "location": "query", + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "type": "string" }, - "CardAction": { - "type": "object", - "properties": { - "onClick": { - "$ref": "OnClick", - "description": "The onclick action for this action item." - }, - "actionLabel": { - "description": "The label used to be displayed in the action menu item.", - "type": "string" - } - }, - "id": "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." + "prettyPrint": { + "description": "Returns response with indentations and line breaks.", + "type": "boolean", + "default": "true", + "location": "query" }, - "UserMentionMetadata": { - "description": "Annotation metadata for user mentions (@).", - "type": "object", - "properties": { - "user": { - "description": "The user mentioned.", - "$ref": "User" - }, - "type": { - "enumDescriptions": [ - "Default value for the enum. DO NOT USE.", - "Add user to space.", - "Mention user in space." - ], - "enum": [ - "TYPE_UNSPECIFIED", - "ADD", - "MENTION" - ], - "description": "The type of user mention.", - "type": "string" - } - }, - "id": "UserMentionMetadata" + "fields": { + "location": "query", + "description": "Selector specifying which fields to include in a partial response.", + "type": "string" }, - "Image": { - "description": "An image that is specified by a URL and can have an onclick action.", - "type": "object", - "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." - } - }, - "id": "Image" + "uploadType": { + "location": "query", + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string" }, - "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```", - "type": "object", - "properties": { - "startIndex": { - "description": "Start index (0-based, inclusive) in the plain-text message body this\nannotation corresponds to.", - "format": "int32", - "type": "integer" - }, - "userMention": { - "description": "The metadata of user mention.", - "$ref": "UserMentionMetadata" - }, - "type": { - "description": "The type of this annotation.", - "type": "string", - "enumDescriptions": [ - "Default value for the enum. DO NOT USE.", - "A user is mentioned." - ], - "enum": [ - "ANNOTATION_TYPE_UNSPECIFIED", - "USER_MENTION" - ] - }, - "length": { - "description": "Length of the substring in the plain-text message body this annotation\ncorresponds to.", - "format": "int32", - "type": "integer" - } - }, - "id": "Annotation" + "callback": { + "location": "query", + "description": "JSONP", + "type": "string" }, - "WidgetMarkup": { - "type": "object", - "properties": { - "textParagraph": { - "$ref": "TextParagraph", - "description": "Display a text paragraph in this widget." - }, - "keyValue": { - "$ref": "KeyValue", - "description": "Display a key value item in this widget." - }, - "image": { - "$ref": "Image", - "description": "Display an image in this widget." - }, - "buttons": { - "description": "A list of buttons. Buttons is also oneof data and only one of these\nfields should be set.", - "type": "array", - "items": { - "$ref": "Button" - } - } - }, - "id": "WidgetMarkup", - "description": "A widget is a UI element that presents texts, images, etc." + "$.xgafv": { + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "enum": [ + "1", + "2" + ], + "description": "V1 error format.", + "type": "string" }, - "ActionResponse": { - "type": "object", - "properties": { - "type": { - "description": "The type of bot response.", - "type": "string", - "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." - ], - "enum": [ - "TYPE_UNSPECIFIED", - "NEW_MESSAGE", - "UPDATE_MESSAGE", - "REQUEST_CONFIG" - ] - }, - "url": { - "description": "URL for users to auth or config. (Only for REQUEST_CONFIG response types.)", - "type": "string" - } - }, - "id": "ActionResponse", - "description": "Parameters that a bot can use to configure how it's response is posted." + "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" }, - "Space": { - "type": "object", - "properties": { - "name": { - "description": "Resource name of the space, in the form \"spaces/*\".\n\nExample: spaces/AAAAMpdlehYs", - "type": "string" - }, - "displayName": { - "description": "Output only. The display name (only if the space is a room).", - "type": "string" - }, - "type": { - "enum": [ - "TYPE_UNSPECIFIED", - "ROOM", - "DM" - ], - "description": "Output only. The type of a space.", - "type": "string", - "enumDescriptions": [ - "", - "", - "" - ] - } - }, - "id": "Space", - "description": "A room or DM in Hangouts Chat." + "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": { + "type": "string", + "location": "query", + "description": "OAuth bearer token." + }, + "oauth_token": { + "location": "query", + "description": "OAuth 2.0 token for the current user.", + "type": "string" } - } + }, + "version": "v1", + "baseUrl": "https://chat.googleapis.com/", + "kind": "discovery#restDescription", + "description": "Enables bots to fetch information and perform actions in the new Hangouts Chat.", + "servicePath": "", + "basePath": "", + "id": "chat:v1", + "revision": "20180502", + "documentationLink": "https://developers.google.com/hangouts/chat" } diff --git a/DiscoveryJson/classroom_v1.json b/DiscoveryJson/classroom_v1.json index 34b5df7213..f4d7369d93 100644 --- a/DiscoveryJson/classroom_v1.json +++ b/DiscoveryJson/classroom_v1.json @@ -1,166 +1,81 @@ { - "discoveryVersion": "v1", - "ownerName": "Google", - "resources": { - "invitations": { - "methods": { - "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.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "id" - ], - "httpMethod": "POST", - "parameters": { - "id": { - "location": "path", - "description": "Identifier of the invitation to accept.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.rosters" - ], - "flatPath": "v1/invitations/{id}:accept" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/classroom.coursework.me.readonly": { + "description": "View your course work and grades 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.", - "httpMethod": "DELETE", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "id" - ], - "parameters": { - "id": { - "description": "Identifier of the invitation to delete.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.rosters" - ], - "flatPath": "v1/invitations/{id}", - "id": "classroom.invitations.delete", - "path": "v1/invitations/{id}" + "https://www.googleapis.com/auth/classroom.profile.emails": { + "description": "View the email addresses of people in your 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": { - "description": "Identifier of the invitation to return.", - "required": true, - "type": "string", - "location": "path" - } - }, - "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.coursework.me": { + "description": "Manage your course work and view your grades in Google Classroom" }, - "list": { - "response": { - "$ref": "ListInvitationsResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { - "userId": { - "location": "query", - "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" - }, - "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" - }, - "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": { - "location": "query", - "description": "Restricts returned invitations to those for a course with the specified\nidentifier.", - "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", - "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." + "https://www.googleapis.com/auth/classroom.push-notifications": { + "description": "Receive notifications about your Google Classroom data" }, - "create": { - "response": { - "$ref": "Invitation" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/classroom.rosters" - ], - "flatPath": "v1/invitations", - "path": "v1/invitations", - "id": "classroom.invitations.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.", - "request": { - "$ref": "Invitation" - } + "https://www.googleapis.com/auth/classroom.rosters": { + "description": "Manage your Google Classroom class rosters" + }, + "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" + }, + "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.rosters.readonly": { + "description": "View your Google Classroom class rosters" + }, + "https://www.googleapis.com/auth/classroom.profile.photos": { + "description": "View the profile photos of people in your classes" + }, + "https://www.googleapis.com/auth/classroom.announcements.readonly": { + "description": "View announcements in Google Classroom" + }, + "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.student-submissions.me.readonly": { + "description": "View your course work and grades in Google Classroom" + }, + "https://www.googleapis.com/auth/classroom.guardianlinks.me.readonly": { + "description": "View your Google Classroom guardians" + }, + "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" } } - }, + } + }, + "servicePath": "", + "description": "Manages classes, rosters, and invitations in Google Classroom.", + "kind": "discovery#restDescription", + "rootUrl": "https://classroom.googleapis.com/", + "basePath": "", + "ownerDomain": "google.com", + "name": "classroom", + "batchPath": "batch", + "revision": "20180507", + "documentationLink": "https://developers.google.com/classroom/", + "id": "classroom:v1", + "title": "Google Classroom API", + "discoveryVersion": "v1", + "ownerName": "Google", + "resources": { "courses": { "methods": { - "delete": { - "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" - ], - "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." - }, "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.", "response": { @@ -169,18 +84,26 @@ "parameterOrder": [], "httpMethod": "GET", "parameters": { - "pageSize": { + "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.", + "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" + "type": "integer", + "location": "query" }, "teacherId": { - "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", - "type": "string" + "type": "string", + "location": "query" }, "courseStates": { + "description": "Restricts returned courses to those in one of the specified states\nThe default value is ACTIVE, ARCHIVED, PROVISIONED, DECLINED.", + "type": "string", + "repeated": true, "location": "query", "enum": [ "COURSE_STATE_UNSPECIFIED", @@ -189,20 +112,12 @@ "PROVISIONED", "DECLINED", "SUSPENDED" - ], - "description": "Restricts returned courses to those in one of the specified states\nThe default value is ACTIVE, ARCHIVED, PROVISIONED, DECLINED.", - "type": "string", - "repeated": true + ] }, "studentId": { + "location": "query", "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": { - "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.", - "type": "string", - "location": "query" + "type": "string" } }, "scopes": [ @@ -218,30 +133,28 @@ "request": { "$ref": "Course" }, - "httpMethod": "POST", - "parameterOrder": [], "response": { "$ref": "Course" }, + "parameterOrder": [], + "httpMethod": "POST", "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/classroom.courses" ], "flatPath": "v1/courses", - "id": "classroom.courses.create", - "path": "v1/courses" + "path": "v1/courses", + "id": "classroom.courses.create" }, "get": { - "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.", + "httpMethod": "GET", "response": { "$ref": "Course" }, "parameterOrder": [ "id" ], - "httpMethod": "GET", "parameters": { "id": { "description": "Identifier of the course to return.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", @@ -254,53 +167,55 @@ "https://www.googleapis.com/auth/classroom.courses", "https://www.googleapis.com/auth/classroom.courses.readonly" ], - "flatPath": "v1/courses/{id}" + "flatPath": "v1/courses/{id}", + "id": "classroom.courses.get", + "path": "v1/courses/{id}" }, "patch": { - "httpMethod": "PATCH", - "parameterOrder": [ - "id" - ], - "response": { + "flatPath": "v1/courses/{id}", + "path": "v1/courses/{id}", + "id": "classroom.courses.patch", + "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", + "request": { + "$ref": "Course" + }, + "response": { "$ref": "Course" }, + "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.", "required": true, - "type": "string" + "type": "string", + "location": "path" }, "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", - "type": "string", - "location": "query" + "type": "string" } }, "scopes": [ "https://www.googleapis.com/auth/classroom.courses" - ], - "flatPath": "v1/courses/{id}", - "id": "classroom.courses.patch", - "path": "v1/courses/{id}", - "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", - "request": { - "$ref": "Course" - } + ] }, "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", "request": { "$ref": "Course" }, - "httpMethod": "PUT", - "parameterOrder": [ - "id" - ], "response": { "$ref": "Course" }, + "parameterOrder": [ + "id" + ], + "httpMethod": "PUT", "parameters": { "id": { "description": "Identifier of the course to update.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", @@ -313,21 +228,54 @@ "https://www.googleapis.com/auth/classroom.courses" ], "flatPath": "v1/courses/{id}", - "id": "classroom.courses.update", - "path": "v1/courses/{id}" + "path": "v1/courses/{id}", + "id": "classroom.courses.update" + }, + "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" + ], + "flatPath": "v1/courses/{id}", + "path": "v1/courses/{id}", + "id": "classroom.courses.delete" } }, "resources": { - "courseWork": { + "announcements": { "methods": { "create": { - "response": { - "$ref": "CourseWork" + "id": "classroom.courses.announcements.create", + "path": "v1/courses/{courseId}/announcements", + "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", + "httpMethod": "POST", "parameterOrder": [ "courseId" ], - "httpMethod": "POST", + "response": { + "$ref": "Announcement" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.announcements" + ], "parameters": { "courseId": { "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", @@ -336,94 +284,81 @@ "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.coursework.students" - ], - "flatPath": "v1/courses/{courseId}/courseWork", - "path": "v1/courses/{courseId}/courseWork", - "id": "classroom.courses.courseWork.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", - "request": { - "$ref": "CourseWork" - } + "flatPath": "v1/courses/{courseId}/announcements" }, "modifyAssignees": { + "path": "v1/courses/{courseId}/announcements/{id}:modifyAssignees", + "id": "classroom.courses.announcements.modifyAssignees", "request": { - "$ref": "ModifyCourseWorkAssigneesRequest" + "$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" }, - "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.", - "httpMethod": "POST", "parameterOrder": [ "courseId", "id" ], - "response": { - "$ref": "CourseWork" - }, + "httpMethod": "POST", "scopes": [ - "https://www.googleapis.com/auth/classroom.coursework.students" + "https://www.googleapis.com/auth/classroom.announcements" ], "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", - "location": "path" + "type": "string" }, "id": { - "required": true, - "type": "string", "location": "path", - "description": "Identifier of the coursework." + "description": "Identifier of the announcement.", + "required": true, + "type": "string" } }, - "flatPath": "v1/courses/{courseId}/courseWork/{id}:modifyAssignees", - "id": "classroom.courses.courseWork.modifyAssignees", - "path": "v1/courses/{courseId}/courseWork/{id}:modifyAssignees" + "flatPath": "v1/courses/{courseId}/announcements/{id}:modifyAssignees" }, "get": { - "id": "classroom.courses.courseWork.get", - "path": "v1/courses/{courseId}/courseWork/{id}", - "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.", - "httpMethod": "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.", + "response": { + "$ref": "Announcement" + }, "parameterOrder": [ "courseId", "id" ], - "response": { - "$ref": "CourseWork" - }, + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/classroom.announcements", + "https://www.googleapis.com/auth/classroom.announcements.readonly" + ], "parameters": { - "id": { - "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" + "type": "string", + "location": "path" + }, + "id": { + "required": true, + "type": "string", + "location": "path", + "description": "Identifier of the announcement." } }, - "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}" + "flatPath": "v1/courses/{courseId}/announcements/{id}", + "path": "v1/courses/{courseId}/announcements/{id}", + "id": "classroom.courses.announcements.get" }, "patch": { - "path": "v1/courses/{courseId}/courseWork/{id}", - "id": "classroom.courses.courseWork.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.", + "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", "request": { - "$ref": "CourseWork" + "$ref": "Announcement" }, "response": { - "$ref": "CourseWork" + "$ref": "Announcement" }, "parameterOrder": [ "courseId", @@ -438,22 +373,24 @@ "type": "string" }, "id": { - "location": "path", - "description": "Identifier of the course work.", "required": true, - "type": "string" + "type": "string", + "location": "path", + "description": "Identifier of the announcement." }, "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`", + "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" + "type": "string", + "location": "query" } }, "scopes": [ - "https://www.googleapis.com/auth/classroom.coursework.students" + "https://www.googleapis.com/auth/classroom.announcements" ], - "flatPath": "v1/courses/{courseId}/courseWork/{id}" + "flatPath": "v1/courses/{courseId}/announcements/{id}", + "path": "v1/courses/{courseId}/announcements/{id}", + "id": "classroom.courses.announcements.patch" }, "delete": { "response": { @@ -464,9 +401,6 @@ "id" ], "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/classroom.coursework.students" - ], "parameters": { "courseId": { "location": "path", @@ -475,490 +409,256 @@ "type": "string" }, "id": { - "description": "Identifier of the course work to delete.\nThis identifier is a Classroom-assigned identifier.", + "location": "path", + "description": "Identifier of the announcement to delete.\nThis identifier is a Classroom-assigned identifier.", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, - "flatPath": "v1/courses/{courseId}/courseWork/{id}", - "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." + "scopes": [ + "https://www.googleapis.com/auth/classroom.announcements" + ], + "flatPath": "v1/courses/{courseId}/announcements/{id}", + "path": "v1/courses/{courseId}/announcements/{id}", + "id": "classroom.courses.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." }, "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.", + "id": "classroom.courses.announcements.list", + "path": "v1/courses/{courseId}/announcements", + "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.", "httpMethod": "GET", "parameterOrder": [ "courseId" ], "response": { - "$ref": "ListCourseWorkResponse" + "$ref": "ListAnnouncementsResponse" }, "parameters": { - "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" + "courseId": { + "required": true, + "type": "string", + "location": "path", + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias." }, - "courseWorkStates": { + "announcementStates": { + "description": "Restriction on the `state` of announcements returned.\nIf this argument is left unspecified, the default value is `PUBLISHED`.", + "type": "string", "repeated": true, "location": "query", "enum": [ - "COURSE_WORK_STATE_UNSPECIFIED", + "ANNOUNCEMENT_STATE_UNSPECIFIED", "PUBLISHED", "DRAFT", "DELETED" - ], - "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" - }, - "courseId": { - "location": "path", - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", - "required": true, - "type": "string" + ] }, "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`", + "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`", "type": "string" }, "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", + "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" } }, "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" + "https://www.googleapis.com/auth/classroom.announcements", + "https://www.googleapis.com/auth/classroom.announcements.readonly" ], - "flatPath": "v1/courses/{courseId}/courseWork", - "id": "classroom.courses.courseWork.list", - "path": "v1/courses/{courseId}/courseWork" + "flatPath": "v1/courses/{courseId}/announcements" } - }, - "resources": { - "studentSubmissions": { - "methods": { - "reclaim": { - "httpMethod": "POST", - "parameterOrder": [ - "courseId", - "courseWorkId", - "id" - ], - "response": { - "$ref": "Empty" - }, - "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" - } - }, - "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", - "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.", - "request": { - "$ref": "ReclaimStudentSubmissionRequest" - } - }, - "turnIn": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "courseId", - "courseWorkId", - "id" - ], - "httpMethod": "POST", - "parameters": { - "courseWorkId": { - "location": "path", - "description": "Identifier of the course work.", - "required": true, - "type": "string" - }, - "courseId": { - "required": true, - "type": "string", - "location": "path", - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias." - }, - "id": { - "required": true, - "type": "string", - "location": "path", - "description": "Identifier of the student submission." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.coursework.me" - ], - "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:turnIn", - "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:turnIn", - "id": "classroom.courses.courseWork.studentSubmissions.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" - } - }, - "modifyAttachments": { - "response": { - "$ref": "StudentSubmission" - }, - "parameterOrder": [ - "courseId", - "courseWorkId", - "id" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/classroom.coursework.me", - "https://www.googleapis.com/auth/classroom.coursework.students" - ], - "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": { - "required": true, - "type": "string", - "location": "path", - "description": "Identifier of the course work." - } - }, - "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:modifyAttachments", - "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:modifyAttachments", - "id": "classroom.courses.courseWork.studentSubmissions.modifyAttachments", - "request": { - "$ref": "ModifyAttachmentsRequest" - }, - "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." - }, - "list": { - "response": { - "$ref": "ListStudentSubmissionsResponse" - }, - "parameterOrder": [ - "courseId", - "courseWorkId" - ], - "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", - "https://www.googleapis.com/auth/classroom.student-submissions.me.readonly", - "https://www.googleapis.com/auth/classroom.student-submissions.students.readonly" - ], - "parameters": { - "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, - "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", - "location": "query", - "enum": [ - "LATE_VALUES_UNSPECIFIED", - "LATE_ONLY", - "NOT_LATE_ONLY" - ] - }, - "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" - }, - "states": { - "location": "query", - "enum": [ - "SUBMISSION_STATE_UNSPECIFIED", - "NEW", - "CREATED", - "TURNED_IN", - "RETURNED", - "RECLAIMED_BY_STUDENT" - ], - "description": "Requested submission states. If specified, returned student submissions\nmatch one of the specified submission states.", - "type": "string", - "repeated": true - }, - "userId": { - "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", - "type": "string" - } - }, - "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions", - "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions", - "id": "classroom.courses.courseWork.studentSubmissions.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." - }, - "patch": { - "response": { - "$ref": "StudentSubmission" - }, - "parameterOrder": [ - "courseId", - "courseWorkId", - "id" - ], - "httpMethod": "PATCH", - "parameters": { - "courseWorkId": { - "description": "Identifier of the course work.", - "required": true, - "type": "string", - "location": "path" - }, - "courseId": { - "required": true, - "type": "string", - "location": "path", - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias." - }, - "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" - } - }, - "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", - "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.", - "request": { - "$ref": "StudentSubmission" - } - }, - "get": { - "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.", - "response": { - "$ref": "StudentSubmission" - }, - "parameterOrder": [ - "courseId", - "courseWorkId", - "id" - ], - "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", - "https://www.googleapis.com/auth/classroom.student-submissions.me.readonly", - "https://www.googleapis.com/auth/classroom.student-submissions.students.readonly" - ], - "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": { - "location": "path", - "description": "Identifier of the student submission.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}" + } + }, + "aliases": { + "methods": { + "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" + }, + "httpMethod": "POST", + "parameterOrder": [ + "courseId" + ], + "response": { + "$ref": "CourseAlias" + }, + "parameters": { + "courseId": { + "location": "path", + "description": "Identifier of the course to alias.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.courses" + ], + "flatPath": "v1/courses/{courseId}/aliases", + "id": "classroom.courses.aliases.create", + "path": "v1/courses/{courseId}/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).", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "courseId", + "alias" + ], + "httpMethod": "DELETE", + "parameters": { + "alias": { + "required": true, + "type": "string", + "location": "path", + "description": "Alias to delete.\nThis may not be the Classroom-assigned identifier." }, - "return": { - "scopes": [ - "https://www.googleapis.com/auth/classroom.coursework.students" - ], - "parameters": { - "courseWorkId": { - "location": "path", - "description": "Identifier of the course work.", - "required": true, - "type": "string" - }, - "courseId": { - "required": true, - "type": "string", - "location": "path", - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias." - }, - "id": { - "description": "Identifier of the student submission.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:return", - "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:return", - "id": "classroom.courses.courseWork.studentSubmissions.return", - "request": { - "$ref": "ReturnStudentSubmissionRequest" - }, - "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.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "courseId", - "courseWorkId", - "id" - ], - "httpMethod": "POST" + "courseId": { + "location": "path", + "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" + } + }, + "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" + }, + "list": { + "flatPath": "v1/courses/{courseId}/aliases", + "path": "v1/courses/{courseId}/aliases", + "id": "classroom.courses.aliases.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": { + "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": "The identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "required": true, + "type": "string", + "location": "path" + }, + "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" } } } } }, - "teachers": { + "students": { "methods": { "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.", "response": { - "$ref": "Teacher" + "$ref": "Student" }, "parameterOrder": [ "courseId" ], "httpMethod": "POST", - "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" - } - }, "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}/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": { - "$ref": "Teacher" - } + "parameters": { + "courseId": { + "location": "path", + "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" + }, + "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" + } + }, + "flatPath": "v1/courses/{courseId}/students", + "path": "v1/courses/{courseId}/students", + "id": "classroom.courses.students.create" }, "delete": { - "response": { - "$ref": "Empty" - }, + "httpMethod": "DELETE", "parameterOrder": [ "courseId", "userId" ], - "httpMethod": "DELETE", + "response": { + "$ref": "Empty" + }, "parameters": { - "userId": { - "required": true, - "type": "string", - "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" - }, "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": { + "required": true, + "type": "string", + "location": "path", + "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" } }, "scopes": [ "https://www.googleapis.com/auth/classroom.rosters" ], - "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." + "flatPath": "v1/courses/{courseId}/students/{userId}", + "id": "classroom.courses.students.delete", + "path": "v1/courses/{courseId}/students/{userId}", + "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." }, "get": { - "id": "classroom.courses.teachers.get", - "path": "v1/courses/{courseId}/teachers/{userId}", - "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.", + "id": "classroom.courses.students.get", + "path": "v1/courses/{courseId}/students/{userId}", + "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.", "httpMethod": "GET", "parameterOrder": [ "courseId", "userId" ], "response": { - "$ref": "Teacher" + "$ref": "Student" }, "parameters": { "userId": { "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", + "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" }, @@ -975,22 +675,32 @@ "https://www.googleapis.com/auth/classroom.rosters", "https://www.googleapis.com/auth/classroom.rosters.readonly" ], - "flatPath": "v1/courses/{courseId}/teachers/{userId}" + "flatPath": "v1/courses/{courseId}/students/{userId}" }, "list": { - "httpMethod": "GET", + "flatPath": "v1/courses/{courseId}/students", + "path": "v1/courses/{courseId}/students", + "id": "classroom.courses.students.list", + "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.", + "response": { + "$ref": "ListStudentsResponse" + }, "parameterOrder": [ "courseId" ], - "response": { - "$ref": "ListTeachersResponse" - }, + "httpMethod": "GET", + "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": { "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", - "location": "query" + "type": "integer" }, "courseId": { "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", @@ -999,39 +709,26 @@ "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", - "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" } - }, - "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", - "id": "classroom.courses.teachers.list", - "path": "v1/courses/{courseId}/teachers", - "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." + } } } }, - "announcements": { + "courseWork": { "methods": { - "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.", - "request": { - "$ref": "ModifyAnnouncementAssigneesRequest" + "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" }, - "httpMethod": "POST", "parameterOrder": [ "courseId", "id" ], - "response": { - "$ref": "Announcement" - }, + "httpMethod": "DELETE", "parameters": { "courseId": { "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", @@ -1040,32 +737,144 @@ "location": "path" }, "id": { - "description": "Identifier of the announcement.", + "description": "Identifier of the course work to delete.\nThis identifier is a Classroom-assigned identifier.", "required": true, "type": "string", "location": "path" } }, "scopes": [ - "https://www.googleapis.com/auth/classroom.announcements" + "https://www.googleapis.com/auth/classroom.coursework.students" ], - "flatPath": "v1/courses/{courseId}/announcements/{id}:modifyAssignees", - "id": "classroom.courses.announcements.modifyAssignees", - "path": "v1/courses/{courseId}/announcements/{id}:modifyAssignees" + "flatPath": "v1/courses/{courseId}/courseWork/{id}", + "path": "v1/courses/{courseId}/courseWork/{id}", + "id": "classroom.courses.courseWork.delete" + }, + "list": { + "parameters": { + "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`", + "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\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" + }, + "courseWorkStates": { + "location": "query", + "enum": [ + "COURSE_WORK_STATE_UNSPECIFIED", + "PUBLISHED", + "DRAFT", + "DELETED" + ], + "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 + }, + "courseId": { + "location": "path", + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "required": true, + "type": "string" + } + }, + "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": "classroom.courses.courseWork.list", + "path": "v1/courses/{courseId}/courseWork", + "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.", + "httpMethod": "GET", + "parameterOrder": [ + "courseId" + ], + "response": { + "$ref": "ListCourseWorkResponse" + } + }, + "create": { + "response": { + "$ref": "CourseWork" + }, + "parameterOrder": [ + "courseId" + ], + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.coursework.students" + ], + "flatPath": "v1/courses/{courseId}/courseWork", + "path": "v1/courses/{courseId}/courseWork", + "id": "classroom.courses.courseWork.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", + "request": { + "$ref": "CourseWork" + } + }, + "modifyAssignees": { + "response": { + "$ref": "CourseWork" + }, + "parameterOrder": [ + "courseId", + "id" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/classroom.coursework.students" + ], + "parameters": { + "id": { + "required": true, + "type": "string", + "location": "path", + "description": "Identifier of the coursework." + }, + "courseId": { + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "required": true, + "type": "string", + "location": "path" + } + }, + "flatPath": "v1/courses/{courseId}/courseWork/{id}:modifyAssignees", + "path": "v1/courses/{courseId}/courseWork/{id}:modifyAssignees", + "id": "classroom.courses.courseWork.modifyAssignees", + "request": { + "$ref": "ModifyCourseWorkAssigneesRequest" + }, + "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." }, "get": { "response": { - "$ref": "Announcement" + "$ref": "CourseWork" }, "parameterOrder": [ "courseId", "id" ], "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/classroom.announcements", - "https://www.googleapis.com/auth/classroom.announcements.readonly" - ], "parameters": { "courseId": { "location": "path", @@ -1074,306 +883,435 @@ "type": "string" }, "id": { + "description": "Identifier of the course work.", "required": true, "type": "string", - "location": "path", - "description": "Identifier of the announcement." + "location": "path" } }, - "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." + "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}", + "path": "v1/courses/{courseId}/courseWork/{id}", + "id": "classroom.courses.courseWork.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." }, "patch": { - "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", - "request": { - "$ref": "Announcement" - }, "httpMethod": "PATCH", "parameterOrder": [ "courseId", "id" ], "response": { - "$ref": "Announcement" + "$ref": "CourseWork" }, "parameters": { - "id": { + "courseId": { "location": "path", - "description": "Identifier of the announcement.", + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", "required": true, "type": "string" }, + "id": { + "required": true, + "type": "string", + "location": "path", + "description": "Identifier of the course work." + }, "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`", + "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" - }, - "courseId": { - "location": "path", - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", - "required": true, - "type": "string" } }, "scopes": [ - "https://www.googleapis.com/auth/classroom.announcements" - ], - "flatPath": "v1/courses/{courseId}/announcements/{id}", - "id": "classroom.courses.announcements.patch", - "path": "v1/courses/{courseId}/announcements/{id}" - }, - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "courseId", - "id" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/classroom.announcements" + "https://www.googleapis.com/auth/classroom.coursework.students" ], - "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" + "flatPath": "v1/courses/{courseId}/courseWork/{id}", + "id": "classroom.courses.courseWork.patch", + "path": "v1/courses/{courseId}/courseWork/{id}", + "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.", + "request": { + "$ref": "CourseWork" + } + } + }, + "resources": { + "studentSubmissions": { + "methods": { + "modifyAttachments": { + "request": { + "$ref": "ModifyAttachmentsRequest" + }, + "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.", + "response": { + "$ref": "StudentSubmission" + }, + "parameterOrder": [ + "courseId", + "courseWorkId", + "id" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/classroom.coursework.me", + "https://www.googleapis.com/auth/classroom.coursework.students" + ], + "parameters": { + "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" + }, + "id": { + "location": "path", + "description": "Identifier of the student submission.", + "required": true, + "type": "string" + } + }, + "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:modifyAttachments", + "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:modifyAttachments", + "id": "classroom.courses.courseWork.studentSubmissions.modifyAttachments" }, - "id": { - "description": "Identifier of the announcement to delete.\nThis identifier is a Classroom-assigned identifier.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/courses/{courseId}/announcements/{id}", - "path": "v1/courses/{courseId}/announcements/{id}", - "id": "classroom.courses.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." - }, - "list": { - "httpMethod": "GET", - "parameterOrder": [ - "courseId" - ], - "response": { - "$ref": "ListAnnouncementsResponse" - }, - "parameters": { - "courseId": { - "required": true, - "type": "string", - "location": "path", - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias." + "list": { + "response": { + "$ref": "ListStudentSubmissionsResponse" + }, + "parameterOrder": [ + "courseId", + "courseWorkId" + ], + "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", + "https://www.googleapis.com/auth/classroom.student-submissions.me.readonly", + "https://www.googleapis.com/auth/classroom.student-submissions.students.readonly" + ], + "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" + }, + "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", + "location": "query", + "enum": [ + "LATE_VALUES_UNSPECIFIED", + "LATE_ONLY", + "NOT_LATE_ONLY" + ] + }, + "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" + }, + "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", + "CREATED", + "TURNED_IN", + "RETURNED", + "RECLAIMED_BY_STUDENT" + ] + }, + "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" + }, + "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": { + "location": "path", + "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" + } + }, + "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions", + "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions", + "id": "classroom.courses.courseWork.studentSubmissions.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." + }, + "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.", + "response": { + "$ref": "StudentSubmission" + }, + "parameterOrder": [ + "courseId", + "courseWorkId", + "id" + ], + "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", + "https://www.googleapis.com/auth/classroom.student-submissions.me.readonly", + "https://www.googleapis.com/auth/classroom.student-submissions.students.readonly" + ], + "parameters": { + "courseWorkId": { + "description": "Identifier of the course work.", + "required": true, + "type": "string", + "location": "path" + }, + "courseId": { + "required": true, + "type": "string", + "location": "path", + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias." + }, + "id": { + "location": "path", + "description": "Identifier of the student submission.", + "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" }, - "announcementStates": { - "enum": [ - "ANNOUNCEMENT_STATE_UNSPECIFIED", - "PUBLISHED", - "DRAFT", - "DELETED" + "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.", + "request": { + "$ref": "StudentSubmission" + }, + "httpMethod": "PATCH", + "parameterOrder": [ + "courseId", + "courseWorkId", + "id" ], - "description": "Restriction on the `state` of announcements returned.\nIf this argument is left unspecified, the default value is `PUBLISHED`.", - "type": "string", - "repeated": true, - "location": "query" - }, - "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`", - "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\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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.announcements", - "https://www.googleapis.com/auth/classroom.announcements.readonly" - ], - "flatPath": "v1/courses/{courseId}/announcements", - "id": "classroom.courses.announcements.list", - "path": "v1/courses/{courseId}/announcements", - "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." - }, - "create": { - "path": "v1/courses/{courseId}/announcements", - "id": "classroom.courses.announcements.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", - "response": { - "$ref": "Announcement" - }, - "parameterOrder": [ - "courseId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/classroom.announcements" - ], - "parameters": { - "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}/announcements" - } - } - }, - "aliases": { - "methods": { - "delete": { - "parameters": { - "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" - }, - "alias": { - "description": "Alias to delete.\nThis may not be the Classroom-assigned identifier.", - "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).", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "courseId", - "alias" - ], - "httpMethod": "DELETE" - }, - "list": { - "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": { - "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" + "response": { + "$ref": "StudentSubmission" + }, + "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" + }, + "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" + } + }, + "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}", + "id": "classroom.courses.courseWork.studentSubmissions.patch", + "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}" }, - "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" + "return": { + "httpMethod": "POST", + "parameterOrder": [ + "courseId", + "courseWorkId", + "id" + ], + "response": { + "$ref": "Empty" + }, + "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": { + "location": "path", + "description": "Identifier of the student submission.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.coursework.students" + ], + "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:return", + "id": "classroom.courses.courseWork.studentSubmissions.return", + "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}: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" + } }, - "courseId": { - "description": "The identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/courses/{courseId}/aliases", - "path": "v1/courses/{courseId}/aliases", - "id": "classroom.courses.aliases.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." - }, - "create": { - "httpMethod": "POST", - "parameterOrder": [ - "courseId" - ], - "response": { - "$ref": "CourseAlias" - }, - "parameters": { - "courseId": { - "description": "Identifier of the course to alias.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", - "required": true, - "type": "string", - "location": "path" + "reclaim": { + "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:reclaim", + "id": "classroom.courses.courseWork.studentSubmissions.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.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "courseId", + "courseWorkId", + "id" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/classroom.coursework.me" + ], + "parameters": { + "courseWorkId": { + "required": true, + "type": "string", + "location": "path", + "description": "Identifier of the course work." + }, + "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}:reclaim" + }, + "turnIn": { + "request": { + "$ref": "TurnInStudentSubmissionRequest" + }, + "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.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "courseId", + "courseWorkId", + "id" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/classroom.coursework.me" + ], + "parameters": { + "id": { + "description": "Identifier of the student submission.", + "required": true, + "type": "string", + "location": "path" + }, + "courseWorkId": { + "description": "Identifier of the course work.", + "required": true, + "type": "string", + "location": "path" + }, + "courseId": { + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "required": true, + "type": "string", + "location": "path" + } + }, + "flatPath": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:turnIn", + "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:turnIn", + "id": "classroom.courses.courseWork.studentSubmissions.turnIn" } - }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.courses" - ], - "flatPath": "v1/courses/{courseId}/aliases", - "id": "classroom.courses.aliases.create", - "path": "v1/courses/{courseId}/aliases", - "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" } } } }, - "students": { + "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.", + "request": { + "$ref": "Teacher" + }, "response": { - "$ref": "Student" + "$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" - ], "parameters": { "courseId": { - "location": "path", - "description": "Identifier of the course to create the student in.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", "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.", "type": "string", - "location": "query" + "location": "path" } }, - "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." + "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}/teachers", + "path": "v1/courses/{courseId}/teachers", + "id": "classroom.courses.teachers.create" }, "delete": { - "httpMethod": "DELETE", "response": { "$ref": "Empty" }, @@ -1381,48 +1319,49 @@ "courseId", "userId" ], + "httpMethod": "DELETE", "parameters": { "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", "required": true, "type": "string", - "location": "path", - "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" }, "courseId": { - "location": "path", "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", "required": true, - "type": "string" + "type": "string", + "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/classroom.rosters" ], - "flatPath": "v1/courses/{courseId}/students/{userId}", - "id": "classroom.courses.students.delete", - "path": "v1/courses/{courseId}/students/{userId}", - "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}/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." }, "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.", + "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.", + "httpMethod": "GET", "response": { - "$ref": "Student" + "$ref": "Teacher" }, "parameterOrder": [ "courseId", "userId" ], - "httpMethod": "GET", "parameters": { - "userId": { + "courseId": { "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", + "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", "required": true, "type": "string" }, - "courseId": { + "userId": { "location": "path", - "description": "Identifier of the course.\nThis identifier can be either the Classroom-assigned identifier or an\nalias.", + "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", "required": true, "type": "string" } @@ -1433,27 +1372,21 @@ "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" + "flatPath": "v1/courses/{courseId}/teachers/{userId}", + "id": "classroom.courses.teachers.get", + "path": "v1/courses/{courseId}/teachers/{userId}" }, "list": { - "path": "v1/courses/{courseId}/students", - "id": "classroom.courses.students.list", - "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.", + "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": "ListStudentsResponse" + "$ref": "ListTeachersResponse" }, "parameterOrder": [ "courseId" ], "httpMethod": "GET", - "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": { "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.", @@ -1473,67 +1406,102 @@ "type": "string" } }, - "flatPath": "v1/courses/{courseId}/students" + "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" } } } } }, "userProfiles": { + "methods": { + "get": { + "response": { + "$ref": "UserProfile" + }, + "parameterOrder": [ + "userId" + ], + "httpMethod": "GET", + "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": { + "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", + "required": true, + "type": "string" + } + }, + "flatPath": "v1/userProfiles/{userId}", + "path": "v1/userProfiles/{userId}", + "id": "classroom.userProfiles.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." + } + }, "resources": { "guardianInvitations": { "methods": { "list": { - "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.", + "httpMethod": "GET", "response": { "$ref": "ListGuardianInvitationsResponse" }, "parameterOrder": [ "studentId" ], - "httpMethod": "GET", "parameters": { "studentId": { - "required": true, - "type": "string", "location": "path", - "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." + "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" }, "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." + "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" }, "invitedEmailAddress": { + "location": "query", "description": "If specified, only results with the specified `invited_email_address`\nwill be returned.", - "type": "string", - "location": "query" + "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", - "repeated": true, - "location": "query" + "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", - "type": "integer" + "format": "int32" } }, "scopes": [ "https://www.googleapis.com/auth/classroom.guardianlinks.students", "https://www.googleapis.com/auth/classroom.guardianlinks.students.readonly" - ] + ], + "flatPath": "v1/userProfiles/{studentId}/guardianInvitations", + "id": "classroom.userProfiles.guardianInvitations.list", + "path": "v1/userProfiles/{studentId}/guardianInvitations", + "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": { "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.", @@ -1551,10 +1519,10 @@ ], "parameters": { "invitationId": { - "location": "path", "description": "The `id` field of the `GuardianInvitation` being requested.", "required": true, - "type": "string" + "type": "string", + "location": "path" }, "studentId": { "description": "The ID of the student whose guardian invitation is being requested.", @@ -1578,10 +1546,10 @@ }, "parameters": { "invitationId": { - "required": true, - "type": "string", "location": "path", - "description": "The `id` field of the `GuardianInvitation` to be modified." + "description": "The `id` field of the `GuardianInvitation` to be modified.", + "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,...`", @@ -1590,10 +1558,10 @@ "location": "query" }, "studentId": { - "location": "path", - "description": "The ID of the student whose guardian invitation is to be modified.", "required": true, - "type": "string" + "type": "string", + "location": "path", + "description": "The ID of the student whose guardian invitation is to be modified." } }, "scopes": [ @@ -1608,6 +1576,8 @@ } }, "create": { + "id": "classroom.userProfiles.guardianInvitations.create", + "path": "v1/userProfiles/{studentId}/guardianInvitations", "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.", "request": { "$ref": "GuardianInvitation" @@ -1621,24 +1591,23 @@ }, "parameters": { "studentId": { - "required": true, - "type": "string", "location": "path", - "description": "ID of the student (in standard format)" + "description": "ID of the student (in standard format)", + "required": true, + "type": "string" } }, "scopes": [ "https://www.googleapis.com/auth/classroom.guardianlinks.students" ], - "flatPath": "v1/userProfiles/{studentId}/guardianInvitations", - "id": "classroom.userProfiles.guardianInvitations.create", - "path": "v1/userProfiles/{studentId}/guardianInvitations" + "flatPath": "v1/userProfiles/{studentId}/guardianInvitations" } } }, "guardians": { "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" }, @@ -1648,17 +1617,17 @@ ], "httpMethod": "DELETE", "parameters": { + "guardianId": { + "required": true, + "type": "string", + "location": "path", + "description": "The `id` field from a `Guardian`." + }, "studentId": { "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`.", - "required": true, - "type": "string", - "location": "path" } }, "scopes": [ @@ -1666,8 +1635,7 @@ ], "flatPath": "v1/userProfiles/{studentId}/guardians/{guardianId}", "path": "v1/userProfiles/{studentId}/guardians/{guardianId}", - "id": "classroom.userProfiles.guardians.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`." + "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.", @@ -1685,26 +1653,26 @@ ], "parameters": { "studentId": { + "location": "path", "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" + "type": "string" }, "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", - "location": "query" + "type": "string" }, "invitedEmailAddress": { - "type": "string", "location": "query", - "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." + "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" }, "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" + "type": "integer", + "location": "query" } }, "flatPath": "v1/userProfiles/{studentId}/guardians", @@ -1712,9 +1680,6 @@ "id": "classroom.userProfiles.guardians.list" }, "get": { - "path": "v1/userProfiles/{studentId}/guardians/{guardianId}", - "id": "classroom.userProfiles.guardians.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`.", "response": { "$ref": "Guardian" }, @@ -1723,11 +1688,6 @@ "guardianId" ], "httpMethod": "GET", - "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" - ], "parameters": { "studentId": { "location": "path", @@ -1742,142 +1702,216 @@ "type": "string" } }, - "flatPath": "v1/userProfiles/{studentId}/guardians/{guardianId}" + "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" + ], + "flatPath": "v1/userProfiles/{studentId}/guardians/{guardianId}", + "path": "v1/userProfiles/{studentId}/guardians/{guardianId}", + "id": "classroom.userProfiles.guardians.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`." } } } - }, + } + }, + "registrations": { "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.", + "delete": { + "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`.", "response": { - "$ref": "UserProfile" + "$ref": "Empty" }, "parameterOrder": [ - "userId" - ], - "httpMethod": "GET", - "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" + "registrationId" ], + "httpMethod": "DELETE", "parameters": { - "userId": { + "registrationId": { "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", + "description": "The `registration_id` of the `Registration` to be deleted.", "required": true, "type": "string" } }, - "flatPath": "v1/userProfiles/{userId}", - "path": "v1/userProfiles/{userId}", - "id": "classroom.userProfiles.get" - } - } - }, - "registrations": { - "methods": { + "scopes": [ + "https://www.googleapis.com/auth/classroom.push-notifications", + "https://www.googleapis.com/auth/classroom.rosters", + "https://www.googleapis.com/auth/classroom.rosters.readonly" + ] + }, "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.", "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.", + "httpMethod": "POST", + "parameterOrder": [], "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" ], - "parameters": {}, "flatPath": "v1/registrations", - "path": "v1/registrations", - "id": "classroom.registrations.create" + "id": "classroom.registrations.create", + "path": "v1/registrations" + } + } + }, + "invitations": { + "methods": { + "create": { + "response": { + "$ref": "Invitation" + }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/classroom.rosters" + ], + "flatPath": "v1/invitations", + "path": "v1/invitations", + "id": "classroom.invitations.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.", + "request": { + "$ref": "Invitation" + } + }, + "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.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "id" + ], + "httpMethod": "POST", + "parameters": { + "id": { + "description": "Identifier of the invitation to accept.", + "required": true, + "type": "string", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.rosters" + ], + "flatPath": "v1/invitations/{id}:accept", + "path": "v1/invitations/{id}:accept", + "id": "classroom.invitations.accept" }, "delete": { - "description": "Deletes a `Registration`, causing Classroom to stop sending notifications\nfor that `Registration`.", "response": { "$ref": "Empty" }, "parameterOrder": [ - "registrationId" + "id" ], "httpMethod": "DELETE", "parameters": { - "registrationId": { - "description": "The `registration_id` of the `Registration` to be deleted.", + "id": { + "location": "path", + "description": "Identifier of the invitation to delete.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.rosters" + ], + "flatPath": "v1/invitations/{id}", + "path": "v1/invitations/{id}", + "id": "classroom.invitations.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." + }, + "get": { + "httpMethod": "GET", + "parameterOrder": [ + "id" + ], + "response": { + "$ref": "Invitation" + }, + "parameters": { + "id": { + "description": "Identifier of the invitation to return.", "required": true, "type": "string", "location": "path" } }, "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/{registrationId}", - "path": "v1/registrations/{registrationId}", - "id": "classroom.registrations.delete" + "flatPath": "v1/invitations/{id}", + "id": "classroom.invitations.get", + "path": "v1/invitations/{id}", + "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." + }, + "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.", + "httpMethod": "GET", + "parameterOrder": [], + "response": { + "$ref": "ListInvitationsResponse" + }, + "parameters": { + "userId": { + "location": "query", + "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" + }, + "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" + }, + "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": { + "location": "query", + "description": "Restricts returned invitations to those for a course with the specified\nidentifier.", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.rosters", + "https://www.googleapis.com/auth/classroom.rosters.readonly" + ], + "flatPath": "v1/invitations", + "id": "classroom.invitations.list", + "path": "v1/invitations" } } } }, "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" - }, - "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": { - "type": "boolean", - "default": "true", - "location": "query", - "description": "Returns response with indentations and line breaks." - }, "fields": { - "location": "query", "description": "Selector specifying which fields to include in a partial response.", - "type": "string" + "type": "string", + "location": "query" }, "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "callback": { - "description": "JSONP", "type": "string", - "location": "query" + "location": "query", + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." }, "$.xgafv": { - "type": "string", "enumDescriptions": [ "v1 error format", "v2 error format" @@ -1887,38 +1921,210 @@ "1", "2" ], - "description": "V1 error format." + "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" - ], + "callback": { "location": "query", - "description": "Data format for response.", + "description": "JSONP", + "type": "string" + }, + "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." + }, + "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": { + "location": "query", + "description": "OAuth bearer token.", "type": "string" }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" + "upload_protocol": { + "location": "query", + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "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" + "prettyPrint": { + "location": "query", + "description": "Returns response with indentations and line breaks.", + "type": "boolean", + "default": "true" } }, "schemas": { + "Course": { + "description": "A Course in Classroom.", + "type": "object", + "properties": { + "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" + }, + "teacherFolder": { + "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.", + "$ref": "DriveFolder" + }, + "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": { + "type": "string", + "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." + }, + "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" + }, + "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" + }, + "courseMaterialSets": { + "type": "array", + "items": { + "$ref": "CourseMaterialSet" + }, + "description": "Sets of materials that appear on the \"about\" page of this course.\n\nRead-only." + }, + "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" + }, + "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": { + "enum": [ + "COURSE_STATE_UNSPECIFIED", + "ACTIVE", + "ARCHIVED", + "PROVISIONED", + "DECLINED", + "SUSPENDED" + ], + "description": "State of the course.\nIf unspecified, the default state is `PROVISIONED`.", + "type": "string", + "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." + ] + }, + "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" + }, + "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" + } + }, + "id": "Course" + }, + "DriveFile": { + "description": "Representation of a Google Drive file.", + "type": "object", + "properties": { + "id": { + "description": "Drive API resource ID.", + "type": "string" + }, + "title": { + "type": "string", + "description": "Title of the Drive item.\n\nRead-only." + }, + "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": { + "id": "ReclaimStudentSubmissionRequest", + "description": "Request to reclaim a student submission.", + "type": "object", + "properties": {} + }, "CourseRosterChangesInfo": { - "description": "Information about a `Feed` with a `feed_type` of `COURSE_ROSTER_CHANGES`.", "type": "object", "properties": { "courseId": { @@ -1926,12 +2132,61 @@ "type": "string" } }, - "id": "CourseRosterChangesInfo" + "id": "CourseRosterChangesInfo", + "description": "Information about a `Feed` with a `feed_type` of `COURSE_ROSTER_CHANGES`." }, "CourseWork": { "properties": { - "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.", + "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": { + "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.", + "$ref": "MultipleChoiceQuestion" + }, + "assignment": { + "$ref": "Assignment", + "description": "Assignment details.\nThis is populated only when `work_type` is `ASSIGNMENT`.\n\nRead-only." + }, + "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": { @@ -1939,30 +2194,28 @@ "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": { - "type": "string", "description": "Timestamp when this course work was created.\n\nRead-only.", - "format": "google-datetime" + "format": "google-datetime", + "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." }, "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." + "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", @@ -1970,9 +2223,17 @@ "DELETED" ], "description": "Status of this course work.\nIf unspecified, the default state is `DRAFT`.", - "type": "string" + "type": "string", + "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." + ] }, "submissionModificationMode": { + "description": "Setting to determine when students are allowed to modify submissions.\nIf unspecified, the default value is `MODIFIABLE_UNTIL_TURNED_IN`.", + "type": "string", "enumDescriptions": [ "No modification mode specified. This is never returned.", "Submisisons can be modified before being turned in.", @@ -1982,88 +2243,34 @@ "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": { - "type": "string", - "description": "Identifier of the course.\n\nRead-only." + "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": { - "$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." - }, - "title": { - "description": "Title of this course work.\nThe title must be a valid UTF-8 string containing between 1 and 3000\ncharacters.", - "type": "string" - }, - "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" - }, - "assigneeMode": { - "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" - ], - "description": "Assignee mode of the coursework.\nIf unspecified, the default value is `ALL_STUDENTS`." - }, - "alternateLink": { - "type": "string", - "description": "Absolute link to this course work in the Classroom web UI.\nThis is only populated if `state` is `PUBLISHED`.\n\nRead-only." - }, - "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" + "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" }, - "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." + "title": { + "description": "Title of this course work.\nThe title must be a valid UTF-8 string containing between 1 and 3000\ncharacters.", + "type": "string" }, - "assignment": { - "$ref": "Assignment", - "description": "Assignment details.\nThis is populated only when `work_type` is `ASSIGNMENT`.\n\nRead-only." + "materials": { + "description": "Additional materials.\n\nCourseWork must have no more than 20 material items.", + "type": "array", + "items": { + "$ref": "Material" + } }, - "workType": { - "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" - ], - "description": "Type of this course work.\n\nThe type is set when the course work is created and cannot be changed." + "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" } }, "id": "CourseWork", @@ -2071,6 +2278,7 @@ "type": "object" }, "Guardian": { + "description": "Association between a student and a guardian of that student. The guardian\nmay receive information about the student's course work.", "type": "object", "properties": { "studentId": { @@ -2082,16 +2290,33 @@ "type": "string" }, "invitedEmailAddress": { - "type": "string", - "description": "The email address to which the initial guardian invitation was sent.\nThis field is only visible to domain administrators." + "description": "The email address to which the initial guardian invitation was sent.\nThis field is only visible to domain administrators.", + "type": "string" }, "guardianProfile": { - "$ref": "UserProfile", - "description": "User profile for the guardian." + "description": "User profile for the guardian.", + "$ref": "UserProfile" + } + }, + "id": "Guardian" + }, + "ListStudentsResponse": { + "description": "Response when listing students.", + "type": "object", + "properties": { + "students": { + "description": "Students who match the list request.", + "type": "array", + "items": { + "$ref": "Student" + } + }, + "nextPageToken": { + "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", + "type": "string" } }, - "id": "Guardian", - "description": "Association between a student and a guardian of that student. The guardian\nmay receive information about the student's course work." + "id": "ListStudentsResponse" }, "UserProfile": { "description": "Global information for a user.", @@ -2127,28 +2352,22 @@ }, "id": "UserProfile" }, - "ListStudentsResponse": { - "properties": { - "students": { - "description": "Students who match the list request.", - "type": "array", - "items": { - "$ref": "Student" - } - }, - "nextPageToken": { - "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", - "type": "string" - } - }, - "id": "ListStudentsResponse", - "description": "Response when listing students.", - "type": "object" - }, "Announcement": { "description": "Announcement created by a teacher for students of the course", "type": "object", "properties": { + "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", @@ -2162,18 +2381,18 @@ "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" + "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." + ] }, "alternateLink": { "description": "Absolute link to this announcement in the Classroom web UI.\nThis is only populated if `state` is `PUBLISHED`.\n\nRead-only.", @@ -2189,15 +2408,21 @@ "format": "google-datetime", "type": "string" }, - "creatorUserId": { - "description": "Identifier for the user that created the announcement.\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." }, + "creatorUserId": { + "description": "Identifier for the user that created the announcement.\n\nRead-only.", + "type": "string" + }, "state": { + "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." + ], "enum": [ "ANNOUNCEMENT_STATE_UNSPECIFIED", "PUBLISHED", @@ -2205,25 +2430,7 @@ "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": { - "type": "string", - "description": "Classroom-assigned identifier of this announcement, unique per course.\n\nRead-only." } }, "id": "Announcement" @@ -2240,17 +2447,23 @@ } }, "removeStudentIds": { - "description": "Ids of students to be removed from having access to this\ncoursework/announcement.", "type": "array", "items": { "type": "string" - } + }, + "description": "Ids of students to be removed from having access to this\ncoursework/announcement." } }, "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" @@ -2258,27 +2471,21 @@ "alternateLink": { "description": "URL that can be used to access the Drive folder.\n\nRead-only.", "type": "string" - }, - "id": { - "description": "Drive API resource ID.", - "type": "string" } }, - "id": "DriveFolder", - "description": "Representation of a Google Drive folder.", - "type": "object" + "id": "DriveFolder" }, "SubmissionHistory": { "description": "The history of the submission. This currently includes state and grade\nhistories.", "type": "object", "properties": { - "stateHistory": { - "$ref": "StateHistory", - "description": "The state history information of the submission, if present." - }, "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" @@ -2294,19 +2501,50 @@ }, "id": "ShortAnswerSubmission" }, + "ListStudentSubmissionsResponse": { + "properties": { + "studentSubmissions": { + "description": "Student work that matches the request.", + "type": "array", + "items": { + "$ref": "StudentSubmission" + } + }, + "nextPageToken": { + "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", + "type": "string" + } + }, + "id": "ListStudentSubmissionsResponse", + "description": "Response when listing student submissions.", + "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.", "type": "object", "properties": { - "state": { + "courseWorkType": { + "description": "Type of course work this submission is for.\n\nRead-only.", + "type": "string", "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." + "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" + }, + "state": { "enum": [ "SUBMISSION_STATE_UNSPECIFIED", "NEW", @@ -2316,7 +2554,15 @@ "RECLAIMED_BY_STUDENT" ], "description": "State of this submission.\n\nRead-only.", - "type": "string" + "type": "string", + "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." + ] }, "userId": { "description": "Identifier for the student that owns this submission.\n\nRead-only.", @@ -2331,8 +2577,8 @@ "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" + "type": "string", + "description": "Classroom-assigned Identifier for the student submission.\nThis is unique among submissions for the relevant course work.\n\nRead-only." }, "submissionHistory": { "description": "The history of the submission (includes state and grade histories).\n\nRead-only.", @@ -2347,8 +2593,8 @@ "type": "number" }, "multipleChoiceSubmission": { - "$ref": "MultipleChoiceSubmission", - "description": "Submission content when course_work_type is MULTIPLE_CHOICE_QUESTION." + "description": "Submission content when course_work_type is MULTIPLE_CHOICE_QUESTION.", + "$ref": "MultipleChoiceSubmission" }, "assignmentSubmission": { "$ref": "AssignmentSubmission", @@ -2359,8 +2605,8 @@ "type": "boolean" }, "shortAnswerSubmission": { - "description": "Submission content when course_work_type is SHORT_ANSWER_QUESTION.", - "$ref": "ShortAnswerSubmission" + "$ref": "ShortAnswerSubmission", + "description": "Submission content when course_work_type is SHORT_ANSWER_QUESTION." }, "updateTime": { "description": "Last update time of this submission.\nThis may be unset if the student has not accessed this item.\n\nRead-only.", @@ -2371,58 +2617,20 @@ "description": "Absolute link to the submission in the Classroom web UI.\n\nRead-only.", "type": "string" }, - "draftGrade": { - "type": "number", - "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" - }, "late": { "description": "Whether this submission is late.\n\nRead-only.", "type": "boolean" }, - "courseWorkType": { - "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" - ], - "description": "Type of course work this submission is for.\n\nRead-only." - }, - "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": "StudentSubmission" }, - "ListStudentSubmissionsResponse": { - "type": "object", - "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.", - "type": "array", - "items": { - "$ref": "StudentSubmission" - } - } - }, - "id": "ListStudentSubmissionsResponse", - "description": "Response when listing student submissions." - }, "ModifyAttachmentsRequest": { + "id": "ModifyAttachmentsRequest", "description": "Request to modify the attachments of a student submission.", "type": "object", "properties": { @@ -2433,17 +2641,12 @@ "$ref": "Attachment" } } - }, - "id": "ModifyAttachmentsRequest" + } }, "YouTubeVideo": { "description": "YouTube video item.", "type": "object", "properties": { - "thumbnailUrl": { - "description": "URL of a thumbnail image of the YouTube video.\n\nRead-only.", - "type": "string" - }, "id": { "description": "YouTube API resource ID.", "type": "string" @@ -2455,12 +2658,15 @@ "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": "YouTubeVideo" }, "ListInvitationsResponse": { - "id": "ListInvitationsResponse", "description": "Response when listing invitations.", "type": "object", "properties": { @@ -2475,37 +2681,29 @@ "$ref": "Invitation" } } - } + }, + "id": "ListInvitationsResponse" }, - "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.", - "type": "object", + "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" } }, - "id": "CloudPubsubTopic" + "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.", + "type": "object" }, "GuardianInvitation": { - "description": "An invitation to become the guardian of a specified user, sent to a specified\nemail address.", "type": "object", "properties": { - "creationTime": { - "description": "The time that this invitation was created.\n\nRead-only.", - "format": "google-datetime", - "type": "string" - }, - "invitationId": { - "description": "Unique identifier for this invitation.\n\nRead-only.", - "type": "string" - }, "studentId": { "description": "ID of the student (in standard format)", "type": "string" }, "state": { + "description": "The state that this invitation is in.", "type": "string", "enumDescriptions": [ "Should never be returned.", @@ -2516,28 +2714,30 @@ "GUARDIAN_INVITATION_STATE_UNSPECIFIED", "PENDING", "COMPLETE" - ], - "description": "The state that this invitation is in." + ] }, "invitedEmailAddress": { "description": "Email address that the invitation was sent to.\nThis field is only visible to domain administrators.", "type": "string" + }, + "creationTime": { + "description": "The time that this invitation was created.\n\nRead-only.", + "format": "google-datetime", + "type": "string" + }, + "invitationId": { + "description": "Unique identifier for this invitation.\n\nRead-only.", + "type": "string" } }, - "id": "GuardianInvitation" + "id": "GuardianInvitation", + "description": "An invitation to become the guardian of a specified user, sent to a specified\nemail address." }, "StateHistory": { "properties": { - "stateTimestamp": { - "type": "string", - "description": "When the submission entered this state.", - "format": "google-datetime" - }, - "actorUserId": { - "description": "The teacher or student who made the change", - "type": "string" - }, "state": { + "description": "The workflow pipeline stage.", + "type": "string", "enumDescriptions": [ "No state specified. This should never be returned.", "The Submission has been created.", @@ -2553,8 +2753,15 @@ "RETURNED", "RECLAIMED_BY_STUDENT", "STUDENT_EDITED_AFTER_TURN_IN" - ], - "description": "The workflow pipeline stage.", + ] + }, + "stateTimestamp": { + "description": "When the submission entered this state.", + "format": "google-datetime", + "type": "string" + }, + "actorUserId": { + "description": "The teacher or student who made the change", "type": "string" } }, @@ -2570,11 +2777,11 @@ "type": "string" }, "materials": { - "description": "Materials attached to this set.", "type": "array", "items": { "$ref": "CourseMaterial" - } + }, + "description": "Materials attached to this set." } }, "id": "CourseMaterialSet", @@ -2584,16 +2791,16 @@ "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.", - "type": "string" - }, "teachers": { "description": "Teachers who match the list request.", "type": "array", "items": { "$ref": "Teacher" } + }, + "nextPageToken": { + "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", + "type": "string" } }, "id": "ListTeachersResponse" @@ -2618,47 +2825,48 @@ "id": "Link" }, "Date": { + "type": "object", "properties": { - "month": { - "description": "Month of year. Must be from 1 to 12, or 0 if specifying a date without a\nmonth.", - "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": { - "type": "integer", "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": { + "type": "integer", + "description": "Month of year. Must be from 1 to 12, or 0 if specifying a date without a\nmonth.", "format": "int32" } }, "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" + "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`." }, "Name": { "description": "Details of the user's name.", "type": "object", "properties": { - "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": "string", + "description": "The user's first name.\n\nRead-only." }, "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" } }, "id": "Name" }, "Assignment": { + "id": "Assignment", "description": "Additional details for assignments.", "type": "object", "properties": { @@ -2666,11 +2874,9 @@ "$ref": "DriveFolder", "description": "Drive folder where attachments from student submissions are placed.\nThis is only populated for course teachers and administrators." } - }, - "id": "Assignment" + } }, "SharedDriveFile": { - "id": "SharedDriveFile", "description": "Drive file that is used as material for course work.", "type": "object", "properties": { @@ -2679,12 +2885,6 @@ "description": "Drive file details." }, "shareMode": { - "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." - ], "enum": [ "UNKNOWN_SHARE_MODE", "VIEW", @@ -2692,9 +2892,16 @@ "STUDENT_COPY" ], "description": "Mechanism by which students access the Drive item.", - "type": "string" + "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": "SharedDriveFile" }, "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 `{}`.", @@ -2707,17 +2914,17 @@ "type": "object", "properties": { "assigneeMode": { - "enum": [ - "ASSIGNEE_MODE_UNSPECIFIED", - "ALL_STUDENTS", - "INDIVIDUAL_STUDENTS" - ], "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." + ], + "enum": [ + "ASSIGNEE_MODE_UNSPECIFIED", + "ALL_STUDENTS", + "INDIVIDUAL_STUDENTS" ] }, "modifyIndividualStudentsOptions": { @@ -2728,10 +2935,10 @@ "id": "ModifyAnnouncementAssigneesRequest" }, "GlobalPermission": { + "description": "Global user permission description.", + "type": "object", "properties": { "permission": { - "description": "Permission value.", - "type": "string", "enumDescriptions": [ "No permission is specified. This is not returned and is not a\nvalid value.", "User is permitted to create a course." @@ -2739,12 +2946,12 @@ "enum": [ "PERMISSION_UNSPECIFIED", "CREATE_COURSE" - ] + ], + "description": "Permission value.", + "type": "string" } }, - "id": "GlobalPermission", - "description": "Global user permission description.", - "type": "object" + "id": "GlobalPermission" }, "Teacher": { "description": "Teacher of a course.", @@ -2755,8 +2962,8 @@ "type": "string" }, "profile": { - "$ref": "UserProfile", - "description": "Global user information for the teacher.\n\nRead-only." + "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", @@ -2766,8 +2973,19 @@ "id": "Teacher" }, "GradeHistory": { + "id": "GradeHistory", + "description": "The history of each grade on this submission.", "type": "object", "properties": { + "pointsEarned": { + "description": "The numerator of the grade at this time in the submission grade history.", + "format": "double", + "type": "number" + }, + "actorUserId": { + "description": "The teacher who made the grade change.", + "type": "string" + }, "gradeTimestamp": { "description": "When the grade of the submission was changed.", "format": "google-datetime", @@ -2793,30 +3011,19 @@ "description": "The denominator of the grade at this time in the submission grade\nhistory.", "format": "double", "type": "number" - }, - "pointsEarned": { - "description": "The numerator of the grade at this time in the submission grade history.", - "format": "double", - "type": "number" - }, - "actorUserId": { - "description": "The teacher who made the grade change.", - "type": "string" } - }, - "id": "GradeHistory", - "description": "The history of each grade on this submission." + } }, "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" - } + }, + "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." } }, "id": "AssignmentSubmission" @@ -2834,24 +3041,25 @@ "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." + "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": { - "$ref": "YouTubeVideo", - "description": "YouTube video material." + "description": "YouTube video material.", + "$ref": "YouTubeVideo" } }, "id": "Material" }, "Feed": { + "description": "A class of notifications that an application can register to receive.\nFor example: \"all roster changes for a domain\".", + "type": "object", "properties": { "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" + "$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.", "type": "string", "enumDescriptions": [ "Should never be returned or provided.", @@ -2862,41 +3070,54 @@ "FEED_TYPE_UNSPECIFIED", "DOMAIN_ROSTER_CHANGES", "COURSE_ROSTER_CHANGES" - ] + ], + "description": "The type of feed." } }, - "id": "Feed", - "description": "A class of notifications that an application can register to receive.\nFor example: \"all roster changes for a domain\".", - "type": "object" + "id": "Feed" }, "Student": { + "description": "Student in a course.", + "type": "object", "properties": { + "courseId": { + "description": "Identifier of the course.\n\nRead-only.", + "type": "string" + }, "profile": { - "$ref": "UserProfile", - "description": "Global user information for the student.\n\nRead-only." + "description": "Global user information for the student.\n\nRead-only.", + "$ref": "UserProfile" }, "studentWorkFolder": { - "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.", - "$ref": "DriveFolder" + "$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" - }, - "courseId": { - "description": "Identifier of the course.\n\nRead-only.", - "type": "string" } }, - "id": "Student", - "description": "Student in a course.", - "type": "object" + "id": "Student" }, "Invitation": { "description": "An invitation to join a course.", "type": "object", "properties": { + "courseId": { + "description": "Identifier of the course to invite the user to.", + "type": "string" + }, + "id": { + "type": "string", + "description": "Identifier assigned by Classroom.\n\nRead-only." + }, "role": { + "enum": [ + "COURSE_ROLE_UNSPECIFIED", + "STUDENT", + "TEACHER", + "OWNER" + ], "description": "Role to invite the user to have.\nMust not be `COURSE_ROLE_UNSPECIFIED`.", "type": "string", "enumDescriptions": [ @@ -2904,42 +3125,28 @@ "Student in the course.", "Teacher of the course.", "Owner of the course." - ], - "enum": [ - "COURSE_ROLE_UNSPECIFIED", - "STUDENT", - "TEACHER", - "OWNER" ] }, "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" - }, - "courseId": { - "description": "Identifier of the course to invite the user to.", - "type": "string" - }, - "id": { - "description": "Identifier assigned by Classroom.\n\nRead-only.", - "type": "string" } }, "id": "Invitation" }, "TurnInStudentSubmissionRequest": { - "description": "Request to turn in a student submission.", "type": "object", "properties": {}, - "id": "TurnInStudentSubmissionRequest" + "id": "TurnInStudentSubmissionRequest", + "description": "Request to turn in a student submission." }, "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" + "type": "string", + "description": "Token identifying the next page of results to return. If empty, no further\nresults are available." }, "courseWork": { "description": "Course work items that match the request.", @@ -2952,6 +3159,7 @@ "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": { @@ -2963,54 +3171,53 @@ "description": "Youtube video attachment." }, "form": { - "$ref": "Form", - "description": "Google Forms attachment." + "description": "Google Forms attachment.", + "$ref": "Form" }, "link": { "$ref": "Link", "description": "Link attachment." } }, - "id": "Attachment", - "description": "Attachment added to student assignment work.\n\nWhen creating attachments, setting the `form` field is not supported." + "id": "Attachment" }, "ListAnnouncementsResponse": { "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" + }, "announcements": { + "description": "Announcement items that match the request.", "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": { "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.", + "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" }, - "nanos": { - "description": "Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.", + "minutes": { + "description": "Minutes of hour of day. Must be from 0 to 59.", "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.", + "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.", + "nanos": { + "description": "Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.", "format": "int32", "type": "integer" } @@ -3023,23 +3230,21 @@ "description": "Response when listing courses.", "type": "object", "properties": { + "nextPageToken": { + "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", + "type": "string" + }, "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.", @@ -3058,15 +3263,14 @@ "type": "string" } }, - "id": "Form" + "id": "Form", + "description": "Google Forms item.", + "type": "object" }, "ModifyCourseWorkAssigneesRequest": { + "description": "Request to modify assignee mode and options of a coursework.", "type": "object", "properties": { - "modifyIndividualStudentsOptions": { - "description": "Set which students are assigned or not assigned to the coursework.\nMust be specified only when `assigneeMode` is `INDIVIDUAL_STUDENTS`.", - "$ref": "ModifyIndividualStudentsOptions" - }, "assigneeMode": { "enum": [ "ASSIGNEE_MODE_UNSPECIFIED", @@ -3080,30 +3284,45 @@ "All students can see the item.\nThis is the default state.", "A subset of the students can see the item." ] + }, + "modifyIndividualStudentsOptions": { + "description": "Set which students are assigned or not assigned to the coursework.\nMust be specified only when `assigneeMode` is `INDIVIDUAL_STUDENTS`.", + "$ref": "ModifyIndividualStudentsOptions" } }, - "id": "ModifyCourseWorkAssigneesRequest", - "description": "Request to modify assignee mode and options of a coursework." + "id": "ModifyCourseWorkAssigneesRequest" }, "ListGuardiansResponse": { - "description": "Response when listing guardians.", "type": "object", "properties": { + "nextPageToken": { + "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", + "type": "string" + }, "guardians": { + "description": "Guardians on this page of results that met the criteria specified in\nthe request.", "type": "array", "items": { "$ref": "Guardian" - }, - "description": "Guardians on this page of results that met the criteria specified in\nthe request." - }, - "nextPageToken": { - "description": "Token identifying the next page of results to return. If empty, no further\nresults are available.", + } + } + }, + "id": "ListGuardiansResponse", + "description": "Response when listing guardians." + }, + "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" } }, - "id": "ListGuardiansResponse" + "id": "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" }, "ListGuardianInvitationsResponse": { + "id": "ListGuardianInvitationsResponse", "description": "Response when listing guardian invitations.", "type": "object", "properties": { @@ -3112,14 +3331,13 @@ "type": "string" }, "guardianInvitations": { - "description": "Guardian invitations that matched the list request.", "type": "array", "items": { "$ref": "GuardianInvitation" - } + }, + "description": "Guardian invitations that matched the list request." } - }, - "id": "ListGuardianInvitationsResponse" + } }, "ListCourseAliasesResponse": { "description": "Response when listing course aliases.", @@ -3139,18 +3357,8 @@ }, "id": "ListCourseAliasesResponse" }, - "CourseAlias": { - "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", - "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." - }, "IndividualStudentsOptions": { + "id": "IndividualStudentsOptions", "description": "Assignee details about a coursework/announcement.\nThis field is set if and only if `assigneeMode` is `INDIVIDUAL_STUDENTS`.", "type": "object", "properties": { @@ -3161,14 +3369,30 @@ "type": "string" } } + } + }, + "MultipleChoiceSubmission": { + "description": "Student work for a multiple-choice question.", + "type": "object", + "properties": { + "answer": { + "description": "Student's select choice.", + "type": "string" + } }, - "id": "IndividualStudentsOptions" + "id": "MultipleChoiceSubmission" }, "Registration": { + "description": "An instruction to Classroom to send notifications from the `feed` to the\nprovided `destination`.", + "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." + "description": "The Cloud Pub/Sub topic that notifications are to be sent to.", + "$ref": "CloudPubsubTopic" }, "expiryTime": { "description": "The time until which the `Registration` is effective.\n\nThis is a read-only field assigned by the server.", @@ -3178,46 +3402,29 @@ "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" } }, - "id": "Registration", - "description": "An instruction to Classroom to send notifications from the `feed` to the\nprovided `destination`.", - "type": "object" - }, - "MultipleChoiceSubmission": { - "id": "MultipleChoiceSubmission", - "description": "Student work for a multiple-choice question.", - "type": "object", - "properties": { - "answer": { - "description": "Student's select choice.", - "type": "string" - } - } + "id": "Registration" }, "CourseMaterial": { "description": "A material attached to a course as part of a material set.", "type": "object", "properties": { + "form": { + "description": "Google Forms attachment.", + "$ref": "Form" + }, "link": { - "description": "Link atatchment.", - "$ref": "Link" + "$ref": "Link", + "description": "Link atatchment." }, "driveFile": { "$ref": "DriveFile", "description": "Google Drive file attachment." }, "youTubeVideo": { - "description": "Youtube video attachment.", - "$ref": "YouTubeVideo" - }, - "form": { - "description": "Google Forms attachment.", - "$ref": "Form" + "$ref": "YouTubeVideo", + "description": "Youtube video attachment." } }, "id": "CourseMaterial" @@ -3235,220 +3442,13 @@ } }, "id": "MultipleChoiceQuestion" - }, - "Course": { - "description": "A Course in Classroom.", - "type": "object", - "properties": { - "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" - }, - "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" - }, - "courseMaterialSets": { - "description": "Sets of materials that appear on the \"about\" page of this course.\n\nRead-only.", - "type": "array", - "items": { - "$ref": "CourseMaterialSet" - } - }, - "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" - }, - "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" - }, - "calendarId": { - "type": "string", - "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." - }, - "alternateLink": { - "type": "string", - "description": "Absolute link to this course in the Classroom web UI.\n\nRead-only." - }, - "guardiansEnabled": { - "description": "Whether or not guardian notifications are enabled for this course.\n\nRead-only.", - "type": "boolean" - }, - "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." - }, - "courseState": { - "enum": [ - "COURSE_STATE_UNSPECIFIED", - "ACTIVE", - "ARCHIVED", - "PROVISIONED", - "DECLINED", - "SUSPENDED" - ], - "description": "State of the course.\nIf unspecified, the default state is `PROVISIONED`.", - "type": "string", - "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." - ] - }, - "description": { - "type": "string", - "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." - }, - "teacherGroupEmail": { - "type": "string", - "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." - }, - "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": { - "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" - }, - "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": "Course" - }, - "DriveFile": { - "type": "object", - "properties": { - "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": { - "description": "Drive API resource ID.", - "type": "string" - }, - "title": { - "description": "Title of the Drive item.\n\nRead-only.", - "type": "string" - } - }, - "id": "DriveFile", - "description": "Representation of a Google Drive file." - }, - "ReturnStudentSubmissionRequest": { - "description": "Request to return a student submission.", - "type": "object", - "properties": {}, - "id": "ReturnStudentSubmissionRequest" - }, - "ReclaimStudentSubmissionRequest": { - "type": "object", - "properties": {}, - "id": "ReclaimStudentSubmissionRequest", - "description": "Request to reclaim a student submission." } }, "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" + "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://classroom.googleapis.com/", - "auth": { - "oauth2": { - "scopes": { - "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.guardianlinks.me.readonly": { - "description": "View your Google Classroom guardians" - }, - "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.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" - }, - "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" - } - } - } - }, - "servicePath": "", - "description": "Manages classes, rosters, and invitations in Google Classroom.", - "kind": "discovery#restDescription", - "rootUrl": "https://classroom.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "classroom", - "batchPath": "batch", - "revision": "20180504", - "documentationLink": "https://developers.google.com/classroom/", - "id": "classroom:v1", - "title": "Google Classroom API" + "baseUrl": "https://classroom.googleapis.com/" } diff --git a/DiscoveryJson/cloudbilling_v1.json b/DiscoveryJson/cloudbilling_v1.json index a645bb24de..3df2c43afb 100644 --- a/DiscoveryJson/cloudbilling_v1.json +++ b/DiscoveryJson/cloudbilling_v1.json @@ -1,9 +1,26 @@ { + "canonicalName": "Cloudbilling", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, + "rootUrl": "https://cloudbilling.googleapis.com/", + "ownerDomain": "google.com", + "name": "cloudbilling", + "batchPath": "batch", + "fullyEncodeReservedExpansion": true, + "title": "Cloud Billing API", "ownerName": "Google", "resources": { "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).", "response": { "$ref": "ProjectBillingInfo" }, @@ -25,8 +42,7 @@ ], "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)." + "id": "cloudbilling.projects.getBillingInfo" }, "updateBillingInfo": { "response": { @@ -60,6 +76,34 @@ }, "billingAccounts": { "methods": { + "testIamPermissions": { + "flatPath": "v1/billingAccounts/{billingAccountsId}:testIamPermissions", + "id": "cloudbilling.billingAccounts.testIamPermissions", + "path": "v1/{+resource}: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).", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "resource" + ], + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "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": "^billingAccounts/[^/]+$", + "location": "path" + } + }, + "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).", "response": { @@ -68,21 +112,21 @@ "parameterOrder": [], "httpMethod": "GET", "parameters": { + "pageSize": { + "location": "query", + "description": "Requested page size. The maximum page size is 100; this is also the\ndefault.", + "format": "int32", + "type": "integer" + }, "filter": { + "location": "query", "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).", - "type": "string", - "location": "query" + "type": "string" }, "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.", "type": "string", "location": "query" - }, - "pageSize": { - "location": "query", - "description": "Requested page size. The maximum page size is 100; this is also the\ndefault.", - "format": "int32", - "type": "integer" } }, "scopes": [ @@ -111,6 +155,9 @@ "id": "cloudbilling.billingAccounts.create" }, "setIamPolicy": { + "flatPath": "v1/billingAccounts/{billingAccountsId}:setIamPolicy", + "path": "v1/{+resource}:setIamPolicy", + "id": "cloudbilling.billingAccounts.setIamPolicy", "request": { "$ref": "SetIamPolicyRequest" }, @@ -127,18 +174,18 @@ ], "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": "^billingAccounts/[^/]+$" + "pattern": "^billingAccounts/[^/]+$", + "location": "path" } - }, - "flatPath": "v1/billingAccounts/{billingAccountsId}:setIamPolicy", - "path": "v1/{+resource}:setIamPolicy", - "id": "cloudbilling.billingAccounts.setIamPolicy" + } }, "getIamPolicy": { + "flatPath": "v1/billingAccounts/{billingAccountsId}:getIamPolicy", + "path": "v1/{+resource}:getIamPolicy", + "id": "cloudbilling.billingAccounts.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).", "response": { "$ref": "Policy" @@ -152,18 +199,18 @@ ], "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": "^billingAccounts/[^/]+$" + "pattern": "^billingAccounts/[^/]+$", + "location": "path" } - }, - "flatPath": "v1/billingAccounts/{billingAccountsId}:getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "id": "cloudbilling.billingAccounts.getIamPolicy" + } }, "get": { + "flatPath": "v1/billingAccounts/{billingAccountsId}", + "path": "v1/{+name}", + "id": "cloudbilling.billingAccounts.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).", "response": { "$ref": "BillingAccount" @@ -177,16 +224,13 @@ ], "parameters": { "name": { - "location": "path", "description": "The resource name of the billing account to retrieve. For example,\n`billingAccounts/012345-567890-ABCDEF`.", "required": true, "type": "string", - "pattern": "^billingAccounts/[^/]+$" + "pattern": "^billingAccounts/[^/]+$", + "location": "path" } - }, - "flatPath": "v1/billingAccounts/{billingAccountsId}", - "path": "v1/{+name}", - "id": "cloudbilling.billingAccounts.get" + } }, "patch": { "request": { @@ -205,50 +249,22 @@ ], "parameters": { "updateMask": { + "location": "query", "description": "The update mask applied to the resource.\nOnly \"display_name\" is currently supported.", "format": "google-fieldmask", - "type": "string", - "location": "query" + "type": "string" }, "name": { - "location": "path", "description": "The name of the billing account resource to be updated.", "required": true, "type": "string", - "pattern": "^billingAccounts/[^/]+$" + "pattern": "^billingAccounts/[^/]+$", + "location": "path" } }, "flatPath": "v1/billingAccounts/{billingAccountsId}", "path": "v1/{+name}", "id": "cloudbilling.billingAccounts.patch" - }, - "testIamPermissions": { - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "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": "^billingAccounts/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/billingAccounts/{billingAccountsId}:testIamPermissions", - "id": "cloudbilling.billingAccounts.testIamPermissions", - "path": "v1/{+resource}: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).", - "request": { - "$ref": "TestIamPermissionsRequest" - } } }, "resources": { @@ -267,12 +283,6 @@ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "pageSize": { - "location": "query", - "description": "Requested page size. The maximum page size is 100; this is also the\ndefault.", - "format": "int32", - "type": "integer" - }, "name": { "description": "The resource name of the billing account associated with the projects that\nyou want to list. For example, `billingAccounts/012345-567890-ABCDEF`.", "required": true, @@ -284,6 +294,12 @@ "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": { + "description": "Requested page size. The maximum page size is 100; this is also the\ndefault.", + "format": "int32", + "type": "integer", + "location": "query" } }, "flatPath": "v1/billingAccounts/{billingAccountsId}/projects", @@ -297,34 +313,37 @@ "services": { "methods": { "list": { + "flatPath": "v1/services", + "path": "v1/services", + "id": "cloudbilling.services.list", + "description": "Lists all public cloud services.", "response": { "$ref": "ListServicesResponse" }, "parameterOrder": [], "httpMethod": "GET", "parameters": { - "pageSize": { - "description": "Requested page size. Defaults to 5000.", - "format": "int32", - "type": "integer", - "location": "query" - }, "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.", "type": "string", "location": "query" + }, + "pageSize": { + "location": "query", + "description": "Requested page size. Defaults to 5000.", + "format": "int32", + "type": "integer" } - }, - "flatPath": "v1/services", - "path": "v1/services", - "id": "cloudbilling.services.list", - "description": "Lists all public cloud services." + } } }, "resources": { "skus": { "methods": { "list": { + "flatPath": "v1/services/{servicesId}/skus", + "path": "v1/{+parent}/skus", + "id": "cloudbilling.services.skus.list", "description": "Lists all publicly available SKUs for a given cloud service.", "response": { "$ref": "ListSkusResponse" @@ -340,27 +359,27 @@ "type": "string" }, "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", - "location": "query" + "type": "string" }, "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 `ListSkus`\ncall. If unspecified, the first page of results is returned.", - "type": "string" + "type": "string", + "location": "query" }, "startTime": { - "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", - "type": "string" + "type": "string", + "location": "query" }, "pageSize": { + "location": "query", "description": "Requested page size. Defaults to 5000.", "format": "int32", - "type": "integer", - "location": "query" + "type": "integer" }, "parent": { "location": "path", @@ -369,10 +388,7 @@ "type": "string", "pattern": "^services/[^/]+$" } - }, - "flatPath": "v1/services/{servicesId}/skus", - "path": "v1/{+parent}/skus", - "id": "cloudbilling.services.skus.list" + } } } } @@ -380,10 +396,21 @@ } }, "parameters": { - "uploadType": { + "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" + "type": "string", + "location": "query" }, "fields": { "description": "Selector specifying which fields to include in a partial response.", @@ -409,6 +436,7 @@ "location": "query" }, "alt": { + "type": "string", "enumDescriptions": [ "Responses with Content-Type of application/json", "Media download with context-dependent Content-Type", @@ -421,8 +449,7 @@ "json", "media", "proto" - ], - "type": "string" + ] }, "access_token": { "description": "OAuth access token.", @@ -446,25 +473,14 @@ "default": "true" }, "oauth_token": { - "location": "query", "description": "OAuth 2.0 token for the current user.", - "type": "string" + "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": "v1", @@ -478,78 +494,6 @@ "documentationLink": "https://cloud.google.com/billing/", "discoveryVersion": "v1", "schemas": { - "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" - }, - "Category": { - "description": "Represents the category hierarchy of a SKU.", - "type": "object", - "properties": { - "resourceFamily": { - "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.", - "type": "string" - }, - "serviceDisplayName": { - "description": "The display name of the service this SKU belongs to.", - "type": "string" - }, - "usageType": { - "description": "Represents how the SKU is consumed.\nExample: \"OnDemand\", \"Preemptible\", \"Commit1Mo\", \"Commit1Yr\" etc.", - "type": "string" - } - }, - "id": "Category" - }, - "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.", - "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.", - "type": "array", - "items": { - "$ref": "AuditLogConfig" - } - } - }, - "id": "AuditConfig" - }, "ListSkusResponse": { "description": "Response message for `ListSkus`.", "type": "object", @@ -572,14 +516,6 @@ "description": "Represents the pricing information for a SKU at a single point of time.", "type": "object", "properties": { - "aggregationInfo": { - "$ref": "AggregationInfo", - "description": "Aggregation Info. This can be left unspecified if the pricing expression\ndoesn't require aggregation." - }, - "summary": { - "description": "An optional human readable summary of the pricing information, has a\nmaximum length of 256 characters.", - "type": "string" - }, "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", @@ -591,8 +527,16 @@ "type": "number" }, "pricingExpression": { - "description": "Expresses the pricing formula. See `PricingExpression` for an example.", - "$ref": "PricingExpression" + "$ref": "PricingExpression", + "description": "Expresses the pricing formula. See `PricingExpression` for an example." + }, + "aggregationInfo": { + "description": "Aggregation Info. This can be left unspecified if the pricing expression\ndoesn't require aggregation.", + "$ref": "AggregationInfo" + }, + "summary": { + "description": "An optional human readable summary of the pricing information, has a\nmaximum length of 256 characters.", + "type": "string" } }, "id": "PricingInfo" @@ -619,14 +563,14 @@ "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" + }, + "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" @@ -635,6 +579,10 @@ "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\".", + "type": "string" + }, "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.", "type": "array", @@ -663,10 +611,6 @@ "baseUnit": { "description": "The base unit for the SKU which is the unit used in usage exports.\nExample: \"By\"", "type": "string" - }, - "baseUnitDescription": { - "description": "The base unit in human readable form.\nExample: \"byte\".", - "type": "string" } }, "id": "PricingExpression" @@ -675,14 +619,14 @@ "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": { "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." } }, "id": "TierRate" @@ -746,6 +690,7 @@ "type": "object", "properties": { "aggregationInterval": { + "type": "string", "enumDescriptions": [ "", "", @@ -755,8 +700,7 @@ "AGGREGATION_INTERVAL_UNSPECIFIED", "DAILY", "MONTHLY" - ], - "type": "string" + ] }, "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.", @@ -764,7 +708,6 @@ "type": "integer" }, "aggregationLevel": { - "type": "string", "enumDescriptions": [ "", "", @@ -774,7 +717,8 @@ "AGGREGATION_LEVEL_UNSPECIFIED", "ACCOUNT", "PROJECT" - ] + ], + "type": "string" } }, "id": "AggregationInfo" @@ -783,6 +727,10 @@ "description": "Encapsulates a single service in Google Cloud Platform.", "type": "object", "properties": { + "displayName": { + "description": "A human readable display name for this service.", + "type": "string" + }, "serviceId": { "description": "The identifier for the service.\nExample: \"DA34-426B-A397\"", "type": "string" @@ -790,10 +738,6 @@ "name": { "description": "The resource name for the service.\nExample: \"services/DA34-426B-A397\"", "type": "string" - }, - "displayName": { - "description": "A human readable display name for this service.", - "type": "string" } }, "id": "Service" @@ -816,16 +760,7 @@ "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", @@ -837,7 +772,16 @@ "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" @@ -869,10 +813,6 @@ "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", @@ -882,6 +822,10 @@ "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": { + "description": "The 3-letter currency code defined in ISO 4217.", + "type": "string" } }, "id": "Money" @@ -927,6 +871,10 @@ "description": "Encapsulates a single SKU in Google Cloud Platform", "type": "object", "properties": { + "skuId": { + "description": "The identifier for the SKU.\nExample: \"AA95-CD31-42FE\"", + "type": "string" + }, "description": { "description": "A human readable description of the SKU, has a maximum length of 256\ncharacters.", "type": "string" @@ -954,36 +902,88 @@ } }, "category": { - "description": "The category hierarchy of this SKU, purely for organizational purpose.", - "$ref": "Category" + "$ref": "Category", + "description": "The category hierarchy of this SKU, purely for organizational purpose." + } + }, + "id": "Sku" + }, + "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" }, - "skuId": { - "description": "The identifier for the SKU.\nExample: \"AA95-CD31-42FE\"", + "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" + }, + "Category": { + "description": "Represents the category hierarchy of a SKU.", + "type": "object", + "properties": { + "resourceFamily": { + "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.", + "type": "string" + }, + "serviceDisplayName": { + "description": "The display name of the service this SKU belongs to.", + "type": "string" + }, + "usageType": { + "description": "Represents how the SKU is consumed.\nExample: \"OnDemand\", \"Preemptible\", \"Commit1Mo\", \"Commit1Yr\" etc.", "type": "string" } }, - "id": "Sku" + "id": "Category" + }, + "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.", + "type": "object", + "properties": { + "auditLogConfigs": { + "description": "The configuration for logging of each type of permission.", + "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" } }, "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": "Cloudbilling", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://cloudbilling.googleapis.com/", - "ownerDomain": "google.com", - "name": "cloudbilling", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Cloud Billing API" + "protocol": "rest" } diff --git a/DiscoveryJson/cloudbuild_v1.json b/DiscoveryJson/cloudbuild_v1.json index a9755a3398..d0421bb7ff 100644 --- a/DiscoveryJson/cloudbuild_v1.json +++ b/DiscoveryJson/cloudbuild_v1.json @@ -1,840 +1,18 @@ { - "rootUrl": "https://cloudbuild.googleapis.com/", - "ownerDomain": "google.com", - "name": "cloudbuild", - "batchPath": "batch", - "title": "Cloud Container Builder API", - "ownerName": "Google", - "resources": { - "projects": { - "resources": { - "builds": { - "methods": { - "cancel": { - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "id" - ], - "response": { - "$ref": "Build" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "id": { - "description": "ID of the build.", - "required": true, - "type": "string", - "location": "path" - }, - "projectId": { - "description": "ID of the project.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectId}/builds/{id}:cancel", - "id": "cloudbuild.projects.builds.cancel", - "path": "v1/projects/{projectId}/builds/{id}:cancel", - "request": { - "$ref": "CancelBuildRequest" - }, - "description": "Cancels a build in progress." - }, - "retry": { - "response": { - "$ref": "Operation" - }, - "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": "Build ID of the original build.", - "required": true, - "type": "string", - "location": "path" - } - }, - "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 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." - }, - "get": { - "flatPath": "v1/projects/{projectId}/builds/{id}", - "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 (such as `SUCCESS`,\n`FAILURE`, or `WORKING`), and timing information.", - "httpMethod": "GET", - "parameterOrder": [ - "projectId", - "id" - ], - "response": { - "$ref": "Build" - }, - "parameters": { - "projectId": { - "location": "path", - "description": "ID of the project.", - "required": true, - "type": "string" - }, - "id": { - "required": true, - "type": "string", - "location": "path", - "description": "ID of the build." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "response": { - "$ref": "ListBuildsResponse" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "filter": { - "location": "query", - "description": "The raw filter text to constrain the results.", - "type": "string" - }, - "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" - } - }, - "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." - }, - "create": { - "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", - "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`).", - "request": { - "$ref": "Build" - } - } - } - }, - "triggers": { - "methods": { - "list": { - "description": "Lists existing `BuildTrigger`s.\n\nThis API is experimental.", - "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" - }, - "create": { - "response": { - "$ref": "BuildTrigger" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "required": true, - "type": "string", - "location": "path", - "description": "ID of the project for which to configure automatic builds." - } - }, - "flatPath": "v1/projects/{projectId}/triggers", - "path": "v1/projects/{projectId}/triggers", - "id": "cloudbuild.projects.triggers.create", - "request": { - "$ref": "BuildTrigger" - }, - "description": "Creates a new `BuildTrigger`.\n\nThis API is experimental." - }, - "run": { - "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" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "triggerId" - ], - "httpMethod": "POST", - "parameters": { - "triggerId": { - "description": "ID of the trigger.", - "required": true, - "type": "string", - "location": "path" - }, - "projectId": { - "location": "path", - "description": "ID of the project.", - "required": true, - "type": "string" - } - }, - "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.", - "request": { - "$ref": "BuildTrigger" - }, - "response": { - "$ref": "BuildTrigger" - }, - "parameterOrder": [ - "projectId", - "triggerId" - ], - "httpMethod": "PATCH", - "parameters": { - "triggerId": { - "description": "ID of the `BuildTrigger` to update.", - "required": true, - "type": "string", - "location": "path" - }, - "projectId": { - "location": "path", - "description": "ID of the project that owns the trigger.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/triggers/{triggerId}", - "path": "v1/projects/{projectId}/triggers/{triggerId}", - "id": "cloudbuild.projects.triggers.patch" - }, - "get": { - "httpMethod": "GET", - "parameterOrder": [ - "projectId", - "triggerId" - ], - "response": { - "$ref": "BuildTrigger" - }, - "parameters": { - "triggerId": { - "location": "path", - "description": "ID of the `BuildTrigger` to get.", - "required": true, - "type": "string" - }, - "projectId": { - "location": "path", - "description": "ID of the project that owns the trigger.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/triggers/{triggerId}", - "id": "cloudbuild.projects.triggers.get", - "path": "v1/projects/{projectId}/triggers/{triggerId}", - "description": "Returns information about a `BuildTrigger`.\n\nThis API is experimental." - }, - "delete": { - "path": "v1/projects/{projectId}/triggers/{triggerId}", - "id": "cloudbuild.projects.triggers.delete", - "description": "Deletes a `BuildTrigger` by its project ID and trigger ID.\n\nThis API is experimental.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "projectId", - "triggerId" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "triggerId": { - "location": "path", - "description": "ID of the `BuildTrigger` to delete.", - "required": true, - "type": "string" - }, - "projectId": { - "location": "path", - "description": "ID of the project that owns the trigger.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{projectId}/triggers/{triggerId}" - } - } - } - } - }, - "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`.", - "request": { - "$ref": "CancelOperationRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Empty" - }, - "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" - ], - "flatPath": "v1/operations/{operationsId}:cancel", - "id": "cloudbuild.operations.cancel", - "path": "v1/{+name}:cancel" - }, - "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", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "ListOperationsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "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" - }, - "filter": { - "location": "query", - "description": "The standard list filter.", - "type": "string" - } - }, - "flatPath": "v1/operations", - "id": "cloudbuild.operations.list", - "path": "v1/{+name}" - }, - "get": { - "flatPath": "v1/operations/{operationsId}", - "path": "v1/{+name}", - "id": "cloudbuild.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": "^operations/.+$", - "location": "path", - "description": "The name of the operation resource.", - "required": true, - "type": "string" - } - } - } - } - } - }, - "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": { - "type": "string", - "location": "query", - "description": "OAuth bearer token." - }, - "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": { - "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." - }, - "$.xgafv": { - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ] - }, - "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" - }, - "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": { - "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." - } - }, - "version": "v1", - "baseUrl": "https://cloudbuild.googleapis.com/", - "servicePath": "", - "description": "Builds container images in the cloud.", - "kind": "discovery#restDescription", - "basePath": "", - "id": "cloudbuild:v1", - "documentationLink": "https://cloud.google.com/container-builder/docs/", - "revision": "20180508", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "Source": { - "description": "Location of the source in a supported storage service.", - "type": "object", - "properties": { - "repoSource": { - "description": "If provided, get the source from this location in a Cloud Source\nRepository.", - "$ref": "RepoSource" - }, - "storageSource": { - "description": "If provided, get the source from this location in Google Cloud Storage.", - "$ref": "StorageSource" - } - }, - "id": "Source" - }, - "RetryBuildRequest": { - "properties": {}, - "id": "RetryBuildRequest", - "description": "Specifies a build to retry.", - "type": "object" - }, - "Artifacts": { - "type": "object", - "properties": { - "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." - }, - "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" - } - } - }, - "id": "Artifacts", - "description": "Artifacts produced by a build that should be uploaded upon\nsuccessful completion of all build steps." - }, - "ArtifactResult": { - "type": "object", - "properties": { - "fileHash": { - "description": "The file hash of the artifact.", - "type": "array", - "items": { - "$ref": "FileHashes" - } - }, - "location": { - "description": "The path of an artifact in a Google Cloud Storage bucket, with the\ngeneration number. For example,\n`gs://mybucket/path/to/output.jar#generation`.", - "type": "string" - } - }, - "id": "ArtifactResult", - "description": "An artifact that was uploaded during a build. This\nis a single record in the artifact manifest JSON file." - }, - "BuildOperationMetadata": { - "description": "Metadata for build operations.", - "type": "object", - "properties": { - "build": { - "$ref": "Build", - "description": "The build that the operation is tracking." - } - }, - "id": "BuildOperationMetadata" - }, - "SourceProvenance": { - "description": "Provenance of the source. Ways to find the original source, or verify that\nsome source was used for this build.", - "type": "object", - "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." - } - }, - "id": "SourceProvenance" - }, - "CancelOperationRequest": { - "description": "The request message for Operations.CancelOperation.", - "type": "object", - "properties": {}, - "id": "CancelOperationRequest" - }, - "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": { - "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`.", - "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": { - "description": "The error result of the operation in case of failure or cancellation.", - "$ref": "Status" - }, - "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\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." - } - }, - "id": "Operation" - }, - "BuildStep": { - "type": "object", - "properties": { - "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" - }, - "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.", - "type": "array", - "items": { - "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" - } - }, - "timing": { - "description": "Stores timing information for executing this build step.\n@OutputOnly", - "$ref": "TimeSpan" - }, - "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" - }, - "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" - } - }, - "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.", - "type": "array", - "items": { - "type": "string" - } - }, - "status": { - "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." - ], - "enum": [ - "STATUS_UNKNOWN", - "QUEUED", - "WORKING", - "SUCCESS", - "FAILURE", - "INTERNAL_ERROR", - "TIMEOUT", - "CANCELLED" - ], - "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", - "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" - }, - "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`.", - "type": "array", - "items": { - "type": "string" - } - }, - "id": { - "description": "Unique identifier for this build step, used in `wait_for` to\nreference this build step as a dependency.", - "type": "string" - } - }, - "id": "BuildStep", - "description": "A step in the build pipeline." - }, - "RepoSource": { - "id": "RepoSource", - "description": "Location of the source in a Google Cloud Source Repository.", - "type": "object", + "discoveryVersion": "v1", + "version_module": true, + "schemas": { + "Status": { "properties": { - "dir": { - "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" - }, - "tagName": { - "type": "string", - "description": "Name of the tag to build." + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" }, - "projectId": { - "description": "ID of the project that owns the Cloud Source Repository. If omitted, the\nproject ID requesting the build is assumed.", + "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" }, - "repoName": { - "type": "string", - "description": "Name of the Cloud Source Repository. If omitted, the name \"default\" is\nassumed." - }, - "commitSha": { - "description": "Explicit commit SHA to build.", - "type": "string" - } - } - }, - "FileHashes": { - "properties": { - "fileHash": { - "description": "Collection of file hashes.", - "type": "array", - "items": { - "$ref": "Hash" - } - } - }, - "id": "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" - }, - "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", @@ -845,36 +23,42 @@ }, "type": "object" } - }, - "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." } }, - "id": "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" }, "BuildTrigger": { - "description": "Configuration for an automated build in response to source repository\nchanges.", - "type": "object", "properties": { + "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" }, + "disabled": { + "description": "If true, the trigger will never result in a build.", + "type": "boolean" + }, "createTime": { "description": "Time when the trigger was created.\n\n@OutputOnly", "format": "google-datetime", "type": "string" }, - "disabled": { - "type": "boolean", - "description": "If true, the trigger will never result in a build." - }, "filename": { "description": "Path, from the source root, to a file whose contents is used for the\ntemplate.", "type": "string" @@ -882,27 +66,44 @@ "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." + } + }, + "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 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.", + "type": "object", + "properties": { + "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`.", + "type": "array", + "items": { + "type": "string" + } + }, + "projectId": { + "description": "ID of the project.\n@OutputOnly.", + "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 trigger.\n\n@OutputOnly", + "logUrl": { + "description": "URL to logs for this build in Google Cloud Console.\n@OutputOnly", "type": "string" }, - "build": { - "description": "Contents of the build template.", - "$ref": "Build" + "source": { + "description": "The location of the source files to build.", + "$ref": "Source" + }, + "options": { + "description": "Special options for this build.", + "$ref": "BuildOptions" }, - "substitutions": { - "additionalProperties": { - "type": "string" - }, - "description": "Substitutions data for Build resource.", - "type": "object" - } - }, - "id": "BuildTrigger" - }, - "Build": { - "properties": { "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", @@ -937,8 +138,8 @@ "type": "string" }, "artifacts": { - "$ref": "Artifacts", - "description": "Artifacts produced by the build that should be uploaded upon\nsuccessful completion of all build steps." + "description": "Artifacts produced by the build that should be uploaded upon\nsuccessful completion of all build steps.", + "$ref": "Artifacts" }, "secrets": { "description": "Secrets to decrypt using Cloud Key Management Service.", @@ -948,12 +149,12 @@ } }, "results": { - "description": "Results of the build.\n@OutputOnly", - "$ref": "Results" + "$ref": "Results", + "description": "Results of the build.\n@OutputOnly" }, "logsBucket": { - "type": "string", - "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`." + "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": "Required. The operations to be performed on the workspace.", @@ -967,22 +168,22 @@ "type": "string" }, "tags": { - "description": "Tags for annotation of a `Build`. These are not docker tags.", "type": "array", "items": { "type": "string" - } + }, + "description": "Tags for annotation of a `Build`. These are not docker tags." }, "id": { "description": "Unique identifier of the build.\n@OutputOnly", "type": "string" }, "substitutions": { - "description": "Substitutions data for `Build` resource.", - "type": "object", "additionalProperties": { "type": "string" - } + }, + "description": "Substitutions data for `Build` resource.", + "type": "object" }, "startTime": { "description": "Time at which execution of the build was started.\n@OutputOnly", @@ -990,379 +191,1178 @@ "type": "string" }, "timing": { - "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", "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" + }, + "sourceProvenance": { + "description": "A permanent fixed identifier for source.\n@OutputOnly", + "$ref": "SourceProvenance" }, "createTime": { - "type": "string", "description": "Time at which the request to create the build was received.\n@OutputOnly", - "format": "google-datetime" + "format": "google-datetime", + "type": "string" + } + }, + "id": "Build" + }, + "CancelBuildRequest": { + "description": "Request to cancel an ongoing build.", + "type": "object", + "properties": {}, + "id": "CancelBuildRequest" + }, + "ListBuildsResponse": { + "description": "Response including listed builds.", + "type": "object", + "properties": { + "nextPageToken": { + "description": "Token to receive the next page of results.", + "type": "string" }, - "sourceProvenance": { - "$ref": "SourceProvenance", - "description": "A permanent fixed identifier for source.\n@OutputOnly" + "builds": { + "type": "array", + "items": { + "$ref": "Build" + }, + "description": "Builds will be sorted by `create_time`, descending." + } + }, + "id": "ListBuildsResponse" + }, + "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", + "properties": { + "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" + }, + "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" + } + }, + "id": "Volume" + }, + "ListOperationsResponse": { + "id": "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." + } + } + }, + "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": "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": { + "type": "string", + "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": "Option to specify behavior when there is an error in the substitution\nchecks." + }, + "diskSizeGb": { + "type": "string", + "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" + }, + "sourceProvenanceHash": { + "enumDescriptions": [ + "No hash requested.", + "Use a sha256 hash.", + "Use a md5 hash." + ], + "description": "Requested hash for SourceProvenance.", + "type": "array", + "items": { + "type": "string", + "enum": [ + "NONE", + "SHA256", + "MD5" + ] + } + }, + "machineType": { + "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." + ], + "enum": [ + "UNSPECIFIED", + "N1_HIGHCPU_8", + "N1_HIGHCPU_32" + ] + }, + "logStreamingOption": { + "description": "Option 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." + ], + "enum": [ + "STREAM_DEFAULT", + "STREAM_ON", + "STREAM_OFF" + ] + } + }, + "id": "BuildOptions" + }, + "StorageSource": { + "description": "Location of the source in an archive file in Google Cloud Storage.", + "type": "object", + "properties": { + "bucket": { + "type": "string", + "description": "Google Cloud Storage bucket containing the source (see\n[Bucket Name\nRequirements](https://cloud.google.com/storage/docs/bucket-naming#requirements))." + }, + "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" + }, + "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": { + "id": "Results", + "description": "Artifacts created by the build pipeline.", + "type": "object", + "properties": { + "numArtifacts": { + "description": "Number of artifacts uploaded. Only populated when artifacts are uploaded.", + "format": "int64", + "type": "string" + }, + "artifactManifest": { + "description": "Path to the artifact manifest. Only populated when artifacts are uploaded.", + "type": "string" + }, + "buildStepImages": { + "description": "List of build step digests, in the order corresponding to build step\nindices.", + "type": "array", + "items": { + "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`.", + "description": "Container images that were built as a part of the build.", + "type": "array", + "items": { + "$ref": "BuiltImage" + } + } + } + }, + "ArtifactObjects": { + "description": "Files in the workspace to upload to Cloud Storage upon successful\ncompletion of all build steps.", + "type": "object", + "properties": { + "timing": { + "$ref": "TimeSpan", + "description": "Stores timing information for pushing all artifact objects.\n@OutputOnly" + }, + "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.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "id": "ArtifactObjects" + }, + "ListBuildTriggersResponse": { + "description": "Response containing existing `BuildTriggers`.", + "type": "object", + "properties": { + "triggers": { + "description": "`BuildTriggers` for the project, sorted by `create_time` descending.", "type": "array", "items": { - "type": "string" + "$ref": "BuildTrigger" } + } + }, + "id": "ListBuildTriggersResponse" + }, + "BuiltImage": { + "description": "An image built by the pipeline.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name used to push the container image to Google Container Registry, as\npresented to `docker push`." }, - "projectId": { - "description": "ID of the project.\n@OutputOnly.", + "digest": { + "description": "Docker Registry 2.0 digest.", "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", + "pushTiming": { + "$ref": "TimeSpan", + "description": "Stores timing information for pushing the specified image.\n@OutputOnly" + } + }, + "id": "BuiltImage" + }, + "Hash": { + "type": "object", + "properties": { + "type": { + "enumDescriptions": [ + "No hash requested.", + "Use a sha256 hash.", + "Use a md5 hash." + ], + "enum": [ + "NONE", + "SHA256", + "MD5" + ], + "description": "The type of hash that was performed.", "type": "string" }, - "logUrl": { - "description": "URL to logs for this build in Google Cloud Console.\n@OutputOnly", + "value": { + "type": "string", + "description": "The hash value.", + "format": "byte" + } + }, + "id": "Hash", + "description": "Container message for hash values." + }, + "Secret": { + "description": "Pairs a set of secret environment variables containing encrypted\nvalues with the Cloud KMS key to use to decrypt the value.", + "type": "object", + "properties": { + "kmsKeyName": { + "description": "Cloud KMS key name to use to decrypt these envs.", "type": "string" }, - "source": { - "$ref": "Source", - "description": "The location of the source files to build." - }, - "options": { - "$ref": "BuildOptions", - "description": "Special options for this build." + "secretEnv": { + "additionalProperties": { + "format": "byte", + "type": "string" + }, + "description": "Map of environment variable name to its encrypted value.\n\nSecret environment variables must be unique across all of a build's\nsecrets, and must be used by at least one build step. Values can be at most\n1 KB in size. There can be at most ten secret values across all of a\nbuild's secrets.", + "type": "object" } }, - "id": "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.", - "type": "object" + "id": "Secret" }, - "CancelBuildRequest": { - "description": "Request to cancel an ongoing build.", - "type": "object", + "Empty": { "properties": {}, - "id": "CancelBuildRequest" + "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" }, - "Volume": { + "Source": { + "description": "Location of the source in a supported storage service.", + "type": "object", "properties": { - "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" + "storageSource": { + "description": "If provided, get the source from this location in Google Cloud Storage.", + "$ref": "StorageSource" }, - "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" + "repoSource": { + "$ref": "RepoSource", + "description": "If provided, get the source from this location in a Cloud Source\nRepository." } }, - "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" + "id": "Source" }, - "ListBuildsResponse": { - "description": "Response including listed builds.", + "RetryBuildRequest": { + "description": "Specifies a build to retry.", + "type": "object", + "properties": {}, + "id": "RetryBuildRequest" + }, + "Artifacts": { + "description": "Artifacts produced by a build that should be uploaded upon\nsuccessful completion of all build steps.", "type": "object", "properties": { - "builds": { - "description": "Builds will be sorted by `create_time`, descending.", + "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": { - "$ref": "Build" + "type": "string" } }, - "nextPageToken": { - "description": "Token to receive the next page of results.", - "type": "string" + "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." } }, - "id": "ListBuildsResponse" + "id": "Artifacts" }, - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", + "ArtifactResult": { "type": "object", "properties": { - "operations": { - "description": "A list of operations that matches the specified filter in the request.", + "fileHash": { "type": "array", "items": { - "$ref": "Operation" - } + "$ref": "FileHashes" + }, + "description": "The file hash of the artifact." }, - "nextPageToken": { - "description": "The standard List next-page token.", + "location": { + "description": "The path of an artifact in a Google Cloud Storage bucket, with the\ngeneration number. For example,\n`gs://mybucket/path/to/output.jar#generation`.", "type": "string" } }, - "id": "ListOperationsResponse" + "id": "ArtifactResult", + "description": "An artifact that was uploaded during a build. This\nis a single record in the artifact manifest JSON file." }, - "TimeSpan": { - "description": "Start and end times for a build execution phase.", + "BuildOperationMetadata": { + "id": "BuildOperationMetadata", + "description": "Metadata for build operations.", "type": "object", "properties": { - "endTime": { - "type": "string", - "description": "End of time span.", - "format": "google-datetime" + "build": { + "$ref": "Build", + "description": "The build that the operation is tracking." + } + } + }, + "SourceProvenance": { + "description": "Provenance of the source. Ways to find the original source, or verify that\nsome source was used for this build.", + "type": "object", + "properties": { + "resolvedRepoSource": { + "description": "A copy of the build's `source.repo_source`, if exists, with any\nrevisions resolved.", + "$ref": "RepoSource" }, - "startTime": { - "description": "Start of time span.", - "format": "google-datetime", + "resolvedStorageSource": { + "$ref": "StorageSource", + "description": "A copy of the build's `source.storage_source`, if exists, with any\ngenerations resolved." + }, + "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", + "additionalProperties": { + "$ref": "FileHashes" + } + } + }, + "id": "SourceProvenance" + }, + "CancelOperationRequest": { + "description": "The request message for Operations.CancelOperation.", + "type": "object", + "properties": {}, + "id": "CancelOperationRequest" + }, + "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": { + "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": { + "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": "TimeSpan" + "id": "Operation" }, - "BuildOptions": { - "description": "Optional arguments to enable specific features of builds.", + "BuildStep": { + "description": "A step in the build pipeline.", "type": "object", "properties": { - "logStreamingOption": { + "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" + }, + "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" + } + }, + "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.", + "type": "array", + "items": { + "type": "string" + } + }, + "status": { "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." + "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." ], "enum": [ - "STREAM_DEFAULT", - "STREAM_ON", - "STREAM_OFF" + "STATUS_UNKNOWN", + "QUEUED", + "WORKING", + "SUCCESS", + "FAILURE", + "INTERNAL_ERROR", + "TIMEOUT", + "CANCELLED" ], - "description": "Option to define build log streaming behavior to Google Cloud\nStorage.", + "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", + "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" }, - "requestedVerifyOption": { - "type": "string", - "enumDescriptions": [ - "Not a verifiable build. (default)", - "Verified build." - ], - "enum": [ - "NOT_VERIFIED", - "VERIFIED" - ], - "description": "Requested verifiability options." + "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" }, - "substitutionOption": { - "description": "Option to specify behavior when there is an error in the substitution\nchecks.", - "type": "string", - "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" - ] + "id": { + "description": "Unique identifier for this build step, used in `wait_for` to\nreference this build step as a dependency.", + "type": "string" }, - "diskSizeGb": { - "type": "string", - "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" + "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`.", + "type": "array", + "items": { + "type": "string" + } }, - "sourceProvenanceHash": { - "description": "Requested hash for SourceProvenance.", + "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" + }, + "timing": { + "$ref": "TimeSpan", + "description": "Stores timing information for executing this build step.\n@OutputOnly" + }, + "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.", "type": "array", "items": { - "type": "string", - "enum": [ - "NONE", - "SHA256", - "MD5" - ] - }, - "enumDescriptions": [ - "No hash requested.", - "Use a sha256 hash.", - "Use a md5 hash." - ] + "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." - ] + "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" + } } }, - "id": "BuildOptions" + "id": "BuildStep" }, - "StorageSource": { - "description": "Location of the source in an archive file in Google Cloud Storage.", + "RepoSource": { + "description": "Location of the source in a Google Cloud Source Repository.", "type": "object", "properties": { - "bucket": { - "description": "Google Cloud Storage bucket containing the source (see\n[Bucket Name\nRequirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).", + "tagName": { + "description": "Name of the tag to build.", "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.", + "projectId": { + "description": "ID of the project that owns the Cloud Source Repository. If omitted, the\nproject ID requesting the build is assumed.", "type": "string" }, - "generation": { - "description": "Google Cloud Storage generation for the object. If the generation is\nomitted, the latest generation will be used.", - "format": "int64", + "repoName": { + "description": "Name of the Cloud Source Repository. If omitted, the name \"default\" is\nassumed.", + "type": "string" + }, + "commitSha": { + "description": "Explicit commit SHA to build.", + "type": "string" + }, + "dir": { + "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": "StorageSource" + "id": "RepoSource" }, - "Results": { - "description": "Artifacts created by the build pipeline.", + "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": { - "images": { - "description": "Container images that were built as a part of the build.", + "fileHash": { + "description": "Collection of file hashes.", "type": "array", "items": { - "$ref": "BuiltImage" + "$ref": "Hash" } - }, - "numArtifacts": { - "description": "Number of artifacts uploaded. Only populated when artifacts are uploaded.", - "format": "int64", - "type": "string" - }, - "artifactManifest": { - "description": "Path to the artifact manifest. Only populated when artifacts are uploaded.", - "type": "string" - }, - "buildStepImages": { - "description": "List of build step digests, in the order corresponding to build step\nindices.", - "type": "array", - "items": { - "type": "string" + } + }, + "id": "FileHashes" + } + }, + "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 Build", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, + "rootUrl": "https://cloudbuild.googleapis.com/", + "ownerDomain": "google.com", + "name": "cloudbuild", + "batchPath": "batch", + "title": "Cloud Container Builder API", + "ownerName": "Google", + "resources": { + "projects": { + "resources": { + "builds": { + "methods": { + "cancel": { + "request": { + "$ref": "CancelBuildRequest" + }, + "description": "Cancels a build in progress.", + "response": { + "$ref": "Build" + }, + "parameterOrder": [ + "projectId", + "id" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "projectId": { + "location": "path", + "description": "ID of the project.", + "required": true, + "type": "string" + }, + "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": { + "flatPath": "v1/projects/{projectId}/builds/{id}:retry", + "id": "cloudbuild.projects.builds.retry", + "path": "v1/projects/{projectId}/builds/{id}: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.", + "request": { + "$ref": "RetryBuildRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "projectId", + "id" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "projectId": { + "location": "path", + "description": "ID of the project.", + "required": true, + "type": "string" + }, + "id": { + "description": "Build ID of the original build.", + "required": true, + "type": "string", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "response": { + "$ref": "Build" + }, + "parameterOrder": [ + "projectId", + "id" + ], + "httpMethod": "GET", + "parameters": { + "projectId": { + "location": "path", + "description": "ID of the project.", + "required": true, + "type": "string" + }, + "id": { + "required": true, + "type": "string", + "location": "path", + "description": "ID of the build." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}/builds/{id}", + "path": "v1/projects/{projectId}/builds/{id}", + "id": "cloudbuild.projects.builds.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." + }, + "list": { + "description": "Lists previously requested builds.\n\nPreviously requested builds may still be in-progress, or may have finished\nsuccessfully or unsuccessfully.", + "httpMethod": "GET", + "response": { + "$ref": "ListBuildsResponse" + }, + "parameterOrder": [ + "projectId" + ], + "parameters": { + "pageToken": { + "location": "query", + "description": "Token to provide to skip to a particular spot in the list.", + "type": "string" + }, + "pageSize": { + "type": "integer", + "location": "query", + "description": "Number of results to return in the list.", + "format": "int32" + }, + "projectId": { + "description": "ID of the project.", + "required": true, + "type": "string", + "location": "path" + }, + "filter": { + "description": "The raw filter text to constrain the results.", + "type": "string", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}/builds", + "id": "cloudbuild.projects.builds.list", + "path": "v1/projects/{projectId}/builds" + }, + "create": { + "flatPath": "v1/projects/{projectId}/builds", + "path": "v1/projects/{projectId}/builds", + "id": "cloudbuild.projects.builds.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`).", + "request": { + "$ref": "Build" + }, + "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" + ] + } } - } - }, - "id": "Results" - }, - "ArtifactObjects": { - "description": "Files in the workspace to upload to Cloud Storage upon successful\ncompletion of all build steps.", - "type": "object", - "properties": { - "timing": { - "$ref": "TimeSpan", - "description": "Stores timing information for pushing all artifact objects.\n@OutputOnly" - }, - "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.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "ArtifactObjects" - }, - "ListBuildTriggersResponse": { - "id": "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" + "methods": { + "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", + "parameters": { + "projectId": { + "description": "ID of the project for which to configure automatic builds.", + "required": true, + "type": "string", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "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", + "request": { + "$ref": "RepoSource" + }, + "description": "Runs a `BuildTrigger` at a particular source revision." + }, + "patch": { + "response": { + "$ref": "BuildTrigger" + }, + "parameterOrder": [ + "projectId", + "triggerId" + ], + "httpMethod": "PATCH", + "parameters": { + "triggerId": { + "location": "path", + "description": "ID of the `BuildTrigger` to update.", + "required": true, + "type": "string" + }, + "projectId": { + "location": "path", + "description": "ID of the project that owns the trigger.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}/triggers/{triggerId}", + "path": "v1/projects/{projectId}/triggers/{triggerId}", + "id": "cloudbuild.projects.triggers.patch", + "description": "Updates a `BuildTrigger` by its project ID and trigger ID.\n\nThis API is experimental.", + "request": { + "$ref": "BuildTrigger" + } + }, + "get": { + "response": { + "$ref": "BuildTrigger" + }, + "parameterOrder": [ + "projectId", + "triggerId" + ], + "httpMethod": "GET", + "parameters": { + "triggerId": { + "location": "path", + "description": "ID of the `BuildTrigger` to get.", + "required": true, + "type": "string" + }, + "projectId": { + "location": "path", + "description": "ID of the project that owns the trigger.", + "required": true, + "type": "string" + } + }, + "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": "Returns information about a `BuildTrigger`.\n\nThis API is experimental." + }, + "delete": { + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "projectId", + "triggerId" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "triggerId": { + "description": "ID of the `BuildTrigger` to delete.", + "required": true, + "type": "string", + "location": "path" + }, + "projectId": { + "location": "path", + "description": "ID of the project that owns the trigger.", + "required": true, + "type": "string" + } + }, + "flatPath": "v1/projects/{projectId}/triggers/{triggerId}", + "path": "v1/projects/{projectId}/triggers/{triggerId}", + "id": "cloudbuild.projects.triggers.delete", + "description": "Deletes a `BuildTrigger` by its project ID and trigger ID.\n\nThis API is experimental." + }, + "list": { + "httpMethod": "GET", + "parameterOrder": [ + "projectId" + ], + "response": { + "$ref": "ListBuildTriggersResponse" + }, + "parameters": { + "projectId": { + "description": "ID of the project for which to list BuildTriggers.", + "required": true, + "type": "string", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}/triggers", + "id": "cloudbuild.projects.triggers.list", + "path": "v1/projects/{projectId}/triggers", + "description": "Lists existing `BuildTrigger`s.\n\nThis API is experimental." + } } } } }, - "BuiltImage": { - "description": "An image built by the pipeline.", - "type": "object", - "properties": { - "pushTiming": { - "$ref": "TimeSpan", - "description": "Stores timing information for pushing the specified image.\n@OutputOnly" - }, - "name": { - "description": "Name used to push the container image to Google Container Registry, as\npresented to `docker push`.", - "type": "string" - }, - "digest": { - "description": "Docker Registry 2.0 digest.", - "type": "string" - } - }, - "id": "BuiltImage" - }, - "Hash": { - "description": "Container message for hash values.", - "type": "object", - "properties": { - "type": { - "description": "The type of hash that was performed.", - "type": "string", - "enumDescriptions": [ - "No hash requested.", - "Use a sha256 hash.", - "Use a md5 hash." + "operations": { + "methods": { + "cancel": { + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" ], - "enum": [ - "NONE", - "SHA256", - "MD5" - ] + "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": "^operations/.+$" + } + }, + "flatPath": "v1/operations/{operationsId}:cancel", + "path": "v1/{+name}:cancel", + "id": "cloudbuild.operations.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`." }, - "value": { - "type": "string", - "description": "The hash value.", - "format": "byte" - } - }, - "id": "Hash" - }, - "Secret": { - "description": "Pairs a set of secret environment variables containing encrypted\nvalues with the Cloud KMS key to use to decrypt the value.", - "type": "object", - "properties": { - "kmsKeyName": { - "description": "Cloud KMS key name to use to decrypt these envs.", - "type": "string" + "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": "^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" + }, + "filter": { + "description": "The standard list filter.", + "type": "string", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/operations", + "path": "v1/{+name}", + "id": "cloudbuild.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." }, - "secretEnv": { - "additionalProperties": { - "type": "string", - "format": "byte" + "get": { + "httpMethod": "GET", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Operation" }, - "description": "Map of environment variable name to its encrypted value.\n\nSecret environment variables must be unique across all of a build's\nsecrets, and must be used by at least one build step. Values can be at most\n1 KB in size. There can be at most ten secret values across all of a\nbuild's secrets.", - "type": "object" + "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}", + "id": "cloudbuild.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." } - }, - "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" + } } }, - "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" - } - } + "parameters": { + "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" + }, + "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": { + "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": { + "type": "string", + "location": "query", + "description": "JSONP" + }, + "$.xgafv": { + "type": "string", + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "enum": [ + "1", + "2" + ], + "description": "V1 error format." } - } + }, + "version": "v1", + "baseUrl": "https://cloudbuild.googleapis.com/", + "kind": "discovery#restDescription", + "description": "Builds container images in the cloud.", + "servicePath": "", + "basePath": "", + "revision": "20180509", + "documentationLink": "https://cloud.google.com/container-builder/docs/", + "id": "cloudbuild:v1" } diff --git a/DiscoveryJson/clouddebugger_v2.json b/DiscoveryJson/clouddebugger_v2.json index a348d826b7..9a306521e7 100644 --- a/DiscoveryJson/clouddebugger_v2.json +++ b/DiscoveryJson/clouddebugger_v2.json @@ -1,225 +1,442 @@ { - "schemas": { - "Breakpoint": { - "description": "Represents the breakpoint specification, status and results.", - "type": "object", - "properties": { - "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" - } - }, - "labels": { - "additionalProperties": { - "type": "string" + "ownerName": "Google", + "resources": { + "debugger": { + "resources": { + "debuggees": { + "methods": { + "list": { + "httpMethod": "GET", + "response": { + "$ref": "ListDebuggeesResponse" + }, + "parameterOrder": [], + "parameters": { + "project": { + "location": "query", + "description": "Project number of a Google Cloud project whose debuggees to list.", + "type": "string" + }, + "clientVersion": { + "type": "string", + "location": "query", + "description": "The client version making the call.\nSchema: `domain/type/version` (e.g., `google.com/intellij/v1`)." + }, + "includeInactive": { + "location": "query", + "description": "When set to `true`, the result includes all debuggees. Otherwise, the\nresult includes only debuggees that are active.", + "type": "boolean" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud_debugger" + ], + "flatPath": "v2/debugger/debuggees", + "id": "clouddebugger.debugger.debuggees.list", + "path": "v2/debugger/debuggees", + "description": "Lists all the debuggees that the user has access to." + } }, - "description": "A set of custom breakpoint properties, populated by the agent, to be\ndisplayed to the user.", - "type": "object" - }, - "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" - }, - "createTime": { - "type": "string", - "description": "Time this breakpoint was created by the server in seconds resolution.", - "format": "google-datetime" - }, - "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" - } - }, - "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": { - "type": "string", - "description": "Condition that triggers the breakpoint.\nThe condition is a compound boolean expression composed using expressions\nin a programming language at the source location." - }, - "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" - }, - "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" - }, - "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" + "resources": { + "breakpoints": { + "methods": { + "set": { + "parameters": { + "clientVersion": { + "description": "The client version making the call.\nSchema: `domain/type/version` (e.g., `google.com/intellij/v1`).", + "type": "string", + "location": "query" + }, + "debuggeeId": { + "description": "ID of the debuggee where the breakpoint is to be set.", + "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/set", + "id": "clouddebugger.debugger.debuggees.breakpoints.set", + "path": "v2/debugger/debuggees/{debuggeeId}/breakpoints/set", + "description": "Sets the breakpoint to the debuggee.", + "request": { + "$ref": "Breakpoint" + }, + "httpMethod": "POST", + "parameterOrder": [ + "debuggeeId" + ], + "response": { + "$ref": "SetBreakpointResponse" + } + }, + "delete": { + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "debuggeeId", + "breakpointId" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud_debugger" + ], + "parameters": { + "clientVersion": { + "location": "query", + "description": "The client version making the call.\nSchema: `domain/type/version` (e.g., `google.com/intellij/v1`).", + "type": "string" + }, + "breakpointId": { + "location": "path", + "description": "ID of the breakpoint to delete.", + "required": true, + "type": "string" + }, + "debuggeeId": { + "location": "path", + "description": "ID of the debuggee whose breakpoint to delete.", + "required": true, + "type": "string" + } + }, + "flatPath": "v2/debugger/debuggees/{debuggeeId}/breakpoints/{breakpointId}", + "path": "v2/debugger/debuggees/{debuggeeId}/breakpoints/{breakpointId}", + "id": "clouddebugger.debugger.debuggees.breakpoints.delete", + "description": "Deletes the breakpoint from the debuggee." + }, + "get": { + "httpMethod": "GET", + "parameterOrder": [ + "debuggeeId", + "breakpointId" + ], + "response": { + "$ref": "GetBreakpointResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud_debugger" + ], + "parameters": { + "debuggeeId": { + "description": "ID of the debuggee whose breakpoint to get.", + "required": true, + "type": "string", + "location": "path" + }, + "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 get.", + "required": true, + "type": "string", + "location": "path" + } + }, + "flatPath": "v2/debugger/debuggees/{debuggeeId}/breakpoints/{breakpointId}", + "id": "clouddebugger.debugger.debuggees.breakpoints.get", + "path": "v2/debugger/debuggees/{debuggeeId}/breakpoints/{breakpointId}", + "description": "Gets breakpoint information." + }, + "list": { + "response": { + "$ref": "ListBreakpointsResponse" + }, + "parameterOrder": [ + "debuggeeId" + ], + "httpMethod": "GET", + "parameters": { + "stripResults": { + "location": "query", + "description": "This field is deprecated. The following fields are always stripped out of\nthe result: `stack_frames`, `evaluated_expressions` and `variable_table`.", + "type": "boolean" + }, + "debuggeeId": { + "description": "ID of the debuggee whose breakpoints to list.", + "required": true, + "type": "string", + "location": "path" + }, + "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": { + "type": "string", + "location": "query", + "enum": [ + "CAPTURE", + "LOG" + ], + "description": "Only breakpoints with the specified action will pass the filter." + }, + "includeInactive": { + "location": "query", + "description": "When set to `true`, the response includes active and inactive\nbreakpoints. Otherwise, it includes only active breakpoints.", + "type": "boolean" + }, + "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.", + "type": "boolean", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud_debugger" + ], + "flatPath": "v2/debugger/debuggees/{debuggeeId}/breakpoints", + "path": "v2/debugger/debuggees/{debuggeeId}/breakpoints", + "id": "clouddebugger.debugger.debuggees.breakpoints.list", + "description": "Lists all breakpoints for the debuggee." + } + } + } + } } - }, - "id": "Breakpoint" + } }, - "SetBreakpointResponse": { - "description": "Response for setting a breakpoint.", - "type": "object", - "properties": { - "breakpoint": { - "$ref": "Breakpoint", - "description": "Breakpoint resource.\nThe field `id` is guaranteed to be set (in addition to the echoed fileds)." + "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", + "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.", + "request": { + "$ref": "RegisterDebuggeeRequest" + } + } + }, + "resources": { + "breakpoints": { + "methods": { + "list": { + "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", + "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." + }, + "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" + }, + "response": { + "$ref": "UpdateActiveBreakpointResponse" + }, + "parameterOrder": [ + "debuggeeId", + "id" + ], + "httpMethod": "PUT", + "parameters": { + "debuggeeId": { + "required": true, + "type": "string", + "location": "path", + "description": "Identifies the debuggee being debugged." + }, + "id": { + "location": "path", + "description": "Breakpoint identifier, unique in the scope of the debuggee.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud_debugger" + ], + "flatPath": "v2/controller/debuggees/{debuggeeId}/breakpoints/{id}", + "path": "v2/controller/debuggees/{debuggeeId}/breakpoints/{id}", + "id": "clouddebugger.controller.debuggees.breakpoints.update" + } + } + } + } } - }, - "id": "SetBreakpointResponse" + } + } + }, + "parameters": { + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "type": "string", + "location": "query" }, - "UpdateActiveBreakpointRequest": { - "type": "object", - "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." + "prettyPrint": { + "location": "query", + "description": "Returns response with indentations and line breaks.", + "type": "boolean", + "default": "true" }, - "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", - "properties": { - "git": { - "$ref": "GitSourceContext", - "description": "A SourceContext referring to any third party Git repo (e.g. GitHub)." - }, - "gerrit": { - "description": "A SourceContext referring to a Gerrit project.", - "$ref": "GerritSourceContext" - }, - "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." - } - }, - "id": "SourceContext" + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "type": "string", + "location": "query" }, - "CloudRepoSourceContext": { - "description": "A CloudRepoSourceContext denotes a particular revision in a cloud\nrepo (a repo hosted by the Google Cloud Platform).", - "type": "object", - "properties": { - "revisionId": { - "description": "A revision ID.", - "type": "string" - }, - "aliasName": { - "description": "The name of an alias (branch, tag, etc.).", - "type": "string" - }, - "repoId": { - "$ref": "RepoId", - "description": "The ID of the repo." - }, - "aliasContext": { - "description": "An alias, which may be a branch or tag.", - "$ref": "AliasContext" - } - }, - "id": "CloudRepoSourceContext" + "uploadType": { + "type": "string", + "location": "query", + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." }, - "RegisterDebuggeeRequest": { - "type": "object", - "properties": { - "debuggee": { - "description": "Debuggee information to register.\nThe fields `project`, `uniquifier`, `description` and `agent_version`\nof the debuggee must be set.", - "$ref": "Debuggee" - } - }, - "id": "RegisterDebuggeeRequest", - "description": "Request to register a debuggee." + "callback": { + "description": "JSONP", + "type": "string", + "location": "query" }, - "RegisterDebuggeeResponse": { - "id": "RegisterDebuggeeResponse", - "description": "Response for registering a debuggee.", - "type": "object", - "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." - } - } + "$.xgafv": { + "description": "V1 error format.", + "type": "string", + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "enum": [ + "1", + "2" + ] }, - "GetBreakpointResponse": { - "type": "object", - "properties": { - "breakpoint": { - "$ref": "Breakpoint", - "description": "Complete breakpoint state.\nThe fields `id` and `location` are guaranteed to be set." - } - }, - "id": "GetBreakpointResponse", - "description": "Response for getting breakpoint information." + "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" + ] + }, + "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": { + "location": "query", + "description": "OAuth 2.0 token for the current user.", + "type": "string" + } + }, + "version": "v2", + "baseUrl": "https://clouddebugger.googleapis.com/", + "servicePath": "", + "kind": "discovery#restDescription", + "description": "Examines the call stack and variables of a running application without stopping or slowing it down.\n", + "basePath": "", + "revision": "20180507", + "documentationLink": "http://cloud.google.com/debugger", + "id": "clouddebugger:v2", + "discoveryVersion": "v1", + "version_module": true, + "schemas": { "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", "properties": { "isError": { - "description": "Distinguishes errors from informational messages.", - "type": "boolean" + "type": "boolean", + "description": "Distinguishes errors from informational messages." }, "description": { "description": "Status message text.", "$ref": "FormatMessage" }, "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", @@ -230,19 +447,12 @@ "VARIABLE_VALUE" ], "description": "Reference to which the message applies.", - "type": "string", - "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" } }, - "id": "StatusMessage" + "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": { "properties": { @@ -260,6 +470,8 @@ "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 = &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", "properties": { "members": { "description": "Members contained or pointed to by the variable.", @@ -280,22 +492,27 @@ "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" }, - "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" + }, + "value": { + "description": "Simple value of the variable.", + "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" + "id": "Variable" }, "StackFrame": { + "id": "StackFrame", + "description": "Represents a stack frame context.", + "type": "object", "properties": { + "function": { + "description": "Demangled function name at the call site.", + "type": "string" + }, "arguments": { "description": "Set of arguments passed to this function.\nNote that this might not be populated for all stack frames.", "type": "array", @@ -311,29 +528,22 @@ } }, "location": { - "$ref": "SourceLocation", - "description": "Source location of the call site." - }, - "function": { - "description": "Demangled function name at the call site.", - "type": "string" + "description": "Source location of the call site.", + "$ref": "SourceLocation" } - }, - "id": "StackFrame", - "description": "Represents a stack frame context.", - "type": "object" + } }, "RepoId": { "description": "A unique identifier for a cloud repo.", "type": "object", "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" + }, + "projectRepoId": { + "$ref": "ProjectRepoId", + "description": "A combination of a project ID and a repo name." } }, "id": "RepoId" @@ -343,11 +553,11 @@ "type": "object", "properties": { "parameters": { - "description": "Optional parameters to be embedded into the message.", "type": "array", "items": { "type": "string" - } + }, + "description": "Optional parameters to be embedded into the message." }, "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.`", @@ -357,12 +567,10 @@ "id": "FormatMessage" }, "ExtendedSourceContext": { - "description": "An ExtendedSourceContext is a SourceContext combined with additional\ndetails describing the context.", - "type": "object", "properties": { "context": { - "description": "Any source context.", - "$ref": "SourceContext" + "$ref": "SourceContext", + "description": "Any source context." }, "labels": { "additionalProperties": { @@ -372,10 +580,11 @@ "type": "object" } }, - "id": "ExtendedSourceContext" + "id": "ExtendedSourceContext", + "description": "An ExtendedSourceContext is a SourceContext combined with additional\ndetails describing the context.", + "type": "object" }, "ListDebuggeesResponse": { - "description": "Response for listing debuggees.", "type": "object", "properties": { "debuggees": { @@ -386,18 +595,18 @@ } } }, - "id": "ListDebuggeesResponse" + "id": "ListDebuggeesResponse", + "description": "Response for listing debuggees." }, "AliasContext": { "description": "An alias to a repo revision.", "type": "object", "properties": { "name": { - "description": "The alias name.", - "type": "string" + "type": "string", + "description": "The alias name." }, "kind": { - "type": "string", "enumDescriptions": [ "Do not use.", "Git tag", @@ -410,7 +619,8 @@ "MOVABLE", "OTHER" ], - "description": "The alias kind." + "description": "The alias kind.", + "type": "string" } }, "id": "AliasContext" @@ -422,638 +632,428 @@ "id": "Empty" }, "SourceLocation": { - "properties": { - "line": { - "description": "Line inside the file. The first line in the file has the value `1`.", - "format": "int32", - "type": "integer" - }, - "path": { - "description": "Path to the source file within the source context of the target binary.", - "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", - "properties": { - "id": { - "description": "Unique identifier for the debuggee generated by the controller service.", - "type": "string" - }, - "agentVersion": { - "type": "string", - "description": "Version ID of the agent.\nSchema: `domain/language-platform/vmajor.minor` (for example\n`google.com/java-gcp/v1.1`)." - }, - "isDisabled": { - "type": "boolean", - "description": "If set to `true`, indicates that the agent should disable itself and\ndetach from the debuggee." - }, - "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", - "items": { - "$ref": "SourceContext" - } - }, - "extSourceContexts": { - "type": "array", - "items": { - "$ref": "ExtendedSourceContext" - }, - "description": "References to the locations and revisions of the source code used in the\ndeployed application." - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "A set of custom debuggee properties, populated by the agent, to be\ndisplayed to the user.", - "type": "object" - }, - "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." - }, - "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" - }, - "ListActiveBreakpointsResponse": { - "description": "Response for listing active breakpoints.", - "type": "object", - "properties": { - "breakpoints": { - "description": "List of all active breakpoints.\nThe fields `id` and `location` are guaranteed to be set on each breakpoint.", - "type": "array", - "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" - }, - "nextWaitToken": { - "description": "A token that can be used in the next method call to block until\nthe list of breakpoints changes.", - "type": "string" - } - }, - "id": "ListActiveBreakpointsResponse" - }, - "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.", - "type": "string" - }, - "repoName": { - "description": "The name of the repo. Leave empty for the default repo.", - "type": "string" - } - }, - "id": "ProjectRepoId" - }, - "CloudWorkspaceSourceContext": { - "description": "A CloudWorkspaceSourceContext denotes a workspace at a particular snapshot.", - "type": "object", - "properties": { - "snapshotId": { - "type": "string", - "description": "The ID of the snapshot.\nAn empty snapshot_id refers to the most recent snapshot." - }, - "workspaceId": { - "$ref": "CloudWorkspaceId", - "description": "The ID of the workspace." - } - }, - "id": "CloudWorkspaceSourceContext" - }, - "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.", + "path": { + "description": "Path to the source file within the source context of the target binary.", "type": "string" }, - "aliasContext": { - "description": "An alias, which may be a branch or tag.", - "$ref": "AliasContext" - } - }, - "id": "GerritSourceContext" - }, - "UpdateActiveBreakpointResponse": { - "type": "object", - "properties": {}, - "id": "UpdateActiveBreakpointResponse", - "description": "Response for updating an active breakpoint.\nThe message is defined to allow future extensions." - }, - "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": { - "repoId": { - "$ref": "RepoId", - "description": "The ID of the repo containing the workspace." - }, - "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" + "line": { + "description": "Line inside the file. The first line in the file has the value `1`.", + "format": "int32", + "type": "integer" } }, - "id": "CloudWorkspaceId" + "id": "SourceLocation" }, - "ListBreakpointsResponse": { + "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", "properties": { - "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.", + "project": { + "description": "Project the debuggee is associated with.\nUse project number or id when registering a Google Cloud Platform project.", "type": "string" }, - "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" - } - } - }, - "id": "ListBreakpointsResponse", - "description": "Response for listing breakpoints.", - "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 Debugger", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud_debugger": { - "description": "Use Stackdriver Debugger" + "id": { + "description": "Unique identifier for the debuggee generated by the controller service.", + "type": "string" }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://clouddebugger.googleapis.com/", - "ownerDomain": "google.com", - "name": "clouddebugger", - "batchPath": "batch", - "title": "Stackdriver Debugger API", - "ownerName": "Google", - "resources": { - "debugger": { - "resources": { - "debuggees": { - "methods": { - "list": { - "response": { - "$ref": "ListDebuggeesResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud_debugger" - ], - "parameters": { - "clientVersion": { - "type": "string", - "location": "query", - "description": "The client version making the call.\nSchema: `domain/type/version` (e.g., `google.com/intellij/v1`)." - }, - "includeInactive": { - "type": "boolean", - "location": "query", - "description": "When set to `true`, the result includes all debuggees. Otherwise, the\nresult includes only debuggees that are active." - }, - "project": { - "description": "Project number of a Google Cloud project whose debuggees to list.", - "type": "string", - "location": "query" - } - }, - "flatPath": "v2/debugger/debuggees", - "path": "v2/debugger/debuggees", - "id": "clouddebugger.debugger.debuggees.list", - "description": "Lists all the debuggees that the user has access to." - } - }, - "resources": { - "breakpoints": { - "methods": { - "set": { - "description": "Sets the breakpoint to the debuggee.", - "request": { - "$ref": "Breakpoint" - }, - "response": { - "$ref": "SetBreakpointResponse" - }, - "parameterOrder": [ - "debuggeeId" - ], - "httpMethod": "POST", - "parameters": { - "debuggeeId": { - "description": "ID of the debuggee where the breakpoint is to be set.", - "required": true, - "type": "string", - "location": "path" - }, - "clientVersion": { - "description": "The client version making the call.\nSchema: `domain/type/version` (e.g., `google.com/intellij/v1`).", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud_debugger" - ], - "flatPath": "v2/debugger/debuggees/{debuggeeId}/breakpoints/set", - "path": "v2/debugger/debuggees/{debuggeeId}/breakpoints/set", - "id": "clouddebugger.debugger.debuggees.breakpoints.set" - }, - "delete": { - "description": "Deletes the breakpoint from the debuggee.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "debuggeeId", - "breakpointId" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud_debugger" - ], - "parameters": { - "clientVersion": { - "type": "string", - "location": "query", - "description": "The client version making the call.\nSchema: `domain/type/version` (e.g., `google.com/intellij/v1`)." - }, - "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" - } - }, - "flatPath": "v2/debugger/debuggees/{debuggeeId}/breakpoints/{breakpointId}", - "path": "v2/debugger/debuggees/{debuggeeId}/breakpoints/{breakpointId}", - "id": "clouddebugger.debugger.debuggees.breakpoints.delete" - }, - "get": { - "description": "Gets breakpoint information.", - "response": { - "$ref": "GetBreakpointResponse" - }, - "parameterOrder": [ - "debuggeeId", - "breakpointId" - ], - "httpMethod": "GET", - "parameters": { - "clientVersion": { - "type": "string", - "location": "query", - "description": "The client version making the call.\nSchema: `domain/type/version` (e.g., `google.com/intellij/v1`)." - }, - "breakpointId": { - "description": "ID of the breakpoint to get.", - "required": true, - "type": "string", - "location": "path" - }, - "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": { - "response": { - "$ref": "ListBreakpointsResponse" - }, - "parameterOrder": [ - "debuggeeId" - ], - "httpMethod": "GET", - "parameters": { - "debuggeeId": { - "description": "ID of the debuggee whose breakpoints to list.", - "required": true, - "type": "string", - "location": "path" - }, - "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": { - "location": "query", - "enum": [ - "CAPTURE", - "LOG" - ], - "description": "Only breakpoints with the specified action will pass the filter.", - "type": "string" - }, - "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": { - "location": "query", - "description": "When set to `true`, the response includes active and inactive\nbreakpoints. Otherwise, it includes only active breakpoints.", - "type": "boolean" - }, - "stripResults": { - "location": "query", - "description": "This field is deprecated. The following fields are always stripped out of\nthe result: `stack_frames`, `evaluated_expressions` and `variable_table`.", - "type": "boolean" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud_debugger" - ], - "flatPath": "v2/debugger/debuggees/{debuggeeId}/breakpoints", - "path": "v2/debugger/debuggees/{debuggeeId}/breakpoints", - "id": "clouddebugger.debugger.debuggees.breakpoints.list", - "description": "Lists all breakpoints for the debuggee." - } - } - } + "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" + }, + "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" + }, + "description": { + "description": "Human readable description of the debuggee.\nIncluding a human-readable project name, environment name and version\ninformation is recommended.", + "type": "string" + }, + "sourceContexts": { + "description": "References to the locations and revisions of the source code used in the\ndeployed application.", + "type": "array", + "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" + }, + "description": "A set of custom debuggee properties, populated by the agent, to be\ndisplayed to the user.", + "type": "object" + }, + "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" + }, + "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." + } + }, + "id": "Debuggee" + }, + "ListActiveBreakpointsResponse": { + "description": "Response for listing active breakpoints.", + "type": "object", + "properties": { + "breakpoints": { + "description": "List of all active breakpoints.\nThe fields `id` and `location` are guaranteed to be set on each breakpoint.", + "type": "array", + "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" + }, + "nextWaitToken": { + "description": "A token that can be used in the next method call to block until\nthe list of breakpoints changes.", + "type": "string" + } + }, + "id": "ListActiveBreakpointsResponse" + }, + "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.", + "type": "string" + }, + "repoName": { + "description": "The name of the repo. Leave empty for the default repo.", + "type": "string" + } + }, + "id": "ProjectRepoId" + }, + "CloudWorkspaceSourceContext": { + "properties": { + "snapshotId": { + "type": "string", + "description": "The ID of the snapshot.\nAn empty snapshot_id refers to the most recent snapshot." + }, + "workspaceId": { + "$ref": "CloudWorkspaceId", + "description": "The ID of the workspace." + } + }, + "id": "CloudWorkspaceSourceContext", + "description": "A CloudWorkspaceSourceContext denotes a workspace at a particular snapshot.", + "type": "object" + }, + "UpdateActiveBreakpointResponse": { + "description": "Response for updating an active breakpoint.\nThe message is defined to allow future extensions.", + "type": "object", + "properties": {}, + "id": "UpdateActiveBreakpointResponse" + }, + "GerritSourceContext": { + "description": "A SourceContext referring to a Gerrit project.", + "type": "object", + "properties": { + "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": { + "$ref": "AliasContext", + "description": "An alias, which may be a branch or tag." + }, + "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" + } + }, + "id": "GerritSourceContext" + }, + "CloudWorkspaceId": { + "id": "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": { + "repoId": { + "$ref": "RepoId", + "description": "The ID of the repo containing the workspace." + }, + "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" } } }, - "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", - "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.", - "request": { - "$ref": "RegisterDebuggeeRequest" - } - } - }, - "resources": { - "breakpoints": { - "methods": { - "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": { - "debuggeeId": { - "required": true, - "type": "string", - "location": "path", - "description": "Identifies the debuggee being debugged." - }, - "id": { - "required": true, - "type": "string", - "location": "path", - "description": "Breakpoint identifier, unique in the scope of the debuggee." - } - }, - "flatPath": "v2/controller/debuggees/{debuggeeId}/breakpoints/{id}", - "path": "v2/controller/debuggees/{debuggeeId}/breakpoints/{id}", - "id": "clouddebugger.controller.debuggees.breakpoints.update", - "request": { - "$ref": "UpdateActiveBreakpointRequest" - }, - "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." - }, - "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": { - "debuggeeId": { - "description": "Identifies the debuggee.", - "required": true, - "type": "string", - "location": "path" - }, - "successOnTimeout": { - "location": "query", - "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" - }, - "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\"`.", - "type": "string", - "location": "query" - } - }, - "flatPath": "v2/controller/debuggees/{debuggeeId}/breakpoints", - "path": "v2/controller/debuggees/{debuggeeId}/breakpoints", - "id": "clouddebugger.controller.debuggees.breakpoints.list" - } - } - } + "ListBreakpointsResponse": { + "type": "object", + "properties": { + "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" + }, + "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" + } + } + }, + "id": "ListBreakpointsResponse", + "description": "Response for listing breakpoints." + }, + "Breakpoint": { + "description": "Represents the breakpoint specification, status and results.", + "type": "object", + "properties": { + "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": { + "$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": { + "type": "string", + "description": "E-mail address of the user that created this breakpoint" + }, + "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": { + "enum": [ + "INFO", + "WARNING", + "ERROR" + ], + "description": "Indicates the severity of the log. Only relevant when action is `LOG`.", + "type": "string", + "enumDescriptions": [ + "Information log message.", + "Warning log message.", + "Error log message." + ] + }, + "id": { + "type": "string", + "description": "Breakpoint identifier, unique in the scope of the debuggee." + }, + "location": { + "description": "Breakpoint source location.", + "$ref": "SourceLocation" + }, + "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" + } + }, + "labels": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A set of custom breakpoint properties, populated by the agent, to be\ndisplayed to the user." + }, + "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" + }, + "createTime": { + "description": "Time this breakpoint was created by the server in seconds resolution.", + "format": "google-datetime", + "type": "string" + }, + "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" } + }, + "isFinalState": { + "type": "boolean", + "description": "When true, indicates that this is a final result and the\nbreakpoint state will not change from here on." } - } - } - }, - "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": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "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." + }, + "id": "Breakpoint" }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" + "UpdateActiveBreakpointRequest": { + "description": "Request to update an active breakpoint.", + "type": "object", + "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" }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" + "SetBreakpointResponse": { + "id": "SetBreakpointResponse", + "description": "Response for setting a breakpoint.", + "type": "object", + "properties": { + "breakpoint": { + "description": "Breakpoint resource.\nThe field `id` is guaranteed to be set (in addition to the echoed fileds).", + "$ref": "Breakpoint" + } + } }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" + "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", + "properties": { + "gerrit": { + "description": "A SourceContext referring to a Gerrit project.", + "$ref": "GerritSourceContext" + }, + "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." + }, + "git": { + "description": "A SourceContext referring to any third party Git repo (e.g. GitHub).", + "$ref": "GitSourceContext" + } + }, + "id": "SourceContext" }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" + "CloudRepoSourceContext": { + "description": "A CloudRepoSourceContext denotes a particular revision in a cloud\nrepo (a repo hosted by the Google Cloud Platform).", + "type": "object", + "properties": { + "revisionId": { + "description": "A revision ID.", + "type": "string" + }, + "aliasName": { + "description": "The name of an alias (branch, tag, etc.).", + "type": "string" + }, + "repoId": { + "$ref": "RepoId", + "description": "The ID of the repo." + }, + "aliasContext": { + "description": "An alias, which may be a branch or tag.", + "$ref": "AliasContext" + } + }, + "id": "CloudRepoSourceContext" }, - "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" + "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" }, - "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" + "RegisterDebuggeeResponse": { + "description": "Response for registering a debuggee.", + "type": "object", + "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" }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" + "GetBreakpointResponse": { + "description": "Response for getting breakpoint information.", + "type": "object", + "properties": { + "breakpoint": { + "description": "Complete breakpoint state.\nThe fields `id` and `location` are guaranteed to be set.", + "$ref": "Breakpoint" + } + }, + "id": "GetBreakpointResponse" } }, - "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", - "revision": "20180507", - "documentationLink": "http://cloud.google.com/debugger", - "discoveryVersion": "v1", - "version_module": true + "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 Debugger", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud_debugger": { + "description": "Use Stackdriver Debugger" + }, + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, + "rootUrl": "https://clouddebugger.googleapis.com/", + "ownerDomain": "google.com", + "name": "clouddebugger", + "batchPath": "batch", + "title": "Stackdriver Debugger API" } diff --git a/DiscoveryJson/clouderrorreporting_v1beta1.json b/DiscoveryJson/clouderrorreporting_v1beta1.json index 0192f6ac2f..a856b03f74 100644 --- a/DiscoveryJson/clouderrorreporting_v1beta1.json +++ b/DiscoveryJson/clouderrorreporting_v1beta1.json @@ -1,92 +1,53 @@ { + "version": "v1beta1", + "baseUrl": "https://clouderrorreporting.googleapis.com/", + "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", + "servicePath": "", + "basePath": "", + "id": "clouderrorreporting:v1beta1", + "documentationLink": "https://cloud.google.com/error-reporting/", + "revision": "20180504", "discoveryVersion": "v1", "version_module": true, "schemas": { - "ReportedErrorEvent": { - "description": "An error event which is reported to the Error Reporting system.", - "type": "object", - "properties": { - "serviceContext": { - "$ref": "ServiceContext", - "description": "[Required] The service context in which this error has 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" - }, - "context": { - "description": "[Optional] A description of the context in which the error occurred.", - "$ref": "ErrorContext" - }, - "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" - }, - "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", - "properties": { - "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" - }, - "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": { - "description": "The HTTP request which was processed when the error was\ntriggered.", - "$ref": "HttpRequestContext" - } - }, - "id": "ErrorContext" - }, "TrackingIssue": { + "description": "Information related to tracking the progress on resolving the error.", + "type": "object", "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" } }, - "id": "TrackingIssue", - "description": "Information related to tracking the progress on resolving the error.", - "type": "object" + "id": "TrackingIssue" }, "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", "properties": { + "group": { + "$ref": "ErrorGroup", + "description": "Group data that is independent of the filter criteria." + }, "firstSeenTime": { + "type": "string", "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" + "format": "google-datetime" }, "count": { "description": "Approximate total number of events in the given group that match\nthe filter criteria.", "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", - "type": "string" - }, "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" }, + "affectedUsersCount": { + "type": "string", + "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" + }, "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", @@ -109,13 +70,11 @@ "items": { "$ref": "TimedCount" } - }, - "group": { - "description": "Group data that is independent of the filter criteria.", - "$ref": "ErrorGroup" } }, - "id": "ErrorGroupStats" + "id": "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" }, "ListEventsResponse": { "description": "Contains a set of requested error events.", @@ -129,8 +88,8 @@ } }, "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" + "type": "string", + "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." }, "timeRangeBegin": { "description": "The timestamp specifies the start time to which the request was restricted.", @@ -141,26 +100,26 @@ "id": "ListEventsResponse" }, "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", "properties": { - "endTime": { - "description": "End of the time period to which `count` refers (excluded).", - "format": "google-datetime", - "type": "string" - }, "count": { "description": "Approximate number of occurrences in the given time period.", "format": "int64", "type": "string" }, "startTime": { + "type": "string", "description": "Start of the time period to which `count` refers (included).", + "format": "google-datetime" + }, + "endTime": { + "description": "End of the time period to which `count` refers (excluded).", "format": "google-datetime", "type": "string" } }, - "id": "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" + "id": "TimedCount" }, "ErrorGroup": { "description": "Description of a group of similar error events.", @@ -184,26 +143,6 @@ }, "id": "ErrorGroup" }, - "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" - }, "ServiceContext": { "description": "Describes a running service that sends errors.\nIts version changes over time and multiple versions can run in parallel.", "type": "object", @@ -223,6 +162,26 @@ }, "id": "ServiceContext" }, + "SourceLocation": { + "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", + "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." + }, "ReportErrorEventResponse": { "description": "Response for reporting an individual error event.\nData may be added to this message in the future.", "type": "object", @@ -230,7 +189,17 @@ "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": { + "userAgent": { + "description": "The user agent information that is provided with the request.", + "type": "string" + }, + "url": { + "description": "The URL of the request.", + "type": "string" + }, "responseStatusCode": { "description": "The HTTP response status code for the request.", "format": "int32", @@ -247,28 +216,14 @@ "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", - "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" + "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", @@ -280,16 +235,14 @@ "items": { "$ref": "ErrorGroupStats" } + }, + "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" } }, "id": "ListGroupStatsResponse" }, - "DeleteEventsResponse": { - "description": "Response message for deleting error events.", - "type": "object", - "properties": {}, - "id": "DeleteEventsResponse" - }, "SourceReference": { "description": "A reference to a particular snapshot of the source tree used to build and\ndeploy an application.", "type": "object", @@ -299,42 +252,98 @@ "type": "string" }, "repository": { - "description": "Optional. A URI string identifying the repository.\nExample: \"https://github.com/GoogleCloudPlatform/kubernetes.git\"", - "type": "string" + "type": "string", + "description": "Optional. A URI string identifying the repository.\nExample: \"https://github.com/GoogleCloudPlatform/kubernetes.git\"" } }, "id": "SourceReference" }, + "DeleteEventsResponse": { + "type": "object", + "properties": {}, + "id": "DeleteEventsResponse", + "description": "Response message for deleting error events." + }, "ErrorEvent": { + "properties": { + "context": { + "$ref": "ErrorContext", + "description": "Data about the context in which the error occurred." + }, + "message": { + "type": "string", + "description": "The stack trace that was reported or logged by the service." + }, + "serviceContext": { + "$ref": "ServiceContext", + "description": "The `ServiceContext` for which this error was reported." + }, + "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" + } + }, + "id": "ErrorEvent", "description": "An error event which is returned by the Error Reporting system.", + "type": "object" + }, + "ReportedErrorEvent": { + "description": "An error event which is reported to the Error Reporting system.", "type": "object", "properties": { "serviceContext": { - "description": "The `ServiceContext` for which this error was reported.", + "description": "[Required] The service context in which this error has occurred.", "$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.", + "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": { - "description": "Data about the context in which the error occurred.", + "description": "[Optional] A description of the context in which the error occurred.", "$ref": "ErrorContext" }, "message": { - "description": "The stack trace that was reported or logged by the service.", + "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" + }, + "ErrorContext": { + "type": "object", + "properties": { + "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." + }, + "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": "ErrorEvent" + "id": "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." } }, - "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" + "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": "Clouderrorreporting", "auth": { "oauth2": { @@ -355,6 +364,8 @@ "projects": { "methods": { "deleteEvents": { + "path": "v1beta1/{+projectName}/events", + "id": "clouderrorreporting.projects.deleteEvents", "description": "Deletes all error events of a given project.", "response": { "$ref": "DeleteEventsResponse" @@ -368,39 +379,20 @@ ], "parameters": { "projectName": { + "pattern": "^projects/[^/]+$", + "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/[^/]+$", - "location": "path" + "type": "string" } }, - "flatPath": "v1beta1/projects/{projectsId}/events", - "path": "v1beta1/{+projectName}/events", - "id": "clouderrorreporting.projects.deleteEvents" + "flatPath": "v1beta1/projects/{projectsId}/events" } }, "resources": { "events": { "methods": { "report": { - "flatPath": "v1beta1/projects/{projectsId}/events:report", - "path": "v1beta1/{+projectName}/events:report", - "id": "clouderrorreporting.projects.events.report", - "request": { - "$ref": "ReportedErrorEvent" - }, - "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", - "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`.", @@ -409,28 +401,42 @@ "pattern": "^projects/[^/]+$", "location": "path" } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/projects/{projectsId}/events:report", + "id": "clouderrorreporting.projects.events.report", + "path": "v1beta1/{+projectName}/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" + }, + "httpMethod": "POST", + "parameterOrder": [ + "projectName" + ], + "response": { + "$ref": "ReportErrorEventResponse" } }, "list": { + "description": "Lists the specified events.", + "httpMethod": "GET", + "parameterOrder": [ + "projectName" + ], "response": { "$ref": "ListEventsResponse" }, - "parameterOrder": [ - "projectName" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "httpMethod": "GET", "parameters": { - "projectName": { - "pattern": "^projects/[^/]+$", - "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" - }, "groupId": { - "location": "query", "description": "[Required] The group for which events shall be returned.", - "type": "string" + "type": "string", + "location": "query" }, "serviceFilter.service": { "location": "query", @@ -438,15 +444,15 @@ "type": "string" }, "pageToken": { - "location": "query", "description": "[Optional] A `next_page_token` provided by a previous response.", - "type": "string" + "type": "string", + "location": "query" }, "pageSize": { - "location": "query", "description": "[Optional] The maximum number of results to return per response.", "format": "int32", - "type": "integer" + "type": "integer", + "location": "query" }, "serviceFilter.version": { "description": "[Optional] The exact value to match against\n[`ServiceContext.version`](/error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.version).", @@ -459,6 +465,7 @@ "type": "string" }, "timeRange.period": { + "location": "query", "enum": [ "PERIOD_UNSPECIFIED", "PERIOD_1_HOUR", @@ -468,17 +475,19 @@ "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", - "location": "query" + "pattern": "^projects/[^/]+$", + "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "flatPath": "v1beta1/projects/{projectsId}/events", - "path": "v1beta1/{+projectName}/events", "id": "clouderrorreporting.projects.events.list", - "description": "Lists the specified events." + "path": "v1beta1/{+projectName}/events" } } }, @@ -486,30 +495,37 @@ "methods": { "get": { "description": "Get the specified group.", + "httpMethod": "GET", + "parameterOrder": [ + "groupName" + ], "response": { "$ref": "ErrorGroup" }, - "parameterOrder": [ - "groupName" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "httpMethod": "GET", "parameters": { "groupName": { + "pattern": "^projects/[^/]+/groups/[^/]+$", "location": "path", "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/[^/]+$" + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "flatPath": "v1beta1/projects/{projectsId}/groups/{groupsId}", - "path": "v1beta1/{+groupName}", - "id": "clouderrorreporting.projects.groups.get" + "id": "clouderrorreporting.projects.groups.get", + "path": "v1beta1/{+groupName}" }, "update": { + "flatPath": "v1beta1/projects/{projectsId}/groups/{groupsId}", + "path": "v1beta1/{+name}", + "id": "clouderrorreporting.projects.groups.update", + "request": { + "$ref": "ErrorGroup" + }, + "description": "Replace the data for the specified group.\nFails if the group does not exist.", "response": { "$ref": "ErrorGroup" }, @@ -517,24 +533,17 @@ "name" ], "httpMethod": "PUT", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "name": { - "pattern": "^projects/[^/]+/groups/[^/]+$", - "location": "path", "description": "The group resource name.\nExample: \u003ccode\u003eprojects/my-project-123/groups/my-groupid\u003c/code\u003e", "required": true, - "type": "string" + "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", - "description": "Replace the data for the specified group.\nFails if the group does not exist.", - "request": { - "$ref": "ErrorGroup" } } } @@ -542,64 +551,14 @@ "groupStats": { "methods": { "list": { - "description": "Lists the specified groups.", + "httpMethod": "GET", "response": { "$ref": "ListGroupStatsResponse" }, "parameterOrder": [ "projectName" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { - "serviceFilter.service": { - "description": "[Optional] The exact value to match against\n[`ServiceContext.service`](/error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.service).", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "[Optional] The maximum number of results to return per response.\nDefault is 20.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "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" - }, - "alignmentTime": { - "location": "query", - "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" - }, - "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" - }, - "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": { "location": "query", "description": "[Optional] The preferred duration for a single returned `TimedCount`.\nIf not set, no timed counts are returned.", @@ -612,6 +571,7 @@ "type": "string" }, "timeRange.period": { + "location": "query", "enum": [ "PERIOD_UNSPECIFIED", "PERIOD_1_HOUR", @@ -621,29 +581,78 @@ "PERIOD_30_DAYS" ], "description": "Restricts the query to the specified time range.", - "type": "string", - "location": "query" + "type": "string" }, "alignment": { + "type": "string", + "location": "query", "enum": [ "ERROR_COUNT_ALIGNMENT_UNSPECIFIED", "ALIGNMENT_EQUAL_ROUNDED", "ALIGNMENT_EQUAL_AT_END" ], - "description": "[Optional] The alignment of the timed counts to be returned.\nDefault is `ALIGNMENT_EQUAL_AT_END`.", - "type": "string", - "location": "query" + "description": "[Optional] The alignment of the timed counts to be returned.\nDefault is `ALIGNMENT_EQUAL_AT_END`." }, "groupId": { - "description": "[Optional] List all \u003ccode\u003eErrorGroupStats\u003c/code\u003e with these IDs.", "type": "string", "repeated": true, + "location": "query", + "description": "[Optional] List all \u003ccode\u003eErrorGroupStats\u003c/code\u003e with these IDs." + }, + "serviceFilter.service": { + "type": "string", + "location": "query", + "description": "[Optional] The exact value to match against\n[`ServiceContext.service`](/error-reporting/reference/rest/v1beta1/ServiceContext#FIELDS.service)." + }, + "pageSize": { + "type": "integer", + "location": "query", + "description": "[Optional] The maximum number of results to return per response.\nDefault is 20.", + "format": "int32" + }, + "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" + }, + "order": { + "description": "[Optional] The sort order in which the results are returned.\nDefault is `COUNT_DESC`.", + "type": "string", + "location": "query", + "enum": [ + "GROUP_ORDER_UNSPECIFIED", + "COUNT_DESC", + "LAST_SEEN_DESC", + "CREATED_DESC", + "AFFECTED_USERS_DESC" + ] + }, + "alignmentTime": { + "type": "string", + "location": "query", + "description": "[Optional] Time where the timed counts shall be aligned if rounded\nalignment is chosen. Default is 00:00 UTC.", + "format": "google-datetime" + }, + "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" + }, + "projectName": { + "pattern": "^projects/[^/]+$", + "location": "path", + "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" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "flatPath": "v1beta1/projects/{projectsId}/groupStats", + "id": "clouderrorreporting.projects.groupStats.list", "path": "v1beta1/{+projectName}/groupStats", - "id": "clouderrorreporting.projects.groupStats.list" + "description": "Lists the specified groups." } } } @@ -651,36 +660,67 @@ } }, "parameters": { - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "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": { + "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" + }, "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", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query" + "type": "string" }, "callback": { - "location": "query", "description": "JSONP", - "type": "string" + "type": "string", + "location": "query" }, "alt": { - "description": "Data format for response.", "default": "json", "enum": [ "json", @@ -693,7 +733,8 @@ "Media download with context-dependent Content-Type", "Responses with Content-Type of application/x-protobuf" ], - "location": "query" + "location": "query", + "description": "Data format for response." }, "access_token": { "location": "query", @@ -704,47 +745,6 @@ "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": { - "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", - "baseUrl": "https://clouderrorreporting.googleapis.com/", - "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", - "servicePath": "", - "basePath": "", - "revision": "20180420", - "documentationLink": "https://cloud.google.com/error-reporting/", - "id": "clouderrorreporting:v1beta1" + } } diff --git a/DiscoveryJson/cloudfunctions_v1.json b/DiscoveryJson/cloudfunctions_v1.json index 06b0da344b..0db1bd9b4a 100644 --- a/DiscoveryJson/cloudfunctions_v1.json +++ b/DiscoveryJson/cloudfunctions_v1.json @@ -1,560 +1,85 @@ { - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "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" - } - }, - "id": "GenerateUploadUrlResponse", - "description": "Response of `GenerateSourceUploadUrl` method.", - "type": "object" - }, - "ListFunctionsResponse": { - "description": "Response for the `ListFunctions` method.", - "type": "object", - "properties": { - "functions": { - "description": "The functions that match the request.", - "type": "array", - "items": { - "$ref": "CloudFunction" - } - }, - "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" - } - }, - "id": "ListFunctionsResponse" - }, - "CallFunctionResponse": { - "id": "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" + "canonicalName": "Cloud Functions", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" } } - }, - "ListLocationsResponse": { - "id": "ListLocationsResponse", - "description": "The response message for Locations.ListLocations.", - "type": "object", - "properties": { - "locations": { - "type": "array", - "items": { - "$ref": "Location" + } + }, + "rootUrl": "https://cloudfunctions.googleapis.com/", + "ownerDomain": "google.com", + "name": "cloudfunctions", + "batchPath": "batch", + "fullyEncodeReservedExpansion": true, + "title": "Google Cloud Functions API", + "ownerName": "Google", + "resources": { + "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.", + "response": { + "$ref": "ListOperationsResponse" }, - "description": "A list of locations that matches the specified filter in the request." - }, - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" - } - } - }, - "EventTrigger": { - "description": "Describes EventTrigger, used to request events be sent from another\nservice.", - "type": "object", - "properties": { - "failurePolicy": { - "$ref": "FailurePolicy", - "description": "Specifies policy for failed executions." - }, - "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" - }, - "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" - }, - "GenerateDownloadUrlRequest": { - "id": "GenerateDownloadUrlRequest", - "description": "Request of `GenerateDownloadUrl` method.", - "type": "object", - "properties": { - "versionId": { - "description": "The optional version of function. If not set, default, current version\nis used.", - "format": "uint64", - "type": "string" - } - } - }, - "OperationMetadataV1": { - "description": "Metadata describing an Operation", - "type": "object", - "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" + "parameterOrder": [], + "httpMethod": "GET", + "parameters": { + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "filter": { + "description": "The standard list filter.", + "type": "string", + "location": "query" + }, + "name": { + "description": "The name of the operation's parent resource.", + "type": "string", + "location": "query" + }, + "pageToken": { + "description": "The standard list page token.", + "type": "string", + "location": "query" + } }, - "description": "The original request that started the operation.", - "type": "object" - }, - "versionId": { - "type": "string", - "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": { - "enumDescriptions": [ - "Unknown operation type.", - "Triggered by CreateFunction call", - "Triggered by UpdateFunction call", - "Triggered by DeleteFunction call." + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "enum": [ - "OPERATION_UNSPECIFIED", - "CREATE_FUNCTION", - "UPDATE_FUNCTION", - "DELETE_FUNCTION" + "flatPath": "v1/operations", + "path": "v1/operations", + "id": "cloudfunctions.operations.list" + }, + "get": { + "flatPath": "v1/operations/{operationsId}", + "path": "v1/{+name}", + "id": "cloudfunctions.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" ], - "description": "Type of operation.", - "type": "string" - } - }, - "id": "OperationMetadataV1" - }, - "FailurePolicy": { - "type": "object", - "properties": { - "retry": { - "$ref": "Retry", - "description": "If specified, then the function will be retried in case of a failure." - } - }, - "id": "FailurePolicy", - "description": "Describes the policy in case of function's execution failure.\nIf empty, then defaults to ignoring failures (i.e. not retrying them)." - }, - "Operation": { - "id": "Operation", - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object", - "properties": { - "response": { - "additionalProperties": { - "type": "any", - "description": "Properties of the object. Contains field @type with type URL." + "httpMethod": "GET", + "parameters": { + "name": { + "location": "path", + "description": "The name of the operation resource.", + "required": true, + "type": "string", + "pattern": "^operations/[^/]+$" + } }, - "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." - }, - "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": { - "type": "any", - "description": "Properties of the object. Contains field @type with type URL." - } - }, - "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" - } - } - }, - "OperationMetadataV1Beta2": { - "type": "object", - "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": { - "enumDescriptions": [ - "Unknown operation type.", - "Triggered by CreateFunction call", - "Triggered by UpdateFunction call", - "Triggered by DeleteFunction call." - ], - "enum": [ - "OPERATION_UNSPECIFIED", - "CREATE_FUNCTION", - "UPDATE_FUNCTION", - "DELETE_FUNCTION" - ], - "description": "Type of operation.", - "type": "string" - } - }, - "id": "OperationMetadataV1Beta2", - "description": "Metadata describing an Operation" - }, - "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": { - "type": "integer", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32" - } - }, - "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" - }, - "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": { - "id": "CallFunctionRequest", - "description": "Request for the `CallFunction` method.", - "type": "object", - "properties": { - "data": { - "description": "Input to be passed to the function.", - "type": "string" - } - } - }, - "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": { - "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" - }, - "status": { - "type": "string", - "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." - }, - "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" - }, - "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" - }, - "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." - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Labels associated with this Cloud Function.", - "type": "object" - }, - "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" - }, - "updateTime": { - "description": "Output only. The last update timestamp of a Cloud Function.", - "format": "google-datetime", - "type": "string" - }, - "httpsTrigger": { - "$ref": "HttpsTrigger", - "description": "An HTTPS endpoint type of source that can be triggered via URL." - }, - "serviceAccountEmail": { - "description": "Output only. The email of the function's service account.", - "type": "string" - }, - "description": { - "description": "User-provided description of a function.", - "type": "string" - } - }, - "id": "CloudFunction" - }, - "HttpsTrigger": { - "properties": { - "url": { - "description": "Output only. The deployed url for the function.", - "type": "string" - } - }, - "id": "HttpsTrigger", - "description": "Describes HttpsTrigger, could be used to connect web hooks to function.", - "type": "object" - }, - "Location": { - "id": "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": { - "type": "string", - "description": "Resource name for the location, which may vary between implementations.\nFor example: `\"projects/example-project/locations/us-east1\"`" - }, - "locationId": { - "description": "The canonical id for this location. For example: `\"us-east1\"`.", - "type": "string" - }, - "displayName": { - "description": "The friendly name for this location, typically a nearby city name.\nFor example, \"Tokyo\".", - "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" - } - } - }, - "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.", - "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": { - "id": "GenerateUploadUrlRequest", - "description": "Request of `GenerateSourceUploadUrl` method.", - "type": "object", - "properties": {} - }, - "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" - } - }, - "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 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": { - "operations": { - "methods": { - "list": { - "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": { - "type": "integer", - "location": "query", - "description": "The standard list page size.", - "format": "int32" - }, - "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": { - "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": "cloudfunctions.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." + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } } }, @@ -563,17 +88,13 @@ "locations": { "methods": { "list": { - "description": "Lists information about the supported locations for this service.", - "response": { - "$ref": "ListLocationsResponse" - }, + "httpMethod": "GET", "parameterOrder": [ "name" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], + "response": { + "$ref": "ListLocationsResponse" + }, "parameters": { "pageSize": { "description": "The standard list page size.", @@ -599,191 +120,224 @@ "type": "string" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "flatPath": "v1/projects/{projectsId}/locations", + "id": "cloudfunctions.projects.locations.list", "path": "v1/{+name}/locations", - "id": "cloudfunctions.projects.locations.list" + "description": "Lists information about the supported locations for this service." } }, "resources": { "functions": { "methods": { - "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.", - "httpMethod": "DELETE", + "generateUploadUrl": { + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/functions:generateUploadUrl", + "path": "v1/{+parent}/functions:generateUploadUrl", + "id": "cloudfunctions.projects.locations.functions.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-goog-content-length-range: 0,104857600`", + "request": { + "$ref": "GenerateUploadUrlRequest" + }, + "response": { + "$ref": "GenerateUploadUrlResponse" + }, "parameterOrder": [ - "name" + "parent" ], + "httpMethod": "POST", + "parameters": { + "parent": { + "location": "path", + "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/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "generateDownloadUrl": { + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:generateDownloadUrl", + "path": "v1/{+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": "Operation" + "$ref": "GenerateDownloadUrlResponse" }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "name": { - "description": "The name of the function which should be deleted.", + "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/[^/]+$", "location": "path" } - }, - "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}" + } }, - "list": { - "description": "Returns a list of functions that belong to the requested project.", + "patch": { "response": { - "$ref": "ListFunctionsResponse" + "$ref": "Operation" }, "parameterOrder": [ - "parent" + "name" ], - "httpMethod": "GET", + "httpMethod": "PATCH", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "pageToken": { + "updateMask": { + "description": "Required list of fields to be updated in this request.", + "format": "google-fieldmask", "type": "string", - "location": "query", - "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." - }, - "pageSize": { - "description": "Maximum number of functions to return per call.", - "format": "int32", - "type": "integer", "location": "query" }, - "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.", + "name": { + "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/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$", "location": "path" } }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/functions", - "path": "v1/{+parent}/functions", - "id": "cloudfunctions.projects.locations.functions.list" - }, - "call": { - "description": "Invokes synchronously deployed function. To be used for testing, very\nlimited traffic allowed.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}", + "path": "v1/{+name}", + "id": "cloudfunctions.projects.locations.functions.patch", "request": { - "$ref": "CallFunctionRequest" + "$ref": "CloudFunction" }, + "description": "Updates existing function." + }, + "get": { + "description": "Returns a function with the given name from the requested project.", "response": { - "$ref": "CallFunctionResponse" + "$ref": "CloudFunction" }, "parameterOrder": [ "name" ], - "httpMethod": "POST", + "httpMethod": "GET", "parameters": { "name": { - "location": "path", - "description": "The name of the function to be called.", + "description": "The name of the function which details should be obtained.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$" + "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$", + "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:call", - "path": "v1/{+name}:call", - "id": "cloudfunctions.projects.locations.functions.call" + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}", + "path": "v1/{+name}", + "id": "cloudfunctions.projects.locations.functions.get" }, - "create": { - "id": "cloudfunctions.projects.locations.functions.create", - "path": "v1/{+location}/functions", - "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" - }, - "httpMethod": "POST", - "parameterOrder": [ - "location" - ], + "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.", "response": { "$ref": "Operation" }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", "parameters": { - "location": { + "name": { + "location": "path", + "description": "The name of the function which should be deleted.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path", - "description": "The project and location in which the function should be created, specified\nin the format `projects/*/locations/*`" + "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/functions" + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}", + "path": "v1/{+name}", + "id": "cloudfunctions.projects.locations.functions.delete" }, - "generateUploadUrl": { - "response": { - "$ref": "GenerateUploadUrlResponse" - }, + "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", "parameterOrder": [ "parent" ], - "httpMethod": "POST", + "response": { + "$ref": "ListFunctionsResponse" + }, "parameters": { + "pageSize": { + "location": "query", + "description": "Maximum number of functions to return per call.", + "format": "int32", + "type": "integer" + }, "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", + "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" + "pattern": "^projects/[^/]+/locations/[^/]+$" + }, + "pageToken": { + "location": "query", + "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" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/functions:generateUploadUrl", - "path": "v1/{+parent}/functions:generateUploadUrl", - "id": "cloudfunctions.projects.locations.functions.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-goog-content-length-range: 0,104857600`", - "request": { - "$ref": "GenerateUploadUrlRequest" - } + ] }, - "generateDownloadUrl": { - "path": "v1/{+name}:generateDownloadUrl", - "id": "cloudfunctions.projects.locations.functions.generateDownloadUrl", + "call": { + "description": "Invokes synchronously deployed function. To be used for testing, very\nlimited traffic allowed.", "request": { - "$ref": "GenerateDownloadUrlRequest" + "$ref": "CallFunctionRequest" }, - "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" + "$ref": "CallFunctionResponse" }, "parameterOrder": [ "name" ], "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { "name": { + "location": "path", + "description": "The name of the function to be called.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$", - "location": "path", - "description": "The name of function for which source code Google Cloud Storage signed\nURL should be generated." + "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$" } }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:generateDownloadUrl" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:call", + "path": "v1/{+name}:call", + "id": "cloudfunctions.projects.locations.functions.call" }, - "patch": { - "path": "v1/{+name}", - "id": "cloudfunctions.projects.locations.functions.patch", - "description": "Updates existing function.", + "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" }, @@ -791,53 +345,24 @@ "$ref": "Operation" }, "parameterOrder": [ - "name" + "location" ], - "httpMethod": "PATCH", + "httpMethod": "POST", "parameters": { - "name": { - "description": "A user-defined name of the function. Function names must be unique\nglobally and match pattern `projects/*/locations/*/functions/*`", + "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/[^/]+/functions/[^/]+$", - "location": "path" - }, - "updateMask": { - "location": "query", - "description": "Required list of fields to be updated in this request.", - "format": "google-fieldmask", - "type": "string" + "pattern": "^projects/[^/]+/locations/[^/]+$" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}" - }, - "get": { - "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.", - "response": { - "$ref": "CloudFunction" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$", - "location": "path", - "description": "The name of the function which details should be obtained." - } - }, - "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" } } } @@ -847,100 +372,575 @@ } }, "parameters": { - "quotaUser": { + "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": { + "description": "V1 error format.", + "type": "string", + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "enum": [ + "1", + "2" + ] + }, + "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": { "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." + "description": "API key. 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", + "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" + } + }, + "version": "v1", + "baseUrl": "https://cloudfunctions.googleapis.com/", + "kind": "discovery#restDescription", + "description": "Manages lightweight user-provided functions executed in response to events.", + "servicePath": "", + "basePath": "", + "id": "cloudfunctions:v1", + "documentationLink": "https://cloud.google.com/functions", + "revision": "20180416", + "discoveryVersion": "v1", + "version_module": true, + "schemas": { + "OperationMetadataV1Beta2": { + "description": "Metadata describing an Operation", + "type": "object", + "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": { + "enumDescriptions": [ + "Unknown operation type.", + "Triggered by CreateFunction call", + "Triggered by UpdateFunction call", + "Triggered by DeleteFunction call." + ], + "enum": [ + "OPERATION_UNSPECIFIED", + "CREATE_FUNCTION", + "UPDATE_FUNCTION", + "DELETE_FUNCTION" + ], + "description": "Type of operation.", + "type": "string" + } + }, + "id": "OperationMetadataV1Beta2" + }, + "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" + }, + "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": { + "sourceArchiveUrl": { + "description": "The Google Cloud Storage URL, starting with gs://, pointing to the zip\narchive which contains the function.", + "type": "string" + }, + "sourceRepository": { + "description": "**Beta Feature**\n\nThe source repository where a function is hosted.", + "$ref": "SourceRepository" + }, + "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" + }, + "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" + }, + "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" + }, + "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" + }, + "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": "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" + }, + "displayName": { + "description": "The friendly name for this location, typically a nearby city name.\nFor example, \"Tokyo\".", + "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" + }, + "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.", + "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": { + "description": "Request of `GenerateSourceUploadUrl` method.", + "type": "object", + "properties": {}, + "id": "GenerateUploadUrlRequest" }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" + "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" }, - "upload_protocol": { - "type": "string", - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")." + "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" + } + }, + "id": "GenerateUploadUrlResponse" }, - "prettyPrint": { - "type": "boolean", - "default": "true", - "location": "query", - "description": "Returns response with indentations and line breaks." + "ListFunctionsResponse": { + "description": "Response for the `ListFunctions` method.", + "type": "object", + "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" + }, + "functions": { + "description": "The functions that match the request.", + "type": "array", + "items": { + "$ref": "CloudFunction" + } + } + }, + "id": "ListFunctionsResponse" }, - "uploadType": { - "type": "string", - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." + "CallFunctionResponse": { + "description": "Response of `CallFunction` method.", + "type": "object", + "properties": { + "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" + }, + "executionId": { + "description": "Execution id of function invocation.", + "type": "string" + } + }, + "id": "CallFunctionResponse" }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" + "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" }, - "$.xgafv": { - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ] + "EventTrigger": { + "description": "Describes EventTrigger, used to request events be sent from another\nservice.", + "type": "object", + "properties": { + "failurePolicy": { + "$ref": "FailurePolicy", + "description": "Specifies policy for failed executions." + }, + "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" + }, + "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" }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" + "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": { + "description": "If specified, then the function will be retried in case of a failure.", + "$ref": "Retry" + } + }, + "id": "FailurePolicy" }, - "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" + "GenerateDownloadUrlRequest": { + "description": "Request of `GenerateDownloadUrl` method.", + "type": "object", + "properties": { + "versionId": { + "description": "The optional version of function. If not set, default, current version\nis used.", + "format": "uint64", + "type": "string" + } + }, + "id": "GenerateDownloadUrlRequest" }, - "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" + "OperationMetadataV1": { + "description": "Metadata describing an Operation", + "type": "object", + "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" + }, + "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": { + "description": "Type of operation.", + "type": "string", + "enumDescriptions": [ + "Unknown operation type.", + "Triggered by CreateFunction call", + "Triggered by UpdateFunction call", + "Triggered by DeleteFunction call." + ], + "enum": [ + "OPERATION_UNSPECIFIED", + "CREATE_FUNCTION", + "UPDATE_FUNCTION", + "DELETE_FUNCTION" + ] + }, + "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" + } + }, + "id": "OperationMetadataV1" }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" + "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" } }, - "version": "v1", - "baseUrl": "https://cloudfunctions.googleapis.com/", - "servicePath": "", - "description": "Manages lightweight user-provided functions executed in response to events.", - "kind": "discovery#restDescription", - "basePath": "", - "revision": "20180416", - "documentationLink": "https://cloud.google.com/functions", - "id": "cloudfunctions:v1" + "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" + } } diff --git a/DiscoveryJson/cloudfunctions_v1beta2.json b/DiscoveryJson/cloudfunctions_v1beta2.json index 6dfb6d3adc..2c3246f07c 100644 --- a/DiscoveryJson/cloudfunctions_v1beta2.json +++ b/DiscoveryJson/cloudfunctions_v1beta2.json @@ -3,6 +3,72 @@ "title": "Google Cloud Functions API", "ownerName": "Google", "resources": { + "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.", + "response": { + "$ref": "ListOperationsResponse" + }, + "parameterOrder": [], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "description": "The name of the operation's parent resource.", + "type": "string", + "location": "query" + }, + "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": { + "description": "The standard list filter.", + "type": "string", + "location": "query" + } + }, + "flatPath": "v1beta2/operations", + "path": "v1beta2/operations", + "id": "cloudfunctions.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": { + "location": "path", + "description": "The name of the operation resource.", + "required": true, + "type": "string", + "pattern": "^operations/[^/]+$" + } + }, + "flatPath": "v1beta2/operations/{operationsId}", + "path": "v1beta2/{+name}", + "id": "cloudfunctions.operations.get" + } + } + }, "projects": { "resources": { "locations": { @@ -23,11 +89,11 @@ "type": "string" }, "name": { - "location": "path", "description": "The resource that owns the locations collection, if applicable.", "required": true, "type": "string", - "pattern": "^projects/[^/]+$" + "pattern": "^projects/[^/]+$", + "location": "path" }, "pageToken": { "description": "The standard list page token.", @@ -52,23 +118,26 @@ "resources": { "functions": { "methods": { - "delete": { - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}", - "path": "v1beta2/{+name}", - "id": "cloudfunctions.projects.locations.functions.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.", + "generateUploadUrl": { + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions:generateUploadUrl", + "path": "v1beta2/{+parent}/functions:generateUploadUrl", + "id": "cloudfunctions.projects.locations.functions.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-goog-content-length-range: 0,104857600`", + "request": { + "$ref": "GenerateUploadUrlRequest" + }, "response": { - "$ref": "Operation" + "$ref": "GenerateUploadUrlResponse" }, "parameterOrder": [ - "name" + "parent" ], - "httpMethod": "DELETE", + "httpMethod": "POST", "parameters": { - "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$", + "parent": { + "pattern": "^projects/[^/]+/locations/[^/]+$", "location": "path", - "description": "The name of the function which should be deleted.", + "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" } @@ -77,167 +146,164 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, - "list": { + "generateDownloadUrl": { + "path": "v1beta2/{+name}:generateDownloadUrl", + "id": "cloudfunctions.projects.locations.functions.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", + "request": { + "$ref": "GenerateDownloadUrlRequest" + }, "response": { - "$ref": "ListFunctionsResponse" + "$ref": "GenerateDownloadUrlResponse" }, "parameterOrder": [ - "location" + "name" ], - "httpMethod": "GET", + "httpMethod": "POST", "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.", + "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/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$" } }, "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." + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:generateDownloadUrl" }, - "call": { - "description": "Invokes synchronously deployed function. To be used for testing, very\nlimited traffic allowed.", - "request": { - "$ref": "CallFunctionRequest" - }, + "get": { + "httpMethod": "GET", "response": { - "$ref": "CallFunctionResponse" + "$ref": "CloudFunction" }, "parameterOrder": [ "name" ], - "httpMethod": "POST", "parameters": { "name": { - "description": "The name of the function to be called.", + "location": "path", + "description": "The name of the function which details should be obtained.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:call", - "path": "v1beta2/{+name}:call", - "id": "cloudfunctions.projects.locations.functions.call" + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}", + "id": "cloudfunctions.projects.locations.functions.get", + "path": "v1beta2/{+name}", + "description": "Returns a function with the given name from the requested project." }, - "create": { - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions", - "path": "v1beta2/{+location}/functions", - "id": "cloudfunctions.projects.locations.functions.create", + "update": { + "description": "Updates existing function.", "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", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "name" ], + "httpMethod": "PUT", "parameters": { - "location": { - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path", - "description": "The project and location in which the function should be created, specified\nin the format `projects/*/locations/*`", + "name": { + "description": "The name of the function to be updated.", "required": true, - "type": "string" + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$", + "location": "path" } - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}", + "path": "v1beta2/{+name}", + "id": "cloudfunctions.projects.locations.functions.update" }, - "generateUploadUrl": { + "delete": { "response": { - "$ref": "GenerateUploadUrlResponse" + "$ref": "Operation" }, "parameterOrder": [ - "parent" + "name" ], - "httpMethod": "POST", + "httpMethod": "DELETE", "parameters": { - "parent": { + "name": { + "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$", "location": "path", - "description": "The project and location in which the Google Cloud Storage signed URL\nshould be generated, specified in the format `projects/*/locations/*`.", + "description": "The name of the function which should be deleted.", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$" + "type": "string" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions:generateUploadUrl", - "path": "v1beta2/{+parent}/functions:generateUploadUrl", - "id": "cloudfunctions.projects.locations.functions.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-goog-content-length-range: 0,104857600`", - "request": { - "$ref": "GenerateUploadUrlRequest" - } + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}", + "path": "v1beta2/{+name}", + "id": "cloudfunctions.projects.locations.functions.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." }, - "generateDownloadUrl": { - "path": "v1beta2/{+name}:generateDownloadUrl", - "id": "cloudfunctions.projects.locations.functions.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", - "request": { - "$ref": "GenerateDownloadUrlRequest" - }, + "list": { "response": { - "$ref": "GenerateDownloadUrlResponse" + "$ref": "ListFunctionsResponse" }, "parameterOrder": [ - "name" + "location" ], - "httpMethod": "POST", + "httpMethod": "GET", "parameters": { - "name": { - "description": "The name of function for which source code Google Cloud Storage signed\nURL should be generated.", + "location": { + "pattern": "^projects/[^/]+/locations/[^/]+$", + "location": "path", + "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/[^/]+/functions/[^/]+$", - "location": "path" + "type": "string" + }, + "pageToken": { + "location": "query", + "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" + }, + "pageSize": { + "location": "query", + "description": "Maximum number of functions to return per call.", + "format": "int32", + "type": "integer" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:generateDownloadUrl" + "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." }, - "get": { - "description": "Returns a function with the given name from the requested project.", - "httpMethod": "GET", + "call": { + "description": "Invokes synchronously deployed function. To be used for testing, very\nlimited traffic allowed.", + "request": { + "$ref": "CallFunctionRequest" + }, "response": { - "$ref": "CloudFunction" + "$ref": "CallFunctionResponse" }, "parameterOrder": [ "name" ], + "httpMethod": "POST", "parameters": { "name": { "location": "path", - "description": "The name of the function which details should be obtained.", + "description": "The name of the function to be called.", "required": true, "type": "string", "pattern": "^projects/[^/]+/locations/[^/]+/functions/[^/]+$" @@ -246,148 +312,50 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}", - "id": "cloudfunctions.projects.locations.functions.get", - "path": "v1beta2/{+name}" + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}:call", + "path": "v1beta2/{+name}:call", + "id": "cloudfunctions.projects.locations.functions.call" }, - "update": { + "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": [ - "name" + "location" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "httpMethod": "PUT", "parameters": { - "name": { - "description": "The name of the function to be updated.", + "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/[^/]+/functions/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+$", "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions/{functionsId}", - "path": "v1beta2/{+name}", - "id": "cloudfunctions.projects.locations.functions.update", - "description": "Updates existing function.", - "request": { - "$ref": "CloudFunction" - } + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/functions", + "path": "v1beta2/{+location}/functions", + "id": "cloudfunctions.projects.locations.functions.create" } } } } } } - }, - "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.", - "response": { - "$ref": "ListOperationsResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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": { - "description": "The standard list page size.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "filter": { - "location": "query", - "description": "The standard list filter.", - "type": "string" - } - }, - "flatPath": "v1beta2/operations", - "path": "v1beta2/operations", - "id": "cloudfunctions.operations.list" - }, - "get": { - "flatPath": "v1beta2/operations/{operationsId}", - "path": "v1beta2/{+name}", - "id": "cloudfunctions.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": { - "description": "The name of the operation resource.", - "required": true, - "type": "string", - "pattern": "^operations/[^/]+$", - "location": "path" - } - } - } - } } }, "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" - }, - "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" + "type": "string", + "location": "query" }, "fields": { "location": "query", @@ -395,13 +363,11 @@ "type": "string" }, "callback": { - "location": "query", "description": "JSONP", - "type": "string" + "type": "string", + "location": "query" }, "$.xgafv": { - "description": "V1 error format.", - "type": "string", "enumDescriptions": [ "v1 error format", "v2 error format" @@ -410,9 +376,17 @@ "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", @@ -420,23 +394,49 @@ ], "location": "query", "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ], - "type": "string" + "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" }, - "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": { + "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": "OAuth access token.", + "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" } }, "version": "v1beta2", @@ -451,10 +451,30 @@ "discoveryVersion": "v1", "version_module": true, "schemas": { - "OperationMetadataV1Beta2": { + "HTTPSTrigger": { + "properties": { + "url": { + "description": "Output only. The deployed url for the function.", + "type": "string" + } + }, + "id": "HTTPSTrigger", + "description": "Describes HTTPSTrigger, could be used to connect web hooks to function.", + "type": "object" + }, + "OperationMetadataV1": { "description": "Metadata describing an Operation", "type": "object", "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.", @@ -483,7 +503,72 @@ ], "description": "Type of operation.", "type": "string" + } + }, + "id": "OperationMetadataV1" + }, + "GenerateDownloadUrlRequest": { + "properties": { + "versionId": { + "description": "The optional version of function.", + "format": "uint64", + "type": "string" + } + }, + "id": "GenerateDownloadUrlRequest", + "description": "Request of `GenerateDownloadUrl` method.", + "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", + "properties": { + "retry": { + "$ref": "Retry", + "description": "If specified, then the function will be retried in case of a failure." + } + }, + "id": "FailurePolicy" + }, + "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" + }, + "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" + } + }, + "id": "Operation", + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "type": "object" + }, + "OperationMetadataV1Beta2": { + "description": "Metadata describing an Operation", + "type": "object", + "properties": { "updateTime": { "description": "The last update timestamp of the operation.", "format": "google-datetime", @@ -492,12 +577,47 @@ "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": "OperationMetadataV1Beta2" }, "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", @@ -513,15 +633,9 @@ "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" + "id": "Status" }, "CallFunctionRequest": { "properties": { @@ -535,13 +649,7 @@ "type": "object" }, "SourceRepository": { - "description": "Describes the location of the function source in a remote repository.", - "type": "object", "properties": { - "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" @@ -561,50 +669,24 @@ "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" } }, - "id": "SourceRepository" + "id": "SourceRepository", + "description": "Describes the location of the function source in a remote repository.", + "type": "object" }, "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": { - "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": { - "additionalProperties": { - "type": "string" - }, - "description": "Labels associated with this Cloud Function.", - "type": "object" - }, - "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": { - "description": "An HTTPS endpoint type of source that can be triggered via URL.", - "$ref": "HTTPSTrigger" - }, "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" }, "status": { - "description": "Output only. Status of the function deployment.", - "type": "string", "enumDescriptions": [ "Status not specified.", "Successfully deployed.", @@ -618,11 +700,13 @@ "FAILED", "DEPLOYING", "DELETING" - ] + ], + "description": "Output only. Status of the function deployment.", + "type": "string" }, "eventTrigger": { - "$ref": "EventTrigger", - "description": "A source that fires events in response to a condition in another service." + "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.v1beta2.GenerateUploadUrl", @@ -651,23 +735,46 @@ "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`.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels associated with this Cloud Function.", + "type": "object" + }, + "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." } }, - "id": "CloudFunction" + "id": "CloudFunction", + "description": "Describes a Cloud Function that contains user computation executed in\nresponse to an event. It encapsulate function and triggers configurations.", + "type": "object" }, "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" @@ -681,12 +788,19 @@ "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" - } + }, + "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" @@ -703,16 +817,16 @@ "id": "GenerateDownloadUrlResponse" }, "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" + "type": "object", + "properties": {}, + "id": "Retry" }, "GenerateUploadUrlRequest": { - "description": "Request of `GenerateUploadUrl` method.", - "type": "object", "properties": {}, - "id": "GenerateUploadUrlRequest" + "id": "GenerateUploadUrlRequest", + "description": "Request of `GenerateUploadUrl` method.", + "type": "object" }, "ListOperationsResponse": { "description": "The response message for Operations.ListOperations.", @@ -762,8 +876,6 @@ "id": "ListFunctionsResponse" }, "CallFunctionResponse": { - "description": "Response of `CallFunction` method.", - "type": "object", "properties": { "executionId": { "description": "Execution id of function invocation.", @@ -778,30 +890,34 @@ "type": "string" } }, - "id": "CallFunctionResponse" + "id": "CallFunctionResponse", + "description": "Response of `CallFunction` method.", + "type": "object" }, "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" } + }, + "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": { + "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" @@ -811,134 +927,18 @@ "type": "string" }, "failurePolicy": { - "$ref": "FailurePolicy", - "description": "Specifies policy for failed executions." - }, - "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" - } - }, - "id": "EventTrigger" - }, - "HTTPSTrigger": { - "properties": { - "url": { - "description": "Output only. The deployed url for the function.", - "type": "string" - } - }, - "id": "HTTPSTrigger", - "description": "Describes HTTPSTrigger, could be used to connect web hooks to function.", - "type": "object" - }, - "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": { - "description": "Type of operation.", - "type": "string", - "enumDescriptions": [ - "Unknown operation type.", - "Triggered by CreateFunction call", - "Triggered by UpdateFunction call", - "Triggered by DeleteFunction call." - ], - "enum": [ - "OPERATION_UNSPECIFIED", - "CREATE_FUNCTION", - "UPDATE_FUNCTION", - "DELETE_FUNCTION" - ] - } - }, - "id": "OperationMetadataV1", - "description": "Metadata describing an Operation", - "type": "object" - }, - "GenerateDownloadUrlRequest": { - "properties": { - "versionId": { - "description": "The optional version of function.", - "format": "uint64", - "type": "string" + "description": "Specifies policy for failed executions.", + "$ref": "FailurePolicy" } }, - "id": "GenerateDownloadUrlRequest", - "description": "Request of `GenerateDownloadUrl` method.", + "id": "EventTrigger", + "description": "Describes EventTrigger, used to request events be sent from another\nservice.", "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", - "properties": { - "retry": { - "description": "If specified, then the function will be retried in case of a failure.", - "$ref": "Retry" - } - }, - "id": "FailurePolicy" - }, - "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": { - "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" - }, - "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" } }, "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" + "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", diff --git a/DiscoveryJson/cloudiot_v1.json b/DiscoveryJson/cloudiot_v1.json index 0dd863d287..2542805bf1 100644 --- a/DiscoveryJson/cloudiot_v1.json +++ b/DiscoveryJson/cloudiot_v1.json @@ -1,1033 +1,285 @@ { - "ownerName": "Google", - "resources": { - "projects": { - "resources": { - "locations": { - "resources": { - "registries": { - "methods": { - "delete": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}", - "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": { - "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" - } - } - }, - "list": { - "description": "Lists device registries.", - "response": { - "$ref": "ListDeviceRegistriesResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "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": { - "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.", - "type": "string", - "location": "query" - }, - "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", - "type": "integer", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries", - "path": "v1/{+parent}/registries", - "id": "cloudiot.projects.locations.registries.list" - }, - "create": { - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "DeviceRegistry" - }, - "parameters": { - "parent": { - "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/[^/]+$", - "location": "path" - } - }, - "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.create", - "path": "v1/{+parent}/registries", - "description": "Creates a device registry that contains devices.", - "request": { - "$ref": "DeviceRegistry" - } - }, - "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/[^/]+/locations/[^/]+/registries/[^/]+$" - } - }, - "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", - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "request": { - "$ref": "SetIamPolicyRequest" - } - }, - "getIamPolicy": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}:getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "id": "cloudiot.projects.locations.registries.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.", - "request": { - "$ref": "GetIamPolicyRequest" - }, - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "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/[^/]+/registries/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ] - }, - "get": { - "description": "Gets a device registry configuration.", - "response": { - "$ref": "DeviceRegistry" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "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}", - "path": "v1/{+name}", - "id": "cloudiot.projects.locations.registries.get" - }, - "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": { - "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", - "location": "query" - } - }, - "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}", - "description": "Updates a device registry configuration.", - "request": { - "$ref": "DeviceRegistry" - } - }, - "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", - "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" - } - }, - "resources": { - "groups": { - "methods": { - "getIamPolicy": { - "path": "v1/{+resource}:getIamPolicy", - "id": "cloudiot.projects.locations.registries.groups.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.", - "response": { - "$ref": "Policy" - }, - "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 is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+/groups/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/groups/{groupsId}:getIamPolicy" - }, - "setIamPolicy": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/groups/{groupsId}:setIamPolicy", - "path": "v1/{+resource}:setIamPolicy", - "id": "cloudiot.projects.locations.registries.groups.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", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ], - "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/[^/]+/groups/[^/]+$", - "location": "path" - } - } - }, - "testIamPermissions": { - "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/[^/]+/locations/[^/]+/registries/[^/]+/groups/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/groups/{groupsId}:testIamPermissions", - "path": "v1/{+resource}:testIamPermissions", - "id": "cloudiot.projects.locations.registries.groups.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" - } - } - }, - "resources": { - "devices": { - "methods": { - "delete": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/groups/{groupsId}/devices/{devicesId}", - "path": "v1/{+name}", - "id": "cloudiot.projects.locations.registries.groups.devices.delete", - "description": "Deletes a device.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "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/[^/]+/groups/[^/]+/devices/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ] - }, - "get": { - "response": { - "$ref": "Device" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ], - "parameters": { - "name": { - "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", - "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+/groups/[^/]+/devices/[^/]+$" - }, - "fieldMask": { - "type": "string", - "location": "query", - "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" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/groups/{groupsId}/devices/{devicesId}", - "path": "v1/{+name}", - "id": "cloudiot.projects.locations.registries.groups.devices.get", - "description": "Gets details about a device." - }, - "patch": { - "response": { - "$ref": "Device" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "parameters": { - "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", - "type": "string", - "location": "query" - }, - "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+/groups/[^/]+/devices/[^/]+$", - "location": "path", - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/groups/{groupsId}/devices/{devicesId}", - "path": "v1/{+name}", - "id": "cloudiot.projects.locations.registries.groups.devices.patch", - "description": "Updates a device.", - "request": { - "$ref": "Device" - } - }, - "modifyCloudToDeviceConfig": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/groups/{groupsId}/devices/{devicesId}:modifyCloudToDeviceConfig", - "path": "v1/{+name}:modifyCloudToDeviceConfig", - "id": "cloudiot.projects.locations.registries.groups.devices.modifyCloudToDeviceConfig", - "request": { - "$ref": "ModifyCloudToDeviceConfigRequest" - }, - "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.", - "response": { - "$ref": "DeviceConfig" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ], - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+/groups/[^/]+/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}`." - } - } - } - }, - "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", - "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/[^/]+/groups/[^/]+/devices/[^/]+$", - "location": "path" - }, - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/groups/{groupsId}/devices/{devicesId}/configVersions", - "path": "v1/{+name}/configVersions", - "id": "cloudiot.projects.locations.registries.groups.devices.configVersions.list" - } - } - }, - "states": { - "methods": { - "list": { - "response": { - "$ref": "ListDeviceStatesResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ], - "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/[^/]+/groups/[^/]+/devices/[^/]+$", - "location": "path" - }, - "numStates": { - "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", - "type": "integer" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/groups/{groupsId}/devices/{devicesId}/states", - "path": "v1/{+name}/states", - "id": "cloudiot.projects.locations.registries.groups.devices.states.list", - "description": "Lists the last few versions of the device state in descending order (i.e.:\nnewest first)." - } - } - } - } - } - } - }, - "devices": { - "methods": { - "get": { - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Device" - }, - "parameters": { - "name": { - "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", - "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+/devices/[^/]+$" - }, - "fieldMask": { - "type": "string", - "location": "query", - "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" - } - }, - "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.get", - "path": "v1/{+name}", - "description": "Gets details about a device." - }, - "patch": { - "path": "v1/{+name}", - "id": "cloudiot.projects.locations.registries.devices.patch", - "description": "Updates a device.", - "request": { - "$ref": "Device" - }, - "response": { - "$ref": "Device" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "parameters": { - "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", - "type": "string", - "location": "query" - }, - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices/{devicesId}" - }, - "delete": { - "description": "Deletes a device.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ], - "parameters": { - "name": { - "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", - "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+/devices/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices/{devicesId}", - "path": "v1/{+name}", - "id": "cloudiot.projects.locations.registries.devices.delete" - }, - "list": { - "description": "List devices in a device registry.", - "response": { - "$ref": "ListDevicesResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ], - "parameters": { - "pageToken": { - "type": "string", - "location": "query", - "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." - }, - "fieldMask": { - "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", - "type": "string" - }, - "pageSize": { - "type": "integer", - "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" - }, - "gatewayType": { - "location": "query", - "enum": [ - "GATEWAY_TYPE_UNSPECIFIED", - "GATEWAY", - "NON_GATEWAY" - ], - "description": "If `GATEWAY` is specified, only gateways are returned. If `NON_GATEWAY`\nspecified, only non-gateway devices are returned. If\n`GATEWAY_TYPE_UNSPECIFIED` specified, all devices are returned.", - "type": "string" - }, - "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.", - "type": "string", - "repeated": true, - "location": "query" - }, - "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 - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices", - "path": "v1/{+parent}/devices", - "id": "cloudiot.projects.locations.registries.devices.list" - }, - "create": { - "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`.", - "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}/devices", - "path": "v1/{+parent}/devices", - "id": "cloudiot.projects.locations.registries.devices.create", - "description": "Creates a device in a device registry.", - "request": { - "$ref": "Device" - }, - "response": { - "$ref": "Device" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST" - }, - "modifyCloudToDeviceConfig": { - "response": { - "$ref": "DeviceConfig" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ], - "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" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices/{devicesId}:modifyCloudToDeviceConfig", - "path": "v1/{+name}:modifyCloudToDeviceConfig", - "id": "cloudiot.projects.locations.registries.devices.modifyCloudToDeviceConfig", - "request": { - "$ref": "ModifyCloudToDeviceConfigRequest" - }, - "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." - } - }, - "resources": { - "configVersions": { - "methods": { - "list": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices/{devicesId}/configVersions", - "path": "v1/{+name}/configVersions", - "id": "cloudiot.projects.locations.registries.devices.configVersions.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", - "parameters": { - "name": { - "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", - "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+/devices/[^/]+$" - }, - "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", - "type": "integer", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ] - } - } - }, - "states": { - "methods": { - "list": { - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "ListDeviceStatesResponse" - }, - "parameters": { - "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" - }, - "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", - "type": "integer", - "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}/states", - "id": "cloudiot.projects.locations.registries.devices.states.list", - "path": "v1/{+name}/states", - "description": "Lists the last few versions of the device state in descending order (i.e.:\nnewest first)." - } - } - } - } - } - } - }, - "groups": { - "resources": { - "devices": { - "methods": { - "list": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/groups/{groupsId}/devices", - "id": "cloudiot.projects.locations.groups.devices.list", - "path": "v1/{+parent}/devices", - "description": "List devices in a device registry.", - "httpMethod": "GET", - "response": { - "$ref": "ListDevicesResponse" - }, - "parameterOrder": [ - "parent" - ], - "parameters": { - "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 - }, - "pageToken": { - "location": "query", - "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" - }, - "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" - }, - "gatewayType": { - "description": "If `GATEWAY` is specified, only gateways are returned. If `NON_GATEWAY`\nspecified, only non-gateway devices are returned. If\n`GATEWAY_TYPE_UNSPECIFIED` specified, all devices are returned.", - "type": "string", - "location": "query", - "enum": [ - "GATEWAY_TYPE_UNSPECIFIED", - "GATEWAY", - "NON_GATEWAY" - ] - }, - "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", - "type": "integer", - "location": "query" - }, - "parent": { - "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/[^/]+/groups/[^/]+$", - "location": "path" - }, - "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.", - "type": "string", - "repeated": true, - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudiot" - ] - } - } - } - } - } + "version": "v1", + "baseUrl": "https://cloudiot.googleapis.com/", + "servicePath": "", + "description": "Registers and manages IoT (Internet of Things) devices that connect to the Google Cloud Platform.\n", + "kind": "discovery#restDescription", + "basePath": "", + "id": "cloudiot:v1", + "documentationLink": "https://cloud.google.com/iot", + "revision": "20180501", + "discoveryVersion": "v1", + "version_module": true, + "schemas": { + "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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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" } } - } - } - }, - "parameters": { - "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" + }, + "id": "Policy" }, - "access_token": { - "type": "string", - "location": "query", - "description": "OAuth access token." + "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" }, - "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" + "ListDeviceRegistriesResponse": { + "id": "ListDeviceRegistriesResponse", + "description": "Response for `ListDeviceRegistries`.", + "type": "object", + "properties": { + "deviceRegistries": { + "type": "array", + "items": { + "$ref": "DeviceRegistry" + }, + "description": "The registries that matched the query." + }, + "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" + } + } }, - "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" + "DeviceRegistry": { + "description": "A container for a group of devices.", + "type": "object", + "properties": { + "httpConfig": { + "description": "The DeviceService (HTTP) configuration for this device registry.", + "$ref": "HttpConfig" + }, + "id": { + "description": "The identifier of this device registry. For example, `myRegistry`.", + "type": "string" + }, + "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. 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.", + "type": "array", + "items": { + "$ref": "EventNotificationConfig" + } + } + }, + "id": "DeviceRegistry" }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" + "ListDevicesResponse": { + "description": "Response for `ListDevices`.", + "type": "object", + "properties": { + "devices": { + "description": "The devices that match the request.", + "type": "array", + "items": { + "$ref": "Device" + } + }, + "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" }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" + "HttpConfig": { + "description": "The configuration of the HTTP bridge for a device registry.", + "type": "object", + "properties": { + "httpEnabledState": { + "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." + ], + "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." + } + }, + "id": "HttpConfig" }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" + "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" }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" + "DeviceConfig": { + "description": "The device configuration. Eventually delivered to devices.", + "type": "object", + "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", + "type": "string" + }, + "cloudUpdateTime": { + "description": "[Output only] The time at which this configuration version was updated in\nCloud IoT Core. This timestamp is set by the server.", + "format": "google-datetime", + "type": "string" + }, + "deviceAckTime": { + "description": "[Output only] The time at which Cloud IoT Core received the\nacknowledgment from the device, indicating that the device has received\nthis configuration version. If this field is not present, the device has\nnot yet acknowledged that it received this version. Note that when\nthe config was sent to the device, many config versions may have been\navailable in Cloud IoT Core while the device was disconnected, and on\nconnection, only the latest version is sent to the device. Some\nversions may never be sent to the device, and therefore are never\nacknowledged. This timestamp is set by Cloud IoT Core.", + "format": "google-datetime", + "type": "string" + }, + "binaryData": { + "description": "The device configuration data.", + "format": "byte", + "type": "string" + } + }, + "id": "DeviceConfig" }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" + "MqttConfig": { + "description": "The configuration of MQTT for a device registry.", + "type": "object", + "properties": { + "mqttEnabledState": { + "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.", + "type": "string", + "enumDescriptions": [ + "No MQTT state specified. If not specified, MQTT will be enabled by default.", + "Enables a MQTT connection.", + "Disables a MQTT connection." + ] + } + }, + "id": "MqttConfig" }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" + "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" }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" + "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` .\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", + "description": "Associates `members` with a `role`.", + "type": "object" }, - "$.xgafv": { - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ] + "ModifyCloudToDeviceConfigRequest": { + "description": "Request for `ModifyCloudToDeviceConfig`.", + "type": "object", + "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" + } + }, + "id": "ModifyCloudToDeviceConfigRequest" }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - } - }, - "version": "v1", - "baseUrl": "https://cloudiot.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Registers and manages IoT (Internet of Things) devices that connect to the Google Cloud Platform.\n", - "servicePath": "", - "basePath": "", - "id": "cloudiot:v1", - "documentationLink": "https://cloud.google.com/iot", - "revision": "20180501", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { "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" - } + }, + "description": "The last few device states. States are listed in descending order of server\nupdate time, starting from the most recent one." } }, "id": "ListDeviceStatesResponse" @@ -1056,14 +308,9 @@ "description": "The device resource.", "type": "object", "properties": { - "numId": { - "description": "[Output only] A server-defined unique numeric ID for the device. This is a\nmore compact way to identify devices, and it is globally unique.", - "format": "uint64", - "type": "string" - }, "blocked": { - "type": "boolean", - "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." + "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 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.", @@ -1076,37 +323,37 @@ "type": "string" }, "lastConfigSendTime": { - "type": "string", "description": "[Output only] The last time a cloud-to-device config version was sent to\nthe device.", - "format": "google-datetime" + "format": "google-datetime", + "type": "string" }, "lastErrorStatus": { - "$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." + "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.", + "$ref": "Status" }, "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" }, + "config": { + "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.", + "$ref": "DeviceConfig" + }, "state": { "description": "[Output only] The state most recently received from the device. If no state\nhas been reported, this field is not present.", "$ref": "DeviceState" }, - "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." + "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" }, "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" - }, - "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." - }, - "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" + } }, "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'.", @@ -1114,25 +361,32 @@ "type": "string" }, "metadata": { + "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", "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-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": { - "description": "The user-defined device identifier. The device ID must be unique\nwithin a device registry.", - "type": "string" + "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", "type": "string" + }, + "numId": { + "description": "[Output only] A server-defined unique numeric ID for the device. This is a\nmore compact way to identify devices, and it is globally unique.", + "format": "uint64", + "type": "string" } }, "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.", @@ -1142,11 +396,11 @@ } } }, - "id": "ListDeviceConfigVersionsResponse", - "description": "Response for `ListDeviceConfigVersions`.", - "type": "object" + "id": "ListDeviceConfigVersionsResponse" }, "X509CertificateDetails": { + "id": "X509CertificateDetails", + "description": "Details of an X.509 certificate. For informational purposes only.", "type": "object", "properties": { "subject": { @@ -1166,50 +420,48 @@ "type": "string" }, "startTime": { - "type": "string", "description": "The time the certificate becomes valid.", - "format": "google-datetime" + "format": "google-datetime", + "type": "string" }, "expiryTime": { "description": "The time the certificate becomes invalid.", "format": "google-datetime", "type": "string" } - }, - "id": "X509CertificateDetails", - "description": "Details of an X.509 certificate. For informational purposes only." - }, - "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." + } }, "EventNotificationConfig": { - "id": "EventNotificationConfig", "description": "The configuration for forwarding telemetry events.", "type": "object", "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" + }, + "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": { + "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" }, "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" + "type": "object", + "properties": {}, + "id": "Empty" }, "PublicKeyCredential": { "description": "A public key format and data.", @@ -1220,6 +472,13 @@ "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", @@ -1228,26 +487,14 @@ "ES256_X509_PEM" ], "description": "The format of the key.", - "type": "string", - "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" } }, "id": "PublicKeyCredential" }, "PublicKeyCertificate": { - "description": "A public key certificate format and data.", "type": "object", "properties": { - "certificate": { - "description": "The certificate data.", - "type": "string" - }, "x509Details": { "$ref": "X509CertificateDetails", "description": "[Output only] The certificate details. Used only for X.509 certificates." @@ -1263,11 +510,17 @@ "X509_CERTIFICATE_PEM" ], "description": "The certificate format." + }, + "certificate": { + "description": "The certificate data.", + "type": "string" } }, - "id": "PublicKeyCertificate" + "id": "PublicKeyCertificate", + "description": "A public key certificate format and data." }, "DeviceState": { + "id": "DeviceState", "description": "The device state, as reported by the device.", "type": "object", "properties": { @@ -1281,25 +534,9 @@ "format": "google-datetime", "type": "string" } - }, - "id": "DeviceState" - }, - "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" + } }, "StateNotificationConfig": { - "id": "StateNotificationConfig", "description": "The configuration for notification of new states received from the device.", "type": "object", "properties": { @@ -1307,290 +544,1053 @@ "description": "A Cloud Pub/Sub topic name. For example,\n`projects/myProject/topics/deviceEvents`.", "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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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": { - "type": "integer", - "description": "Deprecated.", - "format": "int32" - } - }, - "id": "Policy" - }, - "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" + "id": "StateNotificationConfig" }, - "ListDeviceRegistriesResponse": { - "description": "Response for `ListDeviceRegistries`.", + "TestIamPermissionsRequest": { + "description": "Request message for `TestIamPermissions` method.", "type": "object", "properties": { - "deviceRegistries": { - "description": "The registries that matched the query.", + "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": { - "$ref": "DeviceRegistry" + "type": "string" } - }, - "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": { - "description": "A container for a group of devices.", - "type": "object", - "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.", - "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. 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.", - "type": "array", - "items": { - "$ref": "EventNotificationConfig" - } - }, - "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." + "id": "TestIamPermissionsRequest" + } + }, + "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 Iot", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" }, - "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." + "https://www.googleapis.com/auth/cloudiot": { + "description": "Register and manage devices in the Google Cloud IoT service" } - }, - "id": "DeviceRegistry" - }, - "ListDevicesResponse": { - "description": "Response for `ListDevices`.", - "type": "object", - "properties": { - "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" - }, - "devices": { - "description": "The devices that match the request.", - "type": "array", - "items": { - "$ref": "Device" + } + } + }, + "rootUrl": "https://cloudiot.googleapis.com/", + "ownerDomain": "google.com", + "name": "cloudiot", + "batchPath": "batch", + "fullyEncodeReservedExpansion": true, + "title": "Cloud IoT API", + "ownerName": "Google", + "resources": { + "projects": { + "resources": { + "locations": { + "resources": { + "registries": { + "methods": { + "getIamPolicy": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ], + "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/[^/]+/registries/[^/]+$" + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}:getIamPolicy", + "path": "v1/{+resource}:getIamPolicy", + "id": "cloudiot.projects.locations.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.", + "response": { + "$ref": "Policy" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST" + }, + "patch": { + "path": "v1/{+name}", + "id": "cloudiot.projects.locations.registries.patch", + "request": { + "$ref": "DeviceRegistry" + }, + "description": "Updates a device registry configuration.", + "response": { + "$ref": "DeviceRegistry" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "PATCH", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ], + "parameters": { + "name": { + "location": "path", + "description": "The resource path name. For example,\n`projects/example-project/locations/us-central1/registries/my-registry`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+$" + }, + "updateMask": { + "type": "string", + "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" + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}" + }, + "get": { + "id": "cloudiot.projects.locations.registries.get", + "path": "v1/{+name}", + "description": "Gets a device registry configuration.", + "httpMethod": "GET", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "DeviceRegistry" + }, + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ], + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}" + }, + "testIamPermissions": { + "httpMethod": "POST", + "parameterOrder": [ + "resource" + ], + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ], + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}:testIamPermissions", + "id": "cloudiot.projects.locations.registries.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.", + "request": { + "$ref": "TestIamPermissionsRequest" + } + }, + "delete": { + "id": "cloudiot.projects.locations.registries.delete", + "path": "v1/{+name}", + "description": "Deletes a device registry configuration.", + "httpMethod": "DELETE", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "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", + "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ], + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}" + }, + "list": { + "description": "Lists device registries.", + "httpMethod": "GET", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "ListDeviceRegistriesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ], + "parameters": { + "pageToken": { + "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.", + "type": "string" + }, + "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" + }, + "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" + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries", + "id": "cloudiot.projects.locations.registries.list", + "path": "v1/{+parent}/registries" + }, + "setIamPolicy": { + "path": "v1/{+resource}:setIamPolicy", + "id": "cloudiot.projects.locations.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", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ], + "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/[^/]+/registries/[^/]+$" + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}:setIamPolicy" + }, + "create": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ], + "parameters": { + "parent": { + "pattern": "^projects/[^/]+/locations/[^/]+$", + "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" + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries", + "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" + } + } + }, + "resources": { + "groups": { + "methods": { + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "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/[^/]+/registries/[^/]+/groups/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ], + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/groups/{groupsId}:setIamPolicy", + "id": "cloudiot.projects.locations.registries.groups.setIamPolicy", + "path": "v1/{+resource}:setIamPolicy" + }, + "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/[^/]+/groups/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/groups/{groupsId}:testIamPermissions", + "path": "v1/{+resource}:testIamPermissions", + "id": "cloudiot.projects.locations.registries.groups.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." + }, + "getIamPolicy": { + "response": { + "$ref": "Policy" + }, + "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 is being requested.\nSee the operation documentation for the appropriate value for this field.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+/groups/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/groups/{groupsId}:getIamPolicy", + "path": "v1/{+resource}:getIamPolicy", + "id": "cloudiot.projects.locations.registries.groups.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." + } + }, + "resources": { + "devices": { + "methods": { + "get": { + "description": "Gets details about a device.", + "httpMethod": "GET", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Device" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ], + "parameters": { + "name": { + "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", + "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+/groups/[^/]+/devices/[^/]+$" + }, + "fieldMask": { + "location": "query", + "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" + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/groups/{groupsId}/devices/{devicesId}", + "id": "cloudiot.projects.locations.registries.groups.devices.get", + "path": "v1/{+name}" + }, + "patch": { + "description": "Updates a device.", + "request": { + "$ref": "Device" + }, + "httpMethod": "PATCH", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Device" + }, + "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`, `blocked`, 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/[^/]+/groups/[^/]+/devices/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ], + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/groups/{groupsId}/devices/{devicesId}", + "id": "cloudiot.projects.locations.registries.groups.devices.patch", + "path": "v1/{+name}" + }, + "modifyCloudToDeviceConfig": { + "response": { + "$ref": "DeviceConfig" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "parameters": { + "name": { + "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+/groups/[^/]+/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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ], + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/groups/{groupsId}/devices/{devicesId}:modifyCloudToDeviceConfig", + "path": "v1/{+name}:modifyCloudToDeviceConfig", + "id": "cloudiot.projects.locations.registries.groups.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" + } + }, + "delete": { + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ], + "parameters": { + "name": { + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+/groups/[^/]+/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}/groups/{groupsId}/devices/{devicesId}", + "path": "v1/{+name}", + "id": "cloudiot.projects.locations.registries.groups.devices.delete", + "description": "Deletes a device." + } + }, + "resources": { + "configVersions": { + "methods": { + "list": { + "response": { + "$ref": "ListDeviceConfigVersionsResponse" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ], + "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/[^/]+/groups/[^/]+/devices/[^/]+$", + "location": "path" + }, + "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", + "type": "integer", + "location": "query" + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/groups/{groupsId}/devices/{devicesId}/configVersions", + "path": "v1/{+name}/configVersions", + "id": "cloudiot.projects.locations.registries.groups.devices.configVersions.list", + "description": "Lists the last few versions of the device configuration in descending\norder (i.e.: newest first)." + } + } + }, + "states": { + "methods": { + "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", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ], + "parameters": { + "name": { + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+/groups/[^/]+/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}`." + }, + "numStates": { + "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", + "type": "integer" + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/groups/{groupsId}/devices/{devicesId}/states", + "path": "v1/{+name}/states", + "id": "cloudiot.projects.locations.registries.groups.devices.states.list" + } + } + } + } + } + } + }, + "devices": { + "methods": { + "create": { + "path": "v1/{+parent}/devices", + "id": "cloudiot.projects.locations.registries.devices.create", + "description": "Creates a device in a device registry.", + "request": { + "$ref": "Device" + }, + "response": { + "$ref": "Device" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "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`.", + "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}/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" + }, + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "DeviceConfig" + }, + "parameters": { + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ], + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices/{devicesId}:modifyCloudToDeviceConfig", + "id": "cloudiot.projects.locations.registries.devices.modifyCloudToDeviceConfig", + "path": "v1/{+name}:modifyCloudToDeviceConfig" + }, + "get": { + "response": { + "$ref": "Device" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ], + "parameters": { + "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" + }, + "fieldMask": { + "location": "query", + "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" + } + }, + "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." + }, + "patch": { + "description": "Updates a device.", + "request": { + "$ref": "Device" + }, + "httpMethod": "PATCH", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Device" + }, + "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.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+/devices/[^/]+$", + "location": "path" + }, + "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`, `blocked`, and `metadata`", + "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}/devices/{devicesId}", + "id": "cloudiot.projects.locations.registries.devices.patch", + "path": "v1/{+name}" + }, + "delete": { + "description": "Deletes a device.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ], + "parameters": { + "name": { + "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", + "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+/devices/[^/]+$" + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices/{devicesId}", + "path": "v1/{+name}", + "id": "cloudiot.projects.locations.registries.devices.delete" + }, + "list": { + "description": "List devices in a device registry.", + "response": { + "$ref": "ListDevicesResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "parameters": { + "pageToken": { + "type": "string", + "location": "query", + "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." + }, + "fieldMask": { + "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", + "type": "string" + }, + "gatewayType": { + "description": "If `GATEWAY` is specified, only gateways are returned. If `NON_GATEWAY`\nspecified, only non-gateway devices are returned. If\n`GATEWAY_TYPE_UNSPECIFIED` specified, all devices are returned.", + "type": "string", + "location": "query", + "enum": [ + "GATEWAY_TYPE_UNSPECIFIED", + "GATEWAY", + "NON_GATEWAY" + ] + }, + "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", + "type": "integer", + "location": "query" + }, + "parent": { + "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+$", + "location": "path", + "description": "The device registry path. Required. For example,\n`projects/my-project/locations/us-central1/registries/my-registry`.", + "required": true, + "type": "string" + }, + "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" + }, + "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", + "path": "v1/{+parent}/devices", + "id": "cloudiot.projects.locations.registries.devices.list" + } + }, + "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", + "parameters": { + "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", + "type": "integer", + "location": "query" + }, + "name": { + "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", + "pattern": "^projects/[^/]+/locations/[^/]+/registries/[^/]+/devices/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ], + "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": { + "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", + "type": "integer", + "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}/states" + } + } + } + } + } + } + }, + "groups": { + "resources": { + "devices": { + "methods": { + "list": { + "description": "List devices in a device registry.", + "response": { + "$ref": "ListDevicesResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudiot" + ], + "parameters": { + "pageToken": { + "location": "query", + "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" + }, + "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", + "type": "string", + "location": "query" + }, + "gatewayType": { + "location": "query", + "enum": [ + "GATEWAY_TYPE_UNSPECIFIED", + "GATEWAY", + "NON_GATEWAY" + ], + "description": "If `GATEWAY` is specified, only gateways are returned. If `NON_GATEWAY`\nspecified, only non-gateway devices are returned. If\n`GATEWAY_TYPE_UNSPECIFIED` specified, all devices are returned.", + "type": "string" + }, + "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" + }, + "parent": { + "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/[^/]+/groups/[^/]+$", + "location": "path" + }, + "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" + }, + "deviceNumIds": { + "repeated": true, + "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" + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/groups/{groupsId}/devices", + "path": "v1/{+parent}/devices", + "id": "cloudiot.projects.locations.groups.devices.list" + } + } + } + } + } } } - }, - "id": "ListDevicesResponse" + } + } + }, + "parameters": { + "upload_protocol": { + "location": "query", + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "type": "string" }, - "HttpConfig": { - "description": "The configuration of the HTTP bridge for a device registry.", - "type": "object", - "properties": { - "httpEnabledState": { - "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." - ], - "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" - } - }, - "id": "HttpConfig" + "prettyPrint": { + "location": "query", + "description": "Returns response with indentations and line breaks.", + "type": "boolean", + "default": "true" }, - "DeviceCredential": { - "id": "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" - } - } + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string", + "location": "query" }, - "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", - "type": "string" - }, - "cloudUpdateTime": { - "description": "[Output only] The time at which this configuration version was updated in\nCloud IoT Core. This timestamp is set by the server.", - "format": "google-datetime", - "type": "string" - }, - "deviceAckTime": { - "description": "[Output only] The time at which Cloud IoT Core received the\nacknowledgment from the device, indicating that the device has received\nthis configuration version. If this field is not present, the device has\nnot yet acknowledged that it received this version. Note that when\nthe config was sent to the device, many config versions may have been\navailable in Cloud IoT Core while the device was disconnected, and on\nconnection, only the latest version is sent to the device. Some\nversions may never be sent to the device, and therefore are never\nacknowledged. This timestamp is set by Cloud IoT Core.", - "format": "google-datetime", - "type": "string" - }, - "binaryData": { - "description": "The device configuration data.", - "format": "byte", - "type": "string" - } - }, - "id": "DeviceConfig", - "description": "The device configuration. Eventually delivered to devices.", - "type": "object" + "fields": { + "type": "string", + "location": "query", + "description": "Selector specifying which fields to include in a partial response." }, - "MqttConfig": { - "id": "MqttConfig", - "description": "The configuration of MQTT for a device registry.", - "type": "object", - "properties": { - "mqttEnabledState": { - "enumDescriptions": [ - "No MQTT state specified. If not specified, MQTT will be enabled by default.", - "Enables a MQTT connection.", - "Disables a MQTT connection." - ], - "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.", - "type": "string" - } - } + "callback": { + "location": "query", + "description": "JSONP", + "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" - }, - "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" + "$.xgafv": { + "enum": [ + "1", + "2" + ], + "description": "V1 error format.", + "type": "string", + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query" }, - "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` .\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" + "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" + ] }, - "ModifyCloudToDeviceConfigRequest": { - "description": "Request for `ModifyCloudToDeviceConfig`.", - "type": "object", - "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" - } - }, - "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 Iot", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloudiot": { - "description": "Register and manage devices in the Google Cloud IoT service" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } + "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": { + "location": "query", + "description": "OAuth bearer token.", + "type": "string" + }, + "oauth_token": { + "location": "query", + "description": "OAuth 2.0 token for the current user.", + "type": "string" } - }, - "rootUrl": "https://cloudiot.googleapis.com/", - "ownerDomain": "google.com", - "name": "cloudiot", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Cloud IoT API" + } } diff --git a/DiscoveryJson/cloudkms_v1.json b/DiscoveryJson/cloudkms_v1.json index 242cb064ec..2ad5c0ede5 100644 --- a/DiscoveryJson/cloudkms_v1.json +++ b/DiscoveryJson/cloudkms_v1.json @@ -1,20 +1,41 @@ { + "version_module": true, "schemas": { - "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.", + "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\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.", "type": "object", "properties": { - "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", + "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.", + "type": "array", + "items": { + "$ref": "AuditLogConfig" + } + } + } + }, + "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", @@ -23,14 +44,7 @@ "DESTROY_SCHEDULED" ], "description": "The current state of the CryptoKeyVersion.", - "type": "string", - "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" }, "name": { "description": "Output only. The resource name for this CryptoKeyVersion in the format\n`projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`.", @@ -40,6 +54,11 @@ "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" @@ -54,13 +73,14 @@ "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." + "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" }, "DecryptRequest": { + "id": "DecryptRequest", "description": "Request message for KeyManagementService.Decrypt.", "type": "object", "properties": { @@ -74,10 +94,11 @@ "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` .\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", @@ -91,9 +112,7 @@ "type": "string" } }, - "id": "Binding", - "description": "Associates `members` with a `role`.", - "type": "object" + "id": "Binding" }, "EncryptRequest": { "description": "Request message for KeyManagementService.Encrypt.", @@ -116,6 +135,13 @@ "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" @@ -124,21 +150,22 @@ "description": "The total number of CryptoKeyVersions that matched the\nquery.", "format": "int32", "type": "integer" - }, - "cryptoKeyVersions": { - "description": "The list of CryptoKeyVersions.", - "type": "array", - "items": { - "$ref": "CryptoKeyVersion" - } } }, "id": "ListCryptoKeyVersionsResponse" }, "Location": { + "id": "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" @@ -152,31 +179,20 @@ "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" - }, - "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" + } }, "ListCryptoKeysResponse": { + "id": "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", @@ -188,11 +204,15 @@ "description": "The total number of CryptoKeys that matched the query.", "format": "int32", "type": "integer" + }, + "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" } - }, - "id": "ListCryptoKeysResponse" + } }, "TestIamPermissionsResponse": { + "id": "TestIamPermissionsResponse", "description": "Response message for `TestIamPermissions` method.", "type": "object", "properties": { @@ -203,8 +223,7 @@ "type": "string" } } - }, - "id": "TestIamPermissionsResponse" + } }, "DestroyCryptoKeyVersionRequest": { "description": "Request message for KeyManagementService.DestroyCryptoKeyVersion.", @@ -216,6 +235,13 @@ "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", @@ -231,13 +257,6 @@ "DATA_WRITE", "DATA_READ" ] - }, - "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" @@ -246,35 +265,23 @@ "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": { - "enumDescriptions": [ - "Not specified.", - "CryptoKeys with this purpose may be used with\nEncrypt and\nDecrypt." - ], - "enum": [ - "CRYPTO_KEY_PURPOSE_UNSPECIFIED", - "ENCRYPT_DECRYPT" - ], - "description": "The immutable purpose of this CryptoKey. Currently, the only acceptable\npurpose is ENCRYPT_DECRYPT.", - "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" }, - "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" }, + "labels": { + "description": "Labels with user-defined metadata. For more information, see\n[Labeling Keys](/kms/docs/labeling-keys).", + "type": "object", + "additionalProperties": { + "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", @@ -287,11 +294,25 @@ "name": { "description": "Output only. The resource name for this CryptoKey in the format\n`projects/*/locations/*/keyRings/*/cryptoKeys/*`.", "type": "string" + }, + "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" + ] } }, "id": "CryptoKey" }, "DecryptResponse": { + "description": "Response message for KeyManagementService.Decrypt.", + "type": "object", "properties": { "plaintext": { "description": "The decrypted data originally supplied in EncryptRequest.plaintext.", @@ -299,11 +320,10 @@ "type": "string" } }, - "id": "DecryptResponse", - "description": "Response message for KeyManagementService.Decrypt.", - "type": "object" + "id": "DecryptResponse" }, "TestIamPermissionsRequest": { + "id": "TestIamPermissionsRequest", "description": "Request message for `TestIamPermissions` method.", "type": "object", "properties": { @@ -314,42 +334,44 @@ "type": "string" } } - }, - "id": "TestIamPermissionsRequest" + } }, "EncryptResponse": { "description": "Response message for KeyManagementService.Encrypt.", "type": "object", "properties": { - "name": { - "description": "The resource name of the CryptoKeyVersion used in encryption.", - "type": "string" - }, "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": { + "id": "KeyRing", "description": "A KeyRing is a toplevel logical grouping of CryptoKeys.", "type": "object", "properties": { + "name": { + "description": "Output only. The resource name for the KeyRing in the format\n`projects/*/locations/*/keyRings/*`.", + "type": "string" + }, "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": { + "id": "ListLocationsResponse", + "description": "The response message for Locations.ListLocations.", + "type": "object", "properties": { "nextPageToken": { "description": "The standard List next-page token.", @@ -362,12 +384,12 @@ "$ref": "Location" } } - }, - "id": "ListLocationsResponse", - "description": "The response message for Locations.ListLocations.", - "type": "object" + } }, "Policy": { + "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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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.", @@ -393,10 +415,7 @@ "$ref": "Binding" } } - }, - "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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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" + } }, "UpdateCryptoKeyPrimaryVersionRequest": { "description": "Request message for KeyManagementService.UpdateCryptoKeyPrimaryVersion.", @@ -410,10 +429,10 @@ "id": "UpdateCryptoKeyPrimaryVersionRequest" }, "RestoreCryptoKeyVersionRequest": { + "id": "RestoreCryptoKeyVersionRequest", "description": "Request message for KeyManagementService.RestoreCryptoKeyVersion.", "type": "object", - "properties": {}, - "id": "RestoreCryptoKeyVersionRequest" + "properties": {} }, "ListKeyRingsResponse": { "description": "Response message for KeyManagementService.ListKeyRings.", @@ -437,30 +456,12 @@ } }, "id": "ListKeyRingsResponse" - }, - "AuditConfig": { - "properties": { - "auditLogConfigs": { - "description": "The configuration for logging of each type of permission.", - "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", - "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.", - "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" + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" }, "canonicalName": "Cloud KMS", "auth": { @@ -485,9 +486,6 @@ "locations": { "methods": { "list": { - "path": "v1/{+name}/locations", - "id": "cloudkms.projects.locations.list", - "description": "Lists information about the supported locations for this service.", "response": { "$ref": "ListLocationsResponse" }, @@ -495,66 +493,72 @@ "name" ], "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { - "filter": { - "location": "query", - "description": "The standard list filter.", - "type": "string" - }, "name": { - "location": "path", "description": "The resource that owns the locations collection, if applicable.", "required": true, "type": "string", - "pattern": "^projects/[^/]+$" + "pattern": "^projects/[^/]+$", + "location": "path" }, "pageToken": { + "location": "query", "description": "The standard list page token.", - "type": "string", - "location": "query" + "type": "string" }, "pageSize": { + "location": "query", "description": "The standard list page size.", "format": "int32", - "type": "integer", + "type": "integer" + }, + "filter": { + "description": "The standard list filter.", + "type": "string", "location": "query" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations" + "flatPath": "v1/projects/{projectsId}/locations", + "path": "v1/{+name}/locations", + "id": "cloudkms.projects.locations.list", + "description": "Lists information about the supported locations for this service." }, "get": { - "httpMethod": "GET", + "description": "Gets information about a location.", "response": { "$ref": "Location" }, "parameterOrder": [ "name" ], + "httpMethod": "GET", "parameters": { "name": { - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path", "description": "Resource name for the location.", "required": true, - "type": "string" + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "flatPath": "v1/projects/{projectsId}/locations/{locationsId}", - "id": "cloudkms.projects.locations.get", "path": "v1/{+name}", - "description": "Gets information about a location." + "id": "cloudkms.projects.locations.get" } }, "resources": { "keyRings": { "methods": { "getIamPolicy": { + "path": "v1/{+resource}:getIamPolicy", + "id": "cloudkms.projects.locations.keyRings.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" }, @@ -574,88 +578,84 @@ "type": "string" } }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}:getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "id": "cloudkms.projects.locations.keyRings.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" }, "get": { "description": "Returns metadata for a given KeyRing.", - "response": { - "$ref": "KeyRing" - }, + "httpMethod": "GET", "parameterOrder": [ "name" ], - "httpMethod": "GET", + "response": { + "$ref": "KeyRing" + }, "parameters": { "name": { - "location": "path", "description": "The name of the KeyRing to get.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$" + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$", + "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}", - "path": "v1/{+name}", - "id": "cloudkms.projects.locations.keyRings.get" + "id": "cloudkms.projects.locations.keyRings.get", + "path": "v1/{+name}" }, "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" - }, "parameters": { "resource": { + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$", + "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/[^/]+/locations/[^/]+/keyRings/[^/]+$", - "location": "path" + "type": "string" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}:testIamPermissions", + "path": "v1/{+resource}:testIamPermissions", "id": "cloudkms.projects.locations.keyRings.testIamPermissions", - "path": "v1/{+resource}:testIamPermissions" - }, - "list": { - "description": "Lists KeyRings.", + "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": "ListKeyRingsResponse" + "$ref": "TestIamPermissionsResponse" }, "parameterOrder": [ - "parent" + "resource" ], + "httpMethod": "POST" + }, + "list": { + "id": "cloudkms.projects.locations.keyRings.list", + "path": "v1/{+parent}/keyRings", + "description": "Lists KeyRings.", "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "parameterOrder": [ + "parent" ], + "response": { + "$ref": "ListKeyRingsResponse" + }, "parameters": { "parent": { + "pattern": "^projects/[^/]+/locations/[^/]+$", "location": "path", "description": "Required. The resource name of the location associated with the\nKeyRings, in the format `projects/*/locations/*`.", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$" + "type": "string" }, "pageToken": { - "location": "query", "description": "Optional pagination token, returned earlier via\nListKeyRingsResponse.next_page_token.", - "type": "string" + "type": "string", + "location": "query" }, "pageSize": { "location": "query", @@ -664,80 +664,77 @@ "type": "integer" } }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings", - "path": "v1/{+parent}/keyRings", - "id": "cloudkms.projects.locations.keyRings.list" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings" }, "create": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "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" + }, + "keyRingId": { + "description": "Required. It must be unique within a location and match the regular\nexpression `[a-zA-Z0-9_-]{1,63}`", + "type": "string", + "location": "query" + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings", "path": "v1/{+parent}/keyRings", "id": "cloudkms.projects.locations.keyRings.create", - "description": "Create a new KeyRing in a given Project and Location.", "request": { "$ref": "KeyRing" }, + "description": "Create a new KeyRing in a given Project and Location.", "response": { "$ref": "KeyRing" }, "parameterOrder": [ "parent" ], - "httpMethod": "POST", + "httpMethod": "POST" + }, + "setIamPolicy": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { - "parent": { - "pattern": "^projects/[^/]+/locations/[^/]+$", + "resource": { + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$", "location": "path", - "description": "Required. The resource name of the location associated with the\nKeyRings, in the format `projects/*/locations/*`.", + "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" - }, - "keyRingId": { - "description": "Required. It must be unique within a location and match the regular\nexpression `[a-zA-Z0-9_-]{1,63}`", - "type": "string", - "location": "query" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings" - }, - "setIamPolicy": { "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}:setIamPolicy", "path": "v1/{+resource}:setIamPolicy", "id": "cloudkms.projects.locations.keyRings.setIamPolicy", - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", "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/[^/]+/keyRings/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "httpMethod": "POST" } }, "resources": { "cryptoKeys": { "methods": { "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" @@ -759,19 +756,13 @@ ], "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}:testIamPermissions", "id": "cloudkms.projects.locations.keyRings.cryptoKeys.testIamPermissions", - "path": "v1/{+resource}: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" + } }, "decrypt": { - "response": { - "$ref": "DecryptResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { "name": { "description": "Required. The resource name of the CryptoKey to use for decryption.\nThe server will choose the appropriate version.", @@ -781,25 +772,35 @@ "location": "path" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}:decrypt", "path": "v1/{+name}:decrypt", "id": "cloudkms.projects.locations.keyRings.cryptoKeys.decrypt", + "description": "Decrypts data that was protected by Encrypt.", "request": { "$ref": "DecryptRequest" }, - "description": "Decrypts data that was protected by Encrypt." + "response": { + "$ref": "DecryptResponse" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST" }, "list": { "id": "cloudkms.projects.locations.keyRings.cryptoKeys.list", "path": "v1/{+parent}/cryptoKeys", "description": "Lists CryptoKeys.", "httpMethod": "GET", - "response": { - "$ref": "ListCryptoKeysResponse" - }, "parameterOrder": [ "parent" ], + "response": { + "$ref": "ListCryptoKeysResponse" + }, "parameters": { "pageToken": { "description": "Optional pagination token, returned earlier via\nListCryptoKeysResponse.next_page_token.", @@ -813,11 +814,11 @@ "type": "integer" }, "parent": { + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$", + "location": "path", "description": "Required. The resource name of the KeyRing to list, in the format\n`projects/*/locations/*/keyRings/*`.", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$", - "location": "path" + "type": "string" } }, "scopes": [ @@ -826,6 +827,12 @@ "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys" }, "encrypt": { + "path": "v1/{+name}:encrypt", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.encrypt", + "request": { + "$ref": "EncryptRequest" + }, + "description": "Encrypts data, so that it can only be recovered by a call to Decrypt.", "response": { "$ref": "EncryptResponse" }, @@ -833,6 +840,9 @@ "name" ], "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "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.", @@ -842,29 +852,16 @@ "location": "path" } }, - "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", - "description": "Encrypts data, so that it can only be recovered by a call to Decrypt.", - "request": { - "$ref": "EncryptRequest" - } + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}:encrypt" }, "setIamPolicy": { - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "request": { - "$ref": "SetIamPolicyRequest" - }, - "response": { - "$ref": "Policy" - }, + "httpMethod": "POST", "parameterOrder": [ "resource" ], - "httpMethod": "POST", + "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.", @@ -878,14 +875,18 @@ "https://www.googleapis.com/auth/cloud-platform" ], "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}:setIamPolicy", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.setIamPolicy", "path": "v1/{+resource}:setIamPolicy", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.setIamPolicy" + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", + "request": { + "$ref": "SetIamPolicyRequest" + } }, "create": { - "description": "Create a new CryptoKey within a KeyRing.\n\nCryptoKey.purpose is required.", "request": { "$ref": "CryptoKey" }, + "description": "Create a new CryptoKey within a KeyRing.\n\nCryptoKey.purpose is required.", "response": { "$ref": "CryptoKey" }, @@ -893,13 +894,16 @@ "parent" ], "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "parent": { - "location": "path", "description": "Required. The name of the KeyRing associated with the\nCryptoKeys.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$" + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$", + "location": "path" }, "cryptoKeyId": { "description": "Required. It must be unique within a KeyRing and match the regular\nexpression `[a-zA-Z0-9_-]{1,63}`", @@ -907,9 +911,6 @@ "location": "query" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys", "path": "v1/{+parent}/cryptoKeys", "id": "cloudkms.projects.locations.keyRings.cryptoKeys.create" @@ -931,11 +932,11 @@ ], "parameters": { "name": { - "location": "path", "description": "The resource name of the CryptoKey to update.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$" + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$", + "location": "path" } }, "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}:updatePrimaryVersion", @@ -944,34 +945,30 @@ }, "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" - }, + "httpMethod": "GET", "parameterOrder": [ "resource" ], - "httpMethod": "GET", + "response": { + "$ref": "Policy" + }, "parameters": { "resource": { + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$", + "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/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$", - "location": "path" + "type": "string" } }, "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" + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.getIamPolicy", + "path": "v1/{+resource}:getIamPolicy" }, "patch": { - "request": { - "$ref": "CryptoKey" - }, - "description": "Update a CryptoKey.", "response": { "$ref": "CryptoKey" }, @@ -983,28 +980,29 @@ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "updateMask": { - "description": "Required list of fields to be updated in this request.", - "format": "google-fieldmask", - "type": "string", - "location": "query" - }, "name": { "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$", "location": "path", "description": "Output only. The resource name for this CryptoKey in the format\n`projects/*/locations/*/keyRings/*/cryptoKeys/*`.", "required": true, "type": "string" + }, + "updateMask": { + "location": "query", + "description": "Required list of fields to be updated in this request.", + "format": "google-fieldmask", + "type": "string" } }, "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}", "path": "v1/{+name}", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.patch" + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.patch", + "request": { + "$ref": "CryptoKey" + }, + "description": "Update a CryptoKey." }, "get": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}", - "path": "v1/{+name}", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.get", "description": "Returns metadata for a given CryptoKey, as well as its\nprimary CryptoKeyVersion.", "response": { "$ref": "CryptoKey" @@ -1024,80 +1022,37 @@ "required": true, "type": "string" } - } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}", + "path": "v1/{+name}", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.get" } }, "resources": { "cryptoKeyVersions": { "methods": { - "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.", - "response": { - "$ref": "CryptoKeyVersion" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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 CryptoKeyVersion in the format\n`projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+/cryptoKeyVersions/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions/{cryptoKeyVersionsId}", - "path": "v1/{+name}", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.patch" - }, - "get": { - "description": "Returns metadata for a given CryptoKeyVersion.", + "list": { + "path": "v1/{+parent}/cryptoKeyVersions", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.list", + "description": "Lists CryptoKeyVersions.", "response": { - "$ref": "CryptoKeyVersion" + "$ref": "ListCryptoKeyVersionsResponse" }, "parameterOrder": [ - "name" + "parent" ], "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "name": { + "parent": { + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$", "location": "path", - "description": "The name of the CryptoKeyVersion to get.", + "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/[^/]+/cryptoKeyVersions/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions/{cryptoKeyVersionsId}", - "path": "v1/{+name}", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.get" - }, - "list": { - "response": { - "$ref": "ListCryptoKeyVersionsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { + "type": "string" + }, "pageToken": { "description": "Optional pagination token, returned earlier via\nListCryptoKeyVersionsResponse.next_page_token.", "type": "string", @@ -1108,28 +1063,15 @@ "format": "int32", "type": "integer", "location": "query" - }, - "parent": { - "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/[^/]+$", - "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions", - "path": "v1/{+parent}/cryptoKeyVersions", - "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.list", - "description": "Lists CryptoKeyVersions." + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions" }, "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" }, + "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.", "response": { "$ref": "CryptoKeyVersion" }, @@ -1137,27 +1079,23 @@ "parent" ], "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "parent": { - "location": "path", "description": "Required. The name of the CryptoKey associated with\nthe CryptoKeyVersions.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$" + "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}/cryptoKeyVersions", "path": "v1/{+parent}/cryptoKeyVersions", "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.create" }, "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.", - "request": { - "$ref": "DestroyCryptoKeyVersionRequest" - }, "httpMethod": "POST", "parameterOrder": [ "name" @@ -1167,11 +1105,11 @@ }, "parameters": { "name": { + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+/cryptoKeyVersions/[^/]+$", + "location": "path", "description": "The resource name of the CryptoKeyVersion to destroy.", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+/cryptoKeyVersions/[^/]+$", - "location": "path" + "type": "string" } }, "scopes": [ @@ -1179,35 +1117,98 @@ ], "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" + "path": "v1/{+name}: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.", + "request": { + "$ref": "DestroyCryptoKeyVersionRequest" + } }, "restore": { + "response": { + "$ref": "CryptoKeyVersion" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "parameters": { + "name": { + "description": "The resource name of the CryptoKeyVersion to restore.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+/cryptoKeyVersions/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions/{cryptoKeyVersionsId}:restore", "path": "v1/{+name}:restore", "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.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.", "request": { "$ref": "RestoreCryptoKeyVersionRequest" + } + }, + "get": { + "httpMethod": "GET", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "CryptoKeyVersion" }, - "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.", + "parameters": { + "name": { + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+/cryptoKeyVersions/[^/]+$", + "location": "path", + "description": "The name of the CryptoKeyVersion to get.", + "required": true, + "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.get", + "path": "v1/{+name}", + "description": "Returns metadata for a given CryptoKeyVersion." + }, + "patch": { + "path": "v1/{+name}", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.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.", "response": { "$ref": "CryptoKeyVersion" }, "parameterOrder": [ "name" ], - "httpMethod": "POST", + "httpMethod": "PATCH", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { + "updateMask": { + "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 CryptoKeyVersion to restore.", - "required": true, - "type": "string", "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+/cryptoKeyVersions/[^/]+$", - "location": "path" + "location": "path", + "description": "Output only. The resource name for this CryptoKeyVersion in the format\n`projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`.", + "required": true, + "type": "string" } - } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions/{cryptoKeyVersionsId}" } } } @@ -1221,7 +1222,30 @@ } }, "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": { + "description": "V1 error format.", + "type": "string", "enumDescriptions": [ "v1 error format", "v2 error format" @@ -1230,9 +1254,7 @@ "enum": [ "1", "2" - ], - "description": "V1 error format.", - "type": "string" + ] }, "callback": { "description": "JSONP", @@ -1240,11 +1262,6 @@ "location": "query" }, "alt": { - "enum": [ - "json", - "media", - "proto" - ], "type": "string", "enumDescriptions": [ "Responses with Content-Type of application/json", @@ -1253,28 +1270,33 @@ ], "location": "query", "description": "Data format for response.", - "default": "json" + "default": "json", + "enum": [ + "json", + "media", + "proto" + ] }, - "access_token": { + "key": { "location": "query", - "description": "OAuth access token.", + "description": "API key. 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" }, - "key": { + "access_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.", + "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", - "location": "query" + "type": "string" }, "pp": { - "location": "query", "description": "Pretty-print response.", "type": "boolean", - "default": "true" + "default": "true", + "location": "query" }, "oauth_token": { "description": "OAuth 2.0 token for the current user.", @@ -1285,38 +1307,16 @@ "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": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" } }, "version": "v1", "baseUrl": "https://cloudkms.googleapis.com/", - "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": "", + "description": "Manages encryption for your cloud services the same way you do on-premises. You can generate, use, rotate, and destroy AES256 encryption keys.", + "kind": "discovery#restDescription", "basePath": "", - "revision": "20180504", "documentationLink": "https://cloud.google.com/kms/", "id": "cloudkms:v1", - "discoveryVersion": "v1", - "version_module": true + "revision": "20180504", + "discoveryVersion": "v1" } diff --git a/DiscoveryJson/cloudresourcemanager_v1.json b/DiscoveryJson/cloudresourcemanager_v1.json index c29e712491..c57a00a568 100644 --- a/DiscoveryJson/cloudresourcemanager_v1.json +++ b/DiscoveryJson/cloudresourcemanager_v1.json @@ -1,942 +1,749 @@ { - "discoveryVersion": "v1", - "schemas": { - "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": { - "type": "integer", - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32" + "ownerName": "Google", + "resources": { + "liens": { + "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`.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "parameters": { + "name": { + "description": "The name/identifier of the Lien to delete.", + "required": true, + "type": "string", + "pattern": "^liens/.+$", + "location": "path" + } + }, + "flatPath": "v1/liens/{liensId}", + "path": "v1/{+name}", + "id": "cloudresourcemanager.liens.delete" }, - "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" - }, - "ListLiensResponse": { - "description": "The response message for Liens.ListLiens.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no more\nresults in the list.", - "type": "string" + "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" + }, + "parameterOrder": [], + "httpMethod": "GET", + "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. 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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "flatPath": "v1/liens", + "path": "v1/liens", + "id": "cloudresourcemanager.liens.list" }, - "liens": { - "description": "A list of Liens.", - "type": "array", - "items": { + "create": { + "response": { "$ref": "Lien" - } - } - }, - "id": "ListLiensResponse" - }, - "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", - "properties": { - "displayName": { - "description": "The human readable name.\n\nMutable.", - "type": "string" - }, - "description": { - "type": "string", - "description": "Detailed description of what this `Constraint` controls as well as how and\nwhere it is enforced.\n\nMutable." - }, - "booleanConstraint": { - "$ref": "BooleanConstraint", - "description": "Defines this constraint as being a BooleanConstraint." - }, - "constraintDefault": { - "enum": [ - "CONSTRAINT_DEFAULT_UNSPECIFIED", - "ALLOW", - "DENY" + }, + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "description": "The evaluation behavior of this constraint in the absense of 'Policy'.", - "type": "string", - "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." - ] - }, - "name": { - "type": "string", - "description": "Immutable value, required to globally be unique. For example,\n`constraints/serviceuser.services`" - }, - "listConstraint": { - "description": "Defines this constraint as being a ListConstraint.", - "$ref": "ListConstraint" - }, - "version": { - "description": "Version of the `Constraint`. Default version is 0;", - "format": "int32", - "type": "integer" + "parameters": {}, + "flatPath": "v1/liens", + "path": "v1/liens", + "id": "cloudresourcemanager.liens.create", + "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." } } }, - "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` .\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" - }, - "GetOrgPolicyRequest": { - "id": "GetOrgPolicyRequest", - "description": "The request sent to the GetOrgPolicy method.", - "type": "object", - "properties": { - "constraint": { - "description": "Name of the `Constraint` to get the `Policy`.", - "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.", + "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", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "flatPath": "v1/operations/{operationsId}", + "id": "cloudresourcemanager.operations.get", + "path": "v1/{+name}" } } }, - "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", - "properties": {}, - "id": "RestoreDefault" - }, - "UndeleteProjectRequest": { - "description": "The request sent to the UndeleteProject\nmethod.", - "type": "object", - "properties": {}, - "id": "UndeleteProjectRequest" - }, - "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", - "type": "string" + "folders": { + "methods": { + "getEffectiveOrgPolicy": { + "flatPath": "v1/folders/{foldersId}:getEffectiveOrgPolicy", + "path": "v1/{+resource}:getEffectiveOrgPolicy", + "id": "cloudresourcemanager.folders.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.", + "request": { + "$ref": "GetEffectiveOrgPolicyRequest" + }, + "response": { + "$ref": "OrgPolicy" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", + "parameters": { + "resource": { + "location": "path", + "description": "The name of the resource to start computing the effective `Policy`.", + "required": true, + "type": "string", + "pattern": "^folders/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] }, - "constraint": { - "description": "Name of the `Constraint` of the `Policy` to clear.", - "type": "string" - } - }, - "id": "ClearOrgPolicyRequest", - "description": "The request sent to the ClearOrgPolicy method." - }, - "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" - }, - "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" - } - }, - "id": "ProjectCreationStatus" - }, - "BooleanConstraint": { - "properties": {}, - "id": "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" - }, - "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": { - "description": "Request message for `GetIamPolicy` method.", - "type": "object", - "properties": {}, - "id": "GetIamPolicyRequest" - }, - "OrganizationOwner": { - "type": "object", - "properties": { - "directoryCustomerId": { - "description": "The G Suite customer id used in the Directory API.", - "type": "string" - } - }, - "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." - }, - "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": { - "type": "array", - "items": { - "$ref": "Project" + "clearOrgPolicy": { + "parameters": { + "resource": { + "required": true, + "type": "string", + "pattern": "^folders/[^/]+$", + "location": "path", + "description": "Name of the resource for the `Policy` to clear." + } }, - "description": "The list of Projects that matched the list filter. This list can\nbe paginated." - } - }, - "id": "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" - }, - "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": { - "createTime": { - "description": "Creation time.\n\nRead-only.", - "format": "google-datetime", - "type": "string" - }, - "labels": { - "additionalProperties": { - "type": "string" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/folders/{foldersId}:clearOrgPolicy", + "path": "v1/{+resource}:clearOrgPolicy", + "id": "cloudresourcemanager.folders.clearOrgPolicy", + "description": "Clears a `Policy` from a resource.", + "request": { + "$ref": "ClearOrgPolicyRequest" }, - "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" + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST" }, - "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" + "setOrgPolicy": { + "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" + }, + "response": { + "$ref": "OrgPolicy" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", + "parameters": { + "resource": { + "location": "path", + "description": "Resource name of the resource to attach the `Policy`.", + "required": true, + "type": "string", + "pattern": "^folders/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, - "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." + "listAvailableOrgPolicyConstraints": { + "response": { + "$ref": "ListAvailableOrgPolicyConstraintsResponse" + }, + "parameterOrder": [ + "resource" ], - "enum": [ - "LIFECYCLE_STATE_UNSPECIFIED", - "ACTIVE", - "DELETE_REQUESTED", - "DELETE_IN_PROGRESS" + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "description": "The Project lifecycle state.\n\nRead-only.", - "type": "string" + "parameters": { + "resource": { + "pattern": "^folders/[^/]+$", + "location": "path", + "description": "Name of the resource to list `Constraints` for.", + "required": true, + "type": "string" + } + }, + "flatPath": "v1/folders/{foldersId}:listAvailableOrgPolicyConstraints", + "path": "v1/{+resource}:listAvailableOrgPolicyConstraints", + "id": "cloudresourcemanager.folders.listAvailableOrgPolicyConstraints", + "request": { + "$ref": "ListAvailableOrgPolicyConstraintsRequest" + }, + "description": "Lists `Constraints` that could be applied on the specified resource." }, - "projectNumber": { - "type": "string", - "description": "The number uniquely identifying the project.\n\nExample: \u003ccode\u003e415104041262\u003c/code\u003e\nRead-only.", - "format": "int64" + "listOrgPolicies": { + "description": "Lists all the `Policies` set for a particular resource.", + "request": { + "$ref": "ListOrgPoliciesRequest" + }, + "response": { + "$ref": "ListOrgPoliciesResponse" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", + "parameters": { + "resource": { + "pattern": "^folders/[^/]+$", + "location": "path", + "description": "Name of the resource to list Policies for.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "flatPath": "v1/folders/{foldersId}:listOrgPolicies", + "path": "v1/{+resource}:listOrgPolicies", + "id": "cloudresourcemanager.folders.listOrgPolicies" }, - "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" - } - }, - "id": "Project" - }, - "ListOrgPoliciesResponse": { - "properties": { - "policies": { - "type": "array", - "items": { + "getOrgPolicy": { + "parameters": { + "resource": { + "required": true, + "type": "string", + "pattern": "^folders/[^/]+$", + "location": "path", + "description": "Name of the resource the `Policy` is set on." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "flatPath": "v1/folders/{foldersId}: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" }, - "description": "The `Policies` that are set on the resource. It will be empty if no\n`Policies` are set." - }, - "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" + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST" } - }, - "id": "ListOrgPoliciesResponse", - "description": "The response returned from the ListOrgPolicies method. It will be empty\nif no `Policies` are set on the resource.", - "type": "object" + } }, - "SearchOrganizationsResponse": { - "description": "The response returned from the `SearchOrganizations` method.", - "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" + "projects": { + "methods": { + "list": { + "response": { + "$ref": "ListProjectsResponse" + }, + "parameterOrder": [], + "httpMethod": "GET", + "parameters": { + "pageToken": { + "description": "A pagination token returned from a previous call to ListProjects\nthat indicates from where listing should continue.\n\nOptional.", + "type": "string", + "location": "query" + }, + "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" + }, + "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" + } + }, + "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." }, - "organizations": { - "description": "The list of Organizations that matched the search query, possibly\npaginated.", - "type": "array", - "items": { - "$ref": "Organization" - } - } - }, - "id": "SearchOrganizationsResponse" - }, - "FolderOperationError": { - "type": "object", - "properties": { - "errorMessageId": { - "type": "string", - "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." + "setOrgPolicy": { + "response": { + "$ref": "OrgPolicy" + }, + "parameterOrder": [ + "resource" ], - "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" + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "description": "The type of operation error experienced." - } - }, - "id": "FolderOperationError", - "description": "A classification of the Folder Operation error." - }, - "BooleanPolicy": { - "id": "BooleanPolicy", - "description": "Used in `policy_type` to specify how `boolean_policy` will behave at this\nresource.", - "type": "object", - "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" - } - } - }, - "OrgPolicy": { - "description": "Defines a Cloud Organization `Policy` which is used to specify `Constraints`\nfor configurations of Cloud Platform resources.", - "type": "object", - "properties": { - "listPolicy": { - "$ref": "ListPolicy", - "description": "List of values either allowed or disallowed." - }, - "etag": { - "type": "string", - "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" - }, - "booleanPolicy": { - "$ref": "BooleanPolicy", - "description": "For boolean `Constraints`, whether to enforce the `Constraint` or not." + "parameters": { + "resource": { + "description": "Resource name of the resource to attach the `Policy`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/projects/{projectsId}:setOrgPolicy", + "path": "v1/{+resource}:setOrgPolicy", + "id": "cloudresourcemanager.projects.setOrgPolicy", + "request": { + "$ref": "SetOrgPolicyRequest" + }, + "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`." }, - "constraint": { - "description": "The name of the `Constraint` the `Policy` is configuring, for example,\n`constraints/serviceuser.services`.\n\nImmutable after creation.", - "type": "string" + "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.", + "request": { + "$ref": "Project" + }, + "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" }, - "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" + "listOrgPolicies": { + "id": "cloudresourcemanager.projects.listOrgPolicies", + "path": "v1/{+resource}:listOrgPolicies", + "description": "Lists all the `Policies` set for a particular resource.", + "request": { + "$ref": "ListOrgPoliciesRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "resource" + ], + "response": { + "$ref": "ListOrgPoliciesResponse" + }, + "parameters": { + "resource": { + "location": "path", + "description": "Name of the resource to list Policies for.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "flatPath": "v1/projects/{projectsId}:listOrgPolicies" }, - "version": { - "description": "Version of the `Policy`. Default version is 0;", - "format": "int32", - "type": "integer" + "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.", + "httpMethod": "GET", + "response": { + "$ref": "Project" + }, + "parameterOrder": [ + "projectId" + ], + "parameters": { + "projectId": { + "required": true, + "type": "string", + "location": "path", + "description": "The Project ID (for example, `my-project-123`).\n\nRequired." + } + }, + "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}" }, - "restoreDefault": { - "$ref": "RestoreDefault", - "description": "Restores the default behavior of the constraint; independent of\n`Constraint` type." - } - }, - "id": "OrgPolicy" - }, - "Lien": { - "description": "A Lien represents an encumbrance on the actions that can be performed on a\nresource.", - "type": "object", - "properties": { - "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" + "getAncestry": { + "flatPath": "v1/projects/{projectId}:getAncestry", + "id": "cloudresourcemanager.projects.getAncestry", + "path": "v1/projects/{projectId}: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.", + "httpMethod": "POST", + "parameterOrder": [ + "projectId" + ], + "response": { + "$ref": "GetAncestryResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "parameters": { + "projectId": { + "description": "The Project ID (for example, `my-project-123`).\n\nRequired.", + "required": true, + "type": "string", + "location": "path" + } } }, - "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", - "type": "string" - }, - "name": { - "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" - } - }, - "id": "Lien" - }, - "Ancestor": { - "properties": { - "resourceId": { - "description": "Resource id of the ancestor.", - "$ref": "ResourceId" - } - }, - "id": "Ancestor", - "description": "Identifying information for a single ancestor of a project.", - "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`.", - "type": "object", - "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" - } - }, - "id": "ListConstraint" - }, - "SetOrgPolicyRequest": { - "type": "object", - "properties": { - "policy": { - "$ref": "OrgPolicy", - "description": "`Policy` to set on the resource." - } - }, - "id": "SetOrgPolicyRequest", - "description": "The request sent to the SetOrgPolicyRequest method." - }, - "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 `{}`." - }, - "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": { - "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": { - "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." + "testIamPermissions": { + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "parameterOrder": [ + "resource" ], - "enum": [ - "LIFECYCLE_STATE_UNSPECIFIED", - "ACTIVE", - "DELETE_REQUESTED" - ] - }, - "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 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" - }, - "creationTime": { - "description": "Timestamp when the Organization was created. Assigned by the server.\n@OutputOnly", - "format": "google-datetime", - "type": "string" - } - } - }, - "ListAvailableOrgPolicyConstraintsResponse": { - "type": "object", - "properties": { - "nextPageToken": { - "description": "Page token used to retrieve the next page. This is currently not used.", - "type": "string" + "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", + "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/projects/{resource}:testIamPermissions", + "path": "v1/projects/{resource}:testIamPermissions", + "id": "cloudresourcemanager.projects.testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "description": "Returns permissions that a caller has on the specified Project.\n\nThere are no permissions required for making this API call." }, - "constraints": { - "description": "The collection of constraints that are settable on the request resource.", - "type": "array", - "items": { - "$ref": "Constraint" - } - } - }, - "id": "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)." - }, - "ListPolicy": { - "type": "object", - "properties": { - "allValues": { - "enum": [ - "ALL_VALUES_UNSPECIFIED", - "ALLOW", - "DENY" + "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.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "projectId" ], - "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." - ] + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "projectId": { + "location": "path", + "description": "The Project ID (for example, `foo-bar-123`).\n\nRequired.", + "required": true, + "type": "string" + } + }, + "flatPath": "v1/projects/{projectId}", + "path": "v1/projects/{projectId}", + "id": "cloudresourcemanager.projects.delete" }, - "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" + "clearOrgPolicy": { + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", + "parameters": { + "resource": { + "location": "path", + "description": "Name of the resource for the `Policy` to clear.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}:clearOrgPolicy", + "path": "v1/{+resource}:clearOrgPolicy", + "id": "cloudresourcemanager.projects.clearOrgPolicy", + "description": "Clears a `Policy` from a resource.", + "request": { + "$ref": "ClearOrgPolicyRequest" } }, - "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" + "setIamPolicy": { + "flatPath": "v1/projects/{resource}:setIamPolicy", + "path": "v1/projects/{resource}:setIamPolicy", + "id": "cloudresourcemanager.projects.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+ You can only grant ownership of a project to a member by using the\nGCP Console. Inviting a member will deliver an invitation email that\nthey must accept. An invitation email is not generated if you are\ngranting a role other than owner, or if both the member you are inviting\nand the project are part of your organization.\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", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", + "parameters": { + "resource": { + "required": true, + "type": "string", + "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" + ] }, - "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" + "listAvailableOrgPolicyConstraints": { + "request": { + "$ref": "ListAvailableOrgPolicyConstraintsRequest" + }, + "description": "Lists `Constraints` that could be applied on the specified resource.", + "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": { + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$", + "location": "path", + "description": "Name of the resource to list `Constraints` for." + } + }, + "flatPath": "v1/projects/{projectsId}:listAvailableOrgPolicyConstraints", + "path": "v1/{+resource}:listAvailableOrgPolicyConstraints", + "id": "cloudresourcemanager.projects.listAvailableOrgPolicyConstraints" }, - "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" - } - } - }, - "id": "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." - }, - "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..", - "type": "array", - "items": { - "$ref": "Ancestor" - } - } - }, - "id": "GetAncestryResponse", - "description": "Response from the GetAncestry method.", - "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", - "properties": { - "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" + "getIamPolicy": { + "response": { + "$ref": "Policy" + }, + "parameterOrder": [ + "resource" ], - "enum": [ - "LOG_TYPE_UNSPECIFIED", - "ADMIN_READ", - "DATA_WRITE", - "DATA_READ" - ] + "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": "v1/projects/{resource}:getIamPolicy", + "path": "v1/projects/{resource}:getIamPolicy", + "id": "cloudresourcemanager.projects.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)." }, - "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 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" + "getOrgPolicy": { + "flatPath": "v1/projects/{projectsId}:getOrgPolicy", + "id": "cloudresourcemanager.projects.getOrgPolicy", + "path": "v1/{+resource}: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" + }, + "httpMethod": "POST", + "parameterOrder": [ + "resource" + ], + "response": { + "$ref": "OrgPolicy" + }, + "parameters": { + "resource": { + "location": "path", + "description": "Name of the resource the `Policy` is set on.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] }, - "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" + "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.", + "request": { + "$ref": "GetEffectiveOrgPolicyRequest" + }, + "response": { + "$ref": "OrgPolicy" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", + "parameters": { + "resource": { + "description": "The name of the resource to start computing the effective `Policy`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "flatPath": "v1/projects/{projectsId}:getEffectiveOrgPolicy", + "path": "v1/{+resource}:getEffectiveOrgPolicy", + "id": "cloudresourcemanager.projects.getEffectiveOrgPolicy" }, - "pageSize": { - "description": "The maximum number of Organizations to return in the response.\nThis field is optional.", - "format": "int32", - "type": "integer" - } - }, - "id": "SearchOrganizationsRequest" - }, - "GetAncestryRequest": { - "description": "The request sent to the\nGetAncestry\nmethod.", - "type": "object", - "properties": {}, - "id": "GetAncestryRequest" - }, - "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" - }, - "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" + "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" + }, + "httpMethod": "POST", + "parameterOrder": [ + "projectId" + ], + "response": { + "$ref": "Empty" + }, + "parameters": { + "projectId": { + "description": "The project ID (for example, `foo-bar-123`).\n\nRequired.", + "required": true, + "type": "string", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}:undelete", + "id": "cloudresourcemanager.projects.undelete", + "path": "v1/projects/{projectId}:undelete" }, - "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" + "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", + "parameters": { + "projectId": { + "description": "The project ID (for example, `my-project-123`).\n\nRequired.", + "required": true, + "type": "string", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}", + "path": "v1/projects/{projectId}", + "id": "cloudresourcemanager.projects.update" } } }, - "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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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" - }, - "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" - }, - "FolderOperation": { - "description": "Metadata describing a long running folder operation", - "type": "object", - "properties": { - "operationType": { - "enumDescriptions": [ - "Operation type not specified.", - "A create folder operation.", - "A move folder operation." - ], - "enum": [ - "OPERATION_TYPE_UNSPECIFIED", - "CREATE", - "MOVE" - ], - "description": "The type of this operation.", - "type": "string" - }, - "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" - }, - "ResourceId": { - "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", - "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" - }, - "GetEffectiveOrgPolicyRequest": { - "id": "GetEffectiveOrgPolicyRequest", - "description": "The request sent to the GetEffectiveOrgPolicy method.", - "type": "object", - "properties": { - "constraint": { - "description": "The name of the `Constraint` to compute the effective `Policy`.", - "type": "string" - } - } - }, - "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": { - "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.", - "type": "object", - "properties": { - "auditLogConfigs": { - "description": "The configuration for logging of each type of permission.", - "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" - }, - "Operation": { - "id": "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": { - "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" - }, - "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" - } - } - } - }, - "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 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": "Cloud Resource Manager API", - "ownerName": "Google", - "resources": { - "folders": { + "organizations": { "methods": { - "clearOrgPolicy": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "location": "path", - "description": "Name of the resource for the `Policy` to clear.", - "required": true, - "type": "string", - "pattern": "^folders/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/folders/{foldersId}:clearOrgPolicy", - "path": "v1/{+resource}:clearOrgPolicy", - "id": "cloudresourcemanager.folders.clearOrgPolicy", - "description": "Clears a `Policy` from a resource.", - "request": { - "$ref": "ClearOrgPolicyRequest" - } - }, - "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`.", + "listAvailableOrgPolicyConstraints": { "request": { - "$ref": "SetOrgPolicyRequest" + "$ref": "ListAvailableOrgPolicyConstraintsRequest" }, - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], + "description": "Lists `Constraints` that could be applied on the specified resource.", "response": { - "$ref": "OrgPolicy" - }, - "parameters": { - "resource": { - "description": "Resource name of the resource to attach the `Policy`.", - "required": true, - "type": "string", - "pattern": "^folders/[^/]+$", - "location": "path" - } + "$ref": "ListAvailableOrgPolicyConstraintsResponse" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/folders/{foldersId}:setOrgPolicy", - "id": "cloudresourcemanager.folders.setOrgPolicy", - "path": "v1/{+resource}:setOrgPolicy" - }, - "listAvailableOrgPolicyConstraints": { - "httpMethod": "POST", "parameterOrder": [ "resource" ], - "response": { - "$ref": "ListAvailableOrgPolicyConstraintsResponse" - }, + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" @@ -946,19 +753,17 @@ "description": "Name of the resource to list `Constraints` for.", "required": true, "type": "string", - "pattern": "^folders/[^/]+$", + "pattern": "^organizations/[^/]+$", "location": "path" } }, - "flatPath": "v1/folders/{foldersId}:listAvailableOrgPolicyConstraints", - "id": "cloudresourcemanager.folders.listAvailableOrgPolicyConstraints", + "flatPath": "v1/organizations/{organizationsId}:listAvailableOrgPolicyConstraints", "path": "v1/{+resource}:listAvailableOrgPolicyConstraints", - "request": { - "$ref": "ListAvailableOrgPolicyConstraintsRequest" - }, - "description": "Lists `Constraints` that could be applied on the specified resource." + "id": "cloudresourcemanager.organizations.listAvailableOrgPolicyConstraints" }, "listOrgPolicies": { + "path": "v1/{+resource}:listOrgPolicies", + "id": "cloudresourcemanager.organizations.listOrgPolicies", "description": "Lists all the `Policies` set for a particular resource.", "request": { "$ref": "ListOrgPoliciesRequest" @@ -972,24 +777,26 @@ "httpMethod": "POST", "parameters": { "resource": { + "location": "path", "description": "Name of the resource to list Policies for.", "required": true, "type": "string", - "pattern": "^folders/[^/]+$", - "location": "path" + "pattern": "^organizations/[^/]+$" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "flatPath": "v1/folders/{foldersId}:listOrgPolicies", - "path": "v1/{+resource}:listOrgPolicies", - "id": "cloudresourcemanager.folders.listOrgPolicies" + "flatPath": "v1/organizations/{organizationsId}:listOrgPolicies" }, - "getOrgPolicy": { + "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", "response": { - "$ref": "OrgPolicy" + "$ref": "Policy" }, "parameterOrder": [ "resource" @@ -1001,22 +808,22 @@ ], "parameters": { "resource": { - "description": "Name of the resource the `Policy` is set on.", + "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/[^/]+$", + "pattern": "^organizations/[^/]+$", "location": "path" } }, - "flatPath": "v1/folders/{foldersId}:getOrgPolicy", - "path": "v1/{+resource}:getOrgPolicy", - "id": "cloudresourcemanager.folders.getOrgPolicy", + "flatPath": "v1/organizations/{organizationsId}:getIamPolicy", + "path": "v1/{+resource}:getIamPolicy", + "id": "cloudresourcemanager.organizations.getIamPolicy" + }, + "getOrgPolicy": { "request": { "$ref": "GetOrgPolicyRequest" }, - "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." - }, - "getEffectiveOrgPolicy": { + "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.", "response": { "$ref": "OrgPolicy" }, @@ -1024,148 +831,106 @@ "resource" ], "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], "parameters": { "resource": { - "description": "The name of the resource to start computing the effective `Policy`.", + "description": "Name of the resource the `Policy` is set on.", "required": true, "type": "string", - "pattern": "^folders/[^/]+$", + "pattern": "^organizations/[^/]+$", "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/folders/{foldersId}:getEffectiveOrgPolicy", - "path": "v1/{+resource}:getEffectiveOrgPolicy", - "id": "cloudresourcemanager.folders.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}:getOrgPolicy", + "path": "v1/{+resource}:getOrgPolicy", + "id": "cloudresourcemanager.organizations.getOrgPolicy" + }, + "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": "GetEffectiveOrgPolicyRequest" - } - } - } - }, - "projects": { - "methods": { - "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.", + "$ref": "SearchOrganizationsRequest" + }, "response": { - "$ref": "Empty" + "$ref": "SearchOrganizationsResponse" }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "DELETE", + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "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, `foo-bar-123`).\n\nRequired.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{projectId}", - "path": "v1/projects/{projectId}", - "id": "cloudresourcemanager.projects.delete" + "flatPath": "v1/organizations:search", + "path": "v1/organizations:search", + "id": "cloudresourcemanager.organizations.search" }, - "clearOrgPolicy": { + "getEffectiveOrgPolicy": { "httpMethod": "POST", "parameterOrder": [ "resource" ], "response": { - "$ref": "Empty" + "$ref": "OrgPolicy" }, "parameters": { "resource": { - "description": "Name of the resource for the `Policy` to clear.", + "description": "The name of the resource to start computing the effective `Policy`.", "required": true, "type": "string", - "pattern": "^projects/[^/]+$", + "pattern": "^organizations/[^/]+$", "location": "path" } }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "flatPath": "v1/projects/{projectsId}:clearOrgPolicy", - "id": "cloudresourcemanager.projects.clearOrgPolicy", - "path": "v1/{+resource}:clearOrgPolicy", - "description": "Clears a `Policy` from a resource.", + "flatPath": "v1/organizations/{organizationsId}:getEffectiveOrgPolicy", + "id": "cloudresourcemanager.organizations.getEffectiveOrgPolicy", + "path": "v1/{+resource}: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.", "request": { - "$ref": "ClearOrgPolicyRequest" + "$ref": "GetEffectiveOrgPolicyRequest" } }, - "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+ You can only grant ownership of a project to a member by using the\nGCP Console. Inviting a member will deliver an invitation email that\nthey must accept. An invitation email is not generated if you are\ngranting a role other than owner, or if both the member you are inviting\nand the project are part of your organization.\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", - "request": { - "$ref": "SetIamPolicyRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" - }, + "get": { "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + "name": { + "description": "The resource name of the Organization to fetch, e.g. \"organizations/1234\".", "required": true, "type": "string", + "pattern": "^organizations/[^/]+$", "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{resource}:setIamPolicy", - "id": "cloudresourcemanager.projects.setIamPolicy", - "path": "v1/projects/{resource}:setIamPolicy" - }, - "listAvailableOrgPolicyConstraints": { "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 to list `Constraints` for.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}:listAvailableOrgPolicyConstraints", - "path": "v1/{+resource}:listAvailableOrgPolicyConstraints", - "id": "cloudresourcemanager.projects.listAvailableOrgPolicyConstraints", - "request": { - "$ref": "ListAvailableOrgPolicyConstraintsRequest" - }, - "description": "Lists `Constraints` that could be applied on the specified resource.", + "flatPath": "v1/organizations/{organizationsId}", + "path": "v1/{+name}", + "id": "cloudresourcemanager.organizations.get", + "description": "Fetches an Organization resource identified by the specified resource name.", "response": { - "$ref": "ListAvailableOrgPolicyConstraintsResponse" + "$ref": "Organization" }, "parameterOrder": [ - "resource" + "name" ], - "httpMethod": "POST" + "httpMethod": "GET" }, - "getIamPolicy": { - "path": "v1/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\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).", + "testIamPermissions": { + "path": "v1/{+resource}:testIamPermissions", + "id": "cloudresourcemanager.organizations.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\".\n\nThere are no permissions required for making this API call.", "request": { - "$ref": "GetIamPolicyRequest" + "$ref": "TestIamPermissionsRequest" }, "response": { - "$ref": "Policy" + "$ref": "TestIamPermissionsResponse" }, "parameterOrder": [ "resource" @@ -1173,75 +938,48 @@ "httpMethod": "POST", "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.", + "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" + "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/projects/{resource}:getIamPolicy" + "flatPath": "v1/organizations/{organizationsId}:testIamPermissions" }, - "getOrgPolicy": { + "clearOrgPolicy": { + "path": "v1/{+resource}:clearOrgPolicy", + "id": "cloudresourcemanager.organizations.clearOrgPolicy", + "description": "Clears a `Policy` from a resource.", "request": { - "$ref": "GetOrgPolicyRequest" + "$ref": "ClearOrgPolicyRequest" }, - "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.", "response": { - "$ref": "OrgPolicy" + "$ref": "Empty" }, "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": "^projects/[^/]+$", + "pattern": "^organizations/[^/]+$", "location": "path", - "description": "Name of the resource the `Policy` is set on." + "description": "Name of the resource for the `Policy` to clear.", + "required": true, + "type": "string" } }, - "flatPath": "v1/projects/{projectsId}:getOrgPolicy", - "path": "v1/{+resource}:getOrgPolicy", - "id": "cloudresourcemanager.projects.getOrgPolicy" - }, - "undelete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "parameters": { - "projectId": { - "location": "path", - "description": "The project ID (for example, `foo-bar-123`).\n\nRequired.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{projectId}:undelete", - "path": "v1/projects/{projectId}:undelete", - "id": "cloudresourcemanager.projects.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." + "flatPath": "v1/organizations/{organizationsId}:clearOrgPolicy" }, - "getEffectiveOrgPolicy": { + "setOrgPolicy": { "response": { "$ref": "OrgPolicy" }, @@ -1249,760 +987,1022 @@ "resource" ], "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], "parameters": { "resource": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "The name of the resource to start computing the effective `Policy`.", + "description": "Resource name of the resource to attach the `Policy`.", "required": true, - "type": "string" + "type": "string", + "pattern": "^organizations/[^/]+$", + "location": "path" } }, - "flatPath": "v1/projects/{projectsId}:getEffectiveOrgPolicy", - "path": "v1/{+resource}:getEffectiveOrgPolicy", - "id": "cloudresourcemanager.projects.getEffectiveOrgPolicy", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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": "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." + "$ref": "SetOrgPolicyRequest" + } }, - "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.", + "setIamPolicy": { + "flatPath": "v1/organizations/{organizationsId}:setIamPolicy", + "path": "v1/{+resource}:setIamPolicy", + "id": "cloudresourcemanager.organizations.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", "request": { - "$ref": "Project" + "$ref": "SetIamPolicyRequest" }, - "httpMethod": "PUT", - "parameterOrder": [ - "projectId" - ], "response": { - "$ref": "Project" + "$ref": "Policy" }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", "parameters": { - "projectId": { - "required": true, - "type": "string", + "resource": { + "pattern": "^organizations/[^/]+$", "location": "path", - "description": "The project ID (for example, `my-project-123`).\n\nRequired." + "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": "v1/projects/{projectId}", - "id": "cloudresourcemanager.projects.update", - "path": "v1/projects/{projectId}" - }, - "list": { - "flatPath": "v1/projects", - "id": "cloudresourcemanager.projects.list", - "path": "v1/projects", - "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.", - "httpMethod": "GET", - "parameterOrder": [], - "response": { - "$ref": "ListProjectsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "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" - }, - "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 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", - "location": "query" - } + ] + } + } + } + }, + "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" + }, + "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": { + "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" + }, + "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": { + "description": "Available 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": { + "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": { + "location": "query", + "description": "OAuth bearer token.", + "type": "string" + } + }, + "version": "v1", + "baseUrl": "https://cloudresourcemanager.googleapis.com/", + "servicePath": "", + "description": "The Google Cloud Resource Manager API provides methods for creating, reading, and updating project metadata.", + "kind": "discovery#restDescription", + "basePath": "", + "id": "cloudresourcemanager:v1", + "documentationLink": "https://cloud.google.com/resource-manager", + "revision": "20180502", + "discoveryVersion": "v1", + "schemas": { + "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" } - }, - "setOrgPolicy": { - "response": { - "$ref": "OrgPolicy" + } + }, + "id": "TestIamPermissionsResponse" + }, + "GetIamPolicyRequest": { + "description": "Request message for `GetIamPolicy` method.", + "type": "object", + "properties": {}, + "id": "GetIamPolicyRequest" + }, + "OrganizationOwner": { + "type": "object", + "properties": { + "directoryCustomerId": { + "description": "The G Suite customer id used in the Directory API.", + "type": "string" + } + }, + "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." + }, + "ListProjectsResponse": { + "id": "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": { + "type": "array", + "items": { + "$ref": "Project" }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "description": "The list of Projects that matched the list filter. This list can\nbe paginated." + }, + "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" + } + } + }, + "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": { + "lifecycleState": { + "enum": [ + "LIFECYCLE_STATE_UNSPECIFIED", + "ACTIVE", + "DELETE_REQUESTED", + "DELETE_IN_PROGRESS" ], - "parameters": { - "resource": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "Resource name of the resource to attach the `Policy`.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{projectsId}:setOrgPolicy", - "path": "v1/{+resource}:setOrgPolicy", - "id": "cloudresourcemanager.projects.setOrgPolicy", - "request": { - "$ref": "SetOrgPolicyRequest" - }, - "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`." + "description": "The Project lifecycle state.\n\nRead-only.", + "type": "string", + "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." + ] }, - "create": { - "path": "v1/projects", - "id": "cloudresourcemanager.projects.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.", - "request": { - "$ref": "Project" - }, - "response": { - "$ref": "Operation" + "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." + }, + "createTime": { + "description": "Creation time.\n\nRead-only.", + "format": "google-datetime", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "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": { + "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" + } + }, + "id": "Project" + }, + "SearchOrganizationsResponse": { + "type": "object", + "properties": { + "organizations": { + "description": "The list of Organizations that matched the search query, possibly\npaginated.", + "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" + } + }, + "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.", + "type": "string" + } + }, + "id": "ListOrgPoliciesResponse" + }, + "FolderOperationError": { + "description": "A classification of the Folder Operation error.", + "type": "object", + "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." ], - "flatPath": "v1/projects" + "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" + ], + "description": "The type of operation error experienced.", + "type": "string" + } + }, + "id": "FolderOperationError" + }, + "BooleanPolicy": { + "properties": { + "enforced": { + "type": "boolean", + "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`." + } + }, + "id": "BooleanPolicy", + "description": "Used in `policy_type` to specify how `boolean_policy` will behave at this\nresource.", + "type": "object" + }, + "OrgPolicy": { + "type": "object", + "properties": { + "constraint": { + "description": "The name of the `Constraint` the `Policy` is configuring, for example,\n`constraints/serviceuser.services`.\n\nImmutable after creation.", + "type": "string" + }, + "booleanPolicy": { + "$ref": "BooleanPolicy", + "description": "For boolean `Constraints`, whether to enforce the `Constraint` or not." + }, + "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": { + "description": "Restores the default behavior of the constraint; independent of\n`Constraint` type.", + "$ref": "RestoreDefault" + }, + "listPolicy": { + "description": "List of values either allowed or disallowed.", + "$ref": "ListPolicy" + }, + "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" + } + }, + "id": "OrgPolicy", + "description": "Defines a Cloud Organization `Policy` which is used to specify `Constraints`\nfor configurations of Cloud Platform resources." + }, + "Lien": { + "description": "A Lien represents an encumbrance on the actions that can be performed on a\nresource.", + "type": "object", + "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", + "type": "string" + }, + "name": { + "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" + }, + "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" + } + } + }, + "id": "Lien" + }, + "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." + } + } + }, + "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`.", + "type": "object", + "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" + } + }, + "id": "ListConstraint" + }, + "SetOrgPolicyRequest": { + "id": "SetOrgPolicyRequest", + "description": "The request sent to the SetOrgPolicyRequest method.", + "type": "object", + "properties": { + "policy": { + "$ref": "OrgPolicy", + "description": "`Policy` to set on the resource." + } + } + }, + "SetIamPolicyRequest": { + "id": "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" + } + } + }, + "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": { + "description": "The root node in the resource hierarchy to which a particular entity's\n(e.g., company) resources belong.", + "type": "object", + "properties": { + "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." }, - "listOrgPolicies": { - "flatPath": "v1/projects/{projectsId}:listOrgPolicies", - "path": "v1/{+resource}:listOrgPolicies", - "id": "cloudresourcemanager.projects.listOrgPolicies", - "description": "Lists all the `Policies` set for a particular resource.", - "request": { - "$ref": "ListOrgPoliciesRequest" - }, - "response": { - "$ref": "ListOrgPoliciesResponse" - }, - "parameterOrder": [ - "resource" + "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." ], - "httpMethod": "POST", - "parameters": { - "resource": { - "description": "Name of the resource to list Policies for.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" + "enum": [ + "LIFECYCLE_STATE_UNSPECIFIED", + "ACTIVE", + "DELETE_REQUESTED" ] }, - "get": { - "httpMethod": "GET", - "response": { - "$ref": "Project" - }, - "parameterOrder": [ - "projectId" - ], - "parameters": { - "projectId": { - "description": "The Project ID (for example, `my-project-123`).\n\nRequired.", - "required": true, - "type": "string", - "location": "path" - } - }, - "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." + "name": { + "type": "string", + "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\"." }, - "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.", - "request": { - "$ref": "GetAncestryRequest" - }, - "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": "v1/projects/{projectId}:getAncestry" + "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" }, - "testIamPermissions": { - "description": "Returns permissions that a caller has on the specified Project.\n\nThere are no permissions required for making this API call.", - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/projects/{resource}:testIamPermissions", - "id": "cloudresourcemanager.projects.testIamPermissions", - "path": "v1/projects/{resource}:testIamPermissions" + "creationTime": { + "description": "Timestamp when the Organization was created. Assigned by the server.\n@OutputOnly", + "format": "google-datetime", + "type": "string" } - } + }, + "id": "Organization" }, - "organizations": { - "methods": { - "listAvailableOrgPolicyConstraints": { - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "ListAvailableOrgPolicyConstraintsResponse" - }, - "parameters": { - "resource": { - "pattern": "^organizations/[^/]+$", - "location": "path", - "description": "Name of the resource to list `Constraints` for.", - "required": true, - "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", + "properties": { + "nextPageToken": { + "description": "Page token used to retrieve the next page. This is currently not used.", + "type": "string" + }, + "constraints": { + "type": "array", + "items": { + "$ref": "Constraint" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/organizations/{organizationsId}:listAvailableOrgPolicyConstraints", - "id": "cloudresourcemanager.organizations.listAvailableOrgPolicyConstraints", - "path": "v1/{+resource}:listAvailableOrgPolicyConstraints", - "description": "Lists `Constraints` that could be applied on the specified resource.", - "request": { - "$ref": "ListAvailableOrgPolicyConstraintsRequest" + "description": "The collection of constraints that are settable on the request resource." + } + }, + "id": "ListAvailableOrgPolicyConstraintsResponse" + }, + "ListPolicy": { + "type": "object", + "properties": { + "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" } }, - "listOrgPolicies": { - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "ListOrgPoliciesResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "resource": { - "pattern": "^organizations/[^/]+$", - "location": "path", - "description": "Name of the resource to list Policies for.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/organizations/{organizationsId}:listOrgPolicies", - "id": "cloudresourcemanager.organizations.listOrgPolicies", - "path": "v1/{+resource}:listOrgPolicies", - "request": { - "$ref": "ListOrgPoliciesRequest" - }, - "description": "Lists all the `Policies` set for a particular resource." + "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" }, - "getIamPolicy": { - "flatPath": "v1/organizations/{organizationsId}:getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "id": "cloudresourcemanager.organizations.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", - "request": { - "$ref": "GetIamPolicyRequest" - }, - "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" - ] + "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" }, - "getOrgPolicy": { - "response": { - "$ref": "OrgPolicy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "description": "Name of the resource the `Policy` is set on.", - "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}: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" + "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" } }, - "search": { - "response": { - "$ref": "SearchOrganizationsResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" + "allValues": { + "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." ], - "parameters": {}, - "flatPath": "v1/organizations:search", - "path": "v1/organizations:search", - "id": "cloudresourcemanager.organizations.search", - "request": { - "$ref": "SearchOrganizationsRequest" - }, - "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`" + "enum": [ + "ALL_VALUES_UNSPECIFIED", + "ALLOW", + "DENY" + ] + } + }, + "id": "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." + }, + "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": { + "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" + } }, - "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.", - "request": { - "$ref": "GetEffectiveOrgPolicyRequest" - }, - "response": { - "$ref": "OrgPolicy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "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" + "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" ], - "flatPath": "v1/organizations/{organizationsId}:getEffectiveOrgPolicy", - "path": "v1/{+resource}:getEffectiveOrgPolicy", - "id": "cloudresourcemanager.organizations.getEffectiveOrgPolicy" + "enum": [ + "LOG_TYPE_UNSPECIFIED", + "ADMIN_READ", + "DATA_WRITE", + "DATA_READ" + ] + } + }, + "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 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" }, - "get": { - "path": "v1/{+name}", - "id": "cloudresourcemanager.organizations.get", - "description": "Fetches an Organization resource identified by the specified resource name.", - "response": { - "$ref": "Organization" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "location": "path", - "description": "The resource name of the Organization to fetch, e.g. \"organizations/1234\".", - "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}" + "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" }, - "testIamPermissions": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "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" - } - }, - "flatPath": "v1/organizations/{organizationsId}:testIamPermissions", - "path": "v1/{+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\".\n\nThere are no permissions required for making this API call.", - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "parameterOrder": [ - "resource" + "pageSize": { + "type": "integer", + "description": "The maximum number of Organizations to return in the response.\nThis field is optional.", + "format": "int32" + } + }, + "id": "SearchOrganizationsRequest" + }, + "GetAncestryRequest": { + "description": "The request sent to the\nGetAncestry\nmethod.", + "type": "object", + "properties": {}, + "id": "GetAncestryRequest" + }, + "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" + }, + "FolderOperation": { + "properties": { + "operationType": { + "enum": [ + "OPERATION_TYPE_UNSPECIFIED", + "CREATE", + "MOVE" ], - "httpMethod": "POST" + "description": "The type of this operation.", + "type": "string", + "enumDescriptions": [ + "Operation type not specified.", + "A create folder operation.", + "A move folder operation." + ] }, - "clearOrgPolicy": { - "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" - ], - "flatPath": "v1/organizations/{organizationsId}:clearOrgPolicy", - "path": "v1/{+resource}:clearOrgPolicy", - "id": "cloudresourcemanager.organizations.clearOrgPolicy", - "description": "Clears a `Policy` from a resource.", - "request": { - "$ref": "ClearOrgPolicyRequest" + "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", + "description": "Metadata describing a long running folder operation", + "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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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" } }, - "setOrgPolicy": { - "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": "^organizations/[^/]+$" - } - }, - "flatPath": "v1/organizations/{organizationsId}:setOrgPolicy", - "path": "v1/{+resource}:setOrgPolicy", - "id": "cloudresourcemanager.organizations.setOrgPolicy", - "request": { - "$ref": "SetOrgPolicyRequest" - }, - "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`." + "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" }, - "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", - "request": { - "$ref": "SetIamPolicyRequest" - }, - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "pattern": "^organizations/[^/]+$", - "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" - } + "version": { + "description": "Deprecated.", + "format": "int32", + "type": "integer" + }, + "auditConfigs": { + "type": "array", + "items": { + "$ref": "AuditConfig" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/organizations/{organizationsId}:setIamPolicy", - "path": "v1/{+resource}:setIamPolicy", - "id": "cloudresourcemanager.organizations.setIamPolicy" + "description": "Specifies cloud audit logging configuration for this policy." } - } + }, + "id": "Policy" }, - "liens": { - "methods": { - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "name": { - "description": "The name/identifier of the Lien to delete.", - "required": true, - "type": "string", - "pattern": "^liens/.+$", - "location": "path" - } - }, - "flatPath": "v1/liens/{liensId}", - "path": "v1/{+name}", - "id": "cloudresourcemanager.liens.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`." + "ListAvailableOrgPolicyConstraintsRequest": { + "type": "object", + "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" }, - "list": { - "path": "v1/liens", - "id": "cloudresourcemanager.liens.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" - }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { - "parent": { - "description": "The name of the resource to list all attached Liens.\nFor example, `projects/1234`.", - "type": "string", - "location": "query" - }, - "pageToken": { - "type": "string", - "location": "query", - "description": "The `next_page_token` value returned from a previous List request, if any." - }, - "pageSize": { - "location": "query", - "description": "The maximum number of items to return. This is a suggestion for the server.", - "format": "int32", - "type": "integer" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/liens" + "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": "ListAvailableOrgPolicyConstraintsRequest", + "description": "The request sent to the [ListAvailableOrgPolicyConstraints]\ngoogle.cloud.OrgPolicy.v1.ListAvailableOrgPolicyConstraints] method." + }, + "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" }, - "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.", - "request": { - "$ref": "Lien" - }, - "response": { - "$ref": "Lien" + "id": { + "type": "string", + "description": "Required field for the type-specific id. This should correspond to the id\nused in the type-specific API's." + } + }, + "id": "ResourceId" + }, + "GetEffectiveOrgPolicyRequest": { + "description": "The request sent to the GetEffectiveOrgPolicy method.", + "type": "object", + "properties": { + "constraint": { + "description": "The name of the `Constraint` to compute the effective `Policy`.", + "type": "string" + } + }, + "id": "GetEffectiveOrgPolicyRequest" + }, + "ListOrgPoliciesRequest": { + "description": "The request sent to the ListOrgPolicies method.", + "type": "object", + "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" + } + }, + "id": "ListOrgPoliciesRequest" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork 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" }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v1/liens", - "path": "v1/liens", - "id": "cloudresourcemanager.liens.create" + "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" + }, + "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" }, - "operations": { - "methods": { - "get": { - "flatPath": "v1/operations/{operationsId}", - "id": "cloudresourcemanager.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" + "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.", + "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.", + "type": "array", + "items": { + "$ref": "AuditLogConfig" + } + } + }, + "id": "AuditConfig" + }, + "Constraint": { + "properties": { + "booleanConstraint": { + "description": "Defines this constraint as being a BooleanConstraint.", + "$ref": "BooleanConstraint" + }, + "constraintDefault": { + "description": "The evaluation behavior of this constraint in the absense of 'Policy'.", + "type": "string", + "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." ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^operations/.+$", - "location": "path", - "description": "The name of the operation resource." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" + "enum": [ + "CONSTRAINT_DEFAULT_UNSPECIFIED", + "ALLOW", + "DENY" ] + }, + "name": { + "description": "Immutable value, required to globally be unique. For example,\n`constraints/serviceuser.services`", + "type": "string" + }, + "listConstraint": { + "$ref": "ListConstraint", + "description": "Defines this constraint as being a ListConstraint." + }, + "version": { + "description": "Version of the `Constraint`. Default version is 0;", + "format": "int32", + "type": "integer" + }, + "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" } - } - } - }, - "parameters": { - "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": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" + }, + "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" }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" + "ListLiensResponse": { + "type": "object", + "properties": { + "nextPageToken": { + "description": "Token to retrieve the next page of results, or empty if there are no more\nresults in the list.", + "type": "string" + }, + "liens": { + "description": "A list of Liens.", + "type": "array", + "items": { + "$ref": "Lien" + } + } + }, + "id": "ListLiensResponse", + "description": "The response message for Liens.ListLiens." }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" + "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" }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "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` .\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" }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" + "RestoreDefault": { + "properties": {}, + "id": "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" }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" + "GetOrgPolicyRequest": { + "description": "The request sent to the GetOrgPolicy method.", + "type": "object", + "properties": { + "constraint": { + "description": "Name of the `Constraint` to get the `Policy`.", + "type": "string" + } + }, + "id": "GetOrgPolicyRequest" }, - "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" + "UndeleteProjectRequest": { + "description": "The request sent to the UndeleteProject\nmethod.", + "type": "object", + "properties": {}, + "id": "UndeleteProjectRequest" }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" + "ClearOrgPolicyRequest": { + "description": "The request sent to the ClearOrgPolicy method.", + "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", + "type": "string" + }, + "constraint": { + "type": "string", + "description": "Name of the `Constraint` of the `Policy` to clear." + } + }, + "id": "ClearOrgPolicyRequest" }, - "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." + "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" + }, + "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" + } + }, + "id": "ProjectCreationStatus" }, - "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" + "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" } }, - "version": "v1", - "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:v1", - "revision": "20180502", - "documentationLink": "https://cloud.google.com/resource-manager" + "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 Resource Manager", + "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" + } + } + } + }, + "rootUrl": "https://cloudresourcemanager.googleapis.com/", + "ownerDomain": "google.com", + "name": "cloudresourcemanager", + "batchPath": "batch", + "fullyEncodeReservedExpansion": true, + "title": "Cloud Resource Manager API" } diff --git a/DiscoveryJson/cloudresourcemanager_v1beta1.json b/DiscoveryJson/cloudresourcemanager_v1beta1.json index 6590b59e16..5286f9617e 100644 --- a/DiscoveryJson/cloudresourcemanager_v1beta1.json +++ b/DiscoveryJson/cloudresourcemanager_v1beta1.json @@ -1,502 +1,257 @@ { - "schemas": { - "GetIamPolicyRequest": { - "description": "Request message for `GetIamPolicy` method.", - "type": "object", - "properties": {}, - "id": "GetIamPolicyRequest" - }, - "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": { - "properties": { - "directoryCustomerId": { - "description": "The G Suite customer id used in the Directory API.", - "type": "string" - } - }, - "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" - }, - "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": { - "properties": { - "logType": { - "enum": [ - "LOG_TYPE_UNSPECIFIED", - "ADMIN_READ", - "DATA_WRITE", - "DATA_READ" - ], - "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" - ] - }, - "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", - "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" - }, - "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": { - "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": { - "type": "array", - "items": { - "$ref": "Project" - }, - "description": "The list of Projects that matched the list filter. This list can\nbe paginated." - } - }, - "id": "ListProjectsResponse" - }, - "GetAncestryRequest": { - "type": "object", - "properties": {}, - "id": "GetAncestryRequest", - "description": "The request sent to the\nGetAncestry\nmethod." - }, - "Project": { - "properties": { - "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." - }, - "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": { - "type": "string", - "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." - }, - "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" - } - }, - "id": "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" - }, - "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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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" - }, - "FolderOperation": { - "description": "Metadata describing a long running folder operation", - "type": "object", - "properties": { - "operationType": { - "description": "The type of this operation.", - "type": "string", - "enumDescriptions": [ - "Operation type not specified.", - "A create folder operation.", - "A move folder operation." - ], - "enum": [ - "OPERATION_TYPE_UNSPECIFIED", - "CREATE", - "MOVE" - ] - }, - "displayName": { - "type": "string", - "description": "The display name of the folder." - }, - "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" - }, - "FolderOperationError": { - "description": "A classification of the Folder Operation error.", - "type": "object", - "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." - ], - "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" - ], - "description": "The type of operation error experienced.", - "type": "string" - } - }, - "id": "FolderOperationError" - }, - "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 \"project\", \"folder\", and \"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" - }, - "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.", - "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": { - "type": "array", - "items": { - "$ref": "AuditLogConfig" - }, - "description": "The configuration for logging of each type of permission." - } - }, - "id": "AuditConfig" - }, - "Ancestor": { - "description": "Identifying information for a single ancestor of a project.", - "type": "object", - "properties": { - "resourceId": { - "$ref": "ResourceId", - "description": "Resource id of the ancestor." - } - }, - "id": "Ancestor" - }, - "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" - }, - "ListOrganizationsResponse": { - "description": "The response returned from the `ListOrganizations` method.", - "type": "object", - "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" - } - }, - "id": "ListOrganizationsResponse" - }, - "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` .\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", - "description": "Associates `members` with a `role`.", - "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" - }, - "UndeleteProjectRequest": { - "properties": {}, - "id": "UndeleteProjectRequest", - "description": "The request sent to the UndeleteProject\nmethod.", - "type": "object" - }, - "Organization": { - "description": "The root node in the resource hierarchy to which a particular entity's\n(e.g., company) resources belong.", - "type": "object", - "properties": { - "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" - }, - "lifecycleState": { - "enum": [ - "LIFECYCLE_STATE_UNSPECIFIED", - "ACTIVE", - "DELETE_REQUESTED" - ], - "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." - ] - }, - "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" - }, - "creationTime": { - "description": "Timestamp when the Organization was created. Assigned by the server.\n@OutputOnly", - "format": "google-datetime", - "type": "string" - }, - "owner": { - "description": "The owner of this Organization. The owner should be specified on\ncreation. Once set, it cannot be changed.\nThis field is required.", - "$ref": "OrganizationOwner" - } - }, - "id": "Organization" - }, - "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": { - "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" - } - }, - "id": "ProjectCreationStatus" - } - }, - "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": "Cloud Resource Manager API", "ownerName": "Google", "resources": { "organizations": { "methods": { + "getIamPolicy": { + "flatPath": "v1beta1/organizations/{organizationsId}:getIamPolicy", + "path": "v1beta1/{+resource}:getIamPolicy", + "id": "cloudresourcemanager.organizations.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\".", + "request": { + "$ref": "GetIamPolicyRequest" + }, + "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" + ] + }, + "get": { + "flatPath": "v1beta1/organizations/{organizationsId}", + "id": "cloudresourcemanager.organizations.get", + "path": "v1beta1/{+name}", + "description": "Fetches an Organization resource identified by the specified resource name.", + "httpMethod": "GET", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Organization" + }, + "parameters": { + "name": { + "description": "The resource name of the Organization to fetch, e.g. \"organizations/1234\".", + "required": true, + "type": "string", + "pattern": "^organizations/[^/]+$", + "location": "path" + }, + "organizationId": { + "location": "query", + "description": "The id of the Organization resource to fetch.\nThis field is deprecated and will be removed in v1. Use name instead.", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "update": { + "response": { + "$ref": "Organization" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "PUT", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "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", + "pattern": "^organizations/[^/]+$" + } + }, + "flatPath": "v1beta1/organizations/{organizationsId}", + "path": "v1beta1/{+name}", + "id": "cloudresourcemanager.organizations.update", + "request": { + "$ref": "Organization" + }, + "description": "Updates an Organization resource identified by the specified resource name." + }, + "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" + ], + "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" + } + }, + "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\"." + }, "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.", - "httpMethod": "GET", - "parameterOrder": [], "response": { "$ref": "ListOrganizationsResponse" }, + "parameterOrder": [], + "httpMethod": "GET", "parameters": { "filter": { - "type": "string", "location": "query", - "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." + "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.", + "type": "string" }, "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": { + "description": "The maximum number of Organizations to return in the response.\nThis field is optional.", + "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/organizations", + "path": "v1beta1/organizations", + "id": "cloudresourcemanager.organizations.list" + }, + "setIamPolicy": { + "response": { + "$ref": "Policy" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "resource": { + "pattern": "^organizations/[^/]+$", + "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" + } + }, + "flatPath": "v1beta1/organizations/{organizationsId}: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\"." + } + } + }, + "projects": { + "methods": { + "list": { + "id": "cloudresourcemanager.projects.list", + "path": "v1beta1/projects", + "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.", + "httpMethod": "GET", + "parameterOrder": [], + "response": { + "$ref": "ListProjectsResponse" + }, + "parameters": { "pageSize": { "location": "query", - "description": "The maximum number of Organizations to return in the response.\nThis field is optional.", + "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" + }, + "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 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", + "location": "query" + }, + "pageToken": { + "description": "A pagination token returned from a previous call to ListProjects\nthat indicates from where listing should continue.\n\nOptional.", + "type": "string", + "location": "query" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "flatPath": "v1beta1/organizations", - "id": "cloudresourcemanager.organizations.list", - "path": "v1beta1/organizations" + "flatPath": "v1beta1/projects" + }, + "create": { + "response": { + "$ref": "Project" + }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": { + "useLegacyStack": { + "location": "query", + "description": "A safety hatch to opt out of the new reliable project creation process.", + "type": "boolean" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/projects", + "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. The parent is identified by a specified\nResourceId, which must include both an ID and a type, such as\nproject, folder, or organization.", + "request": { + "$ref": "Project" + } }, "setIamPolicy": { + "flatPath": "v1beta1/projects/{resource}:setIamPolicy", + "path": "v1beta1/projects/{resource}:setIamPolicy", + "id": "cloudresourcemanager.projects.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.", + "request": { + "$ref": "SetIamPolicyRequest" + }, "response": { "$ref": "Policy" }, @@ -504,31 +259,22 @@ "resource" ], "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "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" } }, - "flatPath": "v1beta1/organizations/{organizationsId}: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\"." + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "getIamPolicy": { - "flatPath": "v1beta1/organizations/{organizationsId}:getIamPolicy", - "path": "v1beta1/{+resource}:getIamPolicy", - "id": "cloudresourcemanager.organizations.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\".", + "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" }, @@ -541,480 +287,734 @@ "httpMethod": "POST", "parameters": { "resource": { - "required": true, - "type": "string", - "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." + "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/projects/{resource}:getIamPolicy" }, - "get": { - "description": "Fetches an Organization resource identified by the specified resource name.", + "undelete": { "response": { - "$ref": "Organization" + "$ref": "Empty" }, "parameterOrder": [ - "name" + "projectId" ], - "httpMethod": "GET", + "httpMethod": "POST", "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" + "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "name": { + "projectId": { "location": "path", - "description": "The resource name of the Organization to fetch, e.g. \"organizations/1234\".", + "description": "The project ID (for example, `foo-bar-123`).\n\nRequired.", "required": true, - "type": "string", - "pattern": "^organizations/[^/]+$" - }, - "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" + "type": "string" } }, - "flatPath": "v1beta1/organizations/{organizationsId}", - "path": "v1beta1/{+name}", - "id": "cloudresourcemanager.organizations.get" - }, - "update": { + "flatPath": "v1beta1/projects/{projectId}:undelete", + "path": "v1beta1/projects/{projectId}:undelete", + "id": "cloudresourcemanager.projects.undelete", "request": { - "$ref": "Organization" + "$ref": "UndeleteProjectRequest" }, - "description": "Updates an Organization resource identified by the specified resource name.", - "httpMethod": "PUT", + "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." + }, + "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.", + "httpMethod": "GET", "parameterOrder": [ - "name" + "projectId" ], "response": { - "$ref": "Organization" + "$ref": "Project" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "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\".", + "projectId": { + "description": "The Project ID (for example, `my-project-123`).\n\nRequired.", "required": true, "type": "string", - "pattern": "^organizations/[^/]+$", "location": "path" } }, - "flatPath": "v1beta1/organizations/{organizationsId}", - "id": "cloudresourcemanager.organizations.update", - "path": "v1beta1/{+name}" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "flatPath": "v1beta1/projects/{projectId}", + "id": "cloudresourcemanager.projects.get", + "path": "v1beta1/projects/{projectId}" }, - "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\".", + "getAncestry": { "request": { - "$ref": "TestIamPermissionsRequest" + "$ref": "GetAncestryRequest" }, - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], + "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.", "response": { - "$ref": "TestIamPermissionsResponse" - }, - "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" - } + "$ref": "GetAncestryResponse" }, + "parameterOrder": [ + "projectId" + ], + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "flatPath": "v1beta1/organizations/{organizationsId}:testIamPermissions", - "id": "cloudresourcemanager.organizations.testIamPermissions", - "path": "v1beta1/{+resource}:testIamPermissions" - } - } - }, - "projects": { - "methods": { - "testIamPermissions": { - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "TestIamPermissionsResponse" - }, "parameters": { - "resource": { + "projectId": { "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.", + "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/{resource}:testIamPermissions", - "id": "cloudresourcemanager.projects.testIamPermissions", - "path": "v1beta1/projects/{resource}:testIamPermissions", - "description": "Returns permissions that a caller has on the specified Project.", - "request": { - "$ref": "TestIamPermissionsRequest" - } + "flatPath": "v1beta1/projects/{projectId}:getAncestry", + "path": "v1beta1/projects/{projectId}:getAncestry", + "id": "cloudresourcemanager.projects.getAncestry" }, - "delete": { + "update": { + "path": "v1beta1/projects/{projectId}", + "id": "cloudresourcemanager.projects.update", + "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.", "response": { - "$ref": "Empty" + "$ref": "Project" }, "parameterOrder": [ "projectId" ], - "httpMethod": "DELETE", + "httpMethod": "PUT", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "projectId": { - "location": "path", - "description": "The Project ID (for example, `foo-bar-123`).\n\nRequired.", + "description": "The project ID (for example, `my-project-123`).\n\nRequired.", "required": true, - "type": "string" + "type": "string", + "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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 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}" }, - "list": { + "testIamPermissions": { "response": { - "$ref": "ListProjectsResponse" + "$ref": "TestIamPermissionsResponse" }, - "parameterOrder": [], - "httpMethod": "GET", + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", "parameters": { - "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": { - "type": "integer", - "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" - }, - "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" + "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" } }, "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", - "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/{resource}:testIamPermissions", + "path": "v1beta1/projects/{resource}:testIamPermissions", + "id": "cloudresourcemanager.projects.testIamPermissions", + "description": "Returns permissions that a caller has on the specified Project.", + "request": { + "$ref": "TestIamPermissionsRequest" + } }, - "setIamPolicy": { + "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.", "response": { - "$ref": "Policy" + "$ref": "Empty" }, "parameterOrder": [ - "resource" + "projectId" ], - "httpMethod": "POST", + "httpMethod": "DELETE", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + "projectId": { + "location": "path", + "description": "The Project ID (for example, `foo-bar-123`).\n\nRequired.", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, - "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." + "flatPath": "v1beta1/projects/{projectId}", + "path": "v1beta1/projects/{projectId}", + "id": "cloudresourcemanager.projects.delete" + } + } + } + }, + "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" + }, + "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": { + "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": { + "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": "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": "", + "revision": "20180502", + "documentationLink": "https://cloud.google.com/resource-manager", + "id": "cloudresourcemanager:v1beta1", + "discoveryVersion": "v1", + "schemas": { + "UndeleteProjectRequest": { + "properties": {}, + "id": "UndeleteProjectRequest", + "description": "The request sent to the UndeleteProject\nmethod.", + "type": "object" + }, + "Organization": { + "properties": { + "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" }, - "create": { - "response": { - "$ref": "Project" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": { - "useLegacyStack": { - "location": "query", - "description": "A safety hatch to opt out of the new reliable project creation process.", - "type": "boolean" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "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.", + "type": "string" + }, + "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" + } + }, + "id": "Organization", + "description": "The root node in the resource hierarchy to which a particular entity's\n(e.g., company) resources belong.", + "type": "object" + }, + "ProjectCreationStatus": { + "properties": { + "ready": { + "description": "True if the project creation process is complete.", + "type": "boolean" + }, + "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" + } + }, + "id": "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" + }, + "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": { + "description": "Request message for `GetIamPolicy` method.", + "type": "object", + "properties": {}, + "id": "GetIamPolicyRequest" + }, + "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 G Suite customer id used in the Directory API.", + "type": "string" + } + }, + "id": "OrganizationOwner" + }, + "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": { + "properties": { + "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" ], - "flatPath": "v1beta1/projects", - "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. The parent is identified by a specified\nResourceId, which must include both an ID and a type, such as\nproject, folder, or organization.", - "request": { + "enum": [ + "LOG_TYPE_UNSPECIFIED", + "ADMIN_READ", + "DATA_WRITE", + "DATA_READ" + ] + }, + "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", + "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" + }, + "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" } }, - "getIamPolicy": { - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "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" - } + "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" + }, + "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", + "properties": { + "labels": { + "additionalProperties": { + "type": "string" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" + "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" + }, + "createTime": { + "description": "Creation time.\n\nRead-only.", + "format": "google-datetime", + "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" + }, + "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": { + "description": "The Project lifecycle state.\n\nRead-only.", + "type": "string", + "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." ], - "flatPath": "v1beta1/projects/{resource}: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" + "enum": [ + "LIFECYCLE_STATE_UNSPECIFIED", + "ACTIVE", + "DELETE_REQUESTED", + "DELETE_IN_PROGRESS" + ] + }, + "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." + } + }, + "id": "Project" + }, + "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" }, - "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" - }, - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "POST", - "parameters": { - "projectId": { - "description": "The project ID (for example, `foo-bar-123`).\n\nRequired.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectId}:undelete", - "path": "v1beta1/projects/{projectId}:undelete", - "id": "cloudresourcemanager.projects.undelete" + "version": { + "description": "Deprecated.", + "format": "int32", + "type": "integer" }, - "get": { - "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": { - "description": "The Project ID (for example, `my-project-123`).\n\nRequired.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1beta1/projects/{projectId}", - "path": "v1beta1/projects/{projectId}", - "id": "cloudresourcemanager.projects.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." + "auditConfigs": { + "description": "Specifies cloud audit logging configuration for this policy.", + "type": "array", + "items": { + "$ref": "AuditConfig" + } }, - "update": { - "response": { - "$ref": "Project" - }, - "parameterOrder": [ - "projectId" + "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", + "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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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" + }, + "FolderOperation": { + "description": "Metadata describing a long running folder operation", + "type": "object", + "properties": { + "operationType": { + "enumDescriptions": [ + "Operation type not specified.", + "A create folder operation.", + "A move folder operation." ], - "httpMethod": "PUT", - "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" + "enum": [ + "OPERATION_TYPE_UNSPECIFIED", + "CREATE", + "MOVE" ], - "flatPath": "v1beta1/projects/{projectId}", - "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" - } + "description": "The type of this operation.", + "type": "string" }, - "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.", - "response": { - "$ref": "GetAncestryResponse" - }, - "parameterOrder": [ - "projectId" + "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" + }, + "FolderOperationError": { + "description": "A classification of the Folder Operation error.", + "type": "object", + "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." ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" + "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" ], - "parameters": { - "projectId": { - "description": "The Project ID (for example, `my-project-123`).\n\nRequired.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1beta1/projects/{projectId}:getAncestry", - "path": "v1beta1/projects/{projectId}:getAncestry", - "id": "cloudresourcemanager.projects.getAncestry" + "description": "The type of operation error experienced.", + "type": "string" } - } - } - }, - "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": { - "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" + }, + "id": "FolderOperationError" }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" + "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": { + "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 \"project\", \"folder\", and \"organization\".", + "type": "string" + } + }, + "id": "ResourceId" }, - "$.xgafv": { - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query" + "AuditConfig": { + "properties": { + "auditLogConfigs": { + "description": "The configuration for logging of each type of permission.", + "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", + "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.", + "type": "object" }, - "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" - ] + "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" }, - "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" + "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." + } + }, + "id": "SetIamPolicyRequest" }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" + "ListOrganizationsResponse": { + "description": "The response returned from the `ListOrganizations` method.", + "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 list query, possibly paginated.", + "type": "array", + "items": { + "$ref": "Organization" + } + } + }, + "id": "ListOrganizationsResponse" }, - "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" + "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` .\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" }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "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 `{}`.", + "type": "object", + "properties": {}, + "id": "Empty" } }, - "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": "", - "revision": "20180502", - "documentationLink": "https://cloud.google.com/resource-manager", - "id": "cloudresourcemanager:v1beta1", - "discoveryVersion": "v1" + "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" } diff --git a/DiscoveryJson/cloudresourcemanager_v2.json b/DiscoveryJson/cloudresourcemanager_v2.json index c0285c863a..40f2142262 100644 --- a/DiscoveryJson/cloudresourcemanager_v2.json +++ b/DiscoveryJson/cloudresourcemanager_v2.json @@ -1,472 +1,29 @@ { - "ownerName": "Google", - "resources": { - "folders": { - "methods": { - "move": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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" - } - }, - "flatPath": "v2/folders/{foldersId}:move", - "path": "v2/{+name}:move", - "id": "cloudresourcemanager.folders.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." - }, - "testIamPermissions": { - "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": "v2/folders/{foldersId}:testIamPermissions", - "path": "v2/{+resource}:testIamPermissions", - "id": "cloudresourcemanager.folders.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.", - "request": { - "$ref": "TestIamPermissionsRequest" - } - }, - "delete": { - "response": { - "$ref": "Folder" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^folders/[^/]+$", - "location": "path", - "description": "the resource name of the Folder to be deleted.\nMust be of the form `folders/{folder_id}`." - } - }, - "flatPath": "v2/folders/{foldersId}", - "path": "v2/{+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." - }, - "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": { - "parent": { - "location": "query", - "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" - }, - "showDeleted": { - "description": "Controls whether Folders in the\nDELETE_REQUESTED\nstate should be returned. Defaults to false. This field is optional.", - "type": "boolean", - "location": "query" - }, - "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": { - "description": "The maximum number of Folders to return in the response.\nThis field is optional.", - "format": "int32", - "type": "integer", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v2/folders", - "path": "v2/folders", - "id": "cloudresourcemanager.folders.list" - }, - "create": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "location": "query", - "description": "The resource name of the new Folder's parent.\nMust be of the form `folders/{folder_id}` or `organizations/{org_id}`.", - "type": "string" - } - }, - "flatPath": "v2/folders", - "path": "v2/folders", - "id": "cloudresourcemanager.folders.create", - "request": { - "$ref": "Folder" - }, - "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." - }, - "setIamPolicy": { - "id": "cloudresourcemanager.folders.setIamPolicy", - "path": "v2/{+resource}: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.", - "request": { - "$ref": "SetIamPolicyRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" - }, - "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": "v2/folders/{foldersId}:setIamPolicy" - }, - "getIamPolicy": { - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" - }, - "parameters": { - "resource": { - "pattern": "^folders/[^/]+$", - "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": "v2/folders/{foldersId}:getIamPolicy", - "id": "cloudresourcemanager.folders.getIamPolicy", - "path": "v2/{+resource}: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.", - "request": { - "$ref": "GetIamPolicyRequest" - } - }, - "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", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "flatPath": "v2/folders:search", - "path": "v2/folders:search", - "id": "cloudresourcemanager.folders.search" - }, - "undelete": { - "id": "cloudresourcemanager.folders.undelete", - "path": "v2/{+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.", - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Folder" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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" - } - }, - "flatPath": "v2/folders/{foldersId}:undelete" - }, - "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.", - "response": { - "$ref": "Folder" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "parameters": { - "name": { - "pattern": "^folders/[^/]+$", - "location": "path", - "description": "The resource name of the Folder to retrieve.\nMust be of the form `folders/{folder_id}`.", - "required": true, - "type": "string" - } - }, - "flatPath": "v2/folders/{foldersId}", - "path": "v2/{+name}", - "id": "cloudresourcemanager.folders.get" - }, - "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.", - "request": { - "$ref": "Folder" - }, - "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": { - "description": "Output only. The resource name of the Folder.\nIts format is `folders/{folder_id}`, for example: \"folders/1234\".", - "required": true, - "type": "string", - "pattern": "^folders/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/folders/{foldersId}", - "path": "v2/{+name}", - "id": "cloudresourcemanager.folders.patch" - } - } - } - }, - "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": { - "description": "Selector specifying which fields to include in a partial response.", - "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": { - "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": { - "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" - } - }, - "version": "v2", - "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": "20180502", - "documentationLink": "https://cloud.google.com/resource-manager", "id": "cloudresourcemanager:v2", + "documentationLink": "https://cloud.google.com/resource-manager", + "revision": "20180502", "discoveryVersion": "v1", "schemas": { - "Operation": { - "id": "Operation", - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "SetIamPolicyRequest": { + "id": "SetIamPolicyRequest", + "description": "Request message for `SetIamPolicy` method.", "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`.", + "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" }, - "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" + "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." } } }, - "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.", - "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.", - "type": "array", - "items": { - "$ref": "AuditLogConfig" - } - } - }, - "id": "AuditConfig" - }, - "ListFoldersResponse": { - "description": "The ListFolders response message.", + "SearchFoldersResponse": { + "id": "SearchFoldersResponse", + "description": "The response message for searching folders.", "type": "object", "properties": { "folders": { @@ -474,61 +31,16 @@ "items": { "$ref": "Folder" }, - "description": "A possibly paginated list of Folders that are direct descendants of\nthe specified parent resource." + "description": "A possibly paginated folder search results.\nthe specified parent resource." }, - "nextPageToken": { - "type": "string", - "description": "A pagination token returned from a previous call to `ListFolders`\nthat indicates from where listing should continue.\nThis field is optional." - } - }, - "id": "ListFoldersResponse" - }, - "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" - } - }, - "id": "MoveFolderRequest" - }, - "SearchFoldersResponse": { - "id": "SearchFoldersResponse", - "description": "The response message for searching folders.", - "type": "object", - "properties": { "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" - }, - "folders": { - "description": "A possibly paginated folder search results.\nthe specified parent resource.", - "type": "array", - "items": { - "$ref": "Folder" - } - } - } - }, - "SetIamPolicyRequest": { - "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": { - "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.", - "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": { @@ -552,8 +64,7 @@ "format": "int32", "type": "integer" } - }, - "id": "Status" + } }, "Binding": { "description": "Associates `members` with a `role`.", @@ -574,37 +85,49 @@ "id": "Binding" }, "SearchFoldersRequest": { - "id": "SearchFoldersRequest", "description": "The request message for searching folders.", "type": "object", "properties": { - "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" - }, "pageToken": { - "type": "string", - "description": "A pagination token returned from a previous call to `SearchFolders`\nthat indicates from where search should continue.\nThis field is optional." + "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": { + "type": "integer", "description": "The maximum number of folders to return in the response.\nThis field is optional.", - "format": "int32", - "type": "integer" + "format": "int32" + }, + "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" } - } + }, + "id": "SearchFoldersRequest" }, - "Folder": { - "description": "A Folder in an Organization's resource hierarchy, used to\norganize that Organization's resources.", + "ProjectCreationStatus": { "type": "object", "properties": { - "name": { - "type": "string", - "description": "Output only. The resource name of the Folder.\nIts format is `folders/{folder_id}`, for example: \"folders/1234\"." + "ready": { + "description": "True if the project creation process is complete.", + "type": "boolean" }, - "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}])?.", + "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" + } + }, + "id": "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." + }, + "Folder": { + "description": "A Folder in an Organization's resource hierarchy, used to\norganize that Organization's resources.", + "type": "object", + "properties": { "parent": { "description": "The Folder’s parent's resource name.\nUpdates to the folder's parent must be performed via\nMoveFolder.", "type": "string" @@ -615,41 +138,29 @@ "type": "string" }, "lifecycleState": { - "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", "enumDescriptions": [ "Unspecified state.", "The normal and active state.", "The folder has been marked for deletion by the user." - ] - } - }, - "id": "Folder" - }, - "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" + ], + "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." }, - "createTime": { - "description": "Creation time of the project creation workflow.", - "format": "google-datetime", + "name": { + "description": "Output only. The resource name of the Folder.\nIts format is `folders/{folder_id}`, for example: \"folders/1234\".", "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" + "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" } }, - "id": "ProjectCreationStatus" + "id": "Folder" }, "GetIamPolicyRequest": { "description": "Request message for `GetIamPolicy` method.", @@ -658,6 +169,7 @@ "id": "GetIamPolicyRequest" }, "TestIamPermissionsResponse": { + "id": "TestIamPermissionsResponse", "description": "Response message for `TestIamPermissions` method.", "type": "object", "properties": { @@ -668,14 +180,13 @@ "type": "string" } } - }, - "id": "TestIamPermissionsResponse" + } }, "UndeleteFolderRequest": { - "properties": {}, - "id": "UndeleteFolderRequest", "description": "The UndeleteFolder request message.", - "type": "object" + "type": "object", + "properties": {}, + "id": "UndeleteFolderRequest" }, "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.", @@ -689,20 +200,20 @@ } }, "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" - ], "enum": [ "LOG_TYPE_UNSPECIFIED", "ADMIN_READ", "DATA_WRITE", "DATA_READ" ], - "description": "The log type that this config enables." + "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" + ] } }, "id": "AuditLogConfig" @@ -711,138 +222,627 @@ "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).", + "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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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" + }, + "FolderOperation": { + "properties": { + "operationType": { + "enumDescriptions": [ + "Operation type not specified.", + "A create folder operation.", + "A move folder operation." + ], + "enum": [ + "OPERATION_TYPE_UNSPECIFIED", + "CREATE", + "MOVE" + ], + "description": "The type of this operation.", + "type": "string" + }, + "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", + "description": "Metadata describing a long running folder operation", + "type": "object" + }, + "FolderOperationError": { + "description": "A classification of the Folder Operation error.", + "type": "object", + "properties": { + "errorMessageId": { + "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" + ], + "description": "The type of operation error experienced.", + "type": "string", + "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." + ] + } + }, + "id": "FolderOperationError" + }, + "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" + }, + "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" + } + }, + "id": "Operation", + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "type": "object" + }, + "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\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.", + "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.", + "type": "array", + "items": { + "$ref": "AuditLogConfig" + } + } + } + }, + "ListFoldersResponse": { + "type": "object", + "properties": { + "folders": { + "description": "A possibly paginated list of Folders that are direct descendants of\nthe specified parent resource.", "type": "array", "items": { - "type": "string" + "$ref": "Folder" } + }, + "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" } }, - "id": "TestIamPermissionsRequest" + "id": "ListFoldersResponse", + "description": "The ListFolders response message." }, - "FolderOperationError": { + "MoveFolderRequest": { "type": "object", "properties": { - "errorMessageId": { - "description": "The type of operation error experienced.", + "destinationParent": { "type": "string", - "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 resource name of the Folder or Organization to reparent\nthe folder under.\nMust be of the form `folders/{folder_id}` or `organizations/{org_id}`." + } + }, + "id": "MoveFolderRequest", + "description": "The MoveFolder request message." + } + }, + "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": "Cloud Resource Manager API", + "ownerName": "Google", + "resources": { + "folders": { + "methods": { + "patch": { + "id": "cloudresourcemanager.folders.patch", + "path": "v2/{+name}", + "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.", + "request": { + "$ref": "Folder" + }, + "httpMethod": "PATCH", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Folder" + }, + "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": "v2/folders/{foldersId}" + }, + "get": { + "path": "v2/{+name}", + "id": "cloudresourcemanager.folders.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.", + "response": { + "$ref": "Folder" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "parameters": { + "name": { + "required": true, + "type": "string", + "pattern": "^folders/[^/]+$", + "location": "path", + "description": "The resource name of the Folder to retrieve.\nMust be of the form `folders/{folder_id}`." + } + }, + "flatPath": "v2/folders/{foldersId}" + }, + "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.", + "response": { + "$ref": "Folder" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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" + } + }, + "flatPath": "v2/folders/{foldersId}:undelete", + "path": "v2/{+name}:undelete", + "id": "cloudresourcemanager.folders.undelete" + }, + "move": { + "flatPath": "v2/folders/{foldersId}:move", + "id": "cloudresourcemanager.folders.move", + "path": "v2/{+name}: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.", + "request": { + "$ref": "MoveFolderRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "name": { + "pattern": "^folders/[^/]+$", + "location": "path", + "description": "The resource name of the Folder to move.\nMust be of the form folders/{folder_id}", + "required": true, + "type": "string" + } + }, + "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.", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "resource" + ], + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "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": "^folders/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/folders/{foldersId}:testIamPermissions", + "id": "cloudresourcemanager.folders.testIamPermissions", + "path": "v2/{+resource}:testIamPermissions" + }, + "delete": { + "flatPath": "v2/folders/{foldersId}", + "path": "v2/{+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", + "parameters": { + "name": { + "required": true, + "type": "string", + "pattern": "^folders/[^/]+$", + "location": "path", + "description": "the resource name of the Folder to be deleted.\nMust be of the form `folders/{folder_id}`." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "response": { + "$ref": "ListFoldersResponse" + }, + "parameterOrder": [], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "parameters": { + "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": { + "location": "query", + "description": "Controls whether Folders in the\nDELETE_REQUESTED\nstate should be returned. Defaults to false. This field is optional.", + "type": "boolean" + }, + "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" + } + }, + "flatPath": "v2/folders", + "path": "v2/folders", + "id": "cloudresourcemanager.folders.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." + }, + "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.", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "resource" ], - "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" - ] - } - }, - "id": "FolderOperationError", - "description": "A classification of the Folder Operation error." - }, - "FolderOperation": { - "id": "FolderOperation", - "description": "Metadata describing a long running folder operation", - "type": "object", - "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" + "response": { + "$ref": "Policy" + }, + "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": "v2/folders/{foldersId}:setIamPolicy", + "id": "cloudresourcemanager.folders.setIamPolicy", + "path": "v2/{+resource}:setIamPolicy" }, - "operationType": { - "description": "The type of this operation.", - "type": "string", - "enumDescriptions": [ - "Operation type not specified.", - "A create folder operation.", - "A move folder operation." + "create": { + "request": { + "$ref": "Folder" + }, + "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.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "enum": [ - "OPERATION_TYPE_UNSPECIFIED", - "CREATE", - "MOVE" - ] + "parameters": { + "parent": { + "location": "query", + "description": "The resource name of the new Folder's parent.\nMust be of the form `folders/{folder_id}` or `organizations/{org_id}`.", + "type": "string" + } + }, + "flatPath": "v2/folders", + "path": "v2/folders", + "id": "cloudresourcemanager.folders.create" }, - "displayName": { - "type": "string", - "description": "The display name of the folder." + "getIamPolicy": { + "path": "v2/{+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", + "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": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field." + } + }, + "flatPath": "v2/folders/{foldersId}:getIamPolicy" }, - "sourceParent": { - "description": "The resource name of the folder's parent.\nOnly applicable when the operation_type is MOVE.", - "type": "string" + "search": { + "request": { + "$ref": "SearchFoldersRequest" + }, + "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`.", + "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": "v2/folders:search", + "path": "v2/folders:search", + "id": "cloudresourcemanager.folders.search" } } - }, - "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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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" } }, - "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" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } + "parameters": { + "$.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": { + "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": { + "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": { + "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": { + "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": { + "type": "string", + "location": "query", + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "type": "string", + "location": "query" } }, - "rootUrl": "https://cloudresourcemanager.googleapis.com/", - "ownerDomain": "google.com", - "name": "cloudresourcemanager", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Cloud Resource Manager API" + "version": "v2", + "baseUrl": "https://cloudresourcemanager.googleapis.com/", + "servicePath": "", + "description": "The Google Cloud Resource Manager API provides methods for creating, reading, and updating project metadata.", + "kind": "discovery#restDescription" } diff --git a/DiscoveryJson/cloudresourcemanager_v2beta1.json b/DiscoveryJson/cloudresourcemanager_v2beta1.json index fe92e53230..bca54a2ba1 100644 --- a/DiscoveryJson/cloudresourcemanager_v2beta1.json +++ b/DiscoveryJson/cloudresourcemanager_v2beta1.json @@ -1,541 +1,105 @@ { - "documentationLink": "https://cloud.google.com/resource-manager", - "revision": "20180502", - "id": "cloudresourcemanager:v2beta1", - "discoveryVersion": "v1", - "schemas": { - "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": { - "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" - } - }, - "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", - "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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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" - }, - "FolderOperation": { - "description": "Metadata describing a long running folder operation", - "type": "object", - "properties": { - "operationType": { - "enumDescriptions": [ - "Operation type not specified.", - "A create folder operation.", - "A move folder operation." - ], - "enum": [ - "OPERATION_TYPE_UNSPECIFIED", - "CREATE", - "MOVE" - ], - "description": "The type of this operation.", - "type": "string" - }, - "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" - }, - "FolderOperationError": { - "description": "A classification of the Folder Operation error.", - "type": "object", - "properties": { - "errorMessageId": { - "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" - ], - "description": "The type of operation error experienced.", - "type": "string", - "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." - ] - } - }, - "id": "FolderOperationError" - }, - "Operation": { - "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", - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object" - }, - "AuditConfig": { - "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.", - "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\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.", - "type": "object" - }, - "ListFoldersResponse": { - "description": "The ListFolders response message.", - "type": "object", - "properties": { - "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" - }, - "folders": { - "description": "A possibly paginated list of Folders that are direct descendants of\nthe specified parent resource.", - "type": "array", - "items": { - "$ref": "Folder" - } - } - }, - "id": "ListFoldersResponse" - }, - "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" - } - }, - "id": "MoveFolderRequest" - }, - "SearchFoldersResponse": { - "description": "The response message for searching folders.", - "type": "object", - "properties": { - "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" - }, - "folders": { - "description": "A possibly paginated folder search results.\nthe specified parent resource.", - "type": "array", - "items": { - "$ref": "Folder" - } - } - }, - "id": "SearchFoldersResponse" - }, - "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" - }, - "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": { - "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" - }, - "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` .\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" - }, - "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" - } - }, - "id": "SearchFoldersRequest" - }, - "Folder": { - "description": "A Folder in an Organization's resource hierarchy, used to\norganize that Organization's resources.", - "type": "object", - "properties": { - "createTime": { - "description": "Output only. Timestamp when the Folder was created. Assigned by the server.", - "format": "google-datetime", - "type": "string" - }, - "lifecycleState": { - "description": "Output only. The lifecycle state of the folder.\nUpdates to the lifecycle_state must be performed via\nDeleteFolder and\nUndeleteFolder.", - "type": "string", - "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" - ] - }, - "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}])?.", - "type": "string" - }, - "parent": { - "description": "The Folder’s parent's resource name.\nUpdates to the folder's parent must be performed via\nMoveFolder.", - "type": "string" - } - }, - "id": "Folder" - }, - "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" - }, - "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" - } - }, - "id": "ProjectCreationStatus" - }, - "TestIamPermissionsResponse": { - "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.", - "type": "object" - }, - "GetIamPolicyRequest": { - "description": "Request message for `GetIamPolicy` method.", - "type": "object", - "properties": {}, - "id": "GetIamPolicyRequest" - }, - "UndeleteFolderRequest": { - "description": "The UndeleteFolder request message.", - "type": "object", - "properties": {}, - "id": "UndeleteFolderRequest" - }, - "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": { - "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" - ] - }, - "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" - } - }, - "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": "Cloud Resource Manager API", - "ownerName": "Google", "resources": { "folders": { "methods": { "list": { + "flatPath": "v2beta1/folders", + "path": "v2beta1/folders", + "id": "cloudresourcemanager.folders.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", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], "parameters": { - "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": { - "location": "query", - "description": "Controls whether Folders in the\nDELETE_REQUESTED\nstate should be returned. Defaults to false. This field is optional.", - "type": "boolean" - }, "pageToken": { + "location": "query", "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" + "type": "string" }, "pageSize": { - "location": "query", "description": "The maximum number of Folders to return in the response.\nThis field is optional.", "format": "int32", - "type": "integer" + "type": "integer", + "location": "query" + }, + "parent": { + "type": "string", + "location": "query", + "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`." + }, + "showDeleted": { + "description": "Controls whether Folders in the\nDELETE_REQUESTED\nstate should be returned. Defaults to false. This field is optional.", + "type": "boolean", + "location": "query" } + } + }, + "create": { + "response": { + "$ref": "Operation" }, + "parameterOrder": [], + "httpMethod": "POST", "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" + "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.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." + "id": "cloudresourcemanager.folders.create", + "request": { + "$ref": "Folder" + }, + "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." }, "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.", "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.", - "response": { - "$ref": "Policy" - }, + "httpMethod": "POST", "parameterOrder": [ "resource" ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], + "response": { + "$ref": "Policy" + }, "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" + "type": "string", + "pattern": "^folders/[^/]+$", + "location": "path" } }, - "flatPath": "v2beta1/folders/{foldersId}:setIamPolicy", - "path": "v2beta1/{+resource}:setIamPolicy", - "id": "cloudresourcemanager.folders.setIamPolicy" - }, - "create": { - "request": { - "$ref": "Folder" - }, - "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.", - "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" + "flatPath": "v2beta1/folders/{foldersId}:setIamPolicy", + "id": "cloudresourcemanager.folders.setIamPolicy", + "path": "v2beta1/{+resource}:setIamPolicy" }, "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", + "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" }, @@ -543,75 +107,72 @@ "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": "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" + "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": "v2beta1/folders/{foldersId}:getIamPolicy", - "path": "v2beta1/{+resource}:getIamPolicy", - "id": "cloudresourcemanager.folders.getIamPolicy" + } }, "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" }, - "httpMethod": "POST", - "parameterOrder": [], + "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`.", "response": { "$ref": "SearchFoldersResponse" }, - "parameters": {}, + "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", - "id": "cloudresourcemanager.folders.search", - "path": "v2beta1/folders:search" + "path": "v2beta1/folders:search", + "id": "cloudresourcemanager.folders.search" }, "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.", - "request": { - "$ref": "Folder" - }, - "httpMethod": "PATCH", - "parameterOrder": [ - "name" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "response": { - "$ref": "Folder" - }, "parameters": { + "updateMask": { + "description": "Fields to be updated.\nOnly the `display_name` can be updated.", + "format": "google-fieldmask", + "type": "string", + "location": "query" + }, "name": { "description": "Output only. The resource name of the Folder.\nIts format is `folders/{folder_id}`, for example: \"folders/1234\".", "required": true, "type": "string", "pattern": "^folders/[^/]+$", "location": "path" - }, - "updateMask": { - "description": "Fields to be updated.\nOnly the `display_name` can be updated.", - "format": "google-fieldmask", - "type": "string", - "location": "query" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "flatPath": "v2beta1/folders/{foldersId}", + "path": "v2beta1/{+name}", "id": "cloudresourcemanager.folders.patch", - "path": "v2beta1/{+name}" + "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" }, "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.", @@ -624,11 +185,11 @@ "httpMethod": "GET", "parameters": { "name": { + "pattern": "^folders/[^/]+$", "location": "path", "description": "The resource name of the Folder to retrieve.\nMust be of the form `folders/{folder_id}`.", "required": true, - "type": "string", - "pattern": "^folders/[^/]+$" + "type": "string" } }, "scopes": [ @@ -640,48 +201,34 @@ "id": "cloudresourcemanager.folders.get" }, "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.", - "request": { - "$ref": "UndeleteFolderRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Folder" - }, "parameters": { "name": { + "required": true, + "type": "string", "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" + "description": "The resource name of the Folder to undelete.\nMust be of the form `folders/{folder_id}`." } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "flatPath": "v2beta1/folders/{foldersId}:undelete", + "path": "v2beta1/{+name}:undelete", "id": "cloudresourcemanager.folders.undelete", - "path": "v2beta1/{+name}:undelete" - }, - "move": { - "flatPath": "v2beta1/folders/{foldersId}:move", - "path": "v2beta1/{+name}:move", - "id": "cloudresourcemanager.folders.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.", + "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.", "request": { - "$ref": "MoveFolderRequest" + "$ref": "UndeleteFolderRequest" }, "response": { - "$ref": "Operation" + "$ref": "Folder" }, "parameterOrder": [ "name" ], - "httpMethod": "POST", + "httpMethod": "POST" + }, + "move": { "parameters": { "name": { "description": "The resource name of the Folder to move.\nMust be of the form folders/{folder_id}", @@ -693,9 +240,25 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ] + ], + "flatPath": "v2beta1/folders/{foldersId}:move", + "path": "v2beta1/{+name}:move", + "id": "cloudresourcemanager.folders.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.", + "request": { + "$ref": "MoveFolderRequest" + }, + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST" }, "testIamPermissions": { + "path": "v2beta1/{+resource}:testIamPermissions", + "id": "cloudresourcemanager.folders.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.", "request": { "$ref": "TestIamPermissionsRequest" @@ -709,28 +272,27 @@ "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", - "pattern": "^folders/[^/]+$", - "location": "path" + "type": "string" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v2beta1/folders/{foldersId}:testIamPermissions", - "path": "v2beta1/{+resource}:testIamPermissions", - "id": "cloudresourcemanager.folders.testIamPermissions" + "flatPath": "v2beta1/folders/{foldersId}:testIamPermissions" }, "delete": { - "response": { - "$ref": "Folder" - }, + "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.", + "httpMethod": "DELETE", "parameterOrder": [ "name" ], - "httpMethod": "DELETE", + "response": { + "$ref": "Folder" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], @@ -744,105 +306,543 @@ } }, "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." + "path": "v2beta1/{+name}" } } } }, "parameters": { - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "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" }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", + "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": { + "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" }, - "callback": { + "uploadType": { "location": "query", - "description": "JSONP", + "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": { + "location": "query", + "description": "JSONP", + "type": "string" + }, + "alt": { + "enum": [ + "json", + "media", + "proto" + ], "type": "string", "enumDescriptions": [ - "v1 error format", - "v2 error format" + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" ], - "location": "query" + "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" + } + }, + "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": "", + "revision": "20180502", + "documentationLink": "https://cloud.google.com/resource-manager", + "id": "cloudresourcemanager:v2beta1", + "discoveryVersion": "v1", + "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.", + "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.", + "type": "array", + "items": { + "$ref": "AuditLogConfig" + } + } + }, + "id": "AuditConfig" + }, + "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": { + "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": { + "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" + } + }, + "id": "Operation" + }, + "ListFoldersResponse": { + "properties": { + "folders": { + "type": "array", + "items": { + "$ref": "Folder" + }, + "description": "A possibly paginated list of Folders that are direct descendants of\nthe specified parent resource." + }, + "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" + } + }, + "id": "ListFoldersResponse", + "description": "The ListFolders response message.", + "type": "object" + }, + "MoveFolderRequest": { + "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" + } + }, + "id": "MoveFolderRequest", + "description": "The MoveFolder request message." + }, + "SearchFoldersResponse": { + "type": "object", + "properties": { + "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" + }, + "folders": { + "description": "A possibly paginated folder search results.\nthe specified parent resource.", + "type": "array", + "items": { + "$ref": "Folder" + } + } + }, + "id": "SearchFoldersResponse", + "description": "The response message for searching folders." + }, + "SetIamPolicyRequest": { + "id": "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" + } + } + }, + "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": { + "type": "integer", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32" + } + }, + "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": { + "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` .\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" + }, + "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": { + "type": "integer", + "description": "The maximum number of folders to return in the response.\nThis field is optional.", + "format": "int32" + }, + "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" + } + } + }, + "Folder": { + "description": "A Folder in an Organization's resource hierarchy, used to\norganize that Organization's resources.", + "type": "object", + "properties": { + "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}])?.", + "type": "string" + }, + "parent": { + "description": "The Folder’s parent's resource name.\nUpdates to the folder's parent must be performed via\nMoveFolder.", + "type": "string" + }, + "createTime": { + "description": "Output only. Timestamp when the Folder was created. Assigned by the server.", + "format": "google-datetime", + "type": "string" + } + }, + "id": "Folder" }, - "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" + "ProjectCreationStatus": { + "properties": { + "ready": { + "description": "True if the project creation process is complete.", + "type": "boolean" + }, + "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" + } + }, + "id": "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" }, - "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" + "GetIamPolicyRequest": { + "description": "Request message for `GetIamPolicy` method.", + "type": "object", + "properties": {}, + "id": "GetIamPolicyRequest" }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" + "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" }, - "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" + "UndeleteFolderRequest": { + "description": "The UndeleteFolder request message.", + "type": "object", + "properties": {}, + "id": "UndeleteFolderRequest" }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" + "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" }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" + "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" }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" + "FolderOperationError": { + "description": "A classification of the Folder Operation error.", + "type": "object", + "properties": { + "errorMessageId": { + "description": "The type of operation error experienced.", + "type": "string", + "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." + ], + "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" + ] + } + }, + "id": "FolderOperationError" }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" + "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" }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" + "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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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": { + "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" + } + }, + "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" } }, - "version": "v2beta1", - "baseUrl": "https://cloudresourcemanager.googleapis.com/", - "servicePath": "", - "description": "The Google Cloud Resource Manager API provides methods for creating, reading, and updating project metadata.", - "kind": "discovery#restDescription", - "basePath": "" + "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": "Cloud Resource Manager API", + "ownerName": "Google" } diff --git a/DiscoveryJson/cloudshell_v1.json b/DiscoveryJson/cloudshell_v1.json index 1e4985f962..7ac615e009 100644 --- a/DiscoveryJson/cloudshell_v1.json +++ b/DiscoveryJson/cloudshell_v1.json @@ -1,43 +1,22 @@ { - "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": "", - "revision": "20180507", - "documentationLink": "https://cloud.google.com/shell/docs/", "id": "cloudshell:v1", + "documentationLink": "https://cloud.google.com/shell/docs/", + "revision": "20180507", "discoveryVersion": "v1", "version_module": true, "schemas": { "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": { - "sshUsername": { - "description": "Output only. Username that clients should use when initiating SSH sessions\nwith the environment.", - "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.", - "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": { - "enum": [ - "STATE_UNSPECIFIED", - "DISABLED", - "STARTING", - "RUNNING" - ], "description": "Output only. Current execution state of this environment.", "type": "string", "enumDescriptions": [ @@ -45,6 +24,12 @@ "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": { @@ -61,26 +46,37 @@ "type": "integer" }, "id": { - "type": "string", - "description": "Output only. The environment's identifier, which is always \"default\"." - } - } - }, - "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" + "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" + }, + "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" + } } }, - "id": "StartEnvironmentResponse" + "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\"." }, "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", @@ -91,26 +87,33 @@ }, "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" }, + "StartEnvironmentResponse": { + "description": "Message included in the response field of operations returned from\nStartEnvironment once the\noperation is complete.", + "type": "object", + "properties": { + "environment": { + "$ref": "Environment", + "description": "Environment that was started." + } + }, + "id": "StartEnvironmentResponse" + }, + "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 `{}`." + }, "PublicKey": { - "description": "A public SSH key, corresponding to a private SSH key held by the client.", "type": "object", "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`." + "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.", @@ -118,6 +121,14 @@ "type": "string" }, "format": { + "enumDescriptions": [ + "Unknown format. Do not use.", + "`ssh-dss` key format (see RFC4253).", + "`ssh-rsa` key format (see RFC4253).", + "`ecdsa-sha2-nistp256` key format (see RFC5656).", + "`ecdsa-sha2-nistp384` key format (see RFC5656).", + "`ecdsa-sha2-nistp521` key format (see RFC5656)." + ], "enum": [ "FORMAT_UNSPECIFIED", "SSH_DSS", @@ -127,30 +138,17 @@ "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).", - "`ssh-rsa` key format (see RFC4253).", - "`ecdsa-sha2-nistp256` key format (see RFC5656).", - "`ecdsa-sha2-nistp384` key format (see RFC5656).", - "`ecdsa-sha2-nistp521` key format (see RFC5656)." - ] + "type": "string" } }, - "id": "PublicKey" - }, - "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": "PublicKey", + "description": "A public SSH key, corresponding to a private SSH key held by the client." }, "CancelOperationRequest": { - "id": "CancelOperationRequest", - "description": "The request message for Operations.CancelOperation.", "type": "object", - "properties": {} + "properties": {}, + "id": "CancelOperationRequest", + "description": "The request message for Operations.CancelOperation." }, "StartEnvironmentMetadata": { "description": "Message included in the metadata field of operations returned from\nStartEnvironment.", @@ -175,22 +173,28 @@ }, "id": "StartEnvironmentMetadata" }, - "Operation": { - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", "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": { - "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" + "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" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "type": "object", + "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" @@ -200,40 +204,34 @@ "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" - }, - "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" - }, - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", - "type": "object", - "properties": { - "operations": { - "type": "array", - "items": { - "$ref": "Operation" - }, - "description": "A list of operations that matches the specified filter in the request." + } }, - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" + "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." + }, + "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" + } } }, - "id": "ListOperationsResponse" + "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" + "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 Shell", "auth": { "oauth2": { @@ -255,44 +253,41 @@ "operations": { "methods": { "cancel": { + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], "response": { "$ref": "Empty" }, - "parameterOrder": [ - "name" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "httpMethod": "POST", "parameters": { "name": { - "location": "path", - "description": "The name of the operation resource to be cancelled.", "required": true, "type": "string", - "pattern": "^operations/.+$" + "pattern": "^operations/.+$", + "location": "path", + "description": "The name of the operation resource to be cancelled." } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "flatPath": "v1/operations/{operationsId}:cancel", - "path": "v1/{+name}:cancel", "id": "cloudshell.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`.", + "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`." }, "delete": { + "httpMethod": "DELETE", "response": { "$ref": "Empty" }, "parameterOrder": [ "name" ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { "name": { "description": "The name of the operation resource to be deleted.", @@ -302,26 +297,23 @@ "location": "path" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "flatPath": "v1/operations/{operationsId}", - "path": "v1/{+name}", "id": "cloudshell.operations.delete", + "path": "v1/{+name}", "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": { - "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" ], + "httpMethod": "GET", "parameters": { - "filter": { - "description": "The standard list filter.", - "type": "string", - "location": "query" - }, "name": { "description": "The name of the operation's parent resource.", "required": true, @@ -335,34 +327,26 @@ "location": "query" }, "pageSize": { + "type": "integer", "location": "query", "description": "The standard list page size.", - "format": "int32", - "type": "integer" + "format": "int32" + }, + "filter": { + "location": "query", + "description": "The standard list filter.", + "type": "string" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "flatPath": "v1/operations", + "path": "v1/{+name}", "id": "cloudshell.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": { - "flatPath": "v1/operations/{operationsId}", - "path": "v1/{+name}", - "id": "cloudshell.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": { "location": "path", @@ -371,70 +355,49 @@ "type": "string", "pattern": "^operations/.+$" } - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/operations/{operationsId}", + "id": "cloudshell.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", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ] } } } }, "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": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - }, - "oauth_token": { - "type": "string", - "location": "query", - "description": "OAuth 2.0 token for the current user." - }, "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" + "default": "true", + "location": "query" }, "uploadType": { + "location": "query", "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" + "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": { + "type": "string", "enumDescriptions": [ "v1 error format", "v2 error format" @@ -444,16 +407,14 @@ "1", "2" ], - "description": "V1 error format.", - "type": "string" + "description": "V1 error format." }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], + "callback": { + "description": "JSONP", "type": "string", + "location": "query" + }, + "alt": { "enumDescriptions": [ "Responses with Content-Type of application/json", "Media download with context-dependent Content-Type", @@ -461,7 +422,46 @@ ], "location": "query", "description": "Data format for response.", - "default": "json" + "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": { + "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": { + "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": { + "description": "OAuth bearer token.", + "type": "string", + "location": "query" } - } + }, + "version": "v1", + "baseUrl": "https://cloudshell.googleapis.com/" } diff --git a/DiscoveryJson/cloudshell_v1alpha1.json b/DiscoveryJson/cloudshell_v1alpha1.json index 442a67a819..231c6d53cd 100644 --- a/DiscoveryJson/cloudshell_v1alpha1.json +++ b/DiscoveryJson/cloudshell_v1alpha1.json @@ -1,193 +1,24 @@ { - "parameters": { - "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": { - "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": { - "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": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "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": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - } - }, - "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": "", - "id": "cloudshell:v1alpha1", - "documentationLink": "https://cloud.google.com/shell/docs/", - "revision": "20180507", - "discoveryVersion": "v1", - "version_module": true, "schemas": { - "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": { - "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" - }, - "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" - } - }, - "id": "Environment" - }, "CreatePublicKeyRequest": { + "description": "Request message for CreatePublicKey.", + "type": "object", "properties": { "key": { "$ref": "PublicKey", "description": "Key that should be added to the environment." } }, - "id": "CreatePublicKeyRequest", - "description": "Request message for CreatePublicKey.", - "type": "object" - }, - "StartEnvironmentResponse": { - "description": "Message included in the response field of operations returned from\nStartEnvironment once the\noperation is complete.", - "type": "object", - "properties": { - "environment": { - "$ref": "Environment", - "description": "Environment that was started." - } - }, - "id": "StartEnvironmentResponse" + "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" + "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.", @@ -199,20 +30,43 @@ }, "type": "object" } + }, + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + } + } + }, + "StartEnvironmentResponse": { + "description": "Message included in the response field of operations returned from\nStartEnvironment once the\noperation is complete.", + "type": "object", + "properties": { + "environment": { + "$ref": "Environment", + "description": "Environment that was started." } }, - "id": "Status" + "id": "StartEnvironmentResponse" }, "StartEnvironmentRequest": { - "description": "Request message for StartEnvironment.", - "type": "object", "properties": {}, - "id": "StartEnvironmentRequest" + "id": "StartEnvironmentRequest", + "description": "Request message for StartEnvironment.", + "type": "object" }, "PublicKey": { - "description": "A public SSH key, corresponding to a private SSH key held by the client.", "type": "object", "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": { + "type": "string", + "description": "Required. Content of this key.", + "format": "byte" + }, "format": { "enumDescriptions": [ "Unknown format. Do not use.", @@ -232,18 +86,10 @@ ], "description": "Required. Format of this key's content.", "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" - }, - "key": { - "description": "Required. Content of this key.", - "format": "byte", - "type": "string" } }, - "id": "PublicKey" + "id": "PublicKey", + "description": "A public SSH key, corresponding to a private SSH key held by the client." }, "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 `{}`.", @@ -256,6 +102,8 @@ "type": "object", "properties": { "state": { + "description": "Current state of the environment being started.", + "type": "string", "enumDescriptions": [ "The environment's start state is unknown.", "The environment is in the process of being started, but no additional\ndetails are available.", @@ -267,21 +115,32 @@ "STARTING", "UNARCHIVING_DISK", "FINISHED" - ], - "description": "Current state of the environment being started.", - "type": "string" + ] } }, "id": "StartEnvironmentMetadata" }, "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", "type": "object", "properties": { - "response": { + "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" + }, + "response": { + "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`.", "type": "object" }, @@ -292,28 +151,70 @@ "error": { "$ref": "Status", "description": "The error result of the operation in case of failure or cancellation." + } + }, + "id": "Operation" + }, + "Environment": { + "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" + } }, - "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" + "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" }, - "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" + "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`.", + "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": "Operation", - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call." + "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\"." } }, "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" + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" }, "canonicalName": "Cloud Shell", "auth": { @@ -338,34 +239,35 @@ "environments": { "methods": { "start": { - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], + "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" + }, "response": { "$ref": "Operation" }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", "parameters": { "name": { + "required": true, + "type": "string", "pattern": "^users/[^/]+/environments/[^/]+$", "location": "path", - "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" + "description": "Name of the resource that should be started, for example\n`users/me/environments/default` or\n`users/someone@example.com/environments/default`." } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "flatPath": "v1alpha1/users/{usersId}/environments/{environmentsId}:start", - "id": "cloudshell.users.environments.start", "path": "v1alpha1/{+name}: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" - } + "id": "cloudshell.users.environments.start" }, "get": { + "description": "Gets an environment. Returns NOT_FOUND if the environment does not exist.", "response": { "$ref": "Environment" }, @@ -387,10 +289,16 @@ ], "flatPath": "v1alpha1/users/{usersId}/environments/{environmentsId}", "path": "v1alpha1/{+name}", - "id": "cloudshell.users.environments.get", - "description": "Gets an environment. Returns NOT_FOUND if the environment does not exist." + "id": "cloudshell.users.environments.get" }, "patch": { + "flatPath": "v1alpha1/users/{usersId}/environments/{environmentsId}", + "id": "cloudshell.users.environments.patch", + "path": "v1alpha1/{+name}", + "description": "Updates an existing environment.", + "request": { + "$ref": "Environment" + }, "httpMethod": "PATCH", "parameterOrder": [ "name" @@ -399,62 +307,55 @@ "$ref": "Environment" }, "parameters": { + "name": { + "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", + "pattern": "^users/[^/]+/environments/[^/]+$" + }, "updateMask": { "location": "query", "description": "Mask specifying which fields in the environment should be updated.", "format": "google-fieldmask", "type": "string" - }, - "name": { - "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", - "pattern": "^users/[^/]+/environments/[^/]+$", - "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1alpha1/users/{usersId}/environments/{environmentsId}", - "id": "cloudshell.users.environments.patch", - "path": "v1alpha1/{+name}", - "description": "Updates an existing environment.", - "request": { - "$ref": "Environment" - } + ] } }, "resources": { "publicKeys": { "methods": { "create": { - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], + "request": { + "$ref": "CreatePublicKeyRequest" + }, + "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.", "response": { "$ref": "PublicKey" }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "parent": { + "pattern": "^users/[^/]+/environments/[^/]+$", "location": "path", "description": "Parent resource name, e.g. `users/me/environments/default`.", "required": true, - "type": "string", - "pattern": "^users/[^/]+/environments/[^/]+$" + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "flatPath": "v1alpha1/users/{usersId}/environments/{environmentsId}/publicKeys", - "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" - } + "id": "cloudshell.users.environments.publicKeys.create" }, "delete": { "response": { @@ -469,11 +370,11 @@ ], "parameters": { "name": { + "pattern": "^users/[^/]+/environments/[^/]+/publicKeys/[^/]+$", "location": "path", "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/[^/]+$" + "type": "string" } }, "flatPath": "v1alpha1/users/{usersId}/environments/{environmentsId}/publicKeys/{publicKeysId}", @@ -487,5 +388,104 @@ } } } - } + }, + "parameters": { + "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": { + "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": { + "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" + } + }, + "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": "", + "id": "cloudshell:v1alpha1", + "documentationLink": "https://cloud.google.com/shell/docs/", + "revision": "20180507", + "discoveryVersion": "v1", + "version_module": true } diff --git a/DiscoveryJson/cloudtasks_v2beta2.json b/DiscoveryJson/cloudtasks_v2beta2.json index 0e85616a45..8ff592c80d 100644 --- a/DiscoveryJson/cloudtasks_v2beta2.json +++ b/DiscoveryJson/cloudtasks_v2beta2.json @@ -1,814 +1,300 @@ { - "ownerName": "Google", - "resources": { - "projects": { - "resources": { - "locations": { - "methods": { - "list": { - "response": { - "$ref": "ListLocationsResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "filter": { - "description": "The standard list filter.", - "type": "string", - "location": "query" - }, - "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" - } - }, - "flatPath": "v2beta2/projects/{projectsId}/locations", - "path": "v2beta2/{+name}/locations", - "id": "cloudtasks.projects.locations.list", - "description": "Lists information about the supported locations for this service." - }, - "get": { - "description": "Gets 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" - ], - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}", - "path": "v2beta2/{+name}", - "id": "cloudtasks.projects.locations.get" - } - }, - "resources": { - "queues": { - "methods": { - "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 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", - "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", - "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}:testIamPermissions", - "path": "v2beta2/{+resource}:testIamPermissions", - "id": "cloudtasks.projects.locations.queues.testIamPermissions" - }, - "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.", - "request": { - "$ref": "PauseQueueRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Queue" - }, - "parameters": { - "name": { - "location": "path", - "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/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}:pause", - "id": "cloudtasks.projects.locations.queues.pause", - "path": "v2beta2/{+name}:pause" - }, - "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.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "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" - }, - "list": { - "httpMethod": "GET", - "response": { - "$ref": "ListQueuesResponse" - }, - "parameterOrder": [ - "parent" - ], - "parameters": { - "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" - }, - "pageToken": { - "location": "query", - "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.", - "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", - "type": "integer", - "location": "query" - }, - "parent": { - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path", - "description": "Required.\n\nThe location name.\nFor example: `projects/PROJECT_ID/locations/LOCATION_ID`", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues", - "id": "cloudtasks.projects.locations.queues.list", - "path": "v2beta2/{+parent}/queues", - "description": "Lists queues.\n\nQueues are returned in lexicographical order." - }, - "create": { - "response": { - "$ref": "Queue" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues", - "path": "v2beta2/{+parent}/queues", - "id": "cloudtasks.projects.locations.queues.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)\nbefore using this method." - }, - "setIamPolicy": { - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}:setIamPolicy", - "id": "cloudtasks.projects.locations.queues.setIamPolicy", - "path": "v2beta2/{+resource}: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`", - "request": { - "$ref": "SetIamPolicyRequest" - }, - "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" - ] - }, - "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).", - "request": { - "$ref": "ResumeQueueRequest" - }, - "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" - }, - "getIamPolicy": { - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "resource": { - "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", - "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": "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`" - }, - "get": { - "response": { - "$ref": "Queue" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "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", - "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}", - "path": "v2beta2/{+name}", - "id": "cloudtasks.projects.locations.queues.get", - "description": "Gets a queue." - }, - "patch": { - "response": { - "$ref": "Queue" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "parameters": { - "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", - "type": "string", - "location": "query" - }, - "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.", - "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.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.", - "request": { - "$ref": "Queue" - } - }, - "purge": { - "response": { - "$ref": "Queue" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "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" - ], - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}:purge", - "path": "v2beta2/{+name}:purge", - "id": "cloudtasks.projects.locations.queues.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.", - "request": { - "$ref": "PurgeQueueRequest" - } - } - }, - "resources": { - "tasks": { - "methods": { - "list": { - "response": { - "$ref": "ListTasksResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "responseView": { - "enum": [ - "VIEW_UNSPECIFIED", - "BASIC", - "FULL" - ], - "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.", - "type": "string", - "location": "query" - }, - "orderBy": { - "location": "query", - "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" - }, - "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.", - "type": "string", - "location": "query" - }, - "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", - "type": "integer", - "location": "query" - }, - "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" - } - }, - "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", - "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." - }, - "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" - }, - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "Task" - }, - "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.", - "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}/tasks", - "id": "cloudtasks.projects.locations.queues.tasks.create", - "path": "v2beta2/{+parent}/tasks" - }, - "cancelLease": { - "request": { - "$ref": "CancelLeaseRequest" - }, - "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.", - "response": { - "$ref": "Task" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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" - } - }, - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks/{tasksId}:cancelLease", - "path": "v2beta2/{+name}:cancelLease", - "id": "cloudtasks.projects.locations.queues.tasks.cancelLease" - }, - "run": { - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks/{tasksId}:run", - "path": "v2beta2/{+name}:run", - "id": "cloudtasks.projects.locations.queues.tasks.run", - "request": { - "$ref": "RunTaskRequest" - }, - "description": "Forces a task to run now.\n\nWhen this method is called, Cloud Tasks will dispatch the task, even if\nthe task is already running, the queue has reached its RateLimits or\nis PAUSED.\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\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\ntarget, 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's RetryConfig.\n\nRunTask returns\nNOT_FOUND when it is called on a\ntask that has already succeeded or permanently failed.\n\nRunTask cannot be called on a\npull task.", - "response": { - "$ref": "Task" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "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", - "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+/tasks/[^/]+$" - } - } - }, - "acknowledge": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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\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.", - "request": { - "$ref": "AcknowledgeTaskRequest" - } - }, - "renewLease": { - "path": "v2beta2/{+name}:renewLease", - "id": "cloudtasks.projects.locations.queues.tasks.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.", - "request": { - "$ref": "RenewLeaseRequest" - }, - "response": { - "$ref": "Task" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks/{tasksId}:renewLease" - }, - "get": { - "description": "Gets a task.", - "httpMethod": "GET", - "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" - }, - "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.", - "type": "string", - "location": "query", - "enum": [ - "VIEW_UNSPECIFIED", - "BASIC", - "FULL" - ] - } - }, - "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", - "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`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$" - } - }, - "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\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." - }, - "delete": { - "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks/{tasksId}", - "path": "v2beta2/{+name}", - "id": "cloudtasks.projects.locations.queues.tasks.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", - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - } - } - } + "basePath": "", + "revision": "20180503", + "id": "cloudtasks:v2beta2", + "documentationLink": "https://cloud.google.com/cloud-tasks/", + "discoveryVersion": "v1", + "version_module": true, + "schemas": { + "RenewLeaseRequest": { + "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 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." + ], + "enum": [ + "VIEW_UNSPECIFIED", + "BASIC", + "FULL" + ], + "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.", + "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" + }, + "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" + } + }, + "id": "RenewLeaseRequest", + "description": "Request message for renewing a lease using\nRenewLease.", + "type": "object" + }, + "TaskStatus": { + "description": "Status of the task.", + "type": "object", + "properties": { + "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" + }, + "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 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" + }, + "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." + }, + "httpMethod": { + "enum": [ + "HTTP_METHOD_UNSPECIFIED", + "POST", + "GET", + "HEAD", + "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).", + "type": "string", + "enumDescriptions": [ + "HTTP method unspecified", + "HTTP Post", + "HTTP Get", + "HTTP Head", + "HTTP Put", + "HTTP Delete" + ] + }, + "payload": { + "description": "Payload.\n\nThe payload will be sent as the HTTP message body. A message\nbody, and thus a payload, is allowed only if the HTTP method is\nPOST or PUT. It is an error to set a data payload on a task with\nan incompatible HttpMethod.", + "format": "byte", + "type": "string" + }, + "relativeUrl": { + "description": "The relative URL.\n\nThe relative URL must begin with \"/\" and must be a valid HTTP relative URL.\nIt can contain a path and query string arguments.\nIf the relative URL is empty, then the root path \"/\" will be used.\nNo spaces are allowed, and the maximum length allowed is 2083 characters.", + "type": "string" + }, + "headers": { + "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", + "additionalProperties": { + "type": "string" } } - } - } - }, - "parameters": { - "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": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" + }, + "id": "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\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.", + "type": "object" }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" + "GetIamPolicyRequest": { + "description": "Request message for `GetIamPolicy` method.", + "type": "object", + "properties": {}, + "id": "GetIamPolicyRequest" }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" + "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" }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" + "RetryConfig": { + "description": "Retry config.\n\nThese settings determine how a failed task attempt is retried.", + "type": "object", + "properties": { + "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" + }, + "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" + }, + "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" + }, + "maxDoublings": { + "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" + }, + "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" + }, + "unlimitedAttempts": { + "description": "If true, then the number of attempts is unlimited.", + "type": "boolean" + } + }, + "id": "RetryConfig" }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" + "PullTarget": { + "properties": {}, + "id": "PullTarget", + "description": "Pull target.", + "type": "object" }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" + "ResumeQueueRequest": { + "description": "Request message for ResumeQueue.", + "type": "object", + "properties": {}, + "id": "ResumeQueueRequest" }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" + "LeaseTasksResponse": { + "description": "Response message for leasing tasks using LeaseTasks.", + "type": "object", + "properties": { + "tasks": { + "description": "The leased tasks.", + "type": "array", + "items": { + "$ref": "Task" + } + } + }, + "id": "LeaseTasksResponse" }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" + "CreateTaskRequest": { + "description": "Request message for CreateTask.", + "type": "object", + "properties": { + "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." + }, + "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 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." + ], + "enum": [ + "VIEW_UNSPECIFIED", + "BASIC", + "FULL" + ], + "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.", + "type": "string" + } + }, + "id": "CreateTaskRequest" }, - "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" - ] - } - }, - "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": "", - "revision": "20180503", - "documentationLink": "https://cloud.google.com/cloud-tasks/", - "id": "cloudtasks:v2beta2", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "SetIamPolicyRequest": { - "description": "Request message for `SetIamPolicy` method.", + "ListTasksResponse": { + "description": "Response message for listing tasks using ListTasks.", "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" + "tasks": { + "description": "The list of tasks.", + "type": "array", + "items": { + "$ref": "Task" + } + }, + "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" } }, - "id": "SetIamPolicyRequest" + "id": "ListTasksResponse" }, - "AppEngineRouting": { + "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": { - "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.", + "appEngineHttpTarget": { + "$ref": "AppEngineHttpTarget", + "description": "App Engine HTTP target.\n\nAn App Engine queue is a queue that has an 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 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" }, - "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.", + "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": { + "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." + ], + "enum": [ + "STATE_UNSPECIFIED", + "RUNNING", + "PAUSED", + "DISABLED" + ], + "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`.", + "type": "string" + }, + "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" }, + "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).", + "$ref": "RateLimits" + }, + "pullTarget": { + "description": "Pull target.\n\nA pull queue is a queue that has a PullTarget.", + "$ref": "PullTarget" + } + }, + "id": "Queue" + }, + "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" + }, + "AppEngineRouting": { + "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\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" @@ -816,6 +302,14 @@ "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\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" + }, + "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" } }, "id": "AppEngineRouting", @@ -843,13 +337,6 @@ "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" @@ -869,28 +356,19 @@ }, "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" }, "LeaseTasksRequest": { - "description": "Request message for leasing tasks using LeaseTasks.", - "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 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." - ], - "enum": [ - "VIEW_UNSPECIFIED", - "BASIC", - "FULL" - ], - "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.", - "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\nschedule_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" @@ -904,13 +382,27 @@ "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" + }, + "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 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." + ], + "enum": [ + "VIEW_UNSPECIFIED", + "BASIC", + "FULL" + ], + "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.", + "type": "string" } }, - "id": "LeaseTasksRequest" + "id": "LeaseTasksRequest", + "description": "Request message for leasing tasks using LeaseTasks.", + "type": "object" }, "AcknowledgeTaskRequest": { - "description": "Request message for acknowledging a task using\nAcknowledgeTask.", - "type": "object", "properties": { "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.", @@ -918,7 +410,9 @@ "type": "string" } }, - "id": "AcknowledgeTaskRequest" + "id": "AcknowledgeTaskRequest", + "description": "Request message for acknowledging a task using\nAcknowledgeTask.", + "type": "object" }, "ListQueuesResponse": { "description": "Response message for ListQueues.", @@ -952,24 +446,6 @@ }, "id": "TestIamPermissionsRequest" }, - "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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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", @@ -994,6 +470,24 @@ }, "id": "Policy" }, + "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" + }, "CancelLeaseRequest": { "description": "Request message for canceling a lease using\nCancelLease.", "type": "object", @@ -1004,18 +498,18 @@ "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 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." + ], "enum": [ "VIEW_UNSPECIFIED", "BASIC", "FULL" ], "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.", - "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 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": "CancelLeaseRequest" @@ -1030,8 +524,8 @@ "type": "string" }, "responseStatus": { - "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.", - "$ref": "Status" + "$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.", @@ -1047,9 +541,12 @@ "id": "AttemptStatus" }, "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.\n\nNote: The debugging command, RunTask, will run a task\neven if the queue has reached its RateLimits.", - "type": "object", "properties": { + "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.\n\nThis field is output only for\n[pull queues](google.cloud.tasks.v2beta2.PullTarget) and always -1, which\nindicates no limit. No other queue types can have `max_concurrent_tasks`\nset to -1.\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", @@ -1059,14 +556,17 @@ "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.\n\nThis field is output only for\n[pull queues](google.cloud.tasks.v2beta2.PullTarget) and always -1, which\nindicates no limit. No other queue types can have `max_concurrent_tasks`\nset to -1.\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" + "id": "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.\n\nNote: The debugging command, RunTask, will run a task\neven if the queue has reached its RateLimits.", + "type": "object" + }, + "PurgeQueueRequest": { + "description": "Request message for PurgeQueue.", + "type": "object", + "properties": {}, + "id": "PurgeQueueRequest" }, "PauseQueueRequest": { "description": "Request message for PauseQueue.", @@ -1074,23 +574,36 @@ "properties": {}, "id": "PauseQueueRequest" }, - "PurgeQueueRequest": { - "properties": {}, - "id": "PurgeQueueRequest", - "description": "Request message for PurgeQueue.", - "type": "object" + "RunTaskRequest": { + "description": "Request message for forcing a task to run now using\nRunTask.", + "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 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." + ], + "enum": [ + "VIEW_UNSPECIFIED", + "BASIC", + "FULL" + ], + "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.", + "type": "string" + } + }, + "id": "RunTaskRequest" }, "Task": { - "description": "A unit of scheduled work.", - "type": "object", "properties": { "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" }, "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." + "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.", + "$ref": "AppEngineHttpRequest" }, "view": { "enumDescriptions": [ @@ -1107,8 +620,8 @@ "type": "string" }, "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.", - "$ref": "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.", @@ -1121,390 +634,877 @@ "type": "string" }, "status": { - "description": "Output only. The task status.", - "$ref": "TaskStatus" - } - }, - "id": "Task" - }, - "RunTaskRequest": { - "description": "Request message for forcing a task to run now using\nRunTask.", - "type": "object", - "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.", - "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 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." - ], - "enum": [ - "VIEW_UNSPECIFIED", - "BASIC", - "FULL" - ] + "$ref": "TaskStatus", + "description": "Output only. The task status." } }, - "id": "RunTaskRequest" + "id": "Task", + "description": "A unit of scheduled work.", + "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.", "type": "object", "properties": { - "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" - }, "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" } }, "id": "PullMessage" }, "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", + "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": { + "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` .\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" + } + }, + "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" + } + } + } + }, + "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": { + "response": { + "$ref": "ListLocationsResponse" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "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" + } + }, + "flatPath": "v2beta2/projects/{projectsId}/locations", + "path": "v2beta2/{+name}/locations", + "id": "cloudtasks.projects.locations.list", + "description": "Lists information about the supported locations for this service." }, - "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" - }, - "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` .\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" + "get": { + "httpMethod": "GET", + "response": { + "$ref": "Location" + }, + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name for the location.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}", + "id": "cloudtasks.projects.locations.get", + "path": "v2beta2/{+name}", + "description": "Gets information about a location." + } + }, + "resources": { + "queues": { + "methods": { + "patch": { + "response": { + "$ref": "Queue" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "PATCH", + "parameters": { + "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" + }, + "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.", + "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.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.", + "request": { + "$ref": "Queue" + } + }, + "get": { + "response": { + "$ref": "Queue" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "parameters": { + "name": { + "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", + "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.get", + "description": "Gets a queue." + }, + "purge": { + "path": "v2beta2/{+name}:purge", + "id": "cloudtasks.projects.locations.queues.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.", + "response": { + "$ref": "Queue" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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" + } + }, + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}:purge" + }, + "testIamPermissions": { + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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/[^/]+/locations/[^/]+/queues/[^/]+$" + } + }, + "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 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", + "path": "v2beta2/{+name}:pause", + "id": "cloudtasks.projects.locations.queues.pause", + "request": { + "$ref": "PauseQueueRequest" + }, + "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.", + "response": { + "$ref": "Queue" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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" + } + } + }, + "delete": { + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "parameters": { + "name": { + "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" + } + }, + "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)\nbefore using this method." + }, + "list": { + "description": "Lists queues.\n\nQueues are returned in lexicographical order.", + "response": { + "$ref": "ListQueuesResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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\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.", + "type": "string", + "location": "query" + }, + "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", + "type": "integer", + "location": "query" + }, + "parent": { + "description": "Required.\n\nThe location name.\nFor example: `projects/PROJECT_ID/locations/LOCATION_ID`", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "location": "path" + }, + "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" + } + }, + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues", + "path": "v2beta2/{+parent}/queues", + "id": "cloudtasks.projects.locations.queues.list" + }, + "create": { + "path": "v2beta2/{+parent}/queues", + "id": "cloudtasks.projects.locations.queues.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)\nbefore using this method.", + "response": { + "$ref": "Queue" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues" + }, + "setIamPolicy": { + "response": { + "$ref": "Policy" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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/[^/]+/queues/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}:setIamPolicy", + "path": "v2beta2/{+resource}:setIamPolicy", + "id": "cloudtasks.projects.locations.queues.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": { + "path": "v2beta2/{+name}:resume", + "id": "cloudtasks.projects.locations.queues.resume", + "request": { + "$ref": "ResumeQueueRequest" + }, + "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).", + "response": { + "$ref": "Queue" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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" + } + }, + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}:resume" + }, + "getIamPolicy": { + "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 requested.\nSee the operation documentation for the appropriate value for this field.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$" + } + }, + "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`" + } + }, + "resources": { + "tasks": { + "methods": { + "acknowledge": { + "request": { + "$ref": "AcknowledgeTaskRequest" + }, + "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.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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" + } + }, + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks/{tasksId}:acknowledge", + "path": "v2beta2/{+name}:acknowledge", + "id": "cloudtasks.projects.locations.queues.tasks.acknowledge" + }, + "renewLease": { + "response": { + "$ref": "Task" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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" + } + }, + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks/{tasksId}:renewLease", + "path": "v2beta2/{+name}:renewLease", + "id": "cloudtasks.projects.locations.queues.tasks.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 the task's schedule_time." + }, + "get": { + "description": "Gets a task.", + "response": { + "$ref": "Task" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "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": { + "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 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.", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks/{tasksId}", + "path": "v2beta2/{+name}", + "id": "cloudtasks.projects.locations.queues.tasks.get" + }, + "lease": { + "request": { + "$ref": "LeaseTasksRequest" + }, + "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.", + "response": { + "$ref": "LeaseTasksResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "parent": { + "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" + } + }, + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks:lease", + "path": "v2beta2/{+parent}/tasks:lease", + "id": "cloudtasks.projects.locations.queues.tasks.lease" + }, + "delete": { + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks/{tasksId}", + "id": "cloudtasks.projects.locations.queues.tasks.delete", + "path": "v2beta2/{+name}", + "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.", + "httpMethod": "DELETE", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "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", + "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+/tasks/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "id": "cloudtasks.projects.locations.queues.tasks.list", + "path": "v2beta2/{+parent}/tasks", + "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.", + "httpMethod": "GET", + "response": { + "$ref": "ListTasksResponse" + }, + "parameterOrder": [ + "parent" + ], + "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 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.", + "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\nnext_page_token returned\nfrom the previous call to ListTasks\nmethod.\n\nThe page token is valid for only 2 hours.", + "type": "string", + "location": "query" + }, + "pageSize": { + "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\nnext_page_token in the\nresponse to determine if more tasks exist.", + "format": "int32", + "type": "integer" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/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" + }, + "httpMethod": "POST", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "Task" + }, + "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`\n\nThe queue must already exist.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks", + "id": "cloudtasks.projects.locations.queues.tasks.create", + "path": "v2beta2/{+parent}/tasks" + }, + "cancelLease": { + "request": { + "$ref": "CancelLeaseRequest" + }, + "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.", + "response": { + "$ref": "Task" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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" + } + }, + "flatPath": "v2beta2/projects/{projectsId}/locations/{locationsId}/queues/{queuesId}/tasks/{tasksId}:cancelLease", + "path": "v2beta2/{+name}:cancelLease", + "id": "cloudtasks.projects.locations.queues.tasks.cancelLease" + }, + "run": { + "description": "Forces a task to run now.\n\nWhen this method is called, Cloud Tasks will dispatch the task, even if\nthe task is already running, the queue has reached its RateLimits or\nis PAUSED.\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\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\ntarget, 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's RetryConfig.\n\nRunTask returns\nNOT_FOUND when it is called on a\ntask that has already succeeded or permanently failed.\n\nRunTask cannot be called on a\npull task.", + "request": { + "$ref": "RunTaskRequest" + }, + "response": { + "$ref": "Task" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "parameters": { + "name": { + "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", + "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+/tasks/[^/]+$" + } + }, + "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" + } + } + } + } + } } - }, - "role": { - "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", - "type": "string" - } - }, - "id": "Binding" - }, - "RenewLeaseRequest": { - "description": "Request message for renewing a lease using\nRenewLease.", - "type": "object", - "properties": { - "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" - }, - "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 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." - ], - "enum": [ - "VIEW_UNSPECIFIED", - "BASIC", - "FULL" - ], - "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.", - "type": "string" - } - }, - "id": "RenewLeaseRequest" - }, - "TaskStatus": { - "description": "Status of the task.", - "type": "object", - "properties": { - "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" - }, - "lastAttemptStatus": { - "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).", - "$ref": "AttemptStatus" - }, - "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": { - "$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)." - } - }, - "id": "TaskStatus" - }, - "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\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.", - "type": "object", - "properties": { - "httpMethod": { - "enum": [ - "HTTP_METHOD_UNSPECIFIED", - "POST", - "GET", - "HEAD", - "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).", - "type": "string", - "enumDescriptions": [ - "HTTP method unspecified", - "HTTP Post", - "HTTP Get", - "HTTP Head", - "HTTP Put", - "HTTP Delete" - ] - }, - "payload": { - "description": "Payload.\n\nThe payload will be sent as the HTTP message body. A message\nbody, and thus a payload, is allowed only if the HTTP method is\nPOST or PUT. It is an error to set a data payload on a task with\nan incompatible HttpMethod.", - "format": "byte", - "type": "string" - }, - "relativeUrl": { - "description": "The relative URL.\n\nThe relative URL must begin with \"/\" and must be a valid HTTP relative URL.\nIt can contain a path and query string arguments.\nIf the relative URL is empty, then the root path \"/\" will be used.\nNo spaces are allowed, and the maximum length allowed is 2083 characters.", - "type": "string" - }, - "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 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,\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." } - }, - "id": "AppEngineHttpRequest" + } + } + }, + "parameters": { + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "type": "string", + "location": "query" }, - "GetIamPolicyRequest": { - "description": "Request message for `GetIamPolicy` method.", - "type": "object", - "properties": {}, - "id": "GetIamPolicyRequest" + "prettyPrint": { + "description": "Returns response with indentations and line breaks.", + "type": "boolean", + "default": "true", + "location": "query" }, - "TestIamPermissionsResponse": { - "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.", - "type": "object" + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "type": "string", + "location": "query" }, - "RetryConfig": { - "properties": { - "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" - }, - "maxDoublings": { - "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" - }, - "unlimitedAttempts": { - "description": "If true, then the number of attempts is unlimited.", - "type": "boolean" - }, - "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" - }, - "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" - }, - "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" - } - }, - "id": "RetryConfig", - "description": "Retry config.\n\nThese settings determine how a failed task attempt is retried.", - "type": "object" + "uploadType": { + "location": "query", + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string" }, - "PullTarget": { - "properties": {}, - "id": "PullTarget", - "description": "Pull target.", - "type": "object" + "$.xgafv": { + "enum": [ + "1", + "2" + ], + "description": "V1 error format.", + "type": "string", + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query" }, - "ResumeQueueRequest": { - "description": "Request message for ResumeQueue.", - "type": "object", - "properties": {}, - "id": "ResumeQueueRequest" + "callback": { + "location": "query", + "description": "JSONP", + "type": "string" }, - "LeaseTasksResponse": { - "description": "Response message for leasing tasks using LeaseTasks.", - "type": "object", - "properties": { - "tasks": { - "description": "The leased tasks.", - "type": "array", - "items": { - "$ref": "Task" - } - } - }, - "id": "LeaseTasksResponse" + "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" }, - "CreateTaskRequest": { - "description": "Request message for CreateTask.", - "type": "object", - "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.", - "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 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." - ], - "enum": [ - "VIEW_UNSPECIFIED", - "BASIC", - "FULL" - ] - }, - "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." - } - }, - "id": "CreateTaskRequest" + "access_token": { + "description": "OAuth access token.", + "type": "string", + "location": "query" }, - "ListTasksResponse": { - "properties": { - "tasks": { - "description": "The list of tasks.", - "type": "array", - "items": { - "$ref": "Task" - } - }, - "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" - } - }, - "id": "ListTasksResponse", - "description": "Response message for listing tasks using ListTasks.", - "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" }, - "Queue": { - "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 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" - }, - "state": { - "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." - ], - "enum": [ - "STATE_UNSPECIFIED", - "RUNNING", - "PAUSED", - "DISABLED" - ], - "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`.", - "type": "string" - }, - "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).", - "$ref": "RetryConfig" - }, - "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" - }, - "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)." - } - }, - "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" - } - }, - "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" - } - } + "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" } }, - "rootUrl": "https://cloudtasks.googleapis.com/", - "ownerDomain": "google.com", - "name": "cloudtasks", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Cloud Tasks API" + "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": "" } diff --git a/DiscoveryJson/cloudtrace_v1.json b/DiscoveryJson/cloudtrace_v1.json index d8b8c1e24f..7b3c0c9bd5 100644 --- a/DiscoveryJson/cloudtrace_v1.json +++ b/DiscoveryJson/cloudtrace_v1.json @@ -1,41 +1,71 @@ { + "rootUrl": "https://cloudtrace.googleapis.com/", + "ownerDomain": "google.com", + "name": "cloudtrace", "batchPath": "batch", "fullyEncodeReservedExpansion": true, "title": "Stackdriver Trace API", "ownerName": "Google", "resources": { "projects": { + "methods": { + "patchTraces": { + "httpMethod": "PATCH", + "parameterOrder": [ + "projectId" + ], + "response": { + "$ref": "Empty" + }, + "parameters": { + "projectId": { + "description": "ID of the Cloud project where the trace data is stored.", + "required": true, + "type": "string", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/trace.append" + ], + "flatPath": "v1/projects/{projectId}/traces", + "id": "cloudtrace.projects.patchTraces", + "path": "v1/projects/{projectId}/traces", + "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" + } + } + }, "resources": { "traces": { "methods": { "list": { - "response": { - "$ref": "ListTracesResponse" - }, + "description": "Returns of a list of traces that match the specified filter conditions.", + "httpMethod": "GET", "parameterOrder": [ "projectId" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/trace.readonly" - ], + "response": { + "$ref": "ListTracesResponse" + }, "parameters": { "orderBy": { - "location": "query", "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" + "type": "string", + "location": "query" }, "projectId": { + "location": "path", "description": "ID of the Cloud project where the trace data is stored.", "required": true, - "type": "string", - "location": "path" + "type": "string" }, "filter": { + "type": "string", "location": "query", - "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" + "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`." }, "endTime": { "location": "query", @@ -44,21 +74,21 @@ "type": "string" }, "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.", "type": "string", - "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." + "location": "query" }, "startTime": { - "location": "query", "description": "Start of the time interval (inclusive) during which the trace data was\ncollected from the application.", "format": "google-datetime", - "type": "string" + "type": "string", + "location": "query" }, "pageSize": { - "type": "integer", "location": "query", "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" + "format": "int32", + "type": "integer" }, "view": { "description": "Type of data returned for traces in the list. Optional. Default is\n`MINIMAL`.", @@ -72,10 +102,13 @@ ] } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/trace.readonly" + ], "flatPath": "v1/projects/{projectId}/traces", - "path": "v1/projects/{projectId}/traces", "id": "cloudtrace.projects.traces.list", - "description": "Returns of a list of traces that match the specified filter conditions." + "path": "v1/projects/{projectId}/traces" }, "get": { "response": { @@ -86,24 +119,24 @@ "traceId" ], "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/trace.readonly" + ], "parameters": { "projectId": { - "required": true, - "type": "string", "location": "path", - "description": "ID of the Cloud project where the trace data is stored." + "description": "ID of the Cloud project where the trace data is stored.", + "required": true, + "type": "string" }, "traceId": { + "location": "path", "description": "ID of the trace to return.", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/trace.readonly" - ], "flatPath": "v1/projects/{projectId}/traces/{traceId}", "path": "v1/projects/{projectId}/traces/{traceId}", "id": "cloudtrace.projects.traces.get", @@ -111,98 +144,38 @@ } } } - }, - "methods": { - "patchTraces": { - "request": { - "$ref": "Traces" - }, - "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.", - "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" - } } } }, "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": { - "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" - }, "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" + "default": "true", + "location": "query" }, "fields": { - "location": "query", "description": "Selector specifying which fields to include in a partial response.", - "type": "string" + "type": "string", + "location": "query" }, "uploadType": { - "location": "query", "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" + "type": "string", + "location": "query" }, "callback": { - "type": "string", "location": "query", - "description": "JSONP" + "description": "JSONP", + "type": "string" }, "$.xgafv": { + "type": "string", "enumDescriptions": [ "v1 error format", "v2 error format" @@ -212,8 +185,7 @@ "1", "2" ], - "description": "V1 error format.", - "type": "string" + "description": "V1 error format." }, "alt": { "enum": [ @@ -230,13 +202,44 @@ "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" + }, + "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" } }, "version": "v1", "baseUrl": "https://cloudtrace.googleapis.com/", + "servicePath": "", "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": "", "id": "cloudtrace:v1", "documentationLink": "https://cloud.google.com/trace", @@ -245,9 +248,29 @@ "version_module": true, "schemas": { "TraceSpan": { + "id": "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", "properties": { + "startTime": { + "description": "Start time of the span in nanoseconds from the UNIX epoch.", + "format": "google-datetime", + "type": "string" + }, + "kind": { + "type": "string", + "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" + ], + "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." + }, "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/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", @@ -270,35 +293,13 @@ "type": "string" }, "endTime": { - "description": "End time of the span in nanoseconds from the UNIX epoch.", - "format": "google-datetime", - "type": "string" - }, - "startTime": { - "description": "Start time of the span in nanoseconds from the UNIX epoch.", - "format": "google-datetime", - "type": "string" - }, - "kind": { "type": "string", - "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" - ], - "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." + "description": "End time of the span in nanoseconds from the UNIX epoch.", + "format": "google-datetime" } - }, - "id": "TraceSpan" + } }, "ListTracesResponse": { - "description": "The response message for the `ListTraces` method.", - "type": "object", "properties": { "traces": { "description": "List of trace records as specified by the view parameter.", @@ -312,16 +313,17 @@ "type": "string" } }, - "id": "ListTracesResponse" + "id": "ListTracesResponse", + "description": "The response message for the `ListTraces` method.", + "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" + "type": "object", + "properties": {}, + "id": "Empty" }, "Trace": { - "id": "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": { @@ -337,13 +339,13 @@ } }, "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" + "type": "string", + "description": "Globally unique identifier for the trace. This identifier is a 128-bit\nnumeric value formatted as a 32-byte hex string." } - } + }, + "id": "Trace" }, "Traces": { - "description": "List of new or updated traces.", "type": "object", "properties": { "traces": { @@ -354,31 +356,29 @@ } } }, - "id": "Traces" + "id": "Traces", + "description": "List of new or updated traces." } }, - "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" }, + "protocol": "rest", "canonicalName": "Cloud Trace", "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.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" + } } diff --git a/DiscoveryJson/cloudtrace_v2.json b/DiscoveryJson/cloudtrace_v2.json index 999f2b9c1e..9d7301ec50 100644 --- a/DiscoveryJson/cloudtrace_v2.json +++ b/DiscoveryJson/cloudtrace_v2.json @@ -1,4 +1,175 @@ { + "batchPath": "batch", + "fullyEncodeReservedExpansion": true, + "title": "Stackdriver Trace API", + "ownerName": "Google", + "resources": { + "projects": { + "resources": { + "traces": { + "methods": { + "batchWrite": { + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/trace.append" + ], + "flatPath": "v2/projects/{projectsId}/traces:batchWrite", + "path": "v2/{+name}/traces:batchWrite", + "id": "cloudtrace.projects.traces.batchWrite", + "description": "Sends new spans to new or existing traces. You cannot update\nexisting spans.", + "request": { + "$ref": "BatchWriteSpansRequest" + } + } + }, + "resources": { + "spans": { + "methods": { + "createSpan": { + "flatPath": "v2/projects/{projectsId}/traces/{tracesId}/spans/{spansId}", + "path": "v2/{+name}", + "id": "cloudtrace.projects.traces.spans.createSpan", + "request": { + "$ref": "Span" + }, + "description": "Creates a new span.", + "response": { + "$ref": "Span" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/trace.append" + ], + "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" + } + } + } + } + } + } + } + } + } + }, + "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": { + "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": { + "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": { + "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": { + "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." + } + }, + "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": "", "id": "cloudtrace:v2", "documentationLink": "https://cloud.google.com/trace", @@ -6,57 +177,6 @@ "discoveryVersion": "v1", "version_module": true, "schemas": { - "Links": { - "description": "A collection of links, which are references from this span to a span\nin the same or different trace.", - "type": "object", - "properties": { - "link": { - "type": "array", - "items": { - "$ref": "Link" - }, - "description": "A collection of links." - }, - "droppedLinksCount": { - "type": "integer", - "description": "The number of dropped links after the maximum size was enforced. If\nthis value is 0, then no links were dropped.", - "format": "int32" - } - }, - "id": "Links" - }, - "TruncatableString": { - "id": "TruncatableString", - "description": "Represents a string that might be shortened to a specified length.", - "type": "object", - "properties": { - "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" - }, - "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" - } - } - }, - "StackTrace": { - "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", - "description": "A call stack appearing in a trace.", - "type": "object" - }, "TimeEvent": { "description": "A time-stamped annotation or message event in the Span.", "type": "object", @@ -66,8 +186,8 @@ "description": "Text annotation with a set of attributes." }, "messageEvent": { - "description": "An event describing a message sent/received between Spans.", - "$ref": "MessageEvent" + "$ref": "MessageEvent", + "description": "An event describing a message sent/received between Spans." }, "time": { "description": "The timestamp indicating the time the event occurred.", @@ -78,13 +198,14 @@ "id": "TimeEvent" }, "MessageEvent": { + "id": "MessageEvent", "description": "An event describing a message sent/received between Spans.", "type": "object", "properties": { "id": { - "type": "string", "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" + "format": "int64", + "type": "string" }, "compressedSizeBytes": { "description": "The number of compressed bytes sent or received. If missing assumed to\nbe the same size as uncompressed.", @@ -97,38 +218,29 @@ "type": "string" }, "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." - ] + ], + "enum": [ + "TYPE_UNSPECIFIED", + "SENT", + "RECEIVED" + ], + "description": "Type of MessageEvent. Indicates whether the message was sent or\nreceived." } - }, - "id": "MessageEvent" + } }, "StackFrame": { + "id": "StackFrame", "description": "Represents a single stack frame in a stack trace.", "type": "object", "properties": { - "functionName": { - "description": "The fully-qualified name that uniquely identifies the function or\nmethod that is active in this frame (up to 1024 bytes).", - "$ref": "TruncatableString" - }, - "lineNumber": { - "type": "string", - "description": "The line number in `file_name` where the function call appears.", - "format": "int64" - }, "loadModule": { - "description": "The binary module from where the code was loaded.", - "$ref": "Module" + "$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.", @@ -140,21 +252,43 @@ "description": "The name of the source file where the function call appears (up to 256\nbytes)." }, "sourceVersion": { - "$ref": "TruncatableString", - "description": "The version of the deployed source code (up to 128 bytes)." + "description": "The version of the deployed source code (up to 128 bytes).", + "$ref": "TruncatableString" }, "originalFunctionName": { - "$ref": "TruncatableString", - "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)." + "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" + }, + "functionName": { + "description": "The fully-qualified name that uniquely identifies the function or\nmethod that is active in this frame (up to 1024 bytes).", + "$ref": "TruncatableString" + }, + "lineNumber": { + "description": "The line number in `file_name` where the function call appears.", + "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": { + "traceId": { + "type": "string", + "description": "The [TRACE_ID] for a trace within a project." + }, + "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" + }, "type": { + "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.", @@ -164,21 +298,7 @@ "TYPE_UNSPECIFIED", "CHILD_LINKED_SPAN", "PARENT_LINKED_SPAN" - ], - "description": "The relationship of the current span relative to the linked span.", - "type": "string" - }, - "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": { - "type": "string", - "description": "The [SPAN_ID] for a span within a trace." + ] } }, "id": "Link" @@ -188,12 +308,12 @@ "type": "object", "properties": { "description": { - "$ref": "TruncatableString", - "description": "A user-supplied message describing the event. The maximum length for\nthe description is 256 bytes." + "description": "A user-supplied message describing the event. The maximum length for\nthe description is 256 bytes.", + "$ref": "TruncatableString" }, "attributes": { - "description": "A set of attributes on the annotation. You can have up to 4 attributes\nper Annotation.", - "$ref": "Attributes" + "$ref": "Attributes", + "description": "A set of attributes on the annotation. You can have up to 4 attributes\nper Annotation." } }, "id": "Annotation" @@ -218,6 +338,7 @@ "id": "StackFrames" }, "TimeEvents": { + "type": "object", "properties": { "droppedAnnotationsCount": { "description": "The number of dropped annotations in all the included time events.\nIf the value is 0, then no annotations were dropped.", @@ -230,33 +351,34 @@ "type": "integer" }, "timeEvent": { + "description": "A collection of `TimeEvent`s.", "type": "array", "items": { "$ref": "TimeEvent" - }, - "description": "A collection of `TimeEvent`s." + } } }, "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" + "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." }, "Module": { + "description": "Binary module.", + "type": "object", "properties": { - "module": { - "description": "For example: main binary, kernel modules, and dynamic libraries\nsuch as libc.so, sharedlib.so (up to 256 bytes).", - "$ref": "TruncatableString" - }, "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)." } }, - "id": "Module", - "description": "Binary module.", - "type": "object" + "id": "Module" }, "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.", @@ -266,11 +388,11 @@ "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": "object" } }, "code": { @@ -279,9 +401,7 @@ "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" + "id": "Status" }, "BatchWriteSpansRequest": { "description": "The request message for the `BatchWriteSpans` method.", @@ -297,21 +417,37 @@ }, "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": { + "type": "object", "properties": { + "timeEvents": { + "description": "A set of time events. You can have up to 32 annotations and 128 message\nevents per span.", + "$ref": "TimeEvents" + }, + "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": { - "type": "boolean", - "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." + "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." + "description": "An optional final status for this span.", + "$ref": "Status" }, "name": { "type": "string", @@ -322,13 +458,13 @@ "description": "Stack trace captured at the start of the span." }, "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" + "type": "string", + "description": "The [SPAN_ID] of this span's parent span. If this is a root span,\nthen this field must be empty." }, "endTime": { + "type": "string", "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" + "format": "google-datetime" }, "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.", @@ -338,34 +474,19 @@ "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." - }, - "timeEvents": { - "description": "A set of time events. You can have up to 32 annotations and 128 message\nevents per span.", - "$ref": "TimeEvents" - }, - "links": { - "$ref": "Links", - "description": "Links associated with the span. You can have up to 128 links per Span." - }, - "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" } }, "id": "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" + "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." + }, + "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" }, "AttributeValue": { + "id": "AttributeValue", "description": "The allowed types for [VALUE] in a `[KEY]:[VALUE]` attribute.", "type": "object", "properties": { @@ -375,17 +496,17 @@ "type": "string" }, "stringValue": { - "$ref": "TruncatableString", - "description": "A string up to 256 bytes long." + "description": "A string up to 256 bytes long.", + "$ref": "TruncatableString" }, "boolValue": { "description": "A Boolean value represented by `true` or `false`.", "type": "boolean" } - }, - "id": "AttributeValue" + } }, "Attributes": { + "id": "Attributes", "description": "A set of attributes, each in the format `[KEY]:[VALUE]`.", "type": "object", "properties": { @@ -401,15 +522,65 @@ "description": "The set of attributes. Each attribute's key can be up to 128 bytes\nlong. The value can be a string up to 256 bytes, an integer, or the\nBoolean values `true` and `false`. For example:\n\n \"/instance_id\": \"my-instance\"\n \"/http/user_agent\": \"\"\n \"/http/request_bytes\": 300\n \"abc.com/myattribute\": true", "type": "object" } + } + }, + "Links": { + "id": "Links", + "description": "A collection of links, which are references from this span to a span\nin the same or different trace.", + "type": "object", + "properties": { + "link": { + "description": "A collection of links.", + "type": "array", + "items": { + "$ref": "Link" + } + }, + "droppedLinksCount": { + "type": "integer", + "description": "The number of dropped links after the maximum size was enforced. If\nthis value is 0, then no links were dropped.", + "format": "int32" + } + } + }, + "StackTrace": { + "id": "StackTrace", + "description": "A call stack appearing in a trace.", + "type": "object", + "properties": { + "stackFrames": { + "description": "Stack frames in this stack trace. A maximum of 128 frames are allowed.", + "$ref": "StackFrames" + }, + "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" + } + } + }, + "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": "Attributes" + "id": "TruncatableString" } }, + "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" + "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 Trace", "auth": { "oauth2": { @@ -425,176 +596,5 @@ }, "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": { - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Empty" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/trace.append" - ], - "parameters": { - "name": { - "location": "path", - "description": "Required. The name of the project where the spans belong. The format is\n`projects/[PROJECT_ID]`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - } - }, - "flatPath": "v2/projects/{projectsId}/traces:batchWrite", - "id": "cloudtrace.projects.traces.batchWrite", - "path": "v2/{+name}/traces:batchWrite", - "request": { - "$ref": "BatchWriteSpansRequest" - }, - "description": "Sends new spans to new or existing traces. You cannot update\nexisting spans." - } - }, - "resources": { - "spans": { - "methods": { - "createSpan": { - "description": "Creates a new span.", - "request": { - "$ref": "Span" - }, - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Span" - }, - "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}", - "id": "cloudtrace.projects.traces.spans.createSpan", - "path": "v2/{+name}" - } - } - } - } - } - } - } - }, - "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": { - "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" - }, - "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": { - "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" - } - }, - "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": "" + "name": "cloudtrace" } diff --git a/DiscoveryJson/composer_v1beta1.json b/DiscoveryJson/composer_v1beta1.json index 6913946af5..3e765f7e5e 100644 --- a/DiscoveryJson/composer_v1beta1.json +++ b/DiscoveryJson/composer_v1beta1.json @@ -1,367 +1,4 @@ { - "baseUrl": "https://composer.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Manages Apache Airflow environments on Google Cloud Platform.", - "servicePath": "", - "basePath": "", - "revision": "20180430", - "documentationLink": "https://cloud.google.com/composer/", - "id": "composer:v1beta1", - "discoveryVersion": "v1", - "version_module": true, - "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 `{}`.", - "type": "object", - "properties": {}, - "id": "Empty" - }, - "ListEnvironmentsResponse": { - "description": "The environments in a project and location.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "The page token used to query for the next page if one exists", - "type": "string" - }, - "environments": { - "description": "The list of environments returned by a ListEnvironmentsRequest.", - "type": "array", - "items": { - "$ref": "Environment" - } - } - }, - "id": "ListEnvironmentsResponse" - }, - "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" - }, - "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": { - "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": { - "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" - }, - "Environment": { - "description": "An environment for running orchestration tasks.", - "type": "object", - "properties": { - "uuid": { - "description": "Output only.\nThe UUID (Universally Unique IDentifier) associated with this environment.\nThis value is generated when the environment is created.", - "type": "string" - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Optional. User-defined labels for this environment.\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" - }, - "createTime": { - "description": "Output only.\nThe time at which this environment was created.", - "format": "google-datetime", - "type": "string" - }, - "updateTime": { - "description": "Output only.\nThe time at which this environment was last modified.", - "format": "google-datetime", - "type": "string" - }, - "config": { - "$ref": "EnvironmentConfig", - "description": "Configuration parameters for this environment." - }, - "state": { - "enumDescriptions": [ - "The state of the environment is unknown.", - "The environment is in the process of being created.", - "The environment is currently running and healthy. It is ready for use.", - "The environment is being updated. It remains usable but cannot receive\nadditional update requests or be deleted at this time.", - "The environment is undergoing deletion. It cannot be used.", - "The environment has encountered an error and cannot be used." - ], - "enum": [ - "STATE_UNSPECIFIED", - "CREATING", - "RUNNING", - "UPDATING", - "DELETING", - "ERROR" - ], - "description": "The current state of the environment.", - "type": "string" - }, - "name": { - "description": "The resource name of the environment, in the form:\n`projects/{projectId}/locations/{locationId}/environments/{environmentId}`", - "type": "string" - } - }, - "id": "Environment" - }, - "OperationMetadata": { - "description": "Metadata describing an operation.", - "type": "object", - "properties": { - "endTime": { - "description": "Output only.\nThe time when the operation terminated, regardless of its success.\nThis field is unset if the operation is still ongoing.", - "format": "google-datetime", - "type": "string" - }, - "operationType": { - "enumDescriptions": [ - "Unused.", - "A resource creation operation.", - "A resource deletion operation.", - "A resource update operation." - ], - "enum": [ - "TYPE_UNSPECIFIED", - "CREATE", - "DELETE", - "UPDATE" - ], - "description": "Output only.\nThe type of operation being performed.", - "type": "string" - }, - "createTime": { - "description": "Output only.\nThe time the operation was submitted to the server.", - "format": "google-datetime", - "type": "string" - }, - "resource": { - "description": "Output only.\nThe resource being operated on, as a [relative resource name](\n/apis/design/resource_names#relative_resource_name).", - "type": "string" - }, - "state": { - "enumDescriptions": [ - "Unused.", - "The operation has been created but is not yet started.", - "The operation is underway.", - "The operation completed successfully.", - "The operation is no longer running but did not succeed." - ], - "enum": [ - "STATE_UNSPECIFIED", - "PENDING", - "RUNNING", - "SUCCESSFUL", - "FAILED" - ], - "description": "Output only.\nThe current operation state.", - "type": "string" - }, - "resourceUuid": { - "description": "Output only.\nThe UUID of the resource being operated on.", - "type": "string" - } - }, - "id": "OperationMetadata" - }, - "SoftwareConfig": { - "description": "Specifies the selection and config of software inside the environment.", - "type": "object", - "properties": { - "airflowConfigOverrides": { - "description": "Optional. Apache Airflow configuration properties to override.\n\nProperty keys contain the section and property name, separated by a hyphen,\nfor example `core-dags_are_paused_at_creation`. Sections must not\ncontain hyphens (\"-\"), opening square brackets (\"[\"), or closing square\nbrackets (\"]\"). The name must be non-empty and must not contain an equals\nsign (\"=\") or semicolon (\";\"). The section as well as the name must not\ncontain a period (\".\"). Apache Airflow configuration property names must be\nwritten in\n[snake_case](https://www.google.com/url?sa=D&q=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FSnake_case).\nProperty values can contain any character and be written in any lower/upper\ncase format.\n\nCertain Apache Airflow configuration property values are\n[blacklisted](/composer/docs/how-to/managing/setting-airflow-configurations#airflow_configuration_blacklists) and\ncannot be overridden.", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "envVariables": { - "description": "Optional. Additional environment variables to provide to the Apache Airflow\nscheduler, worker, and webserver processes.\n\nEnvironment variable names must match the regular expression\n`a-zA-Z_*`. Furthermore, they cannot specify Apache Airflow\nsoftware configuration overrides (i.e., match the regular expression\n`AIRFLOW__[A-Z0-9_]+__[A-Z0-9_]+`); nor can they take any of the following\nreserved values:\n\n* `AIRFLOW_HOME`\n* `C_FORCE_ROOT`\n* `CONTAINER_NAME`\n* `DAGS_FOLDER`\n* `GCP_PROJECT`\n* `GCS_BUCKET`\n* `GKE_CLUSTER_NAME`\n* `SQL_DATABASE`\n* `SQL_INSTANCE`\n* `SQL_PASSWORD`\n* `SQL_PROJECT`\n* `SQL_REGION`\n* `SQL_USER`", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "pypiPackages": { - "description": "Optional. Custom Python Package Index (PyPI) packages to be installed in\nthe environment.\n\nKeys refer to the lowercase package name such as `numpy`\nand values are the lowercase extras and version specifier such as\n`==1.12.0`, `[devel,gcp_api]`, or `[devel]\u003e=1.8.2, \u003c1.9.2`. To specify a\npackage without pinning it to a version specifier, use the empty string as\nthe value.", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "imageVersion": { - "description": "Output only.\nThe version of the software running in the environment.\nThis encapsulates both the version of Cloud Composer functionality and the\nversion of Apache Airflow. It must match the regular expression\n`composer-[0-9]+\\.[0-9]+(\\.[0-9]+)?-airflow-[0-9]+\\.[0-9]+(\\.[0-9]+.*)?`.\n\nThe Cloud Composer portion of the version is a [semantic\nversion](https://semver.org). The portion of the image version following\n\u003cem\u003eairflow-\u003c/em\u003e is an official Apache Airflow repository [release\nname](https://github.com/apache/incubator-airflow/releases).\n\nSee also [Release Notes](/composer/docs/release-notes).", - "type": "string" - } - }, - "id": "SoftwareConfig" - }, - "NodeConfig": { - "description": "The configuration information for the Container Engine nodes running\nthe Apache Airflow software.", - "type": "object", - "properties": { - "serviceAccount": { - "description": "Optional. The Google Cloud Platform Service Account to be used by the node\nVMs. If a service account is not specified, the \"default\" Compute Engine\nservice account is used. Cannot be updated.", - "type": "string" - }, - "location": { - "description": "Optional. The Compute Engine [zone](/compute/docs/regions-zones) in which\nto deploy the VMs used to run the Apache Airflow software, specified as a\nrelative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name).\nFor example: `projects/{projectId}/zones/{zoneId}`.\n\nThis `location` must belong to the enclosing environment's project and\nlocation. If both this field and `nodeConfig.machineType` are specified,\n`nodeConfig.machineType` must belong to this `location`; if both are\nunspecified, the service will pick a zone in the Compute Engine region\ncorresponding to the Cloud Composer location and propagate that choice to\nboth fields. If exactly one of this field and `nodeConfig.machineType` is\nspecified, the location information from the specified field will be\npropagated to the unspecified field.", - "type": "string" - }, - "machineType": { - "description": "Optional. The Google Compute Engine [machine type](\n/compute/docs/machine-types) used for cluster instances, specified as a\n[relative resource name](\nhttps://cloud.google.com/apis/design/resource_names#relative_resource_name).\nFor example:\n`projects/{projectId}/zones/{zoneId}/machineTypes/{machineTypeId}`.\n\nThe `machineType` must belong to the enclosing environment's project and\nlocation. If both this field and `nodeConfig.location` are specified,\nthis `machineType` must belong to the `nodeConfig.location`; if both are\nunspecified, the service will pick a zone in the Compute Engine region\ncorresponding to the Cloud Composer location and propagate that choice to\nboth fields. If exactly one of this field and `nodeConfig.location` is\nspecified, the location information from the specified field will be\npropagated to the unspecified field.\n\nFurthermore, if this field is unspecified, the `machineTypeId` defaults\nto `n1-standard-1`.", - "type": "string" - }, - "network": { - "description": "Optional. The Compute Engine network to be used for machine\ncommunications, specified as a [relative resource name](\nhttps://cloud.google.com/apis/design/resource_names#relative_resource_name).\nFor example: `projects/{projectId}/global/networks/{networkId}`.\n\n[Shared VPC](/vpc/docs/shared-vpc) is not currently supported. The\nnetwork must belong to the environment's project. If unspecified, the\n\"default\" network ID in the environment's project is used. If a \"Custom\nSubnet Network\" (see [Using Subnetworks](/compute/docs/subnetworks) for\nmore information) is provided, `nodeConfig.subnetwork` must also be provided.", - "type": "string" - }, - "oauthScopes": { - "description": "Optional. The set of Google API scopes to be made available on all of the\nnode VMs. If `oauth_scopes` is empty, defaults to\n[\"https://www.googleapis.com/auth/cloud-platform\"]. Cannot be updated.", - "type": "array", - "items": { - "type": "string" - } - }, - "subnetwork": { - "description": "Optional. The Compute Engine subnetwork to be used for machine\ncommunications, specified as a [relative resource name](\nhttps://cloud.google.com/apis/design/resource_names#relative_resource_name).\nFor example:\n`projects/{projectId}/regions/{regionId}/subnetworks/{subnetworkId}`\n\nIf a subnetwork is provided, `nodeConfig.network` must also be provided,\nand the subnetwork must belong to the enclosing environment's project and\nlocation.", - "type": "string" - }, - "diskSizeGb": { - "description": "Optional. The disk size in GB used for node VMs. Minimum is 10GB.\nIf unspecified, defaults to 100GB. Cannot be updated.", - "format": "int32", - "type": "integer" - }, - "tags": { - "description": "Optional. The list of instance tags applied to all node VMs. Tags are used\nto identify valid sources or targets for network firewalls. Each tag within\nthe list must comply with [RFC1035](https://www.ietf.org/rfc/rfc1035.txt).\nCannot be updated.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "NodeConfig" - }, - "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" - }, - "EnvironmentConfig": { - "description": "Configuration information for an environment.", - "type": "object", - "properties": { - "dagGcsPrefix": { - "description": "Output only.\nThe Cloud Storage prefix of the DAGs for this environment. Although Cloud\nStorage objects reside in a flat namespace, a hierarchical file tree\ncan be simulated using \"/\"-delimited object name prefixes. DAG objects for\nthis environment reside in a simulated directory with the given prefix.", - "type": "string" - }, - "gkeCluster": { - "description": "Output only.\nThe Kubernetes Engine cluster used to run this environment.", - "type": "string" - }, - "airflowUri": { - "description": "The URI of the Apache Airflow Web UI hosted within this environment (see\n[Airflow web interface](/composer/docs/how-to/accessing/airflow-web-interface)).", - "type": "string" - }, - "softwareConfig": { - "$ref": "SoftwareConfig", - "description": "The config settings for software inside the environment." - }, - "nodeConfig": { - "description": "The configuration used for the Container Engine cluster.", - "$ref": "NodeConfig" - }, - "nodeCount": { - "description": "The number of nodes in the Container Engine cluster that will be\nused to run this environment.", - "format": "int32", - "type": "integer" - } - }, - "id": "EnvironmentConfig" - } - }, - "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 Composer", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://composer.googleapis.com/", - "ownerDomain": "google.com", - "name": "composer", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Cloud Composer API", - "ownerName": "Google", "resources": { "projects": { "resources": { @@ -380,11 +17,11 @@ "httpMethod": "DELETE", "parameters": { "name": { - "location": "path", "description": "The name of the operation resource to be deleted.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$" + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "location": "path" } }, "scopes": [ @@ -395,6 +32,9 @@ "id": "composer.projects.locations.operations.delete" }, "list": { + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations", + "path": "v1beta1/{+name}/operations", + "id": "composer.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.", "response": { "$ref": "ListOperationsResponse" @@ -403,47 +43,44 @@ "name" ], "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "filter": { + "location": "query", "description": "The standard list filter.", - "type": "string", - "location": "query" + "type": "string" }, "name": { - "location": "path", "description": "The name of the operation's parent resource.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$" + "pattern": "^projects/[^/]+/locations/[^/]+$", + "location": "path" }, "pageToken": { + "location": "query", "description": "The standard list page token.", - "type": "string", - "location": "query" + "type": "string" }, "pageSize": { - "location": "query", "description": "The standard list page size.", "format": "int32", - "type": "integer" + "type": "integer", + "location": "query" } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations", - "path": "v1beta1/{+name}/operations", - "id": "composer.projects.locations.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" - }, + "httpMethod": "GET", "parameterOrder": [ "name" ], - "httpMethod": "GET", + "response": { + "$ref": "Operation" + }, "parameters": { "name": { "description": "The name of the operation resource.", @@ -457,18 +94,14 @@ "https://www.googleapis.com/auth/cloud-platform" ], "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", - "path": "v1beta1/{+name}", - "id": "composer.projects.locations.operations.get" + "id": "composer.projects.locations.operations.get", + "path": "v1beta1/{+name}" } } }, "environments": { "methods": { "delete": { - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/environments/{environmentsId}", - "path": "v1beta1/{+name}", - "id": "composer.projects.locations.environments.delete", - "description": "Delete an environment.", "response": { "$ref": "Operation" }, @@ -478,16 +111,20 @@ "httpMethod": "DELETE", "parameters": { "name": { - "location": "path", "description": "The environment to delete, in the form:\n`projects/{projectId}/locations/{locationId}/environments/{environmentId}`", "required": true, "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/environments/[^/]+$" + "pattern": "^projects/[^/]+/locations/[^/]+/environments/[^/]+$", + "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ] + ], + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/environments/{environmentsId}", + "path": "v1beta1/{+name}", + "id": "composer.projects.locations.environments.delete", + "description": "Delete an environment." }, "get": { "response": { @@ -499,11 +136,11 @@ "httpMethod": "GET", "parameters": { "name": { - "location": "path", "description": "The resource name of the environment to get, in the form:\n`projects/{projectId}/locations/{locationId}/environments/{environmentId}`", "required": true, "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/environments/[^/]+$" + "pattern": "^projects/[^/]+/locations/[^/]+/environments/[^/]+$", + "location": "path" } }, "scopes": [ @@ -524,6 +161,13 @@ ], "httpMethod": "GET", "parameters": { + "parent": { + "location": "path", + "description": "List environments in the given project and location, in the form:\n`projects/{projectId}/locations/{locationId}`", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+$" + }, "pageToken": { "description": "The next_page_token value returned from a previous List request, if any.", "type": "string", @@ -534,13 +178,6 @@ "format": "int32", "type": "integer", "location": "query" - }, - "parent": { - "description": "List environments in the given project and location, in the form:\n`projects/{projectId}/locations/{locationId}`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path" } }, "scopes": [ @@ -551,13 +188,6 @@ "id": "composer.projects.locations.environments.list" }, "patch": { - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/environments/{environmentsId}", - "path": "v1beta1/{+name}", - "id": "composer.projects.locations.environments.patch", - "request": { - "$ref": "Environment" - }, - "description": "Update an environment.", "response": { "$ref": "Operation" }, @@ -569,26 +199,33 @@ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "updateMask": { - "description": "Required. A comma-separated list of paths, relative to `Environment`, of\nfields to update.\nFor example, to set the version of scikit-learn to install in the\nenvironment to 0.19.0 and to remove an existing installation of\nargparse, the `updateMask` parameter would include the following two\n`paths` values: \"config.softwareConfig.pypiPackages.scikit-learn\" and\n\"config.softwareConfig.pypiPackages.argparse\". The included patch\nenvironment would specify the scikit-learn version as follows:\n\n {\n \"config\":{\n \"softwareConfig\":{\n \"pypiPackages\":{\n \"scikit-learn\":\"==0.19.0\"\n }\n }\n }\n }\n\nNote that in the above example, any existing PyPI packages\nother than scikit-learn and argparse will be unaffected.\n\nOnly one update type may be included in a single request's `updateMask`.\nFor example, one cannot update both the PyPI packages and\nlabels in the same request. However, it is possible to update multiple\nmembers of a map field simultaneously in the same request. For example,\nto set the labels \"label1\" and \"label2\" while clearing \"label3\" (assuming\nit already exists), one can\nprovide the paths \"labels.label1\", \"labels.label2\", and \"labels.label3\"\nand populate the patch environment as follows:\n\n {\n \"labels\":{\n \"label1\":\"new-label1-value\"\n \"label2\":\"new-label2-value\"\n }\n }\n\nNote that in the above example, any existing labels that are not\nincluded in the `updateMask` will be unaffected.\n\nIt is also possible to replace an entire map field by providing the\nmap field's path in the `updateMask`. The new value of the field will\nbe that which is provided in the patch environment. For example, to\ndelete all pre-existing user-specified PyPI packages and\ninstall botocore at version 1.7.14, the `updateMask` would contain\nthe path \"config.softwareConfig.pypiPackages\", and\nthe patch environment would be the following:\n\n {\n \"config\":{\n \"softwareConfig\":{\n \"pypiPackages\":{\n \"botocore\":\"==1.7.14\"\n }\n }\n }\n }\n\n\u003cstrong\u003eNote:\u003c/strong\u003e Only the following fields can be updated:\n\n \u003ctable\u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\u003e\u003cstrong\u003eMask\u003c/strong\u003e\u003c/td\u003e\n \u003ctd\u003e\u003cstrong\u003ePurpose\u003c/strong\u003e\u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\u003econfig.softwareConfig.pypiPackages\n \u003c/td\u003e\n \u003ctd\u003eReplace all custom custom PyPI packages. If a replacement\n package map is not included in `environment`, all custom\n PyPI packages are cleared. It is an error to provide both this mask and a\n mask specifying an individual package.\u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\u003econfig.softwareConfig.pypiPackages.\u003cvar\u003epackagename\u003c/var\u003e\u003c/td\u003e\n \u003ctd\u003eUpdate the custom PyPI package \u003cvar\u003epackagename\u003c/var\u003e,\n preserving other packages. To delete the package, include it in\n `updateMask`, and omit the mapping for it in\n `environment.config.softwareConfig.pypiPackages`. It is an error\n to provide both a mask of this form and the\n \"config.softwareConfig.pypiPackages\" mask.\u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\u003elabels\u003c/td\u003e\n \u003ctd\u003eReplace all environment labels. If a replacement labels map is not\n included in `environment`, all labels are cleared. It is an error to\n provide both this mask and a mask specifying one or more individual\n labels.\u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\u003elabels.\u003cvar\u003elabelName\u003c/var\u003e\u003c/td\u003e\n \u003ctd\u003eSet the label named \u003cvar\u003elabelName\u003c/var\u003e, while preserving other\n labels. To delete the label, include it in `updateMask` and omit its\n mapping in `environment.labels`. It is an error to provide both a\n mask of this form and the \"labels\" mask.\u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\u003econfig.nodeCount\u003c/td\u003e\n \u003ctd\u003eHorizontally scale the number of nodes in the environment. An integer\n greater than or equal to 3 must be provided in the `config.nodeCount` field.\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\u003econfig.softwareConfig.airflowConfigOverrides\u003c/td\u003e\n \u003ctd\u003eReplace all Apache Airflow config overrides. If a replacement config\n overrides map is not included in `environment`, all config overrides\n are cleared.\n It is an error to provide both this mask and a mask specifying one or\n more individual config overrides.\u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\u003econfig.softwareConfig.properties.\u003cvar\u003esection\u003c/var\u003e-\u003cvar\u003ename\n \u003c/var\u003e\u003c/td\u003e\n \u003ctd\u003eOverride the Apache Airflow property \u003cvar\u003ename\u003c/var\u003e in the section\n named \u003cvar\u003esection\u003c/var\u003e, preserving other properties. To delete the\n property override, include it in `updateMask` and omit its mapping\n in `environment.config.softwareConfig.properties`.\n It is an error to provide both a mask of this form and the\n \"config.softwareConfig.properties\" mask.\u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\u003econfig.softwareConfig.envVariables\u003c/td\u003e\n \u003ctd\u003eReplace all environment variables. If a replacement environment\n variable map is not included in `environment`, all custom environment\n variables are cleared.\n It is an error to provide both this mask and a mask specifying one or\n more individual environment variables.\u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e", - "format": "google-fieldmask", - "type": "string", - "location": "query" - }, "name": { "location": "path", "description": "The relative resource name of the environment to update, in the form:\n`projects/{projectId}/locations/{locationId}/environments/{environmentId}`", "required": true, "type": "string", "pattern": "^projects/[^/]+/locations/[^/]+/environments/[^/]+$" + }, + "updateMask": { + "location": "query", + "description": "Required. A comma-separated list of paths, relative to `Environment`, of\nfields to update.\nFor example, to set the version of scikit-learn to install in the\nenvironment to 0.19.0 and to remove an existing installation of\nargparse, the `updateMask` parameter would include the following two\n`paths` values: \"config.softwareConfig.pypiPackages.scikit-learn\" and\n\"config.softwareConfig.pypiPackages.argparse\". The included patch\nenvironment would specify the scikit-learn version as follows:\n\n {\n \"config\":{\n \"softwareConfig\":{\n \"pypiPackages\":{\n \"scikit-learn\":\"==0.19.0\"\n }\n }\n }\n }\n\nNote that in the above example, any existing PyPI packages\nother than scikit-learn and argparse will be unaffected.\n\nOnly one update type may be included in a single request's `updateMask`.\nFor example, one cannot update both the PyPI packages and\nlabels in the same request. However, it is possible to update multiple\nmembers of a map field simultaneously in the same request. For example,\nto set the labels \"label1\" and \"label2\" while clearing \"label3\" (assuming\nit already exists), one can\nprovide the paths \"labels.label1\", \"labels.label2\", and \"labels.label3\"\nand populate the patch environment as follows:\n\n {\n \"labels\":{\n \"label1\":\"new-label1-value\"\n \"label2\":\"new-label2-value\"\n }\n }\n\nNote that in the above example, any existing labels that are not\nincluded in the `updateMask` will be unaffected.\n\nIt is also possible to replace an entire map field by providing the\nmap field's path in the `updateMask`. The new value of the field will\nbe that which is provided in the patch environment. For example, to\ndelete all pre-existing user-specified PyPI packages and\ninstall botocore at version 1.7.14, the `updateMask` would contain\nthe path \"config.softwareConfig.pypiPackages\", and\nthe patch environment would be the following:\n\n {\n \"config\":{\n \"softwareConfig\":{\n \"pypiPackages\":{\n \"botocore\":\"==1.7.14\"\n }\n }\n }\n }\n\n\u003cstrong\u003eNote:\u003c/strong\u003e Only the following fields can be updated:\n\n \u003ctable\u003e\n \u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\u003e\u003cstrong\u003eMask\u003c/strong\u003e\u003c/td\u003e\n \u003ctd\u003e\u003cstrong\u003ePurpose\u003c/strong\u003e\u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\u003econfig.softwareConfig.pypiPackages\n \u003c/td\u003e\n \u003ctd\u003eReplace all custom custom PyPI packages. If a replacement\n package map is not included in `environment`, all custom\n PyPI packages are cleared. It is an error to provide both this mask and a\n mask specifying an individual package.\u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\u003econfig.softwareConfig.pypiPackages.\u003cvar\u003epackagename\u003c/var\u003e\u003c/td\u003e\n \u003ctd\u003eUpdate the custom PyPI package \u003cvar\u003epackagename\u003c/var\u003e,\n preserving other packages. To delete the package, include it in\n `updateMask`, and omit the mapping for it in\n `environment.config.softwareConfig.pypiPackages`. It is an error\n to provide both a mask of this form and the\n \"config.softwareConfig.pypiPackages\" mask.\u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\u003elabels\u003c/td\u003e\n \u003ctd\u003eReplace all environment labels. If a replacement labels map is not\n included in `environment`, all labels are cleared. It is an error to\n provide both this mask and a mask specifying one or more individual\n labels.\u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\u003elabels.\u003cvar\u003elabelName\u003c/var\u003e\u003c/td\u003e\n \u003ctd\u003eSet the label named \u003cvar\u003elabelName\u003c/var\u003e, while preserving other\n labels. To delete the label, include it in `updateMask` and omit its\n mapping in `environment.labels`. It is an error to provide both a\n mask of this form and the \"labels\" mask.\u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\u003econfig.nodeCount\u003c/td\u003e\n \u003ctd\u003eHorizontally scale the number of nodes in the environment. An integer\n greater than or equal to 3 must be provided in the `config.nodeCount` field.\n \u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\u003econfig.softwareConfig.airflowConfigOverrides\u003c/td\u003e\n \u003ctd\u003eReplace all Apache Airflow config overrides. If a replacement config\n overrides map is not included in `environment`, all config overrides\n are cleared.\n It is an error to provide both this mask and a mask specifying one or\n more individual config overrides.\u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\u003econfig.softwareConfig.properties.\u003cvar\u003esection\u003c/var\u003e-\u003cvar\u003ename\n \u003c/var\u003e\u003c/td\u003e\n \u003ctd\u003eOverride the Apache Airflow property \u003cvar\u003ename\u003c/var\u003e in the section\n named \u003cvar\u003esection\u003c/var\u003e, preserving other properties. To delete the\n property override, include it in `updateMask` and omit its mapping\n in `environment.config.softwareConfig.properties`.\n It is an error to provide both a mask of this form and the\n \"config.softwareConfig.properties\" mask.\u003c/td\u003e\n \u003c/tr\u003e\n \u003ctr\u003e\n \u003ctd\u003econfig.softwareConfig.envVariables\u003c/td\u003e\n \u003ctd\u003eReplace all environment variables. If a replacement environment\n variable map is not included in `environment`, all custom environment\n variables are cleared.\n It is an error to provide both this mask and a mask specifying one or\n more individual environment variables.\u003c/td\u003e\n \u003c/tr\u003e\n \u003c/tbody\u003e\n \u003c/table\u003e", + "format": "google-fieldmask", + "type": "string" } - } + }, + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/environments/{environmentsId}", + "path": "v1beta1/{+name}", + "id": "composer.projects.locations.environments.patch", + "request": { + "$ref": "Environment" + }, + "description": "Update an environment." }, "create": { - "description": "Create a new environment.", "request": { "$ref": "Environment" }, + "description": "Create a new environment.", "response": { "$ref": "Operation" }, @@ -596,18 +233,18 @@ "parent" ], "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "parent": { + "location": "path", "description": "The parent must be of the form `projects/{projectId}/locations/{locationId}`.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/locations/[^/]+$" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/environments", "path": "v1beta1/{+parent}/environments", "id": "composer.projects.locations.environments.create" @@ -620,28 +257,77 @@ } }, "parameters": { - "upload_protocol": { + "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": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "description": "API key. 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" }, - "prettyPrint": { + "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": "Returns response with indentations and line breaks.", + "description": "Pretty-print response.", "type": "boolean", "default": "true" }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", + "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" @@ -650,62 +336,376 @@ "enum": [ "1", "2" - ], - "description": "V1 error format.", - "type": "string" + ] }, "callback": { "location": "query", "description": "JSONP", "type": "string" + } + }, + "version": "v1beta1", + "baseUrl": "https://composer.googleapis.com/", + "kind": "discovery#restDescription", + "description": "Manages Apache Airflow environments on Google Cloud Platform.", + "servicePath": "", + "basePath": "", + "revision": "20180430", + "documentationLink": "https://cloud.google.com/composer/", + "id": "composer:v1beta1", + "discoveryVersion": "v1", + "version_module": true, + "schemas": { + "ListEnvironmentsResponse": { + "properties": { + "nextPageToken": { + "description": "The page token used to query for the next page if one exists", + "type": "string" + }, + "environments": { + "description": "The list of environments returned by a ListEnvironmentsRequest.", + "type": "array", + "items": { + "$ref": "Environment" + } + } + }, + "id": "ListEnvironmentsResponse", + "description": "The environments in a project and location.", + "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" + "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" + }, + "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" + }, + "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" + }, + "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.", + "type": "object" + }, + "OperationMetadata": { + "description": "Metadata describing an operation.", + "type": "object", + "properties": { + "resourceUuid": { + "description": "Output only.\nThe UUID of the resource being operated on.", + "type": "string" + }, + "endTime": { + "description": "Output only.\nThe time when the operation terminated, regardless of its success.\nThis field is unset if the operation is still ongoing.", + "format": "google-datetime", + "type": "string" + }, + "operationType": { + "enum": [ + "TYPE_UNSPECIFIED", + "CREATE", + "DELETE", + "UPDATE" + ], + "description": "Output only.\nThe type of operation being performed.", + "type": "string", + "enumDescriptions": [ + "Unused.", + "A resource creation operation.", + "A resource deletion operation.", + "A resource update operation." + ] + }, + "createTime": { + "description": "Output only.\nThe time the operation was submitted to the server.", + "format": "google-datetime", + "type": "string" + }, + "resource": { + "description": "Output only.\nThe resource being operated on, as a [relative resource name](\n/apis/design/resource_names#relative_resource_name).", + "type": "string" + }, + "state": { + "enumDescriptions": [ + "Unused.", + "The operation has been created but is not yet started.", + "The operation is underway.", + "The operation completed successfully.", + "The operation is no longer running but did not succeed." + ], + "enum": [ + "STATE_UNSPECIFIED", + "PENDING", + "RUNNING", + "SUCCESSFUL", + "FAILED" + ], + "description": "Output only.\nThe current operation state.", + "type": "string" + } + }, + "id": "OperationMetadata" }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" + "Environment": { + "properties": { + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. User-defined labels for this environment.\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" + }, + "createTime": { + "description": "Output only.\nThe time at which this environment was created.", + "format": "google-datetime", + "type": "string" + }, + "state": { + "enum": [ + "STATE_UNSPECIFIED", + "CREATING", + "RUNNING", + "UPDATING", + "DELETING", + "ERROR" + ], + "description": "The current state of the environment.", + "type": "string", + "enumDescriptions": [ + "The state of the environment is unknown.", + "The environment is in the process of being created.", + "The environment is currently running and healthy. It is ready for use.", + "The environment is being updated. It remains usable but cannot receive\nadditional update requests or be deleted at this time.", + "The environment is undergoing deletion. It cannot be used.", + "The environment has encountered an error and cannot be used." + ] + }, + "updateTime": { + "description": "Output only.\nThe time at which this environment was last modified.", + "format": "google-datetime", + "type": "string" + }, + "config": { + "$ref": "EnvironmentConfig", + "description": "Configuration parameters for this environment." + }, + "name": { + "description": "The resource name of the environment, in the form:\n`projects/{projectId}/locations/{locationId}/environments/{environmentId}`", + "type": "string" + }, + "uuid": { + "description": "Output only.\nThe UUID (Universally Unique IDentifier) associated with this environment.\nThis value is generated when the environment is created.", + "type": "string" + } + }, + "id": "Environment", + "description": "An environment for running orchestration tasks.", + "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.", - "type": "string", - "location": "query" + "SoftwareConfig": { + "properties": { + "envVariables": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Additional environment variables to provide to the Apache Airflow\nscheduler, worker, and webserver processes.\n\nEnvironment variable names must match the regular expression\n`a-zA-Z_*`. Furthermore, they cannot specify Apache Airflow\nsoftware configuration overrides (i.e., match the regular expression\n`AIRFLOW__[A-Z0-9_]+__[A-Z0-9_]+`); nor can they take any of the following\nreserved values:\n\n* `AIRFLOW_HOME`\n* `C_FORCE_ROOT`\n* `CONTAINER_NAME`\n* `DAGS_FOLDER`\n* `GCP_PROJECT`\n* `GCS_BUCKET`\n* `GKE_CLUSTER_NAME`\n* `SQL_DATABASE`\n* `SQL_INSTANCE`\n* `SQL_PASSWORD`\n* `SQL_PROJECT`\n* `SQL_REGION`\n* `SQL_USER`", + "type": "object" + }, + "pypiPackages": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Custom Python Package Index (PyPI) packages to be installed in\nthe environment.\n\nKeys refer to the lowercase package name such as `numpy`\nand values are the lowercase extras and version specifier such as\n`==1.12.0`, `[devel,gcp_api]`, or `[devel]\u003e=1.8.2, \u003c1.9.2`. To specify a\npackage without pinning it to a version specifier, use the empty string as\nthe value.", + "type": "object" + }, + "imageVersion": { + "description": "Output only.\nThe version of the software running in the environment.\nThis encapsulates both the version of Cloud Composer functionality and the\nversion of Apache Airflow. It must match the regular expression\n`composer-[0-9]+\\.[0-9]+(\\.[0-9]+)?-airflow-[0-9]+\\.[0-9]+(\\.[0-9]+.*)?`.\n\nThe Cloud Composer portion of the version is a [semantic\nversion](https://semver.org). The portion of the image version following\n\u003cem\u003eairflow-\u003c/em\u003e is an official Apache Airflow repository [release\nname](https://github.com/apache/incubator-airflow/releases).\n\nSee also [Release Notes](/composer/docs/release-notes).", + "type": "string" + }, + "airflowConfigOverrides": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Apache Airflow configuration properties to override.\n\nProperty keys contain the section and property name, separated by a hyphen,\nfor example `core-dags_are_paused_at_creation`. Sections must not\ncontain hyphens (\"-\"), opening square brackets (\"[\"), or closing square\nbrackets (\"]\"). The name must be non-empty and must not contain an equals\nsign (\"=\") or semicolon (\";\"). The section as well as the name must not\ncontain a period (\".\"). Apache Airflow configuration property names must be\nwritten in\n[snake_case](https://www.google.com/url?sa=D&q=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FSnake_case).\nProperty values can contain any character and be written in any lower/upper\ncase format.\n\nCertain Apache Airflow configuration property values are\n[blacklisted](/composer/docs/how-to/managing/setting-airflow-configurations#airflow_configuration_blacklists) and\ncannot be overridden.", + "type": "object" + } + }, + "id": "SoftwareConfig", + "description": "Specifies the selection and config of software inside the environment.", + "type": "object" }, - "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" + "NodeConfig": { + "properties": { + "serviceAccount": { + "description": "Optional. The Google Cloud Platform Service Account to be used by the node\nVMs. If a service account is not specified, the \"default\" Compute Engine\nservice account is used. Cannot be updated.", + "type": "string" + }, + "location": { + "description": "Optional. The Compute Engine [zone](/compute/docs/regions-zones) in which\nto deploy the VMs used to run the Apache Airflow software, specified as a\nrelative resource name](https://cloud.google.com/apis/design/resource_names#relative_resource_name).\nFor example: `projects/{projectId}/zones/{zoneId}`.\n\nThis `location` must belong to the enclosing environment's project and\nlocation. If both this field and `nodeConfig.machineType` are specified,\n`nodeConfig.machineType` must belong to this `location`; if both are\nunspecified, the service will pick a zone in the Compute Engine region\ncorresponding to the Cloud Composer location and propagate that choice to\nboth fields. If exactly one of this field and `nodeConfig.machineType` is\nspecified, the location information from the specified field will be\npropagated to the unspecified field.", + "type": "string" + }, + "machineType": { + "description": "Optional. The Google Compute Engine [machine type](\n/compute/docs/machine-types) used for cluster instances, specified as a\n[relative resource name](\nhttps://cloud.google.com/apis/design/resource_names#relative_resource_name).\nFor example:\n`projects/{projectId}/zones/{zoneId}/machineTypes/{machineTypeId}`.\n\nThe `machineType` must belong to the enclosing environment's project and\nlocation. If both this field and `nodeConfig.location` are specified,\nthis `machineType` must belong to the `nodeConfig.location`; if both are\nunspecified, the service will pick a zone in the Compute Engine region\ncorresponding to the Cloud Composer location and propagate that choice to\nboth fields. If exactly one of this field and `nodeConfig.location` is\nspecified, the location information from the specified field will be\npropagated to the unspecified field.\n\nFurthermore, if this field is unspecified, the `machineTypeId` defaults\nto `n1-standard-1`.", + "type": "string" + }, + "network": { + "description": "Optional. The Compute Engine network to be used for machine\ncommunications, specified as a [relative resource name](\nhttps://cloud.google.com/apis/design/resource_names#relative_resource_name).\nFor example: `projects/{projectId}/global/networks/{networkId}`.\n\n[Shared VPC](/vpc/docs/shared-vpc) is not currently supported. The\nnetwork must belong to the environment's project. If unspecified, the\n\"default\" network ID in the environment's project is used. If a \"Custom\nSubnet Network\" (see [Using Subnetworks](/compute/docs/subnetworks) for\nmore information) is provided, `nodeConfig.subnetwork` must also be provided.", + "type": "string" + }, + "oauthScopes": { + "description": "Optional. The set of Google API scopes to be made available on all of the\nnode VMs. If `oauth_scopes` is empty, defaults to\n[\"https://www.googleapis.com/auth/cloud-platform\"]. Cannot be updated.", + "type": "array", + "items": { + "type": "string" + } + }, + "subnetwork": { + "description": "Optional. The Compute Engine subnetwork to be used for machine\ncommunications, specified as a [relative resource name](\nhttps://cloud.google.com/apis/design/resource_names#relative_resource_name).\nFor example:\n`projects/{projectId}/regions/{regionId}/subnetworks/{subnetworkId}`\n\nIf a subnetwork is provided, `nodeConfig.network` must also be provided,\nand the subnetwork must belong to the enclosing environment's project and\nlocation.", + "type": "string" + }, + "diskSizeGb": { + "description": "Optional. The disk size in GB used for node VMs. Minimum is 10GB.\nIf unspecified, defaults to 100GB. Cannot be updated.", + "format": "int32", + "type": "integer" + }, + "tags": { + "description": "Optional. The list of instance tags applied to all node VMs. Tags are used\nto identify valid sources or targets for network firewalls. Each tag within\nthe list must comply with [RFC1035](https://www.ietf.org/rfc/rfc1035.txt).\nCannot be updated.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "id": "NodeConfig", + "description": "The configuration information for the Container Engine nodes running\nthe Apache Airflow software.", + "type": "object" }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" + "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": { + "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.", + "type": "object" }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" + "EnvironmentConfig": { + "description": "Configuration information for an environment.", + "type": "object", + "properties": { + "airflowUri": { + "description": "The URI of the Apache Airflow Web UI hosted within this environment (see\n[Airflow web interface](/composer/docs/how-to/accessing/airflow-web-interface)).", + "type": "string" + }, + "softwareConfig": { + "description": "The config settings for software inside the environment.", + "$ref": "SoftwareConfig" + }, + "nodeConfig": { + "$ref": "NodeConfig", + "description": "The configuration used for the Container Engine cluster." + }, + "nodeCount": { + "description": "The number of nodes in the Container Engine cluster that will be\nused to run this environment.", + "format": "int32", + "type": "integer" + }, + "dagGcsPrefix": { + "description": "Output only.\nThe Cloud Storage prefix of the DAGs for this environment. Although Cloud\nStorage objects reside in a flat namespace, a hierarchical file tree\ncan be simulated using \"/\"-delimited object name prefixes. DAG objects for\nthis environment reside in a simulated directory with the given prefix.", + "type": "string" + }, + "gkeCluster": { + "description": "Output only.\nThe Kubernetes Engine cluster used to run this environment.", + "type": "string" + } + }, + "id": "EnvironmentConfig" }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "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" + } + }, + "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 Composer", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } } }, - "version": "v1beta1" + "rootUrl": "https://composer.googleapis.com/", + "ownerDomain": "google.com", + "name": "composer", + "batchPath": "batch", + "fullyEncodeReservedExpansion": true, + "title": "Cloud Composer API", + "ownerName": "Google" } diff --git a/DiscoveryJson/container_v1.json b/DiscoveryJson/container_v1.json index 81f7fa5ede..cfcb56ea10 100644 --- a/DiscoveryJson/container_v1.json +++ b/DiscoveryJson/container_v1.json @@ -1,2830 +1,853 @@ { - "ownerDomain": "google.com", - "name": "container", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Kubernetes Engine API", - "ownerName": "Google", - "resources": { - "projects": { - "resources": { + "baseUrl": "https://container.googleapis.com/", + "kind": "discovery#restDescription", + "description": "The Google Kubernetes Engine API is used for building and managing container based applications, powered by the open source Kubernetes technology.", + "servicePath": "", + "basePath": "", + "revision": "20180420", + "documentationLink": "https://cloud.google.com/container-engine/", + "id": "container:v1", + "discoveryVersion": "v1", + "schemas": { + "NetworkPolicyConfig": { + "type": "object", + "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." + }, + "UpdateClusterRequest": { + "description": "UpdateClusterRequest updates the settings of a 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": "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" + }, + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "update": { + "$ref": "ClusterUpdate", + "description": "A description of the update." + } + }, + "id": "UpdateClusterRequest" + }, + "Cluster": { + "description": "A Google Kubernetes Engine cluster.", + "type": "object", + "properties": { + "createTime": { + "type": "string", + "description": "[Output only] The time the cluster was created, in\n[RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format." + }, + "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": { - "methods": { - "getServerConfig": { - "description": "Returns configuration info about the Kubernetes Engine service.", - "response": { - "$ref": "ServerConfig" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "location": "query", - "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": { - "location": "query", - "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.", - "type": "string" - }, - "name": { - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path", - "description": "The name (project and location) of the server config to get\nSpecified in the format 'projects/*/locations/*'.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/serverConfig", - "path": "v1/{+name}/serverConfig", - "id": "container.projects.locations.getServerConfig" - } + "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": { + "type": "array", + "items": { + "type": "string" }, - "resources": { - "clusters": { - "methods": { - "setLegacyAbac": { - "description": "Enables or disables the ABAC authorization mechanism on a cluster.", - "request": { - "$ref": "SetLegacyAbacRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Operation" - }, - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setLegacyAbac", - "id": "container.projects.locations.clusters.setLegacyAbac", - "path": "v1/{+name}:setLegacyAbac" - }, - "setResourceLabels": { - "description": "Sets labels on a cluster.", - "request": { - "$ref": "SetLabelsRequest" - }, - "httpMethod": "POST", - "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", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setResourceLabels", - "id": "container.projects.locations.clusters.setResourceLabels", - "path": "v1/{+name}:setResourceLabels" - }, - "setLocations": { - "description": "Sets the locations of a specific cluster.", - "request": { - "$ref": "SetLocationsRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Operation" - }, - "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": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setLocations", - "id": "container.projects.locations.clusters.setLocations", - "path": "v1/{+name}:setLocations" - }, - "updateMaster": { - "path": "v1/{+name}:updateMaster", - "id": "container.projects.locations.clusters.updateMaster", - "request": { - "$ref": "UpdateMasterRequest" - }, - "description": "Updates the master of a specific cluster.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:updateMaster" - }, - "update": { - "request": { - "$ref": "UpdateClusterRequest" - }, - "description": "Updates the settings of a specific cluster.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}", - "path": "v1/{+name}", - "id": "container.projects.locations.clusters.update" - }, - "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 the password.", - "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) of the cluster to set auth.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setMasterAuth", - "path": "v1/{+name}:setMasterAuth", - "id": "container.projects.locations.clusters.setMasterAuth" - }, - "setLogging": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "description": "The name (project, location, cluster) of the cluster to set logging.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setLogging", - "path": "v1/{+name}:setLogging", - "id": "container.projects.locations.clusters.setLogging", - "request": { - "$ref": "SetLoggingServiceRequest" - }, - "description": "Sets the logging service of a specific cluster." - }, - "list": { - "response": { - "$ref": "ListClustersResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "location": "query", - "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": { - "location": "query", - "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.", - "type": "string" - }, - "parent": { - "location": "path", - "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/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters", - "path": "v1/{+parent}/clusters", - "id": "container.projects.locations.clusters.list", - "description": "Lists all clusters owned by a project in either the specified zone or all\nzones." - }, - "create": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters", - "path": "v1/{+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": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:completeIpRotation", - "id": "container.projects.locations.clusters.completeIpRotation", - "path": "v1/{+name}:completeIpRotation", - "description": "Completes master IP rotation.", - "request": { - "$ref": "CompleteIPRotationRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "name": { - "description": "The name (project, location, cluster id) of the cluster to complete IP\nrotation. Specified in the format 'projects/*/locations/*/clusters/*'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "id": "container.projects.locations.clusters.get", - "path": "v1/{+name}", - "description": "Gets the details of a specific cluster.", - "httpMethod": "GET", - "response": { - "$ref": "Cluster" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", - "location": "path", - "description": "The name (project, location, cluster) of the cluster to retrieve.\nSpecified in the format 'projects/*/locations/*/clusters/*'." - }, - "projectId": { - "location": "query", - "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": { - "location": "query", - "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" - }, - "clusterId": { - "location": "query", - "description": "Deprecated. The name of the cluster to retrieve.\nThis field has been deprecated and replaced by the name field.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}" - }, - "setNetworkPolicy": { - "path": "v1/{+name}:setNetworkPolicy", - "id": "container.projects.locations.clusters.setNetworkPolicy", - "request": { - "$ref": "SetNetworkPolicyRequest" - }, - "description": "Enables/Disables Network Policy for a cluster.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", - "location": "path", - "description": "The name (project, location, cluster id) of the cluster to set networking\npolicy. Specified in the format 'projects/*/locations/*/clusters/*'.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setNetworkPolicy" - }, - "setAddons": { - "path": "v1/{+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", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", - "location": "path", - "description": "The name (project, location, cluster) of the cluster to set addons.\nSpecified in the format 'projects/*/locations/*/clusters/*'." - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setAddons" - }, - "setMonitoring": { - "request": { - "$ref": "SetMonitoringServiceRequest" - }, - "description": "Sets the monitoring service of a specific cluster.", - "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) of the cluster to set monitoring.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setMonitoring", - "path": "v1/{+name}:setMonitoring", - "id": "container.projects.locations.clusters.setMonitoring" - }, - "startIpRotation": { - "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 start IP\nrotation. Specified in the format 'projects/*/locations/*/clusters/*'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:startIpRotation", - "path": "v1/{+name}:startIpRotation", - "id": "container.projects.locations.clusters.startIpRotation", - "request": { - "$ref": "StartIPRotationRequest" - }, - "description": "Start master IP rotation." - }, - "setMaintenancePolicy": { - "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/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setMaintenancePolicy", - "path": "v1/{+name}:setMaintenancePolicy", - "id": "container.projects.locations.clusters.setMaintenancePolicy", - "description": "Sets the maintenance policy for a cluster.", - "request": { - "$ref": "SetMaintenancePolicyRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST" - }, - "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": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "location": "path", - "description": "The name (project, location, cluster) of the cluster to delete.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$" - }, - "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", - "location": "query" - }, - "zone": { - "location": "query", - "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" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster to delete.\nThis field has been deprecated and replaced by the name field.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}", - "path": "v1/{+name}", - "id": "container.projects.locations.clusters.delete" - } - }, - "resources": { - "nodePools": { - "methods": { - "get": { - "parameters": { - "clusterId": { - "location": "query", - "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", - "type": "string" - }, - "nodePoolId": { - "description": "Deprecated. The name of the node pool.\nThis field has been deprecated and replaced by the name field.", - "type": "string", - "location": "query" - }, - "name": { - "location": "path", - "description": "The name (project, location, cluster, node pool id) of the node pool to\nget. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$" - }, - "projectId": { - "location": "query", - "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", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}", - "id": "container.projects.locations.clusters.nodePools.get", - "path": "v1/{+name}", - "description": "Retrieves the node pool requested.", - "httpMethod": "GET", - "response": { - "$ref": "NodePool" - }, - "parameterOrder": [ - "name" - ] - }, - "update": { - "request": { - "$ref": "UpdateNodePoolRequest" - }, - "description": "Updates the version and/or image type of a specific node pool.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "location": "path", - "description": "The name (project, location, cluster, node pool) of the node pool to\nupdate. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}", - "path": "v1/{+name}", - "id": "container.projects.locations.clusters.nodePools.update" - }, - "setAutoscaling": { - "description": "Sets the autoscaling settings of a specific node pool.", - "request": { - "$ref": "SetNodePoolAutoscalingRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "name": { - "pattern": "^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/*'.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:setAutoscaling", - "id": "container.projects.locations.clusters.nodePools.setAutoscaling", - "path": "v1/{+name}:setAutoscaling" - }, - "setSize": { - "path": "v1/{+name}:setSize", - "id": "container.projects.locations.clusters.nodePools.setSize", - "request": { - "$ref": "SetNodePoolSizeRequest" - }, - "description": "Sets the size of a specific node pool.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", - "location": "path", - "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" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:setSize" - }, - "setManagement": { - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:setManagement", - "path": "v1/{+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" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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/[^/]+$" - } - } - }, - "delete": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "nodePoolId": { - "location": "query", - "description": "Deprecated. The name of the node pool to delete.\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\ndelete. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", - "location": "path" - }, - "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", - "location": "query" - }, - "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", - "location": "query" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}", - "path": "v1/{+name}", - "id": "container.projects.locations.clusters.nodePools.delete", - "description": "Deletes a node pool from a cluster." - }, - "list": { - "description": "Lists the node pools for a cluster.", - "response": { - "$ref": "ListNodePoolsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "type": "string", - "location": "query", - "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." - }, - "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", - "location": "query" - }, - "parent": { - "location": "path", - "description": "The parent (project, location, cluster id) where the node pools will be\nlisted. Specified in the format 'projects/*/locations/*/clusters/*'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$" - }, - "clusterId": { - "location": "query", - "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", - "type": "string" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools", - "path": "v1/{+parent}/nodePools", - "id": "container.projects.locations.clusters.nodePools.list" - }, - "rollback": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^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/*'." - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:rollback", - "path": "v1/{+name}:rollback", - "id": "container.projects.locations.clusters.nodePools.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": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "location": "path", - "description": "The parent (project, location, cluster id) where the node pool will be\ncreated. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools", - "path": "v1/{+parent}/nodePools", - "id": "container.projects.locations.clusters.nodePools.create", - "description": "Creates a node pool for a cluster.", - "request": { - "$ref": "CreateNodePoolRequest" - } - } - } - } - } - }, - "operations": { - "methods": { - "cancel": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "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/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel", - "path": "v1/{+name}:cancel", - "id": "container.projects.locations.operations.cancel", - "description": "Cancels the specified operation.", - "request": { - "$ref": "CancelOperationRequest" - } - }, - "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": "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) to return operations for, or `-` for\nall zones. This field has been deprecated and replaced by the parent field.", - "type": "string", - "location": "query" - }, - "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": "v1/projects/{projectsId}/locations/{locationsId}/operations", - "path": "v1/{+parent}/operations", - "id": "container.projects.locations.operations.list" - }, - "get": { - "path": "v1/{+name}", - "id": "container.projects.locations.operations.get", - "description": "Gets the specified operation.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "required": true, - "type": "string", - "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/*'." - }, - "operationId": { - "location": "query", - "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", - "location": "query" - }, - "zone": { - "location": "query", - "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" - } - }, - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}" - } - } - } - } - }, - "zones": { - "methods": { - "getServerconfig": { - "description": "Returns configuration info about the Kubernetes Engine service.", - "response": { - "$ref": "ServerConfig" - }, - "parameterOrder": [ - "projectId", - "zone" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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 name field.", - "required": true, - "type": "string", - "location": "path" - }, - "zone": { - "location": "path", - "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.", - "required": true, - "type": "string" - }, - "name": { - "location": "query", - "description": "The name (project and location) of the server config to get\nSpecified in the format 'projects/*/locations/*'.", - "type": "string" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/serverconfig", - "path": "v1/projects/{projectId}/zones/{zone}/serverconfig", - "id": "container.projects.zones.getServerconfig" - } - }, - "resources": { - "operations": { - "methods": { - "cancel": { - "request": { - "$ref": "CancelOperationRequest" - }, - "description": "Cancels the specified operation.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "projectId", - "zone", - "operationId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "operationId": { - "description": "Deprecated. The server-assigned `name` of the operation.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string", - "location": "path" - }, - "projectId": { - "location": "path", - "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.", - "required": true, - "type": "string" - }, - "zone": { - "location": "path", - "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.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/operations/{operationId}:cancel", - "path": "v1/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": { - "location": "path", - "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) to return operations for, or `-` for\nall zones. This field has been deprecated and replaced by the parent field.", - "required": true, - "type": "string" - }, - "parent": { - "type": "string", - "location": "query", - "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." - }, - "projectId": { - "location": "path", - "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.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/operations", - "path": "v1/projects/{projectId}/zones/{zone}/operations", - "id": "container.projects.zones.operations.list" - }, - "get": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "operationId" - ], - "httpMethod": "GET", - "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": "Deprecated. The server-assigned `name` of the operation.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string" - }, - "projectId": { - "location": "path", - "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.", - "required": true, - "type": "string" - }, - "zone": { - "required": true, - "type": "string", - "location": "path", - "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." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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." - } - } - }, - "clusters": { - "methods": { - "locations": { - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "response": { - "$ref": "Operation" - }, - "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 name field.", - "required": true, - "type": "string", - "location": "path" - }, - "zone": { - "location": "path", - "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.", - "required": true, - "type": "string" - }, - "clusterId": { - "location": "path", - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/locations", - "id": "container.projects.zones.clusters.locations", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/locations", - "description": "Sets the locations of a specific cluster.", - "request": { - "$ref": "SetLocationsRequest" - } - }, - "update": { - "path": "v1/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", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "location": "path", - "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.", - "required": true, - "type": "string" - }, - "zone": { - "required": true, - "type": "string", - "location": "path", - "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." - }, - "clusterId": { - "location": "path", - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}" - }, - "monitoring": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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 name field.", - "required": true, - "type": "string", - "location": "path" - }, - "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.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "location": "path", - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/monitoring", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/monitoring", - "id": "container.projects.zones.clusters.monitoring", - "request": { - "$ref": "SetMonitoringServiceRequest" - }, - "description": "Sets the monitoring service of a specific cluster." - }, - "master": { - "request": { - "$ref": "UpdateMasterRequest" - }, - "description": "Updates the master of a specific cluster.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "location": "path", - "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.", - "required": true, - "type": "string" - }, - "zone": { - "location": "path", - "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.", - "required": true, - "type": "string" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string", - "location": "path" - } - }, - "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": { - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "projectId": { - "location": "path", - "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.", - "required": true, - "type": "string" - }, - "zone": { - "location": "path", - "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.", - "required": true, - "type": "string" - }, - "clusterId": { - "location": "path", - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMasterAuth", - "id": "container.projects.zones.clusters.setMasterAuth", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}: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": { - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "zone": { - "location": "path", - "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.", - "required": true, - "type": "string" - }, - "clusterId": { - "location": "path", - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string" - }, - "projectId": { - "location": "path", - "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.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/logging", - "id": "container.projects.zones.clusters.logging", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/logging", - "description": "Sets the logging service of a specific cluster.", - "request": { - "$ref": "SetLoggingServiceRequest" - } - }, - "list": { - "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", - "response": { - "$ref": "ListClustersResponse" - }, - "parameterOrder": [ - "projectId", - "zone" - ], - "parameters": { - "zone": { - "location": "path", - "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.", - "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": { - "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.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters" - }, - "resourceLabels": { - "request": { - "$ref": "SetLabelsRequest" - }, - "description": "Sets labels on a cluster.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "location": "path", - "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.", - "required": true, - "type": "string" - }, - "zone": { - "required": true, - "type": "string", - "location": "path", - "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." - }, - "clusterId": { - "location": "path", - "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/resourceLabels", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/resourceLabels", - "id": "container.projects.zones.clusters.resourceLabels" - }, - "create": { - "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" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone" - ], - "httpMethod": "POST", - "parameters": { - "projectId": { - "required": true, - "type": "string", - "location": "path", - "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." - }, - "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.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "completeIpRotation": { - "request": { - "$ref": "CompleteIPRotationRequest" - }, - "description": "Completes master IP rotation.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "location": "path", - "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.", - "required": true, - "type": "string" - }, - "zone": { - "location": "path", - "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.", - "required": true, - "type": "string" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", - "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" - }, - "get": { - "description": "Gets the details of a specific cluster.", - "httpMethod": "GET", - "response": { - "$ref": "Cluster" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "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": "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.", - "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.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "location": "path", - "description": "Deprecated. The name of the cluster to retrieve.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", - "id": "container.projects.zones.clusters.get", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}" - }, - "setNetworkPolicy": { - "request": { - "$ref": "SetNetworkPolicyRequest" - }, - "description": "Enables/Disables Network Policy for a cluster.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "location": "path", - "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.", - "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.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setNetworkPolicy", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setNetworkPolicy", - "id": "container.projects.zones.clusters.setNetworkPolicy" - }, - "legacyAbac": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "location": "path", - "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.", - "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.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "location": "path", - "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string" - } - }, - "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." - }, - "startIpRotation": { - "description": "Start master IP rotation.", - "request": { - "$ref": "StartIPRotationRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "parameters": { - "projectId": { - "location": "path", - "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.", - "required": true, - "type": "string" - }, - "zone": { - "location": "path", - "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.", - "required": true, - "type": "string" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:startIpRotation", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:startIpRotation", - "id": "container.projects.zones.clusters.startIpRotation" - }, - "addons": { - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/addons", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/addons", - "id": "container.projects.zones.clusters.addons", - "request": { - "$ref": "SetAddonsConfigRequest" - }, - "description": "Sets the addons of a specific cluster.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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 name field.", - "required": true, - "type": "string", - "location": "path" - }, - "zone": { - "required": true, - "type": "string", - "location": "path", - "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." - }, - "clusterId": { - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string", - "location": "path" - } - } - }, - "setMaintenancePolicy": { - "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}: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" - } - }, - "delete": { - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", - "path": "v1/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": { - "required": true, - "type": "string", - "location": "path", - "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." - }, - "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.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster to delete.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string", - "location": "path" - } - } - } - }, - "resources": { - "nodePools": { - "methods": { - "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", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "nodePoolId": { - "description": "Deprecated. The name of the node pool to rollback.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string", - "location": "path" - }, - "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.", - "required": true, - "type": "string", - "location": "path" - }, - "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.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster to rollback.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string", - "location": "path" - } - }, - "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": { - "parameters": { - "projectId": { - "location": "path", - "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.", - "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.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "location": "path", - "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools", - "id": "container.projects.zones.clusters.nodePools.create", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools", - "description": "Creates a node pool for a cluster.", - "request": { - "$ref": "CreateNodePoolRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "response": { - "$ref": "Operation" - } - }, - "autoscaling": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "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.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string", - "location": "path" - }, - "nodePoolId": { - "location": "path", - "description": "Deprecated. The name of the node pool to upgrade.\nThis field has been deprecated and replaced by the name field.", - "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.", - "required": true, - "type": "string", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/autoscaling", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/autoscaling", - "id": "container.projects.zones.clusters.nodePools.autoscaling", - "request": { - "$ref": "SetNodePoolAutoscalingRequest" - }, - "description": "Sets the autoscaling settings of a specific node pool." - }, - "get": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "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.", - "required": true, - "type": "string", - "location": "path" - }, - "zone": { - "location": "path", - "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.", - "required": true, - "type": "string" - }, - "clusterId": { - "location": "path", - "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string" - }, - "nodePoolId": { - "location": "path", - "description": "Deprecated. The name of the node pool.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string" - }, - "name": { - "description": "The name (project, location, cluster, node pool id) of the node pool to\nget. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", - "type": "string", - "location": "query" - } - }, - "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.", - "response": { - "$ref": "NodePool" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" - ], - "httpMethod": "GET" - }, - "update": { - "request": { - "$ref": "UpdateNodePoolRequest" - }, - "description": "Updates the version and/or image type of a specific node pool.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "location": "path", - "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.", - "required": true, - "type": "string" - }, - "zone": { - "location": "path", - "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.", - "required": true, - "type": "string" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string", - "location": "path" - }, - "nodePoolId": { - "location": "path", - "description": "Deprecated. The name of the node pool to upgrade.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string" - } - }, - "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" - }, - "setSize": { - "description": "Sets the size of a specific node pool.", - "request": { - "$ref": "SetNodePoolSizeRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" - ], - "httpMethod": "POST", - "parameters": { - "projectId": { - "location": "path", - "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.", - "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.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string", - "location": "path" - }, - "nodePoolId": { - "description": "Deprecated. The name of the node pool to update.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setSize", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setSize", - "id": "container.projects.zones.clusters.nodePools.setSize" - }, - "setManagement": { - "description": "Sets the NodeManagement options for a node pool.", - "request": { - "$ref": "SetNodePoolManagementRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "projectId": { - "required": true, - "type": "string", - "location": "path", - "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." - }, - "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.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string", - "location": "path" - }, - "nodePoolId": { - "location": "path", - "description": "Deprecated. The name of the node pool to update.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setManagement", - "id": "container.projects.zones.clusters.nodePools.setManagement", - "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setManagement" - }, - "delete": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "location": "path", - "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.", - "required": true, - "type": "string" - }, - "zone": { - "location": "path", - "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.", - "required": true, - "type": "string" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string", - "location": "path" - }, - "nodePoolId": { - "location": "path", - "description": "Deprecated. The name of the node pool to delete.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string" - }, - "name": { - "location": "query", - "description": "The name (project, location, cluster, node pool id) of the node pool to\ndelete. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", - "type": "string" - } - }, - "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" - }, - "list": { - "response": { - "$ref": "ListNodePoolsResponse" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "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.", - "required": true, - "type": "string", - "location": "path" - }, - "zone": { - "required": true, - "type": "string", - "location": "path", - "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." - }, - "clusterId": { - "location": "path", - "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", - "required": true, - "type": "string" - }, - "parent": { - "type": "string", - "location": "query", - "description": "The parent (project, location, cluster id) where the node pools will be\nlisted. Specified in the format 'projects/*/locations/*/clusters/*'." - } - }, - "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", - "description": "Lists the node pools for a cluster." - } - } - } - } - } - } - } - } - } - }, - "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": { - "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": { - "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": { - "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" - }, - "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": "v1", - "baseUrl": "https://container.googleapis.com/", - "kind": "discovery#restDescription", - "description": "The Google Kubernetes Engine API is used for building and managing container based applications, powered by the open source Kubernetes technology.", - "servicePath": "", - "basePath": "", - "revision": "20180420", - "documentationLink": "https://cloud.google.com/container-engine/", - "id": "container:v1", - "discoveryVersion": "v1", - "schemas": { - "SetLocationsRequest": { - "description": "SetLocationsRequest sets the locations of the cluster.", - "type": "object", - "properties": { + "description": "Deprecated. Use node_pools.instance_group_urls." + }, + "networkPolicy": { + "$ref": "NetworkPolicy", + "description": "Configuration options for the NetworkPolicy feature." + }, + "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" + }, + "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": { + "type": "string", + "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." + }, + "labelFingerprint": { + "description": "The fingerprint of the set of labels for this cluster.", + "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" + }, + "expireTime": { + "type": "string", + "description": "[Output only] The time the cluster will be automatically\ndeleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format." + }, + "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" + }, + "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": { + "description": "The authentication information for accessing the master endpoint.", + "$ref": "MasterAuth" + }, + "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": { + "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." + ], + "enum": [ + "STATUS_UNSPECIFIED", + "PROVISIONING", + "RUNNING", + "RECONCILING", + "STOPPING", + "ERROR", + "DEGRADED" + ], + "description": "[Output only] The current status of this cluster.", + "type": "string" + }, + "subnetwork": { + "description": "The name of the Google Compute Engine\n[subnetwork](/compute/docs/subnetworks) to which the\ncluster is connected.", + "type": "string" + }, + "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" + }, + "maintenancePolicy": { + "description": "Configure the maintenance policy for this cluster.", + "$ref": "MaintenancePolicy" + }, + "resourceLabels": { + "additionalProperties": { + "type": "string" + }, + "description": "The resource labels for the cluster to use to annotate any related\nGoogle Compute Engine resources.", + "type": "object" + }, "name": { - "description": "The name (project, location, cluster) of the cluster to set locations.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "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" + }, + "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" + }, + "ipAllocationPolicy": { + "description": "Configuration for cluster IP allocation.", + "$ref": "IPAllocationPolicy" + }, + "legacyAbac": { + "description": "Configuration for the legacy ABAC authorization mode.", + "$ref": "LegacyAbac" + }, + "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" + } + }, + "id": "Cluster" + }, + "CreateNodePoolRequest": { + "description": "CreateNodePoolRequest creates a node pool for a cluster.", + "type": "object", + "properties": { "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.", + "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 name field.", + "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" }, - "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": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", + "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\ncreated. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", "type": "string" } }, - "id": "SetLocationsRequest" + "id": "CreateNodePoolRequest" }, - "SetNodePoolSizeRequest": { - "description": "SetNodePoolSizeRequest sets the size a node\npool.", + "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": { - "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.", + "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" }, - "clusterId": { - "type": "string", - "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field." + "clientCertificateConfig": { + "$ref": "ClientCertificateConfig", + "description": "Configuration for client certificate authentication on the cluster. If no\nconfiguration is specified, a client certificate is issued." }, - "nodePoolId": { - "description": "Deprecated. The name of the node pool to update.\nThis field has been deprecated and replaced by the name field.", + "clientKey": { + "description": "[Output only] Base64-encoded private key used by clients to authenticate\nto the cluster endpoint.", "type": "string" }, - "zone": { - "type": "string", - "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." + "clusterCaCertificate": { + "description": "[Output only] Base64-encoded public certificate that is the root of\ntrust for the cluster.", + "type": "string" }, - "nodeCount": { - "description": "The desired node count for the pool.", - "format": "int32", - "type": "integer" + "clientCertificate": { + "type": "string", + "description": "[Output only] Base64-encoded public certificate used by clients to\nauthenticate to the cluster endpoint." }, - "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/*'.", + "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": "SetNodePoolSizeRequest" + "id": "MasterAuth" }, - "UpdateClusterRequest": { - "id": "UpdateClusterRequest", - "description": "UpdateClusterRequest updates the settings of a cluster.", + "DailyMaintenanceWindow": { + "description": "Time window specified for daily maintenance operations.", "type": "object", "properties": { - "name": { - "type": "string", - "description": "The name (project, location, cluster) of the cluster to update.\nSpecified in the format 'projects/*/locations/*/clusters/*'." - }, - "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.", + "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" }, - "zone": { - "type": "string", - "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." - }, - "clusterId": { - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "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" - }, - "update": { - "description": "A description of the update.", - "$ref": "ClusterUpdate" } - } + }, + "id": "DailyMaintenanceWindow" }, - "NetworkPolicyConfig": { - "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.", + "ClientCertificateConfig": { + "description": "Configuration for client certificates on the cluster.", "type": "object", "properties": { - "disabled": { - "description": "Whether NetworkPolicy is enabled for this cluster.", + "issueClientCertificate": { + "description": "Issue a client certificate.", "type": "boolean" } + }, + "id": "ClientCertificateConfig" + }, + "MaintenancePolicy": { + "id": "MaintenancePolicy", + "description": "MaintenancePolicy defines the maintenance policy to be used for the cluster.", + "type": "object", + "properties": { + "window": { + "$ref": "MaintenanceWindow", + "description": "Specifies the maintenance window in which maintenance may be performed." + } } }, - "Cluster": { + "SetLoggingServiceRequest": { + "type": "object", "properties": { - "networkPolicy": { - "description": "Configuration options for the NetworkPolicy feature.", - "$ref": "NetworkPolicy" + "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" }, - "servicesIpv4Cidr": { - "type": "string", - "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." + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "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" + "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" }, - "description": { - "description": "An optional description of this cluster.", + "name": { + "description": "The name (project, location, cluster) of the cluster to set logging.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", "type": "string" }, - "currentNodeCount": { - "description": "[Output only] The number of nodes currently in the cluster.", - "format": "int32", - "type": "integer" + "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" + } + }, + "id": "SetLoggingServiceRequest", + "description": "SetLoggingServiceRequest sets the logging service of a cluster." + }, + "SetMaintenancePolicyRequest": { + "properties": { + "zone": { + "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + "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.", + "clusterId": { + "description": "The name of the cluster to update.", "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.", + "maintenancePolicy": { + "description": "The maintenance policy to be set for the cluster. An empty field\nclears the existing maintenance policy.", + "$ref": "MaintenancePolicy" + }, + "name": { + "description": "The name (project, location, cluster id) of the cluster to set maintenance\npolicy.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", "type": "string" }, - "labelFingerprint": { - "description": "The fingerprint of the set of labels for this cluster.", + "projectId": { + "type": "string", + "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840)." + } + }, + "id": "SetMaintenancePolicyRequest", + "description": "SetMaintenancePolicyRequest sets the maintenance policy for a cluster.", + "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" + }, + "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": { + "name": { + "type": "string", + "description": "The name (project, location, cluster id) of the cluster to complete IP\nrotation. Specified in the format 'projects/*/locations/*/clusters/*'." + }, + "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": "[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.", + "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" }, - "expireTime": { - "description": "[Output only] The time the cluster will be automatically\ndeleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.", + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", "type": "string" - }, - "nodeIpv4CidrSize": { - "type": "integer", - "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" - }, - "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.", + } + }, + "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\nrotation. Specified in the format 'projects/*/locations/*/clusters/*'.", "type": "string" }, - "masterAuthorizedNetworksConfig": { - "description": "Master authorized networks is a Beta feature.\nThe configuration options for master authorized networks feature.", - "$ref": "MasterAuthorizedNetworksConfig" - }, - "statusMessage": { - "description": "[Output only] Additional information about the current status of this\ncluster, if available.", + "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" }, - "masterAuth": { - "description": "The authentication information for accessing the master endpoint.", - "$ref": "MasterAuth" + "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" }, - "currentMasterVersion": { - "description": "[Output only] The current software version of the master endpoint.", + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", "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." + "rotateCredentials": { + "description": "Whether to rotate credentials during IP rotation.", + "type": "boolean" + } + }, + "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" }, - "addonsConfig": { - "description": "Configurations for the various addons available to run in the cluster.", - "$ref": "AddonsConfig" + "version": { + "description": "The version of the Kubernetes of this node.", + "type": "string" }, - "status": { - "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.", - "The DEGRADED state indicates the cluster requires user action to restore\nfull functionality. Details can be found in the `statusMessage` field." + "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", - "DEGRADED" + "ERROR" ], - "description": "[Output only] The current status of this cluster." - }, - "subnetwork": { - "description": "The name of the Google Compute Engine\n[subnetwork](/compute/docs/subnetworks) to which the\ncluster is connected.", - "type": "string" - }, - "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.", + "description": "[Output only] The status of the nodes in this pool instance.", "type": "string" }, - "maintenancePolicy": { - "$ref": "MaintenancePolicy", - "description": "Configure the maintenance policy for this cluster." + "config": { + "description": "The node configuration of the pool.", + "$ref": "NodeConfig" }, - "resourceLabels": { - "additionalProperties": { - "type": "string" - }, - "description": "The resource labels for the cluster to use to annotate any related\nGoogle Compute Engine resources.", - "type": "object" + "statusMessage": { + "description": "[Output only] Additional information about the current status of this\nnode pool instance, if available.", + "type": "string" }, "name": { - "type": "string", - "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." - }, - "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", + "description": "The name of the node pool.", "type": "string" }, - "ipAllocationPolicy": { - "description": "Configuration for cluster IP allocation.", - "$ref": "IPAllocationPolicy" - }, - "legacyAbac": { - "$ref": "LegacyAbac", - "description": "Configuration for the legacy ABAC authorization mode." + "autoscaling": { + "$ref": "NodePoolAutoscaling", + "description": "Autoscaler configuration for this NodePool. Autoscaler is enabled\nonly if a valid configuration is present." }, - "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" + "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" }, - "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.", + "management": { + "$ref": "NodeManagement", + "description": "NodeManagement configuration for this NodePool." + } + }, + "id": "NodePool" + }, + "SetLabelsRequest": { + "type": "object", + "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.", "type": "string" }, - "createTime": { - "description": "[Output only] The time the cluster was created, in\n[RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.", + "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" }, - "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`.", + "name": { + "description": "The name (project, location, cluster id) of the cluster to set labels.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", "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" + "resourceLabels": { + "additionalProperties": { + "type": "string" + }, + "description": "The labels to set for that cluster.", + "type": "object" }, - "selfLink": { - "description": "[Output only] Server-defined URL for the resource.", + "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" }, - "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" - } + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "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" + }, + "NodeManagement": { + "description": "NodeManagement defines the set of node management services turned on for the\nnode pool.", + "type": "object", + "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" }, - "locations": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of Google Compute Engine\n[locations](/compute/docs/zones#available) in which the cluster's nodes\nshould be located." + "autoRepair": { + "type": "boolean", + "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." }, - "instanceGroupUrls": { - "description": "Deprecated. Use node_pools.instance_group_urls.", - "type": "array", - "items": { - "type": "string" - } + "upgradeOptions": { + "$ref": "AutoUpgradeOptions", + "description": "Specifies the Auto Upgrade knobs for the node pool." } }, - "id": "Cluster", - "description": "A Google Kubernetes Engine cluster.", - "type": "object" + "id": "NodeManagement" }, - "CreateNodePoolRequest": { - "description": "CreateNodePoolRequest creates a node pool for a cluster.", + "CancelOperationRequest": { "type": "object", "properties": { - "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.", + "operationId": { + "description": "Deprecated. The server-assigned `name` of the operation.\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 parent field.", + "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" }, - "clusterId": { - "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", + "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" }, - "nodePool": { - "description": "The node pool to create.", - "$ref": "NodePool" - }, - "parent": { - "description": "The parent (project, location, cluster id) where the node pool will be\ncreated. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", + "name": { + "description": "The name (project, location, operation id) of the operation to cancel.\nSpecified in the format 'projects/*/locations/*/operations/*'.", "type": "string" } }, - "id": "CreateNodePoolRequest" + "id": "CancelOperationRequest", + "description": "CancelOperationRequest cancels a single operation." }, - "MasterAuth": { - "description": "The authentication information for accessing the master endpoint.\nAuthentication can be done using HTTP basic auth or using client\ncertificates.", + "KubernetesDashboard": { + "description": "Configuration for the Kubernetes Dashboard.", "type": "object", "properties": { - "clientKey": { - "description": "[Output only] Base64-encoded private key used by clients to authenticate\nto the cluster endpoint.", + "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", + "properties": { + "selfLink": { + "description": "Server-defined URL for the resource.", "type": "string" }, - "clusterCaCertificate": { - "description": "[Output only] Base64-encoded public certificate that is the root of\ntrust for the cluster.", + "endTime": { + "description": "[Output only] The time the operation completed, in\n[RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.", "type": "string" }, - "clientCertificate": { - "description": "[Output only] Base64-encoded public certificate used by clients to\nauthenticate to the cluster endpoint.", + "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" }, - "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.", + "targetLink": { + "description": "Server-defined URL for the target of the operation.", "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.", + "detail": { + "description": "Detailed operation progress, if available.", "type": "string" }, - "clientCertificateConfig": { - "description": "Configuration for client certificate authentication on the cluster. If no\nconfiguration is specified, a client certificate is issued.", - "$ref": "ClientCertificateConfig" - } - }, - "id": "MasterAuth" - }, - "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\".", + "operationType": { + "description": "The operation type.", + "type": "string", + "enumDescriptions": [ + "Not set.", + "Cluster create.", + "Cluster delete.", + "A master upgrade.", + "A node upgrade.", + "Cluster repair.", + "Cluster update.", + "Node pool create.", + "Node pool delete.", + "Set node pool management.", + "Automatic node pool repair.", + "Automatic node upgrade.", + "Set labels.", + "Set/generate master auth materials", + "Set node pool size.", + "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" + ] + }, + "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": { + "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." + ], + "enum": [ + "STATUS_UNSPECIFIED", + "PENDING", + "RUNNING", + "DONE", + "ABORTING" + ] + }, + "name": { + "description": "The server-assigned ID for the operation.", "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.", + "statusMessage": { + "description": "If an error has occurred, a textual description of the error.", "type": "string" } }, - "id": "DailyMaintenanceWindow", - "description": "Time window specified for daily maintenance operations.", - "type": "object" - }, - "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" + "id": "Operation" }, - "ClientCertificateConfig": { - "description": "Configuration for client certificates on the cluster.", + "MaintenanceWindow": { "type": "object", "properties": { - "issueClientCertificate": { - "description": "Issue a client certificate.", - "type": "boolean" + "dailyMaintenanceWindow": { + "$ref": "DailyMaintenanceWindow", + "description": "DailyMaintenanceWindow specifies a daily maintenance operation window." } }, - "id": "ClientCertificateConfig" + "id": "MaintenanceWindow", + "description": "MaintenanceWindow defines the maintenance window to be used for the cluster." }, - "SetLoggingServiceRequest": { - "description": "SetLoggingServiceRequest sets the logging service of a cluster.", + "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", "properties": { + "nodePoolId": { + "description": "Deprecated. The name of the node pool to rollback.\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 logging.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "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" }, "projectId": { - "type": "string", - "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." + "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" }, "clusterId": { - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "description": "Deprecated. The name of the cluster to rollback.\nThis field has been deprecated and replaced by the name field.", "type": "string" + } + }, + "id": "RollbackNodePoolUpgradeRequest" + }, + "NetworkPolicy": { + "description": "Configuration options for the NetworkPolicy feature.\nhttps://kubernetes.io/docs/concepts/services-networking/networkpolicies/", + "type": "object", + "properties": { + "provider": { + "enum": [ + "PROVIDER_UNSPECIFIED", + "CALICO" + ], + "description": "The selected network policy provider.", + "type": "string", + "enumDescriptions": [ + "Not set", + "Tigera (Calico Felix)." + ] }, - "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" + "enabled": { + "description": "Whether network policy is enabled on the cluster.", + "type": "boolean" } }, - "id": "SetLoggingServiceRequest" + "id": "NetworkPolicy" }, - "SetMaintenancePolicyRequest": { - "description": "SetMaintenancePolicyRequest sets the maintenance policy for a cluster.", + "UpdateMasterRequest": { + "description": "UpdateMasterRequest updates the master of the cluster.", "type": "object", "properties": { - "maintenancePolicy": { - "description": "The maintenance policy to be set for the cluster. An empty field\nclears the existing maintenance policy.", - "$ref": "MaintenancePolicy" + "zone": { + "type": "string", + "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." }, - "name": { - "description": "The name (project, location, cluster id) of the cluster to set maintenance\npolicy.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "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" }, - "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", "type": "string" }, - "zone": { - "description": "The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) in which the cluster\nresides.", + "name": { + "description": "The name (project, location, cluster) of the cluster to update.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", "type": "string" }, - "clusterId": { - "description": "The name of the cluster to update.", + "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" } }, - "id": "SetMaintenancePolicyRequest" - }, - "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" + "id": "UpdateMasterRequest" }, - "ListNodePoolsResponse": { - "description": "ListNodePoolsResponse is the result of ListNodePoolsRequest.", + "ListOperationsResponse": { + "description": "ListOperationsResponse is the result of ListOperationsRequest.", "type": "object", "properties": { - "nodePools": { - "description": "A list of node pools for a cluster.", + "operations": { + "description": "A list of operations in the project in the specified zone.", "type": "array", "items": { - "$ref": "NodePool" + "$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": "ListNodePoolsResponse" + "id": "ListOperationsResponse" }, - "CompleteIPRotationRequest": { - "description": "CompleteIPRotationRequest moves the cluster master back into single-IP mode.", + "CidrBlock": { + "id": "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" + } + } + }, + "SetMonitoringServiceRequest": { + "id": "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" + }, "name": { - "description": "The name (project, location, cluster id) of the cluster to complete IP\nrotation. Specified in the format 'projects/*/locations/*/clusters/*'.", + "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://developers.google.com/console/help/new/#projectnumber).\nThis field has been deprecated and replaced by the name field.", + "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": { @@ -2832,609 +855,563 @@ "type": "string" }, "clusterId": { - "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", "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.", + "ServerConfig": { + "id": "ServerConfig", + "description": "Kubernetes Engine service configuration.", "type": "object", "properties": { - "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.", + "defaultClusterVersion": { + "description": "Version of Kubernetes the service deploys by default.", "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.", + "defaultImageType": { + "description": "Default image type.", "type": "string" }, - "clusterId": { - "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", - "type": "string" + "validNodeVersions": { + "description": "List of valid node upgrade target versions.", + "type": "array", + "items": { + "type": "string" + } }, - "rotateCredentials": { - "description": "Whether to rotate credentials during IP rotation.", - "type": "boolean" + "validImageTypes": { + "description": "List of valid image types.", + "type": "array", + "items": { + "type": "string" + } }, - "name": { - "type": "string", - "description": "The name (project, location, cluster id) of the cluster to start IP\nrotation. Specified in the format 'projects/*/locations/*/clusters/*'." + "validMasterVersions": { + "description": "List of valid master versions.", + "type": "array", + "items": { + "type": "string" + } } - }, - "id": "StartIPRotationRequest" + } }, - "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", + "NodeConfig": { + "id": "NodeConfig", + "description": "Parameters that describe the nodes in a cluster.", "type": "object", "properties": { - "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" + "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" }, - "name": { - "description": "The name (project, location, cluster id) of the cluster to set labels.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "type": "string" + "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" }, - "resourceLabels": { + "metadata": { + "type": "object", "additionalProperties": { "type": "string" }, - "description": "The labels to set for that cluster.", - "type": "object" + "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." }, - "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.", + "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", + "items": { + "type": "string" + } + }, + "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" }, - "clusterId": { - "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "imageType": { + "type": "string", + "description": "The image type to use for this node. Note that for a given image type,\nthe latest version of it will be used." + }, + "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" + } + }, + "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" + } + }, + "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" }, - "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.", + "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\nplatform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)", "type": "string" } - }, - "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", + "AutoUpgradeOptions": { "properties": { - "name": { - "description": "The name of the node pool.", + "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" }, - "statusMessage": { - "description": "[Output only] Additional information about the current status of this\nnode pool instance, if available.", + "description": { + "description": "[Output only] This field is set when upgrades are about to commence\nwith the description of the upgrade.", "type": "string" + } + }, + "id": "AutoUpgradeOptions", + "description": "AutoUpgradeOptions defines the set of options for the user to control how\nthe Auto Upgrades will proceed.", + "type": "object" + }, + "ListClustersResponse": { + "id": "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" + } }, - "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" - }, - "selfLink": { - "type": "string", - "description": "[Output only] Server-defined URL for the resource." - }, - "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.", + "missingZones": { + "description": "If any zones are listed here, the list of clusters returned\nmay be missing those zones.", "type": "array", "items": { "type": "string" } - }, - "version": { - "description": "The version of the Kubernetes of this node.", - "type": "string" - }, - "status": { - "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", - "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." - ] - }, - "config": { - "$ref": "NodeConfig", - "description": "The node configuration of the pool." } - }, - "id": "NodePool" + } }, - "NodeManagement": { - "id": "NodeManagement", - "description": "NodeManagement defines the set of node management services turned on for the\nnode pool.", + "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": { - "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.", + "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" - }, - "autoRepair": { - "type": "boolean", - "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." - }, - "upgradeOptions": { - "$ref": "AutoUpgradeOptions", - "description": "Specifies the Auto Upgrade knobs for the node pool." } - } + }, + "id": "HttpLoadBalancing" }, - "CancelOperationRequest": { + "SetNetworkPolicyRequest": { + "description": "SetNetworkPolicyRequest enables/disables network policy for a cluster.", "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": "Deprecated. The server-assigned `name` of the operation.\nThis field has been deprecated and replaced by the name field.", + "description": "The name (project, location, cluster id) of the cluster to set networking\npolicy. Specified 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.", + "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": { - "type": "string", - "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." + "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" + }, + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "networkPolicy": { + "$ref": "NetworkPolicy", + "description": "Configuration options for the NetworkPolicy feature." } }, - "id": "CancelOperationRequest", - "description": "CancelOperationRequest cancels a single operation." + "id": "SetNetworkPolicyRequest" }, - "KubernetesDashboard": { + "NodePoolAutoscaling": { + "description": "NodePoolAutoscaling contains information required by cluster autoscaler to\nadjust the size of the node pool to the current cluster usage.", + "type": "object", "properties": { - "disabled": { - "description": "Whether the Kubernetes Dashboard is enabled for this cluster.", - "type": "boolean" + "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": { + "type": "boolean", + "description": "Is autoscaling enabled for this node pool." } }, - "id": "KubernetesDashboard", - "description": "Configuration for the Kubernetes Dashboard.", - "type": "object" + "id": "NodePoolAutoscaling" }, - "Operation": { + "SetMasterAuthRequest": { "type": "object", "properties": { - "status": { + "name": { + "description": "The name (project, location, cluster) of the cluster to set auth.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "action": { "enum": [ - "STATUS_UNSPECIFIED", - "PENDING", - "RUNNING", - "DONE", - "ABORTING" + "UNKNOWN", + "SET_PASSWORD", + "GENERATE_PASSWORD", + "SET_USERNAME" ], - "description": "The current status of the operation.", + "description": "The exact form of action to be taken on the master auth.", "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." + "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." ] }, - "name": { - "description": "The server-assigned ID for the operation.", + "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" }, - "statusMessage": { - "description": "If an error has occurred, a textual description of the error.", + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", "type": "string" }, - "selfLink": { - "description": "Server-defined URL for the resource.", + "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" + } + }, + "id": "SetMasterAuthRequest", + "description": "SetMasterAuthRequest updates the admin password of a cluster." + }, + "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" }, - "detail": { - "description": "Detailed operation progress, if available.", + "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" }, - "targetLink": { - "description": "Server-defined URL for the target of the operation.", + "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" }, - "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.", + "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" }, - "endTime": { - "description": "[Output only] The time the operation completed, in\n[RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.", + "servicesIpv4Cidr": { + "description": "This field is deprecated, use services_ipv4_cidr_block.", "type": "string" }, - "operationType": { - "type": "string", - "enumDescriptions": [ - "Not set.", - "Cluster create.", - "Cluster delete.", - "A master upgrade.", - "A node upgrade.", - "Cluster repair.", - "Cluster update.", - "Node pool create.", - "Node pool delete.", - "Set node pool management.", - "Automatic node pool repair.", - "Automatic node upgrade.", - "Set labels.", - "Set/generate master auth materials", - "Set node pool size.", - "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" - ], - "description": "The operation type." + "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" }, - "startTime": { - "description": "[Output only] The time the operation started, in\n[RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.", + "useIpAliases": { + "description": "Whether alias IPs will be used for pod IPs in the cluster.", + "type": "boolean" + }, + "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" }, - "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.", + "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" + }, + "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": "Operation", - "description": "This operation resource represents operations that may have happened or are\nhappening on the cluster. All fields are output only." - }, - "MaintenanceWindow": { - "description": "MaintenanceWindow defines the maintenance window to be used for the cluster.", - "type": "object", - "properties": { - "dailyMaintenanceWindow": { - "$ref": "DailyMaintenanceWindow", - "description": "DailyMaintenanceWindow specifies a daily maintenance operation window." - } - }, - "id": "MaintenanceWindow" + "id": "IPAllocationPolicy" }, - "RollbackNodePoolUpgradeRequest": { - "description": "RollbackNodePoolUpgradeRequest rollbacks the previously Aborted or Failed\nNodePool upgrade. This will be an no-op if the last upgrade successfully\ncompleted.", + "ClusterUpdate": { + "id": "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": { - "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" + "desiredAddonsConfig": { + "$ref": "AddonsConfig", + "description": "Configurations for the various addons available to run in the 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.", + "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" }, - "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" + "desiredNodeVersion": { + "type": "string", + "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" }, - "clusterId": { - "description": "Deprecated. The name of the cluster to rollback.\nThis field has been deprecated and replaced by the name field.", + "desiredMasterVersion": { + "type": "string", + "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" + }, + "desiredMasterAuthorizedNetworksConfig": { + "$ref": "MasterAuthorizedNetworksConfig", + "description": "Master authorized networks is a Beta feature.\nThe desired configuration options for master authorized networks feature." + }, + "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" }, - "nodePoolId": { - "description": "Deprecated. The name of the node pool to rollback.\nThis field has been deprecated and replaced by the name field.", + "desiredImageType": { + "description": "The desired image type for the node pool.\nNOTE: Set the \"desired_node_pool\" field as well.", "type": "string" } - }, - "id": "RollbackNodePoolUpgradeRequest" + } }, - "NetworkPolicy": { - "description": "Configuration options for the NetworkPolicy feature.\nhttps://kubernetes.io/docs/concepts/services-networking/networkpolicies/", + "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": { - "enabled": { - "description": "Whether network policy is enabled on the cluster.", + "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" - }, - "provider": { - "enum": [ - "PROVIDER_UNSPECIFIED", - "CALICO" - ], - "description": "The selected network policy provider.", - "type": "string", - "enumDescriptions": [ - "Not set", - "Tigera (Calico Felix)." - ] } }, - "id": "NetworkPolicy" + "id": "HorizontalPodAutoscaling" }, - "UpdateMasterRequest": { - "description": "UpdateMasterRequest updates the master of the cluster.", - "type": "object", + "SetNodePoolManagementRequest": { "properties": { + "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" + }, "name": { - "description": "The name (project, location, cluster) of the cluster to update.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "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" }, "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" + "management": { + "$ref": "NodeManagement", + "description": "NodeManagement configuration for the node pool." }, - "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", + "clusterId": { + "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", "type": "string" }, - "clusterId": { - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "nodePoolId": { + "description": "Deprecated. The name of the node pool to update.\nThis field has been deprecated and replaced by the name field.", "type": "string" } }, - "id": "UpdateMasterRequest" + "id": "SetNodePoolManagementRequest", + "description": "SetNodePoolManagementRequest sets the node management properties of a node\npool.", + "type": "object" }, - "ListOperationsResponse": { - "description": "ListOperationsResponse is the result of ListOperationsRequest.", + "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": { - "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" - } + "enabled": { + "type": "boolean", + "description": "Whether or not master authorized networks is enabled." }, - "operations": { - "description": "A list of operations in the project in the specified zone.", + "cidrBlocks": { + "description": "cidr_blocks define up to 10 external networks that could access\nKubernetes master through HTTPS.", "type": "array", "items": { - "$ref": "Operation" + "$ref": "CidrBlock" } } }, - "id": "ListOperationsResponse" + "id": "MasterAuthorizedNetworksConfig" }, - "CidrBlock": { - "id": "CidrBlock", - "description": "CidrBlock contains an optional name and one CIDR block.", + "SetNodePoolAutoscalingRequest": { + "description": "SetNodePoolAutoscalingRequest sets the autoscaler settings of a node pool.", "type": "object", "properties": { - "cidrBlock": { - "description": "cidr_block must be specified in CIDR notation.", - "type": "string" + "autoscaling": { + "description": "Autoscaling configuration for the node pool.", + "$ref": "NodePoolAutoscaling" }, - "displayName": { - "description": "display_name is an optional field for users to identify CIDR blocks.", + "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" - } - } - }, - "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/*'.", + "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": { - "type": "string", - "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." - }, "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" + }, + "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" } }, - "id": "SetMonitoringServiceRequest", - "description": "SetMonitoringServiceRequest sets the monitoring service of a cluster.", - "type": "object" + "id": "SetNodePoolAutoscalingRequest" }, - "ServerConfig": { + "CreateClusterRequest": { + "description": "CreateClusterRequest creates a cluster.", + "type": "object", "properties": { - "validMasterVersions": { - "description": "List of valid master versions.", - "type": "array", - "items": { - "type": "string" - } - }, - "defaultClusterVersion": { - "description": "Version of Kubernetes the service deploys by default.", + "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" }, - "defaultImageType": { - "description": "Default image type.", - "type": "string" + "cluster": { + "description": "A [cluster\nresource](/container-engine/reference/rest/v1/projects.zones.clusters)", + "$ref": "Cluster" }, - "validNodeVersions": { - "description": "List of valid node upgrade target versions.", - "type": "array", - "items": { - "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" }, - "validImageTypes": { - "description": "List of valid image types.", - "type": "array", - "items": { - "type": "string" - } + "parent": { + "description": "The parent (project and location) where the cluster will be created.\nSpecified in the format 'projects/*/locations/*'.", + "type": "string" } }, - "id": "ServerConfig", - "description": "Kubernetes Engine service configuration.", - "type": "object" + "id": "CreateClusterRequest" }, - "NodeConfig": { - "description": "Parameters that describe the nodes in a cluster.", + "UpdateNodePoolRequest": { + "id": "UpdateNodePoolRequest", + "description": "UpdateNodePoolRequests update a node pool's image and/or version.", "type": "object", "properties": { - "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-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", - "items": { - "type": "string" - } - }, - "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.", + "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" }, - "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.", + "name": { + "description": "The name (project, location, cluster, node pool) of the node pool to\nupdate. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", "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" - } - }, - "labels": { - "type": "object", - "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/" - }, - "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" + "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" }, - "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" - } + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "type": "string" }, - "machineType": { + "nodePoolId": { "type": "string", - "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`." + "description": "Deprecated. The name of the node pool to upgrade.\nThis field has been deprecated and replaced by the name field." }, - "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\nplatform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)", + "imageType": { + "description": "The desired image type for the node pool.", + "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": "NodeConfig" + } }, - "AutoUpgradeOptions": { - "description": "AutoUpgradeOptions defines the set of options for the user to control how\nthe Auto Upgrades will proceed.", + "AcceleratorConfig": { + "description": "AcceleratorConfig represents a Hardware Accelerator request.", "type": "object", "properties": { - "description": { - "description": "[Output only] This field is set when upgrades are about to commence\nwith the description of the upgrade.", + "acceleratorCount": { + "description": "The number of the accelerator cards exposed to an instance.", + "format": "int64", "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.", + "acceleratorType": { + "description": "The accelerator type resource name. List of supported accelerators\n[here](/compute/docs/gpus/#Introduction)", "type": "string" } }, - "id": "AutoUpgradeOptions" + "id": "AcceleratorConfig" }, - "ListClustersResponse": { - "description": "ListClustersResponse is the result of ListClustersRequest.", + "LegacyAbac": { "type": "object", "properties": { - "missingZones": { - "description": "If any zones are listed here, the list of clusters returned\nmay be missing those zones.", - "type": "array", - "items": { - "type": "string" - } - }, - "clusters": { - "description": "A list of clusters in the project in the specified zone, or\nacross all ones.", - "type": "array", - "items": { - "$ref": "Cluster" - } + "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": "ListClustersResponse" + "id": "LegacyAbac", + "description": "Configuration for the legacy Attribute Based Access Control authorization\nmode." }, - "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.", + "SetAddonsConfigRequest": { + "id": "SetAddonsConfigRequest", + "description": "SetAddonsConfigRequest sets the addons associated with the 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" + "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" + }, + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "addonsConfig": { + "description": "The desired configurations for the various addons available to run in the\ncluster.", + "$ref": "AddonsConfig" } - }, - "id": "HttpLoadBalancing" + } }, - "SetNetworkPolicyRequest": { + "SetLegacyAbacRequest": { + "description": "SetLegacyAbacRequest enables or disables the ABAC authorization mechanism for\na cluster.", "type": "object", "properties": { "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.", + "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": { @@ -3442,450 +1419,2473 @@ "type": "string" }, "clusterId": { - "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", "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\npolicy. Specified in the format 'projects/*/locations/*/clusters/*'.", + "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" } }, - "id": "SetNetworkPolicyRequest", - "description": "SetNetworkPolicyRequest enables/disables network policy for a cluster." + "id": "SetLegacyAbacRequest" }, - "NodePoolAutoscaling": { - "description": "NodePoolAutoscaling contains information required by cluster autoscaler to\nadjust the size of the node pool to the current cluster usage.", + "AddonsConfig": { + "description": "Configuration for the addons that can be automatically spun up in the\ncluster, enabling additional functionality.", "type": "object", "properties": { - "enabled": { - "description": "Is autoscaling enabled for this node pool.", - "type": "boolean" + "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." }, - "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" + "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." }, - "minNodeCount": { - "description": "Minimum number of nodes in the NodePool. Must be \u003e= 1 and \u003c=\nmax_node_count.", - "format": "int32", - "type": "integer" + "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" } }, - "id": "NodePoolAutoscaling" + "id": "AddonsConfig" }, - "SetMasterAuthRequest": { + "SetLocationsRequest": { + "description": "SetLocationsRequest sets the locations of the cluster.", "type": "object", "properties": { - "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.", + "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" }, - "name": { - "description": "The name (project, location, cluster) of the cluster to set auth.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "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" }, - "action": { - "enum": [ - "UNKNOWN", - "SET_PASSWORD", - "GENERATE_PASSWORD", - "SET_USERNAME" - ], - "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." - ] - }, - "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" + "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": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", "type": "string" }, - "update": { - "description": "A description of the update.", - "$ref": "MasterAuth" + "name": { + "description": "The name (project, location, cluster) of the cluster to set locations.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" } }, - "id": "SetMasterAuthRequest", - "description": "SetMasterAuthRequest updates the admin password of a cluster." + "id": "SetLocationsRequest" }, - "IPAllocationPolicy": { + "SetNodePoolSizeRequest": { + "type": "object", "properties": { - "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.", + "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" }, - "servicesIpv4CidrBlock": { + "projectId": { "type": "string", - "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." - }, - "clusterIpv4Cidr": { - "description": "This field is deprecated, use cluster_ipv4_cidr_block.", - "type": "string" - }, - "nodeIpv4Cidr": { - "description": "This field is deprecated, use node_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" + "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." }, - "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.", + "clusterId": { + "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", "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.", + "nodePoolId": { + "description": "Deprecated. The name of the node pool to update.\nThis field has been deprecated and replaced by the name field.", "type": "string" }, - "servicesIpv4Cidr": { - "description": "This field is deprecated, use services_ipv4_cidr_block.", + "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" }, - "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" - }, - "useIpAliases": { - "type": "boolean", - "description": "Whether alias IPs will be used for pod IPs in the cluster." - }, - "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" + "nodeCount": { + "description": "The desired node count for the pool.", + "format": "int32", + "type": "integer" + } + }, + "id": "SetNodePoolSizeRequest", + "description": "SetNodePoolSizeRequest sets the size a node\npool." + } + }, + "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": "Container", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" } - }, - "id": "IPAllocationPolicy", - "description": "Configuration for controlling how IPs are allocated in the cluster.", - "type": "object" - }, - "ClusterUpdate": { - "properties": { - "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" - }, - "desiredMasterAuthorizedNetworksConfig": { - "description": "Master authorized networks is a Beta feature.\nThe desired configuration options for master authorized networks feature.", - "$ref": "MasterAuthorizedNetworksConfig" - }, - "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" + } + } + }, + "rootUrl": "https://container.googleapis.com/", + "ownerDomain": "google.com", + "name": "container", + "batchPath": "batch", + "fullyEncodeReservedExpansion": true, + "title": "Kubernetes Engine API", + "ownerName": "Google", + "resources": { + "projects": { + "resources": { + "locations": { + "resources": { + "clusters": { + "methods": { + "update": { + "path": "v1/{+name}", + "id": "container.projects.locations.clusters.update", + "request": { + "$ref": "UpdateClusterRequest" + }, + "description": "Updates the settings of a specific cluster.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "PUT", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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/[^/]+$" + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}" + }, + "setMasterAuth": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "description": "The name (project, location, cluster) of the cluster to set auth.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setMasterAuth", + "path": "v1/{+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 the password." + }, + "setLogging": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "parameters": { + "name": { + "description": "The name (project, location, cluster) of the cluster to set logging.\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": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setLogging", + "path": "v1/{+name}:setLogging", + "id": "container.projects.locations.clusters.setLogging", + "description": "Sets the logging service of a specific cluster.", + "request": { + "$ref": "SetLoggingServiceRequest" + } + }, + "list": { + "response": { + "$ref": "ListClustersResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "projectId": { + "location": "query", + "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": { + "location": "query", + "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.", + "type": "string" + }, + "parent": { + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "location": "path", + "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." + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters", + "path": "v1/{+parent}/clusters", + "id": "container.projects.locations.clusters.list", + "description": "Lists all clusters owned by a project in either the specified zone or all\nzones." + }, + "create": { + "path": "v1/{+parent}/clusters", + "id": "container.projects.locations.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.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "parent": { + "description": "The parent (project and location) where the cluster will be created.\nSpecified in the format 'projects/*/locations/*'.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters" + }, + "completeIpRotation": { + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:completeIpRotation", + "path": "v1/{+name}:completeIpRotation", + "id": "container.projects.locations.clusters.completeIpRotation", + "description": "Completes master IP rotation.", + "request": { + "$ref": "CompleteIPRotationRequest" + }, + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "parameters": { + "name": { + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "location": "path", + "description": "The name (project, location, cluster id) of the cluster to complete IP\nrotation. Specified in the format 'projects/*/locations/*/clusters/*'.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "response": { + "$ref": "Cluster" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "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", + "location": "query" + }, + "clusterId": { + "location": "query", + "description": "Deprecated. The name of the cluster to retrieve.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "name": { + "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/[^/]+$", + "location": "path" + }, + "projectId": { + "type": "string", + "location": "query", + "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." + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}", + "path": "v1/{+name}", + "id": "container.projects.locations.clusters.get", + "description": "Gets the details of a specific cluster." + }, + "setNetworkPolicy": { + "path": "v1/{+name}:setNetworkPolicy", + "id": "container.projects.locations.clusters.setNetworkPolicy", + "request": { + "$ref": "SetNetworkPolicyRequest" + }, + "description": "Enables/Disables Network Policy for a cluster.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "location": "path", + "description": "The name (project, location, cluster id) of the cluster to set networking\npolicy. Specified in the format 'projects/*/locations/*/clusters/*'.", + "required": true, + "type": "string" + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setNetworkPolicy" + }, + "setAddons": { + "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 addons.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setAddons", + "path": "v1/{+name}:setAddons", + "id": "container.projects.locations.clusters.setAddons", + "description": "Sets the addons of a specific cluster.", + "request": { + "$ref": "SetAddonsConfigRequest" + } + }, + "setMonitoring": { + "request": { + "$ref": "SetMonitoringServiceRequest" + }, + "description": "Sets the monitoring service of a specific cluster.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "location": "path", + "description": "The name (project, location, cluster) of the cluster to set monitoring.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "required": true, + "type": "string" + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setMonitoring", + "path": "v1/{+name}:setMonitoring", + "id": "container.projects.locations.clusters.setMonitoring" + }, + "startIpRotation": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "parameters": { + "name": { + "description": "The name (project, location, cluster id) of the cluster to start IP\nrotation. Specified 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": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:startIpRotation", + "path": "v1/{+name}:startIpRotation", + "id": "container.projects.locations.clusters.startIpRotation", + "description": "Start master IP rotation.", + "request": { + "$ref": "StartIPRotationRequest" + } + }, + "setMaintenancePolicy": { + "path": "v1/{+name}:setMaintenancePolicy", + "id": "container.projects.locations.clusters.setMaintenancePolicy", + "request": { + "$ref": "SetMaintenancePolicyRequest" + }, + "description": "Sets the maintenance policy for a cluster.", + "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 set maintenance\npolicy.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setMaintenancePolicy" + }, + "delete": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "location": "path", + "description": "The name (project, location, cluster) of the cluster to delete.\nSpecified in the format 'projects/*/locations/*/clusters/*'." + }, + "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", + "location": "query" + }, + "zone": { + "location": "query", + "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" + }, + "clusterId": { + "description": "Deprecated. The name of the cluster to delete.\nThis field has been deprecated and replaced by the name field.", + "type": "string", + "location": "query" + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}", + "path": "v1/{+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." + }, + "setLegacyAbac": { + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setLegacyAbac", + "id": "container.projects.locations.clusters.setLegacyAbac", + "path": "v1/{+name}:setLegacyAbac", + "description": "Enables or disables the ABAC authorization mechanism on a cluster.", + "request": { + "$ref": "SetLegacyAbacRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Operation" + } + }, + "setResourceLabels": { + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setResourceLabels", + "path": "v1/{+name}:setResourceLabels", + "id": "container.projects.locations.clusters.setResourceLabels", + "request": { + "$ref": "SetLabelsRequest" + }, + "description": "Sets labels on a cluster.", + "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 labels.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$" + } + } + }, + "setLocations": { + "request": { + "$ref": "SetLocationsRequest" + }, + "description": "Sets the locations of a specific cluster.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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" + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setLocations", + "path": "v1/{+name}:setLocations", + "id": "container.projects.locations.clusters.setLocations" + }, + "updateMaster": { + "path": "v1/{+name}:updateMaster", + "id": "container.projects.locations.clusters.updateMaster", + "request": { + "$ref": "UpdateMasterRequest" + }, + "description": "Updates the master of a specific cluster.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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" + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:updateMaster" + } + }, + "resources": { + "nodePools": { + "methods": { + "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" + }, + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "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/*'.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:rollback", + "path": "v1/{+name}:rollback", + "id": "container.projects.locations.clusters.nodePools.rollback" + }, + "create": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "parent": { + "description": "The parent (project, location, cluster id) where the node pool will be\ncreated. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools", + "path": "v1/{+parent}/nodePools", + "id": "container.projects.locations.clusters.nodePools.create", + "request": { + "$ref": "CreateNodePoolRequest" + }, + "description": "Creates a node pool for a cluster." + }, + "get": { + "description": "Retrieves the node pool requested.", + "httpMethod": "GET", + "response": { + "$ref": "NodePool" + }, + "parameterOrder": [ + "name" + ], + "parameters": { + "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", + "location": "query" + }, + "zone": { + "type": "string", + "location": "query", + "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." + }, + "clusterId": { + "location": "query", + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool.\nThis field has been deprecated and replaced by the name field.", + "type": "string", + "location": "query" + }, + "name": { + "description": "The name (project, location, cluster, node pool id) of the node pool to\nget. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}", + "id": "container.projects.locations.clusters.nodePools.get", + "path": "v1/{+name}" + }, + "update": { + "path": "v1/{+name}", + "id": "container.projects.locations.clusters.nodePools.update", + "description": "Updates the version and/or image type of a specific node pool.", + "request": { + "$ref": "UpdateNodePoolRequest" + }, + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "PUT", + "parameters": { + "name": { + "description": "The name (project, location, cluster, node pool) of the node pool to\nupdate. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}" + }, + "setAutoscaling": { + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "name": { + "pattern": "^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/*'.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:setAutoscaling", + "id": "container.projects.locations.clusters.nodePools.setAutoscaling", + "path": "v1/{+name}:setAutoscaling", + "description": "Sets the autoscaling settings of a specific node pool.", + "request": { + "$ref": "SetNodePoolAutoscalingRequest" + } + }, + "setSize": { + "description": "Sets the size of a specific node pool.", + "request": { + "$ref": "SetNodePoolSizeRequest" + }, + "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": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:setSize", + "id": "container.projects.locations.clusters.nodePools.setSize", + "path": "v1/{+name}:setSize" + }, + "setManagement": { + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:setManagement", + "path": "v1/{+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" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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/*'.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", + "location": "path" + } + } + }, + "delete": { + "path": "v1/{+name}", + "id": "container.projects.locations.clusters.nodePools.delete", + "description": "Deletes a node pool from a cluster.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "clusterId": { + "location": "query", + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool to delete.\nThis field has been deprecated and replaced by the name field.", + "type": "string", + "location": "query" + }, + "name": { + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", + "location": "path", + "description": "The name (project, location, cluster, node pool id) of the node pool to\ndelete. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", + "required": true, + "type": "string" + }, + "projectId": { + "location": "query", + "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": { + "location": "query", + "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" + } + }, + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}" + }, + "list": { + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools", + "path": "v1/{+parent}/nodePools", + "id": "container.projects.locations.clusters.nodePools.list", + "description": "Lists the node pools for a cluster.", + "response": { + "$ref": "ListNodePoolsResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "projectId": { + "location": "query", + "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": { + "location": "query", + "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" + }, + "parent": { + "description": "The parent (project, location, cluster id) where the node pools will be\nlisted. Specified in the format 'projects/*/locations/*/clusters/*'.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "location": "path" + }, + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", + "type": "string", + "location": "query" + } + } + } + } + } + } + }, + "operations": { + "methods": { + "list": { + "response": { + "$ref": "ListOperationsResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "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.", + "type": "string", + "location": "query" + }, + "zone": { + "type": "string", + "location": "query", + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) to return operations for, or `-` for\nall zones. This field has been deprecated and replaced by the parent field." + }, + "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": "v1/projects/{projectsId}/locations/{locationsId}/operations", + "path": "v1/{+parent}/operations", + "id": "container.projects.locations.operations.list", + "description": "Lists all operations in a project in a specific zone or all zones." + }, + "get": { + "description": "Gets the specified operation.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "parameters": { + "zone": { + "location": "query", + "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" + }, + "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": { + "description": "Deprecated. The server-assigned `name` of the operation.\nThis field has been deprecated and replaced by the name field.", + "type": "string", + "location": "query" + }, + "projectId": { + "type": "string", + "location": "query", + "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." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + "path": "v1/{+name}", + "id": "container.projects.locations.operations.get" + }, + "cancel": { + "description": "Cancels the specified operation.", + "request": { + "$ref": "CancelOperationRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Empty" + }, + "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/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel", + "id": "container.projects.locations.operations.cancel", + "path": "v1/{+name}:cancel" + } + } + } + }, + "methods": { + "getServerConfig": { + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/serverConfig", + "path": "v1/{+name}/serverConfig", + "id": "container.projects.locations.getServerConfig", + "description": "Returns configuration info about the Kubernetes Engine service.", + "response": { + "$ref": "ServerConfig" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "parameters": { + "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" + }, + "projectId": { + "location": "query", + "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": { + "location": "query", + "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.", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } } }, - "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": { - "$ref": "AddonsConfig", - "description": "Configurations for the various addons available to run in the cluster." - }, - "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": { - "type": "string", - "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" - } - }, - "id": "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" - }, - "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": { - "id": "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": { - "type": "array", - "items": { - "$ref": "CidrBlock" + "zones": { + "resources": { + "clusters": { + "methods": { + "completeIpRotation": { + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:completeIpRotation", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:completeIpRotation", + "id": "container.projects.zones.clusters.completeIpRotation", + "description": "Completes master IP rotation.", + "request": { + "$ref": "CompleteIPRotationRequest" + }, + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "httpMethod": "POST", + "parameters": { + "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.", + "required": true, + "type": "string", + "location": "path" + }, + "zone": { + "location": "path", + "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.", + "required": true, + "type": "string" + }, + "clusterId": { + "required": true, + "type": "string", + "location": "path", + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the details of a specific cluster.", + "response": { + "$ref": "Cluster" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "clusterId": { + "required": true, + "type": "string", + "location": "path", + "description": "Deprecated. The name of the cluster to retrieve.\nThis field has been deprecated and replaced by the name field." + }, + "name": { + "location": "query", + "description": "The name (project, location, cluster) of the cluster to retrieve.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "projectId": { + "location": "path", + "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.", + "required": true, + "type": "string" + }, + "zone": { + "required": true, + "type": "string", + "location": "path", + "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." + } + }, + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", + "id": "container.projects.zones.clusters.get" + }, + "setNetworkPolicy": { + "id": "container.projects.zones.clusters.setNetworkPolicy", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setNetworkPolicy", + "description": "Enables/Disables Network Policy for a cluster.", + "request": { + "$ref": "SetNetworkPolicyRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string", + "location": "path" + }, + "projectId": { + "location": "path", + "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.", + "required": true, + "type": "string" + }, + "zone": { + "location": "path", + "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.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setNetworkPolicy" + }, + "legacyAbac": { + "description": "Enables or disables the ABAC authorization mechanism on a cluster.", + "request": { + "$ref": "SetLegacyAbacRequest" + }, + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "httpMethod": "POST", + "parameters": { + "projectId": { + "required": true, + "type": "string", + "location": "path", + "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." + }, + "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.", + "required": true, + "type": "string", + "location": "path" + }, + "clusterId": { + "location": "path", + "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", + "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" + }, + "startIpRotation": { + "request": { + "$ref": "StartIPRotationRequest" + }, + "description": "Start master IP rotation.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "zone": { + "location": "path", + "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.", + "required": true, + "type": "string" + }, + "clusterId": { + "location": "path", + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "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.", + "required": true, + "type": "string", + "location": "path" + } + }, + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:startIpRotation", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:startIpRotation", + "id": "container.projects.zones.clusters.startIpRotation" + }, + "addons": { + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/addons", + "id": "container.projects.zones.clusters.addons", + "request": { + "$ref": "SetAddonsConfigRequest" + }, + "description": "Sets the addons of a specific cluster.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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 name field.", + "required": true, + "type": "string", + "location": "path" + }, + "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.", + "required": true, + "type": "string", + "location": "path" + }, + "clusterId": { + "location": "path", + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string" + } + }, + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/addons" + }, + "setMaintenancePolicy": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "httpMethod": "POST", + "parameters": { + "projectId": { + "required": true, + "type": "string", + "location": "path", + "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840)." + }, + "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 update.", + "required": true, + "type": "string", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}: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" + } + }, + "delete": { + "httpMethod": "DELETE", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "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 name field.", + "required": true, + "type": "string", + "location": "path" + }, + "zone": { + "required": true, + "type": "string", + "location": "path", + "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." + }, + "clusterId": { + "location": "path", + "description": "Deprecated. The name of the cluster to delete.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster) of the cluster to delete.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", + "id": "container.projects.zones.clusters.delete", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", + "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." + }, + "locations": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "httpMethod": "POST", + "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 name field.", + "required": true, + "type": "string", + "location": "path" + }, + "zone": { + "location": "path", + "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.", + "required": true, + "type": "string" + }, + "clusterId": { + "location": "path", + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/locations", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/locations", + "id": "container.projects.zones.clusters.locations", + "description": "Sets the locations of a specific cluster.", + "request": { + "$ref": "SetLocationsRequest" + } + }, + "update": { + "description": "Updates the settings of a specific cluster.", + "request": { + "$ref": "UpdateClusterRequest" + }, + "httpMethod": "PUT", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "response": { + "$ref": "Operation" + }, + "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 name field.", + "required": true, + "type": "string", + "location": "path" + }, + "zone": { + "location": "path", + "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.", + "required": true, + "type": "string" + }, + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", + "id": "container.projects.zones.clusters.update", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}" + }, + "monitoring": { + "description": "Sets the monitoring service of a specific cluster.", + "request": { + "$ref": "SetMonitoringServiceRequest" + }, + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "httpMethod": "POST", + "parameters": { + "clusterId": { + "required": true, + "type": "string", + "location": "path", + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field." + }, + "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.", + "required": true, + "type": "string", + "location": "path" + }, + "zone": { + "required": true, + "type": "string", + "location": "path", + "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." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/monitoring", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/monitoring", + "id": "container.projects.zones.clusters.monitoring" + }, + "master": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "projectId": { + "location": "path", + "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.", + "required": true, + "type": "string" + }, + "zone": { + "required": true, + "type": "string", + "location": "path", + "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." + }, + "clusterId": { + "location": "path", + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "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", + "request": { + "$ref": "UpdateMasterRequest" + }, + "description": "Updates the master of a specific cluster." + }, + "setMasterAuth": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "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.", + "required": true, + "type": "string", + "location": "path" + }, + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string", + "location": "path" + }, + "projectId": { + "location": "path", + "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.", + "required": true, + "type": "string" + } + }, + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMasterAuth", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMasterAuth", + "id": "container.projects.zones.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 the password." + }, + "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.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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 name field.", + "required": true, + "type": "string", + "location": "path" + }, + "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.", + "required": true, + "type": "string", + "location": "path" + }, + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string", + "location": "path" + } + }, + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/logging" + }, + "list": { + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters", + "path": "v1/projects/{projectId}/zones/{zone}/clusters", + "id": "container.projects.zones.clusters.list", + "description": "Lists all clusters owned by a project in either the specified zone or all\nzones.", + "response": { + "$ref": "ListClustersResponse" + }, + "parameterOrder": [ + "projectId", + "zone" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "projectId": { + "required": true, + "type": "string", + "location": "path", + "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." + }, + "zone": { + "location": "path", + "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.", + "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" + } + } + }, + "resourceLabels": { + "description": "Sets labels on a cluster.", + "request": { + "$ref": "SetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "httpMethod": "POST", + "parameters": { + "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.", + "required": true, + "type": "string", + "location": "path" + }, + "clusterId": { + "location": "path", + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string" + }, + "projectId": { + "location": "path", + "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.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/resourceLabels", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/resourceLabels", + "id": "container.projects.zones.clusters.resourceLabels" + }, + "create": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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.", + "required": true, + "type": "string", + "location": "path" + }, + "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.", + "required": true, + "type": "string", + "location": "path" + } + }, + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters", + "path": "v1/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." + } + }, + "resources": { + "nodePools": { + "methods": { + "get": { + "description": "Retrieves the node pool requested.", + "response": { + "$ref": "NodePool" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "description": "The name (project, location, cluster, node pool id) of the node pool to\nget. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", + "type": "string", + "location": "query" + }, + "projectId": { + "location": "path", + "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.", + "required": true, + "type": "string" + }, + "zone": { + "location": "path", + "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.", + "required": true, + "type": "string" + }, + "clusterId": { + "location": "path", + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string", + "location": "path" + } + }, + "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" + }, + "update": { + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/update", + "id": "container.projects.zones.clusters.nodePools.update", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/update", + "description": "Updates the version and/or image type of a specific node pool.", + "request": { + "$ref": "UpdateNodePoolRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "response": { + "$ref": "Operation" + }, + "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 name field.", + "required": true, + "type": "string", + "location": "path" + }, + "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.", + "required": true, + "type": "string", + "location": "path" + }, + "clusterId": { + "location": "path", + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string" + }, + "nodePoolId": { + "location": "path", + "description": "Deprecated. The name of the node pool to upgrade.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setSize": { + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setSize", + "id": "container.projects.zones.clusters.nodePools.setSize", + "description": "Sets the size of a specific node pool.", + "request": { + "$ref": "SetNodePoolSizeRequest" + }, + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "httpMethod": "POST", + "parameters": { + "zone": { + "required": true, + "type": "string", + "location": "path", + "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." + }, + "clusterId": { + "required": true, + "type": "string", + "location": "path", + "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field." + }, + "nodePoolId": { + "required": true, + "type": "string", + "location": "path", + "description": "Deprecated. The name of the node pool to update.\nThis field has been deprecated and replaced by the name field." + }, + "projectId": { + "location": "path", + "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.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setSize" + }, + "setManagement": { + "parameters": { + "projectId": { + "location": "path", + "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.", + "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.", + "required": true, + "type": "string", + "location": "path" + }, + "clusterId": { + "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string", + "location": "path" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool to update.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setManagement", + "id": "container.projects.zones.clusters.nodePools.setManagement", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setManagement", + "description": "Sets the NodeManagement options for a node pool.", + "request": { + "$ref": "SetNodePoolManagementRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "response": { + "$ref": "Operation" + } + }, + "delete": { + "description": "Deletes a node pool from a cluster.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "httpMethod": "DELETE", + "parameters": { + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string", + "location": "path" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool to delete.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string", + "location": "path" + }, + "name": { + "location": "query", + "description": "The name (project, location, cluster, node pool id) of the node pool to\ndelete. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", + "type": "string" + }, + "projectId": { + "location": "path", + "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.", + "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.", + "required": true, + "type": "string", + "location": "path" + } + }, + "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.delete" + }, + "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": { + "location": "path", + "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.", + "required": true, + "type": "string" + }, + "zone": { + "location": "path", + "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.", + "required": true, + "type": "string" + }, + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", + "required": true, + "type": "string", + "location": "path" + }, + "parent": { + "location": "query", + "description": "The parent (project, location, cluster id) where the node pools will be\nlisted. Specified in the format 'projects/*/locations/*/clusters/*'.", + "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.list" + }, + "rollback": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "httpMethod": "POST", + "parameters": { + "zone": { + "location": "path", + "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.", + "required": true, + "type": "string" + }, + "clusterId": { + "description": "Deprecated. The name of the cluster to rollback.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string", + "location": "path" + }, + "nodePoolId": { + "description": "Deprecated. The name of the node pool to rollback.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string", + "location": "path" + }, + "projectId": { + "required": true, + "type": "string", + "location": "path", + "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." + } + }, + "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", + "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": { + "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", + "request": { + "$ref": "CreateNodePoolRequest" + }, + "description": "Creates a node pool for a cluster.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "projectId": { + "required": true, + "type": "string", + "location": "path", + "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." + }, + "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.", + "required": true, + "type": "string", + "location": "path" + }, + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", + "required": true, + "type": "string", + "location": "path" + } + } + }, + "autoscaling": { + "request": { + "$ref": "SetNodePoolAutoscalingRequest" + }, + "description": "Sets the autoscaling settings of a specific node pool.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "projectId": { + "required": true, + "type": "string", + "location": "path", + "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." + }, + "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.", + "required": true, + "type": "string", + "location": "path" + }, + "clusterId": { + "location": "path", + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string" + }, + "nodePoolId": { + "required": true, + "type": "string", + "location": "path", + "description": "Deprecated. The name of the node pool to upgrade.\nThis field has been deprecated and replaced by the name field." + } + }, + "flatPath": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/autoscaling", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/autoscaling", + "id": "container.projects.zones.clusters.nodePools.autoscaling" + } + } + } + } + }, + "operations": { + "methods": { + "cancel": { + "path": "v1/projects/{projectId}/zones/{zone}/operations/{operationId}:cancel", + "id": "container.projects.zones.operations.cancel", + "request": { + "$ref": "CancelOperationRequest" + }, + "description": "Cancels the specified operation.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "projectId", + "zone", + "operationId" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "operationId": { + "description": "Deprecated. The server-assigned `name` of the operation.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string", + "location": "path" + }, + "projectId": { + "location": "path", + "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.", + "required": true, + "type": "string" + }, + "zone": { + "location": "path", + "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.", + "required": true, + "type": "string" + } + }, + "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": { + "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.", + "required": true, + "type": "string", + "location": "path" + }, + "zone": { + "location": "path", + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) to return operations for, or `-` for\nall zones. This field has been deprecated and replaced by the parent field.", + "required": true, + "type": "string" + }, + "parent": { + "location": "query", + "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" + } + }, + "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": { + "httpMethod": "GET", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "operationId" + ], + "parameters": { + "operationId": { + "location": "path", + "description": "Deprecated. The server-assigned `name` of the operation.\nThis field has been deprecated and replaced by the name field.", + "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.", + "required": true, + "type": "string", + "location": "path" + }, + "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.", + "required": true, + "type": "string", + "location": "path" + }, + "name": { + "location": "query", + "description": "The name (project, location, operation id) of the operation to get.\nSpecified in the format 'projects/*/locations/*/operations/*'.", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectId}/zones/{zone}/operations/{operationId}", + "id": "container.projects.zones.operations.get", + "path": "v1/projects/{projectId}/zones/{zone}/operations/{operationId}", + "description": "Gets the specified operation." + } + } + } }, - "description": "cidr_blocks define up to 10 external networks that could access\nKubernetes master through HTTPS." - } - } - }, - "SetNodePoolManagementRequest": { - "description": "SetNodePoolManagementRequest sets the node management properties of a node\npool.", - "type": "object", - "properties": { - "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" - }, - "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" - }, - "management": { - "$ref": "NodeManagement", - "description": "NodeManagement configuration for the node pool." - }, - "clusterId": { - "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", - "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" - }, - "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": "SetNodePoolManagementRequest" - }, - "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": "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" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", - "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" - }, - "zone": { - "type": "string", - "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." + "methods": { + "getServerconfig": { + "description": "Returns configuration info about the Kubernetes Engine service.", + "response": { + "$ref": "ServerConfig" + }, + "parameterOrder": [ + "projectId", + "zone" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "location": "query", + "description": "The name (project and location) of the server config to get\nSpecified in the format 'projects/*/locations/*'.", + "type": "string" + }, + "projectId": { + "location": "path", + "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.", + "required": true, + "type": "string" + }, + "zone": { + "location": "path", + "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.", + "required": true, + "type": "string" + } + }, + "flatPath": "v1/projects/{projectId}/zones/{zone}/serverconfig", + "path": "v1/projects/{projectId}/zones/{zone}/serverconfig", + "id": "container.projects.zones.getServerconfig" + } + } } - }, - "id": "SetNodePoolAutoscalingRequest" + } + } + }, + "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" }, - "CreateClusterRequest": { - "description": "CreateClusterRequest creates a cluster.", - "type": "object", - "properties": { - "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" - }, - "cluster": { - "description": "A [cluster\nresource](/container-engine/reference/rest/v1/projects.zones.clusters)", - "$ref": "Cluster" - }, - "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" - }, - "parent": { - "description": "The parent (project and location) where the cluster will be created.\nSpecified in the format 'projects/*/locations/*'.", - "type": "string" - } - }, - "id": "CreateClusterRequest" + "access_token": { + "location": "query", + "description": "OAuth access token.", + "type": "string" }, - "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" + "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" }, - "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" + "pp": { + "description": "Pretty-print response.", + "type": "boolean", + "default": "true", + "location": "query" }, - "UpdateNodePoolRequest": { - "description": "UpdateNodePoolRequests update a node pool's image and/or version.", - "type": "object", - "properties": { - "imageType": { - "description": "The desired image type for the node pool.", - "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" - }, - "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" - }, - "name": { - "description": "The name (project, location, cluster, node pool) of the node pool to\nupdate. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", - "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" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", - "type": "string" - }, - "nodePoolId": { - "type": "string", - "description": "Deprecated. The name of the node pool to upgrade.\nThis field has been deprecated and replaced by the name field." - } - }, - "id": "UpdateNodePoolRequest" + "bearer_token": { + "location": "query", + "description": "OAuth bearer token.", + "type": "string" }, - "SetAddonsConfigRequest": { - "description": "SetAddonsConfigRequest sets the addons associated with the cluster.", - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name (project, location, cluster) of the cluster to set addons.\nSpecified in the format 'projects/*/locations/*/clusters/*'." - }, - "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" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", - "type": "string" - }, - "addonsConfig": { - "$ref": "AddonsConfig", - "description": "The desired configurations for the various addons available to run in the\ncluster." - } - }, - "id": "SetAddonsConfigRequest" + "oauth_token": { + "location": "query", + "description": "OAuth 2.0 token for the current user.", + "type": "string" }, - "SetLegacyAbacRequest": { - "description": "SetLegacyAbacRequest enables or disables the ABAC authorization mechanism for\na cluster.", - "type": "object", - "properties": { - "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" - }, - "clusterId": { - "type": "string", - "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field." - }, - "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": "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" - } - }, - "id": "SetLegacyAbacRequest" + "upload_protocol": { + "type": "string", + "location": "query", + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")." }, - "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." - }, - "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": { - "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" - } - }, - "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" - } - } + "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": { + "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" } }, - "rootUrl": "https://container.googleapis.com/" + "version": "v1" } diff --git a/DiscoveryJson/container_v1beta1.json b/DiscoveryJson/container_v1beta1.json index 725d66bf31..499787e752 100644 --- a/DiscoveryJson/container_v1beta1.json +++ b/DiscoveryJson/container_v1beta1.json @@ -1,1687 +1,4 @@ { - "basePath": "", - "revision": "20180420", - "documentationLink": "https://cloud.google.com/container-engine/", - "id": "container:v1beta1", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "SetLegacyAbacRequest": { - "type": "object", - "properties": { - "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" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", - "type": "string" - }, - "name": { - "type": "string", - "description": "The name (project, location, cluster id) of the cluster to set legacy abac.\nSpecified in the format 'projects/*/locations/*/clusters/*'." - }, - "enabled": { - "description": "Whether ABAC authorization will be enabled in the cluster.", - "type": "boolean" - } - }, - "id": "SetLegacyAbacRequest", - "description": "SetLegacyAbacRequest enables or disables the ABAC authorization mechanism for\na cluster." - }, - "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": { - "$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." - }, - "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" - }, - "NetworkConfig": { - "description": "NetworkConfig reports the relative names of network & subnetwork.", - "type": "object", - "properties": { - "subnetwork": { - "description": "Output only. The name of the Google Compute Engine\n[subnetwork](/compute/docs/vpc).\nExample: projects/my-project/regions/us-central1/subnetworks/my-subnet", - "type": "string" - }, - "network": { - "description": "Output only. The name of the Google Compute Engine\nnetwork(/compute/docs/networks-and-firewalls#networks).\nExample: projects/my-project/global/networks/my-network", - "type": "string" - } - }, - "id": "NetworkConfig" - }, - "SetLocationsRequest": { - "id": "SetLocationsRequest", - "description": "SetLocationsRequest sets the locations of the cluster.", - "type": "object", - "properties": { - "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" - }, - "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": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", - "type": "string" - } - } - }, - "SetNodePoolSizeRequest": { - "type": "object", - "properties": { - "clusterId": { - "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", - "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" - }, - "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" - }, - "nodeCount": { - "description": "The desired node count for the pool.", - "format": "int32", - "type": "integer" - }, - "name": { - "type": "string", - "description": "The name (project, location, cluster, node pool id) of the node pool to set\nsize.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'." - }, - "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" - } - }, - "id": "SetNodePoolSizeRequest", - "description": "SetNodePoolSizeRequest sets the size a node\npool." - }, - "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": { - "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": "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" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", - "type": "string" - } - }, - "id": "UpdateClusterRequest", - "description": "UpdateClusterRequest updates the settings of a cluster.", - "type": "object" - }, - "Cluster": { - "description": "A Google Kubernetes Engine cluster.", - "type": "object", - "properties": { - "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" - }, - "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. On output this shows the network ID instead of\nthe name.", - "type": "string" - }, - "labelFingerprint": { - "description": "The fingerprint of the set of labels for this cluster.", - "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" - }, - "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" - }, - "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" - }, - "loggingService": { - "type": "string", - "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." - }, - "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": { - "description": "The authentication information for accessing the master endpoint.", - "$ref": "MasterAuth" - }, - "masterIpv4CidrBlock": { - "type": "string", - "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." - }, - "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." - }, - "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": { - "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." - ], - "enum": [ - "STATUS_UNSPECIFIED", - "PROVISIONING", - "RUNNING", - "RECONCILING", - "STOPPING", - "ERROR", - "DEGRADED" - ], - "description": "[Output only] The current status of this cluster.", - "type": "string" - }, - "networkConfig": { - "$ref": "NetworkConfig", - "description": "Configuration for cluster networking." - }, - "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" - }, - "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" - }, - "maintenancePolicy": { - "$ref": "MaintenancePolicy", - "description": "Configure the maintenance policy for this cluster." - }, - "resourceLabels": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "The resource labels for the cluster to use to annotate any related\nGoogle Compute Engine resources." - }, - "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" - }, - "initialClusterVersion": { - "type": "string", - "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" - }, - "ipAllocationPolicy": { - "description": "Configuration for cluster IP allocation.", - "$ref": "IPAllocationPolicy" - }, - "legacyAbac": { - "description": "Configuration for the legacy ABAC authorization mode.", - "$ref": "LegacyAbac" - }, - "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": { - "type": "string", - "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." - }, - "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" - }, - "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" - }, - "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" - } - }, - "networkPolicy": { - "$ref": "NetworkPolicy", - "description": "Configuration options for the NetworkPolicy feature." - }, - "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" - }, - "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" - } - }, - "id": "Cluster" - }, - "CreateNodePoolRequest": { - "description": "CreateNodePoolRequest creates a node pool for a cluster.", - "type": "object", - "properties": { - "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": { - "type": "string", - "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." - }, - "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\ncreated. Specified in the format\n'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": { - "$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" - }, - "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": { - "type": "string", - "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." - } - }, - "id": "DailyMaintenanceWindow" - }, - "ClientCertificateConfig": { - "description": "Configuration for client certificates on the cluster.", - "type": "object", - "properties": { - "issueClientCertificate": { - "description": "Issue a client certificate.", - "type": "boolean" - } - }, - "id": "ClientCertificateConfig" - }, - "MaintenancePolicy": { - "description": "MaintenancePolicy defines the maintenance policy to be used for the cluster.", - "type": "object", - "properties": { - "window": { - "$ref": "MaintenanceWindow", - "description": "Specifies the maintenance window in which maintenance may be performed." - } - }, - "id": "MaintenancePolicy" - }, - "SetLoggingServiceRequest": { - "description": "SetLoggingServiceRequest sets the logging service of a cluster.", - "type": "object", - "properties": { - "loggingService": { - "type": "string", - "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" - }, - "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" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", - "type": "string" - } - }, - "id": "SetLoggingServiceRequest" - }, - "SetMaintenancePolicyRequest": { - "type": "object", - "properties": { - "maintenancePolicy": { - "description": "The maintenance policy to be set for the cluster. An empty field\nclears the existing maintenance policy.", - "$ref": "MaintenancePolicy" - }, - "name": { - "type": "string", - "description": "The name (project, location, cluster id) of the cluster to set maintenance\npolicy.\nSpecified in the format 'projects/*/locations/*/clusters/*'." - }, - "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" - }, - "clusterId": { - "description": "The name of the cluster to update.", - "type": "string" - } - }, - "id": "SetMaintenancePolicyRequest", - "description": "SetMaintenancePolicyRequest sets the maintenance policy for a cluster." - }, - "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" - }, - "WorkloadMetadataConfig": { - "type": "object", - "properties": { - "nodeMetadata": { - "enum": [ - "UNSPECIFIED", - "SECURE", - "EXPOSE" - ], - "description": "NodeMetadata is the configuration for how to expose the node metadata to\nthe workload running on the node.", - "type": "string", - "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." - ] - } - }, - "id": "WorkloadMetadataConfig", - "description": "WorkloadMetadataConfig defines the metadata configuration to expose to\nworkloads on the node pool." - }, - "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": { - "properties": { - "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" - }, - "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\nrotation. Specified in the format 'projects/*/locations/*/clusters/*'.", - "type": "string" - } - }, - "id": "CompleteIPRotationRequest", - "description": "CompleteIPRotationRequest moves the cluster master back into single-IP mode.", - "type": "object" - }, - "StartIPRotationRequest": { - "properties": { - "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" - }, - "clusterId": { - "type": "string", - "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field." - }, - "rotateCredentials": { - "description": "Whether to rotate credentials during IP rotation.", - "type": "boolean" - }, - "name": { - "description": "The name (project, location, cluster id) of the cluster to start IP\nrotation. Specified in the format 'projects/*/locations/*/clusters/*'.", - "type": "string" - } - }, - "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.", - "type": "object" - }, - "ListUsableSubnetworksResponse": { - "description": "ListUsableSubnetworksResponse is the response of\nListUsableSubnetworksRequest.", - "type": "object", - "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 `page_size`, use the\n`next_page_token` as a value for the query parameter `page_token` in the\nnext request. The value will become empty when there are no more pages.", - "type": "string" - }, - "subnetworks": { - "description": "A list of usable subnetworks in the specified network project.", - "type": "array", - "items": { - "$ref": "UsableSubnetwork" - } - } - }, - "id": "ListUsableSubnetworksResponse" - }, - "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": { - "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": { - "$ref": "NodeConfig", - "description": "The node configuration of the pool." - }, - "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" - }, - "selfLink": { - "type": "string", - "description": "[Output only] Server-defined URL for the resource." - }, - "version": { - "description": "The version of the Kubernetes of this node.", - "type": "string" - }, - "instanceGroupUrls": { - "type": "array", - "items": { - "type": "string" - }, - "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." - } - }, - "id": "NodePool" - }, - "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", - "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.", - "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" - }, - "name": { - "description": "The name (project, location, cluster id) of the cluster to set labels.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "type": "string" - }, - "resourceLabels": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "The labels to set for that cluster." - }, - "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" - }, - "clusterId": { - "type": "string", - "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field." - } - }, - "id": "SetLabelsRequest" - }, - "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": { - "description": "Specifies the Auto Upgrade knobs for the node pool.", - "$ref": "AutoUpgradeOptions" - } - }, - "id": "NodeManagement" - }, - "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" - } - }, - "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", - "properties": { - "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" - }, - "targetLink": { - "description": "Server-defined URL for the target of the operation.", - "type": "string" - }, - "detail": { - "description": "Detailed operation progress, if available.", - "type": "string" - }, - "operationType": { - "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" - ], - "description": "The operation type.", - "type": "string", - "enumDescriptions": [ - "Not set.", - "Cluster create.", - "Cluster delete.", - "A master upgrade.", - "A node upgrade.", - "Cluster repair.", - "Cluster update.", - "Node pool create.", - "Node pool delete.", - "Set node pool management.", - "Automatic node pool repair.", - "Automatic node upgrade.", - "Set labels.", - "Set/generate master auth materials", - "Set node pool size.", - "Updates network policy for a cluster.", - "Set the maintenance policy." - ] - }, - "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." - ], - "enum": [ - "STATUS_UNSPECIFIED", - "PENDING", - "RUNNING", - "DONE", - "ABORTING" - ], - "description": "The current status of the operation.", - "type": "string" - }, - "name": { - "description": "The server-assigned ID for the operation.", - "type": "string" - }, - "statusMessage": { - "description": "If an error has occurred, a textual description of the error.", - "type": "string" - }, - "selfLink": { - "description": "Server-defined URL for the resource.", - "type": "string" - } - }, - "id": "Operation" - }, - "MaintenanceWindow": { - "description": "MaintenanceWindow defines the maintenance window to be used for the cluster.", - "type": "object", - "properties": { - "dailyMaintenanceWindow": { - "$ref": "DailyMaintenanceWindow", - "description": "DailyMaintenanceWindow specifies a daily maintenance operation window." - } - }, - "id": "MaintenanceWindow" - }, - "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", - "properties": { - "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" - }, - "clusterId": { - "type": "string", - "description": "Deprecated. The name of the cluster to rollback.\nThis field has been deprecated and replaced by the name field." - }, - "nodePoolId": { - "description": "Deprecated. The name of the node pool 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" - } - }, - "id": "RollbackNodePoolUpgradeRequest" - }, - "NetworkPolicy": { - "type": "object", - "properties": { - "enabled": { - "description": "Whether network policy is enabled on the cluster.", - "type": "boolean" - }, - "provider": { - "description": "The selected network policy provider.", - "type": "string", - "enumDescriptions": [ - "Not set", - "Tigera (Calico Felix)." - ], - "enum": [ - "PROVIDER_UNSPECIFIED", - "CALICO" - ] - } - }, - "id": "NetworkPolicy", - "description": "Configuration options for the NetworkPolicy feature.\nhttps://kubernetes.io/docs/concepts/services-networking/networkpolicies/" - }, - "UpdateMasterRequest": { - "properties": { - "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" - }, - "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" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", - "type": "string" - } - }, - "id": "UpdateMasterRequest", - "description": "UpdateMasterRequest updates the master of the cluster.", - "type": "object" - }, - "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": { - "properties": { - "monitoringService": { - "type": "string", - "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" - }, - "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" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", - "type": "string" - } - }, - "id": "SetMonitoringServiceRequest", - "description": "SetMonitoringServiceRequest sets the monitoring service of a cluster.", - "type": "object" - }, - "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": { - "validMasterVersions": { - "description": "List of valid master versions.", - "type": "array", - "items": { - "type": "string" - } - }, - "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" - } - } - }, - "id": "ServerConfig" - }, - "NodeConfig": { - "description": "Parameters that describe the nodes in a cluster.", - "type": "object", - "properties": { - "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": { - "type": "array", - "items": { - "type": "string" - }, - "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." - }, - "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" - }, - "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": { - "$ref": "WorkloadMetadataConfig", - "description": "The workload metadata configuration for this node." - }, - "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\nplatform](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" - }, - "metadata": { - "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." - }, - "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", - "items": { - "type": "string" - } - }, - "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": { - "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" - } - }, - "id": "AutoUpgradeOptions", - "description": "AutoUpgradeOptions defines the set of options for the user to control how\nthe Auto Upgrades will proceed.", - "type": "object" - }, - "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" - }, - "UsableSubnetwork": { - "description": "UsableSubnetwork resource returns the subnetwork name, its associated network\nand the primary CIDR range.", - "type": "object", - "properties": { - "ipCidrRange": { - "description": "The range of internal addresses that are owned by this subnetwork.", - "type": "string" - }, - "subnetwork": { - "description": "Subnetwork Name.\nExample: projects/my-project/regions/us-central1/subnetworks/my-subnet", - "type": "string" - }, - "network": { - "description": "Network Name.\nExample: projects/my-project/global/networks/my-network", - "type": "string" - } - }, - "id": "UsableSubnetwork" - }, - "PodSecurityPolicyConfig": { - "description": "Configuration for the PodSecurityPolicy feature.", - "type": "object", - "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" - }, - "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": { - "type": "boolean", - "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." - } - }, - "id": "HttpLoadBalancing" - }, - "SetNetworkPolicyRequest": { - "description": "SetNetworkPolicyRequest enables/disables network policy for a cluster.", - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name (project, location, cluster id) of the cluster to set networking\npolicy. Specified in the format 'projects/*/locations/*/clusters/*'." - }, - "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" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", - "type": "string" - }, - "networkPolicy": { - "$ref": "NetworkPolicy", - "description": "Configuration options for the NetworkPolicy feature." - } - }, - "id": "SetNetworkPolicyRequest" - }, - "NodePoolAutoscaling": { - "description": "NodePoolAutoscaling contains information required by cluster autoscaler to\nadjust the size of the node pool to the current cluster usage.", - "type": "object", - "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" - }, - "SetMasterAuthRequest": { - "id": "SetMasterAuthRequest", - "description": "SetMasterAuthRequest updates the admin password of a cluster.", - "type": "object", - "properties": { - "name": { - "description": "The name (project, location, cluster) of the cluster to set auth.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "type": "string" - }, - "action": { - "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." - ], - "enum": [ - "UNKNOWN", - "SET_PASSWORD", - "GENERATE_PASSWORD", - "SET_USERNAME" - ] - }, - "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" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", - "type": "string" - }, - "update": { - "description": "A description of the update.", - "$ref": "MasterAuth" - }, - "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" - } - } - }, - "IPAllocationPolicy": { - "properties": { - "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" - }, - "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" - }, - "useIpAliases": { - "description": "Whether alias IPs will be used for pod IPs in the cluster.", - "type": "boolean" - }, - "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" - }, - "clusterIpv4Cidr": { - "description": "This field is deprecated, use cluster_ipv4_cidr_block.", - "type": "string" - }, - "servicesIpv4Cidr": { - "type": "string", - "description": "This field is deprecated, use services_ipv4_cidr_block." - }, - "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" - } - }, - "id": "IPAllocationPolicy", - "description": "Configuration for controlling how IPs are allocated in the cluster.", - "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.", - "type": "object", - "properties": { - "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).\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." - }, - "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" - }, - "desiredMasterAuthorizedNetworksConfig": { - "$ref": "MasterAuthorizedNetworksConfig", - "description": "The desired configuration options for master authorized networks feature." - }, - "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": { - "type": "string", - "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" - } - }, - "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": "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", - "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": { - "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" - }, - "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" - }, - "management": { - "description": "NodeManagement configuration for the node pool.", - "$ref": "NodeManagement" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", - "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" - }, - "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": "SetNodePoolManagementRequest" - }, - "SetNodePoolAutoscalingRequest": { - "description": "SetNodePoolAutoscalingRequest sets the autoscaler settings of a node pool.", - "type": "object", - "properties": { - "clusterId": { - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", - "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" - }, - "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" - }, - "name": { - "type": "string", - "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/*'." - }, - "autoscaling": { - "description": "Autoscaling configuration for the node pool.", - "$ref": "NodePoolAutoscaling" - }, - "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" - } - }, - "id": "SetNodePoolAutoscalingRequest" - }, - "CreateClusterRequest": { - "id": "CreateClusterRequest", - "description": "CreateClusterRequest creates a cluster.", - "type": "object", - "properties": { - "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" - }, - "cluster": { - "$ref": "Cluster", - "description": "A [cluster\nresource](/container-engine/reference/rest/v1beta1/projects.zones.clusters)" - }, - "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" - }, - "parent": { - "description": "The parent (project and location) where the cluster will be created.\nSpecified in the format 'projects/*/locations/*'.", - "type": "string" - } - } - }, - "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" - }, - "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" - }, - "UpdateNodePoolRequest": { - "description": "SetNodePoolVersionRequest updates the version of a node pool.", - "type": "object", - "properties": { - "imageType": { - "description": "The desired image type for the node pool.", - "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" - }, - "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" - }, - "name": { - "description": "The name (project, location, cluster, node pool) of the node pool to\nupdate. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", - "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" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", - "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" - } - }, - "id": "UpdateNodePoolRequest" - }, - "SetAddonsConfigRequest": { - "properties": { - "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" - }, - "projectId": { - "type": "string", - "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." - }, - "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" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", - "type": "string" - } - }, - "id": "SetAddonsConfigRequest", - "description": "SetAddonsRequest sets the addons associated with the cluster.", - "type": "object" - }, - "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", - "properties": { - "key": { - "description": "Key for taint.", - "type": "string" - }, - "value": { - "description": "Value for taint.", - "type": "string" - }, - "effect": { - "description": "Effect for taint.", - "type": "string", - "enumDescriptions": [ - "Not set", - "NoSchedule", - "PreferNoSchedule", - "NoExecute" - ], - "enum": [ - "EFFECT_UNSPECIFIED", - "NO_SCHEDULE", - "PREFER_NO_SCHEDULE", - "NO_EXECUTE" - ] - } - }, - "id": "NodeTaint" - } - }, - "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", @@ -1694,6 +11,9 @@ "zones": { "methods": { "getServerconfig": { + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/serverconfig", + "path": "v1beta1/projects/{projectId}/zones/{zone}/serverconfig", + "id": "container.projects.zones.getServerconfig", "description": "Returns configuration info about the Kubernetes Engine service.", "response": { "$ref": "ServerConfig" @@ -1704,6 +24,11 @@ ], "httpMethod": "GET", "parameters": { + "name": { + "description": "The name (project and location) of the server config to get\nSpecified in the format 'projects/*/locations/*'.", + "type": "string", + "location": "query" + }, "projectId": { "location": "path", "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.", @@ -1715,59 +40,222 @@ "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.", "required": true, "type": "string" - }, - "name": { - "description": "The name (project and location) of the server config to get\nSpecified in the format 'projects/*/locations/*'.", - "type": "string", - "location": "query" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/serverconfig", - "path": "v1beta1/projects/{projectId}/zones/{zone}/serverconfig", - "id": "container.projects.zones.getServerconfig" + ] } }, "resources": { + "operations": { + "methods": { + "list": { + "httpMethod": "GET", + "parameterOrder": [ + "projectId", + "zone" + ], + "response": { + "$ref": "ListOperationsResponse" + }, + "parameters": { + "projectId": { + "required": true, + "type": "string", + "location": "path", + "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." + }, + "zone": { + "location": "path", + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) to return operations for, or `-` for\nall zones. This field has been deprecated and replaced by the parent field.", + "required": true, + "type": "string" + }, + "parent": { + "location": "query", + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/operations", + "id": "container.projects.zones.operations.list", + "path": "v1beta1/projects/{projectId}/zones/{zone}/operations", + "description": "Lists all operations in a project in a specific zone or all zones." + }, + "get": { + "httpMethod": "GET", + "parameterOrder": [ + "projectId", + "zone", + "operationId" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "operationId": { + "location": "path", + "description": "Deprecated. The server-assigned `name` of the operation.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string" + }, + "projectId": { + "location": "path", + "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.", + "required": true, + "type": "string" + }, + "zone": { + "required": true, + "type": "string", + "location": "path", + "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." + }, + "name": { + "description": "The name (project, location, operation id) of the operation to get.\nSpecified in the format 'projects/*/locations/*/operations/*'.", + "type": "string", + "location": "query" + } + }, + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/operations/{operationId}", + "id": "container.projects.zones.operations.get", + "path": "v1beta1/projects/{projectId}/zones/{zone}/operations/{operationId}", + "description": "Gets the specified operation." + }, + "cancel": { + "httpMethod": "POST", + "parameterOrder": [ + "projectId", + "zone", + "operationId" + ], + "response": { + "$ref": "Empty" + }, + "parameters": { + "zone": { + "location": "path", + "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.", + "required": true, + "type": "string" + }, + "operationId": { + "location": "path", + "description": "Deprecated. The server-assigned `name` of the operation.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string" + }, + "projectId": { + "location": "path", + "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.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/operations/{operationId}:cancel", + "id": "container.projects.zones.operations.cancel", + "path": "v1beta1/projects/{projectId}/zones/{zone}/operations/{operationId}:cancel", + "description": "Cancels the specified operation.", + "request": { + "$ref": "CancelOperationRequest" + } + } + } + }, "clusters": { "methods": { - "create": { + "logging": { "response": { "$ref": "Operation" }, "parameterOrder": [ "projectId", - "zone" + "zone", + "clusterId" ], "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { + "projectId": { + "location": "path", + "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.", + "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", + "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.", "required": true, - "type": "string", - "location": "path" + "type": "string" }, + "clusterId": { + "location": "path", + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string" + } + }, + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/logging", + "path": "v1beta1/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": { + "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": "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.", "required": true, "type": "string" + }, + "zone": { + "location": "path", + "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.", + "required": true, + "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.", + "type": "string", + "location": "query" } }, + "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." + "id": "container.projects.zones.clusters.list", + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters" }, "resourceLabels": { + "description": "Sets labels on a cluster.", + "request": { + "$ref": "SetLabelsRequest" + }, "httpMethod": "POST", "parameterOrder": [ "projectId", @@ -1777,38 +265,72 @@ "response": { "$ref": "Operation" }, + "parameters": { + "zone": { + "location": "path", + "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.", + "required": true, + "type": "string" + }, + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string", + "location": "path" + }, + "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.", + "required": true, + "type": "string", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/resourceLabels", + "id": "container.projects.zones.clusters.resourceLabels", + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/resourceLabels" + }, + "create": { + "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.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "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.", + "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.", "required": true, "type": "string", "location": "path" }, "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.", - "required": true, - "type": "string", - "location": "path" - }, - "clusterId": { "location": "path", - "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "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.", "required": true, "type": "string" } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/resourceLabels", - "id": "container.projects.zones.clusters.resourceLabels", - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/resourceLabels", - "description": "Sets labels on a cluster.", - "request": { - "$ref": "SetLabelsRequest" } }, "completeIpRotation": { + "request": { + "$ref": "CompleteIPRotationRequest" + }, + "description": "Completes master IP rotation.", "response": { "$ref": "Operation" }, @@ -1818,18 +340,21 @@ "clusterId" ], "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "projectId": { - "location": "path", - "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.", "required": true, - "type": "string" + "type": "string", + "location": "path", + "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." }, "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.", "required": true, "type": "string", - "location": "path" + "location": "path", + "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." }, "clusterId": { "location": "path", @@ -1838,76 +363,54 @@ "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:completeIpRotation", "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:completeIpRotation", - "id": "container.projects.zones.clusters.completeIpRotation", - "description": "Completes master IP rotation.", - "request": { - "$ref": "CompleteIPRotationRequest" - } + "id": "container.projects.zones.clusters.completeIpRotation" }, "get": { + "response": { + "$ref": "Cluster" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "name": { + "type": "string", "location": "query", - "description": "The name (project, location, cluster) of the cluster to retrieve.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "type": "string" + "description": "The name (project, location, cluster) of the cluster to retrieve.\nSpecified in the format 'projects/*/locations/*/clusters/*'." }, "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.", "required": true, "type": "string", - "location": "path" + "location": "path", + "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." }, "zone": { - "location": "path", "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.", "required": true, - "type": "string" + "type": "string", + "location": "path" }, "clusterId": { - "required": true, - "type": "string", "location": "path", - "description": "Deprecated. The name of the cluster to retrieve.\nThis field has been deprecated and replaced by the name field." + "description": "Deprecated. The name of the cluster to retrieve.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", "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" + "description": "Gets the details of a specific cluster." }, "legacyAbac": { - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/legacyAbac", - "id": "container.projects.zones.clusters.legacyAbac", - "description": "Enables or disables the ABAC authorization mechanism on a cluster.", - "request": { - "$ref": "SetLegacyAbacRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", "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 name field.", @@ -1922,16 +425,31 @@ "location": "path" }, "clusterId": { + "location": "path", "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/legacyAbac" + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/legacyAbac", + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/legacyAbac", + "id": "container.projects.zones.clusters.legacyAbac", + "description": "Enables or disables the ABAC authorization mechanism on a cluster.", + "request": { + "$ref": "SetLegacyAbacRequest" + }, + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "httpMethod": "POST" }, "setNetworkPolicy": { "response": { @@ -1943,44 +461,44 @@ "clusterId" ], "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { - "projectId": { + "clusterId": { "location": "path", - "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.", + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", "required": true, "type": "string" }, + "projectId": { + "required": true, + "type": "string", + "location": "path", + "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." + }, "zone": { "location": "path", "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.", "required": true, "type": "string" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string", - "location": "path" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "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" - }, - "description": "Enables/Disables Network Policy for a cluster." + } }, "startIpRotation": { "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:startIpRotation", "id": "container.projects.zones.clusters.startIpRotation", - "description": "Start master IP rotation.", "request": { "$ref": "StartIPRotationRequest" }, + "description": "Start master IP rotation.", "response": { "$ref": "Operation" }, @@ -1990,12 +508,15 @@ "clusterId" ], "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "clusterId": { + "location": "path", "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", "required": true, - "type": "string", - "location": "path" + "type": "string" }, "projectId": { "location": "path", @@ -2010,12 +531,13 @@ "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." } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:startIpRotation" }, "addons": { + "request": { + "$ref": "SetAddonsConfigRequest" + }, + "description": "Sets the addons of a specific cluster.", "response": { "$ref": "Operation" }, @@ -2030,33 +552,55 @@ ], "parameters": { "projectId": { - "location": "path", - "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.", "required": true, - "type": "string" + "type": "string", + "location": "path", + "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." }, "zone": { - "location": "path", "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.", "required": true, - "type": "string" + "type": "string", + "location": "path" }, "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", "required": true, "type": "string", - "location": "path", - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field." + "location": "path" } }, "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/addons", "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/addons", - "id": "container.projects.zones.clusters.addons", - "request": { - "$ref": "SetAddonsConfigRequest" - }, - "description": "Sets the addons of a specific cluster." + "id": "container.projects.zones.clusters.addons" }, "setMaintenancePolicy": { + "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" + }, + "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": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}: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" @@ -2069,35 +613,52 @@ "zone", "clusterId" ], - "httpMethod": "POST", + "httpMethod": "POST" + }, + "delete": { + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", + "id": "container.projects.zones.clusters.delete", + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", + "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.", + "httpMethod": "DELETE", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], "parameters": { "projectId": { - "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840).", + "location": "path", + "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.", "required": true, - "type": "string", - "location": "path" + "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" + "location": "path", + "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." }, "clusterId": { - "description": "The name of the cluster to update.", + "description": "Deprecated. The name of the cluster to delete.\nThis field has been deprecated and replaced by the name field.", "required": true, "type": "string", "location": "path" + }, + "name": { + "location": "query", + "description": "The name (project, location, cluster) of the cluster to delete.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMaintenancePolicy", - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMaintenancePolicy", - "id": "container.projects.zones.clusters.setMaintenancePolicy" + ] }, - "delete": { + "locations": { "response": { "$ref": "Operation" }, @@ -2106,63 +667,49 @@ "zone", "clusterId" ], - "httpMethod": "DELETE", + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "name": { - "type": "string", - "location": "query", - "description": "The name (project, location, cluster) of the cluster to delete.\nSpecified in the format 'projects/*/locations/*/clusters/*'." - }, - "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.", + "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.", "required": true, "type": "string", "location": "path" }, - "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.", + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", "required": true, "type": "string", "location": "path" }, - "clusterId": { + "projectId": { "location": "path", - "description": "Deprecated. The name of the cluster to delete.\nThis field has been deprecated and replaced by the name field.", + "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.", "required": true, "type": "string" } }, - "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." - }, - "locations": { + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/locations", "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/locations", "id": "container.projects.zones.clusters.locations", - "description": "Sets the locations of a specific cluster.", "request": { "$ref": "SetLocationsRequest" }, - "response": { - "$ref": "Operation" - }, + "description": "Sets the locations of a specific cluster." + }, + "update": { + "httpMethod": "PUT", "parameterOrder": [ "projectId", "zone", "clusterId" ], - "httpMethod": "POST", + "response": { + "$ref": "Operation" + }, "parameters": { - "clusterId": { - "location": "path", - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string" - }, "projectId": { "location": "path", "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.", @@ -2170,34 +717,39 @@ "type": "string" }, "zone": { - "location": "path", "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.", "required": true, + "type": "string", + "location": "path" + }, + "clusterId": { + "location": "path", + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "required": true, "type": "string" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/locations" - }, - "update": { "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", "id": "container.projects.zones.clusters.update", + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}", "description": "Updates the settings of a specific cluster.", "request": { "$ref": "UpdateClusterRequest" - }, - "response": { - "$ref": "Operation" - }, + } + }, + "monitoring": { + "httpMethod": "POST", "parameterOrder": [ "projectId", "zone", "clusterId" ], - "httpMethod": "PUT", + "response": { + "$ref": "Operation" + }, "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 name field.", @@ -2206,29 +758,30 @@ "location": "path" }, "zone": { + "location": "path", "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.", "required": true, - "type": "string", - "location": "path" + "type": "string" }, "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", "required": true, "type": "string", - "location": "path", - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field." + "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "monitoring": { - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/monitoring", + ], + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/monitoring", "id": "container.projects.zones.clusters.monitoring", + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/monitoring", "description": "Sets the monitoring service of a specific cluster.", "request": { "$ref": "SetMonitoringServiceRequest" - }, + } + }, + "master": { "response": { "$ref": "Operation" }, @@ -2252,21 +805,27 @@ "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.", "required": true, "type": "string", - "location": "path", - "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" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/monitoring" - }, - "master": { + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/master", + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/master", + "id": "container.projects.zones.clusters.master", "description": "Updates the master of a specific cluster.", "request": { "$ref": "UpdateMasterRequest" + } + }, + "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" @@ -2285,193 +844,406 @@ "location": "path" }, "clusterId": { - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string", - "location": "path" - }, - "projectId": { - "location": "path", - "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.", - "required": true, - "type": "string" - } - }, - "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": { - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "projectId": { - "location": "path", - "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.", - "required": true, - "type": "string" - }, - "zone": { "location": "path", - "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.", + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", "required": true, "type": "string" }, - "clusterId": { - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "projectId": { "required": true, "type": "string", - "location": "path" + "location": "path", + "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." } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}:setMasterAuth", - "id": "container.projects.zones.clusters.setMasterAuth", "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}: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" - } - }, - "logging": { - "description": "Sets the logging service of a specific cluster.", - "request": { - "$ref": "SetLoggingServiceRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST", - "parameters": { - "projectId": { - "location": "path", - "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.", - "required": true, - "type": "string" + "id": "container.projects.zones.clusters.setMasterAuth" + } + }, + "resources": { + "nodePools": { + "methods": { + "setSize": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "projectId": { + "required": true, + "type": "string", + "location": "path", + "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." + }, + "zone": { + "location": "path", + "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.", + "required": true, + "type": "string" + }, + "clusterId": { + "location": "path", + "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string" + }, + "nodePoolId": { + "location": "path", + "description": "Deprecated. The name of the node pool to update.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string" + } + }, + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setSize", + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setSize", + "id": "container.projects.zones.clusters.nodePools.setSize", + "request": { + "$ref": "SetNodePoolSizeRequest" + }, + "description": "Sets the size of a specific node pool." }, - "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.", - "required": true, - "type": "string", - "location": "path" + "setManagement": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "httpMethod": "POST", + "parameters": { + "clusterId": { + "location": "path", + "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", + "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.", + "required": true, + "type": "string", + "location": "path" + }, + "projectId": { + "location": "path", + "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.", + "required": true, + "type": "string" + }, + "zone": { + "location": "path", + "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.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setManagement", + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setManagement", + "id": "container.projects.zones.clusters.nodePools.setManagement", + "description": "Sets the NodeManagement options for a node pool.", + "request": { + "$ref": "SetNodePoolManagementRequest" + } + }, + "delete": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "httpMethod": "DELETE", + "parameters": { + "zone": { + "location": "path", + "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.", + "required": true, + "type": "string" + }, + "clusterId": { + "location": "path", + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string" + }, + "nodePoolId": { + "location": "path", + "description": "Deprecated. The name of the node pool to delete.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string" + }, + "name": { + "description": "The name (project, location, cluster, node pool id) of the node pool to\ndelete. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", + "type": "string", + "location": "query" + }, + "projectId": { + "location": "path", + "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.", + "required": true, + "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.delete", + "description": "Deletes a node pool from a cluster." }, - "clusterId": { - "required": true, - "type": "string", - "location": "path", - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/logging", - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/logging", - "id": "container.projects.zones.clusters.logging" - }, - "list": { - "description": "Lists all clusters owned by a project in either the specified zone or all\nzones.", - "response": { - "$ref": "ListClustersResponse" - }, - "parameterOrder": [ - "projectId", - "zone" - ], - "httpMethod": "GET", - "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.", - "required": true, - "type": "string", - "location": "path" + "list": { + "id": "container.projects.zones.clusters.nodePools.list", + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools", + "description": "Lists the node pools for a cluster.", + "httpMethod": "GET", + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "response": { + "$ref": "ListNodePoolsResponse" + }, + "parameters": { + "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.", + "required": true, + "type": "string", + "location": "path" + }, + "clusterId": { + "location": "path", + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", + "required": true, + "type": "string" + }, + "parent": { + "location": "query", + "description": "The parent (project, location, cluster id) where the node pools will be\nlisted. Specified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "projectId": { + "location": "path", + "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.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools" }, - "zone": { - "required": true, - "type": "string", - "location": "path", - "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." + "rollback": { + "parameters": { + "projectId": { + "location": "path", + "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.", + "required": true, + "type": "string" + }, + "zone": { + "location": "path", + "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.", + "required": true, + "type": "string" + }, + "clusterId": { + "location": "path", + "description": "Deprecated. The name of the cluster to rollback.\nThis field has been deprecated and replaced by the name field.", + "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.", + "required": true, + "type": "string", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}:rollback", + "id": "container.projects.zones.clusters.nodePools.rollback", + "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}: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" + }, + "httpMethod": "POST", + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "response": { + "$ref": "Operation" + } }, - "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" - } - }, - "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.list" - } - }, - "resources": { - "nodePools": { - "methods": { "create": { + "description": "Creates a node pool for a cluster.", + "request": { + "$ref": "CreateNodePoolRequest" + }, + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "httpMethod": "POST", + "parameters": { + "projectId": { + "location": "path", + "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.", + "required": true, + "type": "string" + }, + "zone": { + "location": "path", + "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.", + "required": true, + "type": "string" + }, + "clusterId": { + "location": "path", + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "clusterId": { + "location": "path", + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "required": true, + "type": "string" + }, + "nodePoolId": { + "location": "path", + "description": "Deprecated. The name of the node pool to upgrade.\nThis field has been deprecated and replaced by the name field.", + "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.", + "required": true, + "type": "string", + "location": "path" + }, + "zone": { + "location": "path", + "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.", + "required": true, + "type": "string" + } + }, + "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", + "request": { + "$ref": "SetNodePoolAutoscalingRequest" + }, + "description": "Sets the autoscaling settings of a specific node pool." + }, + "get": { + "description": "Retrieves the node pool requested.", + "response": { + "$ref": "NodePool" + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "httpMethod": "GET", + "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\nget. Specified in the format\n'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 name field.", "required": true, "type": "string", - "location": "path", - "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" }, "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.", + "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.", "required": true, "type": "string", "location": "path" }, "clusterId": { "location": "path", - "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", "required": true, "type": "string" + }, + "nodePoolId": { + "required": true, + "type": "string", + "location": "path", + "description": "Deprecated. The name of the node pool.\nThis field has been deprecated and replaced by the name field." } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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", - "description": "Creates a node pool for a cluster.", - "request": { - "$ref": "CreateNodePoolRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId" - ], - "httpMethod": "POST" + "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" }, - "autoscaling": { - "description": "Sets the autoscaling settings of a specific node pool.", - "request": { - "$ref": "SetNodePoolAutoscalingRequest" - }, + "update": { "response": { "$ref": "Operation" }, @@ -2490,16 +1262,16 @@ "location": "path" }, "zone": { + "location": "path", "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.", "required": true, - "type": "string", - "location": "path" + "type": "string" }, "clusterId": { - "location": "path", "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", "required": true, - "type": "string" + "type": "string", + "location": "path" }, "nodePoolId": { "location": "path", @@ -2511,628 +1283,526 @@ "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" + "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 image type of a specific node pool.", + "request": { + "$ref": "UpdateNodePoolRequest" + } + } + } + } + } + } + } + }, + "locations": { + "methods": { + "list": { + "response": { + "$ref": "ListLocationsResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "parent": { + "location": "path", + "description": "Contains the name of the resource requested.\nSpecific in the format 'projects/*/locations'.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$" + } + }, + "flatPath": "v1beta1/projects/{projectsId}/locations", + "path": "v1beta1/{+parent}/locations", + "id": "container.projects.locations.list", + "description": "" + }, + "getServerConfig": { + "path": "v1beta1/{+name}/serverConfig", + "id": "container.projects.locations.getServerConfig", + "description": "Returns configuration info about the Kubernetes Engine service.", + "response": { + "$ref": "ServerConfig" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "location": "path", + "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/[^/]+$" + }, + "projectId": { + "location": "query", + "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) to return operations for.\nThis field has been deprecated and replaced by the name field.", + "type": "string", + "location": "query" + } + }, + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/serverConfig" + } + }, + "resources": { + "operations": { + "methods": { + "cancel": { + "description": "Cancels the specified operation.", + "request": { + "$ref": "CancelOperationRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Empty" + }, + "parameters": { + "name": { + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel", + "id": "container.projects.locations.operations.cancel", + "path": "v1beta1/{+name}:cancel" + }, + "list": { + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations", + "path": "v1beta1/{+parent}/operations", + "id": "container.projects.locations.operations.list", + "description": "Lists all operations in a project in a specific zone or all zones.", + "response": { + "$ref": "ListOperationsResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "projectId": { + "location": "query", + "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" }, - "get": { - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}", - "id": "container.projects.zones.clusters.nodePools.get", - "description": "Retrieves the node pool requested.", - "response": { - "$ref": "NodePool" - }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "zone": { + "location": "query", + "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) to return operations for, or `-` for\nall zones. This field has been deprecated and replaced by the parent field.", + "type": "string" + }, + "parent": { + "pattern": "^projects/[^/]+/locations/[^/]+$", + "location": "path", + "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" + } + } + }, + "get": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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 name field.", + "type": "string", + "location": "query" + }, + "zone": { + "type": "string", + "location": "query", + "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." + }, + "name": { + "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", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$" + }, + "operationId": { + "description": "Deprecated. The server-assigned `name` of the operation.\nThis field has been deprecated and replaced by the name field.", + "type": "string", + "location": "query" + } + }, + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + "path": "v1beta1/{+name}", + "id": "container.projects.locations.operations.get", + "description": "Gets the specified operation." + } + } + }, + "clusters": { + "resources": { + "nodePools": { + "methods": { + "delete": { + "description": "Deletes a node pool from a cluster.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" ], + "httpMethod": "DELETE", "parameters": { "name": { + "description": "The name (project, location, cluster, node pool id) of the node pool to\ndelete. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", + "required": true, "type": "string", - "location": "query", - "description": "The name (project, location, cluster, node pool id) of the node pool to\nget. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'." + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", + "location": "path" }, "projectId": { - "required": true, - "type": "string", - "location": "path", - "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", + "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": { + "location": "query", "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.", - "required": true, - "type": "string", - "location": "path" + "type": "string" }, "clusterId": { - "required": true, - "type": "string", - "location": "path", - "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field." + "location": "query", + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "type": "string" }, "nodePoolId": { - "location": "path", - "description": "Deprecated. The name of the node pool.\nThis field has been deprecated and replaced by the name field.", - "required": true, + "location": "query", + "description": "Deprecated. The name of the node pool to delete.\nThis field has been deprecated and replaced by the name field.", "type": "string" } }, - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}" + "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" }, - "update": { - "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 image type of a specific node pool.", + "setManagement": { + "description": "Sets the NodeManagement options for a node pool.", "request": { - "$ref": "UpdateNodePoolRequest" + "$ref": "SetNodePoolManagementRequest" }, + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], "response": { "$ref": "Operation" }, - "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" - ], - "httpMethod": "POST", "parameters": { - "nodePoolId": { - "location": "path", - "description": "Deprecated. The name of the node pool to upgrade.\nThis field has been deprecated and replaced by the name field.", - "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.", - "required": true, - "type": "string", - "location": "path" - }, - "zone": { + "name": { + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", "location": "path", - "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.", + "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" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string", - "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ] + ], + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:setManagement", + "id": "container.projects.locations.clusters.nodePools.setManagement", + "path": "v1beta1/{+name}:setManagement" }, - "delete": { - "response": { - "$ref": "Operation" + "setSize": { + "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.", + "httpMethod": "POST", "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" + "name" ], - "httpMethod": "DELETE", + "response": { + "$ref": "Operation" + }, "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\ndelete. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", - "type": "string" - }, - "projectId": { - "location": "path", - "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.", - "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.", + "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" - }, - "clusterId": { - "location": "path", - "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string" - }, - "nodePoolId": { - "location": "path", - "description": "Deprecated. The name of the node pool to delete.\nThis field has been deprecated and replaced by the name field.", - "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", - "description": "Deletes a node pool from a cluster." + } }, - "setManagement": { - "description": "Sets the NodeManagement options for a node pool.", - "request": { - "$ref": "SetNodePoolManagementRequest" - }, - "httpMethod": "POST", + "list": { + "httpMethod": "GET", "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" + "parent" ], "response": { - "$ref": "Operation" + "$ref": "ListNodePoolsResponse" }, "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 name field.", - "required": true, - "type": "string", - "location": "path" - }, - "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.", + "parent": { + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "location": "path", + "description": "The parent (project, location, cluster id) where the node pools will be\nlisted. Specified in the format 'projects/*/locations/*/clusters/*'.", "required": true, - "type": "string", - "location": "path" + "type": "string" }, "clusterId": { - "required": true, + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", "type": "string", - "location": "path", - "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field." + "location": "query" }, - "nodePoolId": { - "required": true, - "type": "string", - "location": "path", - "description": "Deprecated. The name of the node pool to update.\nThis field has been deprecated and replaced by the name field." + "projectId": { + "location": "query", + "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": { + "location": "query", + "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" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setManagement", - "id": "container.projects.zones.clusters.nodePools.setManagement", - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setManagement" + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools", + "id": "container.projects.locations.clusters.nodePools.list", + "path": "v1beta1/{+parent}/nodePools", + "description": "Lists the node pools for a cluster." }, - "setSize": { - "request": { - "$ref": "SetNodePoolSizeRequest" - }, - "description": "Sets the size of a specific node pool.", + "rollback": { "response": { "$ref": "Operation" }, "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" + "name" ], "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "zone": { + "name": { + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", "location": "path", - "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.", + "description": "The name (project, location, cluster, node pool id) of the node poll to\nrollback upgrade.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.", "required": true, "type": "string" - }, - "clusterId": { - "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string", - "location": "path" - }, - "nodePoolId": { - "required": true, - "type": "string", + } + }, + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:rollback", + "path": "v1beta1/{+name}:rollback", + "id": "container.projects.locations.clusters.nodePools.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": { + "request": { + "$ref": "CreateNodePoolRequest" + }, + "description": "Creates a node pool for a cluster.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "parent": { "location": "path", - "description": "Deprecated. The name of the node pool to update.\nThis field has been deprecated and replaced by the name field." - }, - "projectId": { + "description": "The parent (project, location, cluster id) where the node pool will be\ncreated. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", "required": true, "type": "string", - "location": "path", - "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." + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$" } }, - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setSize", - "path": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}/setSize", - "id": "container.projects.zones.clusters.nodePools.setSize" + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools", + "path": "v1beta1/{+parent}/nodePools", + "id": "container.projects.locations.clusters.nodePools.create" }, - "list": { - "description": "Lists the node pools for a cluster.", + "get": { + "description": "Retrieves the node pool requested.", "response": { - "$ref": "ListNodePoolsResponse" + "$ref": "NodePool" }, "parameterOrder": [ - "projectId", - "zone", - "clusterId" + "name" ], "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "projectId": { - "location": "path", - "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.", - "required": true, - "type": "string" + "clusterId": { + "type": "string", + "location": "query", + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field." }, - "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.", - "required": true, + "nodePoolId": { + "description": "Deprecated. The name of the node pool.\nThis field has been deprecated and replaced by the name field.", "type": "string", - "location": "path" + "location": "query" }, - "clusterId": { - "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", + "name": { + "location": "path", + "description": "The name (project, location, cluster, node pool id) of the node pool to\nget. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", "required": true, "type": "string", - "location": "path" + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$" }, - "parent": { + "projectId": { "location": "query", - "description": "The parent (project, location, cluster id) where the node pools will be\nlisted. Specified in the format 'projects/*/locations/*/clusters/*'.", + "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", + "location": "query" } }, - "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" + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}", + "path": "v1beta1/{+name}", + "id": "container.projects.locations.clusters.nodePools.get" }, - "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" - }, + "update": { "response": { "$ref": "Operation" }, "parameterOrder": [ - "projectId", - "zone", - "clusterId", - "nodePoolId" + "name" ], - "httpMethod": "POST", + "httpMethod": "PUT", "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 name field.", - "required": true, - "type": "string", - "location": "path" - }, - "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.", + "name": { + "description": "The name (project, location, cluster, node pool) of the node pool to\nupdate. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", "required": true, "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", "location": "path" - }, - "clusterId": { - "location": "path", - "description": "Deprecated. The name of the cluster to rollback.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string" - }, - "nodePoolId": { - "location": "path", - "description": "Deprecated. The name of the node pool to rollback.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}:rollback" - } - } - } - } - }, - "operations": { - "methods": { - "list": { - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/operations", - "path": "v1beta1/projects/{projectId}/zones/{zone}/operations", - "id": "container.projects.zones.operations.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": { - "projectId": { - "location": "path", - "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.", - "required": true, - "type": "string" - }, - "zone": { - "location": "path", - "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) to return operations for, or `-` for\nall zones. This field has been deprecated and replaced by the parent field.", - "required": true, - "type": "string" - }, - "parent": { - "location": "query", - "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" - } - } - }, - "get": { - "description": "Gets the specified operation.", - "httpMethod": "GET", - "parameterOrder": [ - "projectId", - "zone", - "operationId" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "zone": { - "required": true, - "type": "string", - "location": "path", - "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." - }, - "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": "Deprecated. The server-assigned `name` of the operation.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string" - }, - "projectId": { - "location": "path", - "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.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectId}/zones/{zone}/operations/{operationId}", - "id": "container.projects.zones.operations.get", - "path": "v1beta1/projects/{projectId}/zones/{zone}/operations/{operationId}" - }, - "cancel": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "projectId", - "zone", - "operationId" - ], - "httpMethod": "POST", - "parameters": { - "operationId": { - "location": "path", - "description": "Deprecated. The server-assigned `name` of the operation.\nThis field has been deprecated and replaced by the name field.", - "required": true, - "type": "string" - }, - "projectId": { - "location": "path", - "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.", - "required": true, - "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 image type of a specific node pool.", + "request": { + "$ref": "UpdateNodePoolRequest" + } }, - "zone": { - "location": "path", - "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.", - "required": true, - "type": "string" - } - }, - "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", - "description": "Cancels the specified operation.", - "request": { - "$ref": "CancelOperationRequest" - } - } - } - } - } - }, - "locations": { - "methods": { - "getServerConfig": { - "response": { - "$ref": "ServerConfig" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "projectId": { - "location": "query", - "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": { - "location": "query", - "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.", - "type": "string" - }, - "name": { - "location": "path", - "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/[^/]+$" + "setAutoscaling": { + "request": { + "$ref": "SetNodePoolAutoscalingRequest" + }, + "description": "Sets the autoscaling settings of a specific node pool.", + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "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/*'.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$" + } + }, + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:setAutoscaling", + "id": "container.projects.locations.clusters.nodePools.setAutoscaling", + "path": "v1beta1/{+name}:setAutoscaling" + } + } } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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." - } - }, - "resources": { - "operations": { "methods": { - "cancel": { - "response": { - "$ref": "Empty" + "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" }, + "httpMethod": "POST", "parameterOrder": [ "name" ], - "httpMethod": "POST", - "parameters": { - "name": { - "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/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel", - "path": "v1beta1/{+name}:cancel", - "id": "container.projects.locations.operations.cancel", - "description": "Cancels the specified operation.", - "request": { - "$ref": "CancelOperationRequest" - } - }, - "list": { - "description": "Lists all operations in a project in a specific zone or all zones.", "response": { - "$ref": "ListOperationsResponse" + "$ref": "Operation" }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", "parameters": { - "projectId": { - "location": "query", - "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": { - "location": "query", - "description": "Deprecated. The name of the Google Compute Engine\n[zone](/compute/docs/zones#available) to return operations for, or `-` for\nall zones. This field has been deprecated and replaced by the parent field.", - "type": "string" - }, - "parent": { - "pattern": "^projects/[^/]+/locations/[^/]+$", + "name": { "location": "path", - "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.", + "description": "The name (project, location, cluster) of the cluster to set auth.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", "required": true, - "type": "string" + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$" } }, "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" + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setMasterAuth", + "id": "container.projects.locations.clusters.setMasterAuth", + "path": "v1beta1/{+name}:setMasterAuth" }, - "get": { - "path": "v1beta1/{+name}", - "id": "container.projects.locations.operations.get", - "description": "Gets the specified operation.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "required": true, - "type": "string", - "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/*'." - }, - "operationId": { - "location": "query", - "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", - "location": "query" - }, - "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", - "location": "query" - } - }, - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}" - } - } - }, - "clusters": { - "methods": { - "completeIpRotation": { - "description": "Completes master IP rotation.", - "request": { - "$ref": "CompleteIPRotationRequest" - }, + "setLogging": { "response": { "$ref": "Operation" }, @@ -3142,164 +1812,107 @@ "httpMethod": "POST", "parameters": { "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", "location": "path", - "description": "The name (project, location, cluster id) of the cluster to complete IP\nrotation. Specified in the format 'projects/*/locations/*/clusters/*'.", + "description": "The name (project, location, cluster) of the cluster to set logging.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", "required": true, - "type": "string" + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:completeIpRotation", - "path": "v1beta1/{+name}:completeIpRotation", - "id": "container.projects.locations.clusters.completeIpRotation" - }, - "setNetworkPolicy": { - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setNetworkPolicy", - "id": "container.projects.locations.clusters.setNetworkPolicy", - "path": "v1beta1/{+name}:setNetworkPolicy", - "description": "Enables/Disables Network Policy for a cluster.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setLogging", + "path": "v1beta1/{+name}:setLogging", + "id": "container.projects.locations.clusters.setLogging", + "description": "Sets the logging service of a specific cluster.", "request": { - "$ref": "SetNetworkPolicyRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", - "location": "path", - "description": "The name (project, location, cluster id) of the cluster to set networking\npolicy. Specified in the format 'projects/*/locations/*/clusters/*'.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "$ref": "SetLoggingServiceRequest" + } }, - "get": { + "list": { "httpMethod": "GET", "parameterOrder": [ - "name" + "parent" ], "response": { - "$ref": "Cluster" + "$ref": "ListClustersResponse" }, "parameters": { - "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.", + "projectId": { "type": "string", - "location": "query" + "location": "query", + "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." }, - "clusterId": { - "description": "Deprecated. The name of the cluster to retrieve.\nThis field has been deprecated and replaced by the name field.", - "type": "string", - "location": "query" + "zone": { + "location": "query", + "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.", + "type": "string" }, - "name": { + "parent": { + "pattern": "^projects/[^/]+/locations/[^/]+$", "location": "path", - "description": "The name (project, location, cluster) of the cluster to retrieve.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "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/[^/]+/clusters/[^/]+$" - }, - "projectId": { - "location": "query", - "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" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}", - "id": "container.projects.locations.clusters.get", - "path": "v1beta1/{+name}", - "description": "Gets the details of a specific cluster." - }, - "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", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", - "location": "path", - "description": "The name (project, location, cluster) of the cluster to set addons.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setAddons" + "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." }, - "setMonitoring": { - "id": "container.projects.locations.clusters.setMonitoring", - "path": "v1beta1/{+name}:setMonitoring", - "description": "Sets the monitoring service of a specific cluster.", + "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": "SetMonitoringServiceRequest" + "$ref": "CreateClusterRequest" }, "httpMethod": "POST", "parameterOrder": [ - "name" + "parent" ], "response": { "$ref": "Operation" }, "parameters": { - "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", - "location": "path", - "description": "The name (project, location, cluster) of the cluster to set monitoring.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "parent": { + "description": "The parent (project and location) where the cluster will be created.\nSpecified in the format 'projects/*/locations/*'.", "required": true, - "type": "string" + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setMonitoring" - }, - "startIpRotation": { + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters", + "id": "container.projects.locations.clusters.create", + "path": "v1beta1/{+parent}/clusters" + }, + "completeIpRotation": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "name": { - "description": "The name (project, location, cluster id) of the cluster to start IP\nrotation. Specified in the format 'projects/*/locations/*/clusters/*'.", - "required": true, - "type": "string", "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", - "location": "path" + "location": "path", + "description": "The name (project, location, cluster id) of the cluster to complete IP\nrotation. Specified in the format 'projects/*/locations/*/clusters/*'.", + "required": true, + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:startIpRotation", - "path": "v1beta1/{+name}:startIpRotation", - "id": "container.projects.locations.clusters.startIpRotation", - "description": "Start master IP rotation.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:completeIpRotation", + "path": "v1beta1/{+name}:completeIpRotation", + "id": "container.projects.locations.clusters.completeIpRotation", "request": { - "$ref": "StartIPRotationRequest" + "$ref": "CompleteIPRotationRequest" }, + "description": "Completes master IP rotation.", "response": { "$ref": "Operation" }, @@ -3308,75 +1921,53 @@ ], "httpMethod": "POST" }, - "setMaintenancePolicy": { - "description": "Sets the maintenance policy for a cluster.", - "request": { - "$ref": "SetMaintenancePolicyRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "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/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setMaintenancePolicy", - "path": "v1beta1/{+name}:setMaintenancePolicy", - "id": "container.projects.locations.clusters.setMaintenancePolicy" - }, - "delete": { + "get": { "response": { - "$ref": "Operation" + "$ref": "Cluster" }, "parameterOrder": [ "name" ], - "httpMethod": "DELETE", + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "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", - "location": "query" - }, - "clusterId": { - "location": "query", - "description": "Deprecated. The name of the cluster to delete.\nThis field has been deprecated and replaced by the name field.", - "type": "string" - }, "name": { - "description": "The name (project, location, cluster) of the cluster to delete.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", - "required": true, - "type": "string", "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", - "location": "path" + "location": "path", + "description": "The name (project, location, cluster) of the cluster to retrieve.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "required": true, + "type": "string" }, "projectId": { + "location": "query", "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": { + "location": "query", + "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" + }, + "clusterId": { "type": "string", - "location": "query" + "location": "query", + "description": "Deprecated. The name of the cluster to retrieve.\nThis field has been deprecated and replaced by the name field." } }, "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." + "id": "container.projects.locations.clusters.get", + "description": "Gets the details of a specific cluster." }, - "setResourceLabels": { + "setNetworkPolicy": { + "id": "container.projects.locations.clusters.setNetworkPolicy", + "path": "v1beta1/{+name}:setNetworkPolicy", + "description": "Enables/Disables Network Policy for a cluster.", + "request": { + "$ref": "SetNetworkPolicyRequest" + }, "httpMethod": "POST", "parameterOrder": [ "name" @@ -3386,25 +1977,23 @@ }, "parameters": { "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", - "location": "path", - "description": "The name (project, location, cluster id) of the cluster to set labels.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "description": "The name (project, location, cluster id) of the cluster to set networking\npolicy. Specified in the format 'projects/*/locations/*/clusters/*'.", "required": true, - "type": "string" + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "location": "path" } }, "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", - "description": "Sets labels on a cluster.", - "request": { - "$ref": "SetLabelsRequest" - } + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setNetworkPolicy" }, - "setLegacyAbac": { + "setAddons": { + "description": "Sets the addons of a specific cluster.", + "request": { + "$ref": "SetAddonsConfigRequest" + }, "response": { "$ref": "Operation" }, @@ -3414,59 +2003,21 @@ "httpMethod": "POST", "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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": { - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Operation" - }, - "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/[^/]+$" + "description": "The name (project, location, cluster) of the cluster to set addons.\nSpecified in the format 'projects/*/locations/*/clusters/*'." } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:updateMaster", - "id": "container.projects.locations.clusters.updateMaster", - "path": "v1beta1/{+name}:updateMaster", - "description": "Updates the master of a specific cluster.", - "request": { - "$ref": "UpdateMasterRequest" - } + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setAddons", + "path": "v1beta1/{+name}:setAddons", + "id": "container.projects.locations.clusters.setAddons" }, - "setLocations": { - "path": "v1beta1/{+name}:setLocations", - "id": "container.projects.locations.clusters.setLocations", - "description": "Sets the locations of a specific cluster.", - "request": { - "$ref": "SetLocationsRequest" - }, + "setMonitoring": { "response": { "$ref": "Operation" }, @@ -3474,49 +2025,55 @@ "name" ], "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "name": { + "location": "path", + "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", - "description": "The name (project, location, cluster) of the cluster to set locations.\nSpecified in the format 'projects/*/locations/*/clusters/*'." + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setLocations" + "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." }, - "update": { + "startIpRotation": { "request": { - "$ref": "UpdateClusterRequest" + "$ref": "StartIPRotationRequest" }, - "description": "Updates the settings of a specific cluster.", + "description": "Start master IP rotation.", "response": { "$ref": "Operation" }, "parameterOrder": [ "name" ], - "httpMethod": "PUT", + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { "name": { - "description": "The name (project, location, cluster) of the cluster to update.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "description": "The name (project, location, cluster id) of the cluster to start IP\nrotation. Specified in the format 'projects/*/locations/*/clusters/*'.", "required": true, "type": "string", "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", "location": "path" } }, - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}", - "path": "v1beta1/{+name}", - "id": "container.projects.locations.clusters.update" + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:startIpRotation", + "path": "v1beta1/{+name}:startIpRotation", + "id": "container.projects.locations.clusters.startIpRotation" }, - "setMasterAuth": { + "setMaintenancePolicy": { "response": { "$ref": "Operation" }, @@ -3526,566 +2083,2081 @@ "httpMethod": "POST", "parameters": { "name": { - "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 id) of the cluster to set maintenance\npolicy.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setMasterAuth", - "path": "v1beta1/{+name}:setMasterAuth", - "id": "container.projects.locations.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.", + "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": "SetMasterAuthRequest" + "$ref": "SetMaintenancePolicyRequest" } }, - "setLogging": { + "delete": { "response": { "$ref": "Operation" }, "parameterOrder": [ "name" ], - "httpMethod": "POST", + "httpMethod": "DELETE", "parameters": { + "zone": { + "location": "query", + "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" + }, + "clusterId": { + "location": "query", + "description": "Deprecated. The name of the cluster to delete.\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 logging.\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}:setLogging", - "path": "v1beta1/{+name}:setLogging", - "id": "container.projects.locations.clusters.setLogging", - "description": "Sets the logging service of a specific cluster.", - "request": { - "$ref": "SetLoggingServiceRequest" - } - }, - "list": { - "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.", - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListClustersResponse" - }, - "parameters": { - "projectId": { + "location": "path", + "description": "The name (project, location, cluster) of the cluster to delete.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "required": true, "type": "string", - "location": "query", - "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." + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$" }, - "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.", + "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", "location": "query" - }, - "parent": { - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path", - "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" } }, "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." }, - "create": { + "setLegacyAbac": { + "request": { + "$ref": "SetLegacyAbacRequest" + }, + "description": "Enables or disables the ABAC authorization mechanism on a cluster.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "parent": { + "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/[^/]+$", - "location": "path", - "description": "The parent (project and location) where the cluster will be created.\nSpecified in the format 'projects/*/locations/*'." + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "location": "path" } }, - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters", - "path": "v1beta1/{+parent}/clusters", - "id": "container.projects.locations.clusters.create", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setLegacyAbac", + "path": "v1beta1/{+name}:setLegacyAbac", + "id": "container.projects.locations.clusters.setLegacyAbac" + }, + "setResourceLabels": { "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.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST" - } - }, - "resources": { - "nodePools": { - "methods": { - "create": { - "path": "v1beta1/{+parent}/nodePools", - "id": "container.projects.locations.clusters.nodePools.create", - "description": "Creates a node pool for a cluster.", - "request": { - "$ref": "CreateNodePoolRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "description": "The parent (project, location, cluster id) where the node pool will be\ncreated. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", - "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}/nodePools" - }, - "get": { - "parameters": { - "name": { - "description": "The name (project, location, cluster, node pool id) of the node pool to\nget. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", - "location": "path" - }, - "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", - "location": "query" - }, - "zone": { - "type": "string", - "location": "query", - "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." - }, - "clusterId": { - "location": "query", - "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", - "type": "string" - }, - "nodePoolId": { - "description": "Deprecated. The name of the node pool.\nThis field has been deprecated and replaced by the name field.", - "type": "string", - "location": "query" - } - }, - "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.get", - "description": "Retrieves the node pool requested.", - "response": { - "$ref": "NodePool" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET" - }, - "update": { - "httpMethod": "PUT", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", - "location": "path", - "description": "The name (project, location, cluster, node pool) of the node pool to\nupdate. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}", - "id": "container.projects.locations.clusters.nodePools.update", - "path": "v1beta1/{+name}", - "description": "Updates the version and/or image type of a specific node pool.", - "request": { - "$ref": "UpdateNodePoolRequest" - } - }, - "setAutoscaling": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "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/*'.", - "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}:setAutoscaling", - "path": "v1beta1/{+name}:setAutoscaling", - "id": "container.projects.locations.clusters.nodePools.setAutoscaling", - "description": "Sets the autoscaling settings of a specific node pool.", - "request": { - "$ref": "SetNodePoolAutoscalingRequest" - } - }, - "delete": { - "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "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", - "location": "query" - }, - "zone": { - "location": "query", - "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" - }, - "clusterId": { - "location": "query", - "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", - "type": "string" - }, - "nodePoolId": { - "location": "query", - "description": "Deprecated. The name of the node pool to delete.\nThis field has been deprecated and replaced by the name field.", - "type": "string" - }, - "name": { - "location": "path", - "description": "The name (project, location, cluster, node pool id) of the node pool to\ndelete. 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}", - "id": "container.projects.locations.clusters.nodePools.delete", - "path": "v1beta1/{+name}", - "description": "Deletes a node pool from a cluster." - }, - "setManagement": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", - "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" - } - }, - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:setManagement", - "path": "v1beta1/{+name}:setManagement", - "id": "container.projects.locations.clusters.nodePools.setManagement", - "request": { - "$ref": "SetNodePoolManagementRequest" - }, - "description": "Sets the NodeManagement options for a node pool." + "$ref": "SetLabelsRequest" + }, + "description": "Sets labels on a cluster.", + "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 labels.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$" + } + }, + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:setResourceLabels", + "path": "v1beta1/{+name}:setResourceLabels", + "id": "container.projects.locations.clusters.setResourceLabels" + }, + "setLocations": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "parameters": { + "name": { + "location": "path", + "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/[^/]+$" + } + }, + "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", + "description": "Sets the locations of a specific cluster.", + "request": { + "$ref": "SetLocationsRequest" + } + }, + "updateMaster": { + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "name": { + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "location": "path", + "description": "The name (project, location, cluster) of the cluster to update.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}:updateMaster", + "id": "container.projects.locations.clusters.updateMaster", + "path": "v1beta1/{+name}:updateMaster", + "description": "Updates the master of a specific cluster.", + "request": { + "$ref": "UpdateMasterRequest" + } + }, + "update": { + "httpMethod": "PUT", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "name": { + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", + "location": "path", + "description": "The name (project, location, cluster) of the cluster to update.\nSpecified in the format 'projects/*/locations/*/clusters/*'." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}", + "id": "container.projects.locations.clusters.update", + "path": "v1beta1/{+name}", + "description": "Updates the settings of a specific cluster.", + "request": { + "$ref": "UpdateClusterRequest" + } + } + } + } + } + }, + "aggregated": { + "resources": { + "usableSubnetworks": { + "methods": { + "list": { + "description": "Lists subnetworks that are usable for creating clusters in a project.", + "response": { + "$ref": "ListUsableSubnetworksResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "parameters": { + "pageSize": { + "description": "The max number of results per page that should be returned. If the number\nof available results is larger than `page_size`, a `next_page_token` is\nreturned which can be used to get the next page of results in subsequent\nrequests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "format": "int32", + "type": "integer", + "location": "query" }, - "setSize": { - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools/{nodePoolsId}:setSize", - "path": "v1beta1/{+name}:setSize", - "id": "container.projects.locations.clusters.nodePools.setSize", - "description": "Sets the size of a specific node pool.", - "request": { - "$ref": "SetNodePoolSizeRequest" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "location": "path", - "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/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "parent": { + "description": "The parent project where subnetworks are usable.\nSpecified in the format 'projects/*'.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$", + "location": "path" }, - "list": { - "response": { - "$ref": "ListNodePoolsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "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", - "location": "query" - }, - "zone": { - "location": "query", - "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" - }, - "parent": { - "pattern": "^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", - "location": "path", - "description": "The parent (project, location, cluster id) where the node pools will be\nlisted. Specified in the format 'projects/*/locations/*/clusters/*'.", - "required": true, - "type": "string" - }, - "clusterId": { - "location": "query", - "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clusters/{clustersId}/nodePools", - "path": "v1beta1/{+parent}/nodePools", - "id": "container.projects.locations.clusters.nodePools.list", - "description": "Lists the node pools for a cluster." + "filter": { + "description": "Filtering currently only supports equality on the networkProjectId and must\nbe in the form: \"networkProjectId=[PROJECTID]\", where `networkProjectId`\nis the project which owns the listed subnetworks. This defaults to the\nparent project ID.", + "type": "string", + "location": "query" }, - "rollback": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "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/*'.", - "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}:rollback", - "path": "v1beta1/{+name}:rollback", - "id": "container.projects.locations.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" - } + "pageToken": { + "location": "query", + "description": "Specifies a page token to use. Set this to the nextPageToken returned by\nprevious list requests to get the next page of results.", + "type": "string" } - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/projects/{projectsId}/aggregated/usableSubnetworks", + "path": "v1beta1/{+parent}/aggregated/usableSubnetworks", + "id": "container.projects.aggregated.usableSubnetworks.list" } } } } + } + } + } + }, + "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": { + "description": "Available 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": { + "type": "boolean", + "default": "true", + "location": "query", + "description": "Pretty-print response." + }, + "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" + }, + "uploadType": { + "location": "query", + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string" + }, + "fields": { + "type": "string", + "location": "query", + "description": "Selector specifying which fields to include in a partial response." + }, + "$.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": { + "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." + } + }, + "version": "v1beta1", + "baseUrl": "https://container.googleapis.com/", + "kind": "discovery#restDescription", + "description": "The Google Kubernetes Engine API is used for building and managing container based applications, powered by the open source Kubernetes technology.", + "servicePath": "", + "basePath": "", + "id": "container:v1beta1", + "documentationLink": "https://cloud.google.com/container-engine/", + "revision": "20180427", + "discoveryVersion": "v1", + "version_module": true, + "schemas": { + "UpdateMasterRequest": { + "id": "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": "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": { + "type": "string", + "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." + }, + "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" + }, + "clusterId": { + "type": "string", + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field." + } + } + }, + "ListOperationsResponse": { + "description": "ListOperationsResponse is the result of ListOperationsRequest.", + "type": "object", + "properties": { + "operations": { + "type": "array", + "items": { + "$ref": "Operation" + }, + "description": "A list of operations in the project in the specified zone." + }, + "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" + }, + "SetMonitoringServiceRequest": { + "description": "SetMonitoringServiceRequest sets the monitoring service of a cluster.", + "type": "object", + "properties": { + "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" + }, + "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" + } + }, + "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": { + "validMasterVersions": { + "description": "List of valid master versions.", + "type": "array", + "items": { + "type": "string" + } + }, + "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": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of valid image types." + } + }, + "id": "ServerConfig" + }, + "NodeConfig": { + "description": "Parameters that describe the nodes in a cluster.", + "type": "object", + "properties": { + "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-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", + "additionalProperties": { + "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.", + "type": "array", + "items": { + "type": "string" + } + }, + "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": { + "type": "array", + "items": { + "type": "string" + }, + "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." + }, + "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": { + "type": "object", + "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/" + }, + "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": { + "$ref": "WorkloadMetadataConfig", + "description": "The workload metadata configuration for this node." + }, + "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": { + "type": "string", + "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\nplatform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)" + }, + "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" + } + }, + "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": { + "type": "string", + "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." + } + }, + "id": "AutoUpgradeOptions" + }, + "UsableSubnetwork": { + "description": "UsableSubnetwork resource returns the subnetwork name, its associated network\nand the primary CIDR range.", + "type": "object", + "properties": { + "network": { + "description": "Network Name.\nExample: projects/my-project/global/networks/my-network", + "type": "string" + }, + "ipCidrRange": { + "description": "The range of internal addresses that are owned by this subnetwork.", + "type": "string" + }, + "subnetwork": { + "description": "Subnetwork Name.\nExample: projects/my-project/regions/us-central1/subnetworks/my-subnet", + "type": "string" + } + }, + "id": "UsableSubnetwork" + }, + "ListClustersResponse": { + "description": "ListClustersResponse is the result of ListClustersRequest.", + "type": "object", + "properties": { + "missingZones": { + "description": "If any zones are listed here, the list of clusters returned\nmay be missing those zones.", + "type": "array", + "items": { + "type": "string" + } + }, + "clusters": { + "type": "array", + "items": { + "$ref": "Cluster" + }, + "description": "A list of clusters in the project in the specified zone, or\nacross all ones." + } + }, + "id": "ListClustersResponse" + }, + "PodSecurityPolicyConfig": { + "description": "Configuration for the PodSecurityPolicy feature.", + "type": "object", + "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" + }, + "HttpLoadBalancing": { + "id": "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": { + "type": "boolean", + "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." + } + } + }, + "SetMasterAuthRequest": { + "properties": { + "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" + }, + "name": { + "description": "The name (project, location, cluster) of the cluster to set auth.\nSpecified in the format 'projects/*/locations/*/clusters/*'.", + "type": "string" + }, + "action": { + "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." + ], + "enum": [ + "UNKNOWN", + "SET_PASSWORD", + "GENERATE_PASSWORD", + "SET_USERNAME" + ] + }, + "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" + }, + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + } + }, + "id": "SetMasterAuthRequest", + "description": "SetMasterAuthRequest updates the admin password of a cluster.", + "type": "object" + }, + "NodePoolAutoscaling": { + "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", + "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" + } + } + }, + "SetNetworkPolicyRequest": { + "description": "SetNetworkPolicyRequest enables/disables network policy for a cluster.", + "type": "object", + "properties": { + "name": { + "description": "The name (project, location, cluster id) of the cluster to set networking\npolicy. Specified 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": { + "type": "string", + "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." + }, + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "networkPolicy": { + "$ref": "NetworkPolicy", + "description": "Configuration options for the NetworkPolicy feature." + } + }, + "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": { + "desiredAddonsConfig": { + "$ref": "AddonsConfig", + "description": "Configurations for the various addons available to run in the cluster." + }, + "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." + }, + "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" + }, + "desiredMasterAuthorizedNetworksConfig": { + "$ref": "MasterAuthorizedNetworksConfig", + "description": "The desired configuration options for master authorized networks feature." + }, + "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." + }, + "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" + } + }, + "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" + } + }, + "id": "ClusterUpdate" + }, + "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" + }, + "clusterIpv4CidrBlock": { + "type": "string", + "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." + }, + "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" + }, + "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" + }, + "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" + }, + "useIpAliases": { + "description": "Whether alias IPs will be used for pod IPs in the cluster.", + "type": "boolean" + }, + "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" + }, + "clusterIpv4Cidr": { + "description": "This field is deprecated, use cluster_ipv4_cidr_block.", + "type": "string" + }, + "servicesIpv4Cidr": { + "type": "string", + "description": "This field is deprecated, use services_ipv4_cidr_block." + }, + "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" + } + }, + "id": "IPAllocationPolicy" + }, + "HorizontalPodAutoscaling": { + "properties": { + "disabled": { + "type": "boolean", + "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." + } + }, + "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": { + "description": "SetNodePoolManagementRequest sets the node management properties of a node\npool.", + "type": "object", + "properties": { + "management": { + "description": "NodeManagement configuration for the node pool.", + "$ref": "NodeManagement" + }, + "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" + }, + "clusterId": { + "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", + "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" + }, + "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" + }, + "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" + }, + "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", + "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" + }, + "SetNodePoolAutoscalingRequest": { + "description": "SetNodePoolAutoscalingRequest sets the autoscaler settings of a node pool.", + "type": "object", + "properties": { + "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" + }, + "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": { + "$ref": "NodePoolAutoscaling", + "description": "Autoscaling configuration for the node pool." + }, + "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" + }, + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "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" + } + }, + "id": "SetNodePoolAutoscalingRequest" + }, + "CreateClusterRequest": { + "description": "CreateClusterRequest creates a cluster.", + "type": "object", + "properties": { + "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" + }, + "cluster": { + "$ref": "Cluster", + "description": "A [cluster\nresource](/container-engine/reference/rest/v1beta1/projects.zones.clusters)" + }, + "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" + }, + "parent": { + "description": "The parent (project and location) where the cluster will be created.\nSpecified in the format 'projects/*/locations/*'.", + "type": "string" + } + }, + "id": "CreateClusterRequest" + }, + "Location": { + "description": "Location returns the location name, and if the location is recommended\nfor GKE cluster scheduling.", + "type": "object", + "properties": { + "name": { + "description": "Contains the name of the resource requested.\nSpecific in the format 'projects/*/locations/*'.", + "type": "string" + }, + "recommended": { + "description": "Recommended is a bool combining the drain state of the location (ie- has\nthe region been drained manually?), and the stockout status of any zone\naccording to Zone Advisor. This will be internal only for use by pantheon.", + "type": "boolean" + }, + "type": { + "enumDescriptions": [ + "LOCATION_TYPE_UNSPECIFIED means the location type was not determined.", + "A GKE Location where Zonal clusters can be created.", + "A GKE Location where Regional clusters can be created." + ], + "enum": [ + "LOCATION_TYPE_UNSPECIFIED", + "ZONE", + "REGION" + ], + "description": "Contains the type of location this Location is for.\nRegional or Zonal.", + "type": "string" + } + }, + "id": "Location" + }, + "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" + }, + "UpdateNodePoolRequest": { + "properties": { + "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" + }, + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "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" + }, + "imageType": { + "description": "The desired image type for the node pool.", + "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" + }, + "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" + }, + "name": { + "description": "The name (project, location, cluster, node pool) of the node pool to\nupdate. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", + "type": "string" + } + }, + "id": "UpdateNodePoolRequest", + "description": "SetNodePoolVersionRequest updates the version of a node pool.", + "type": "object" + }, + "SetAddonsConfigRequest": { + "description": "SetAddonsRequest sets the addons associated with the cluster.", + "type": "object", + "properties": { + "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" + }, + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "addonsConfig": { + "$ref": "AddonsConfig", + "description": "The desired configurations for the various addons available to run in the\ncluster." + } + }, + "id": "SetAddonsConfigRequest" + }, + "NodeTaint": { + "id": "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", + "properties": { + "value": { + "description": "Value for taint.", + "type": "string" + }, + "effect": { + "enumDescriptions": [ + "Not set", + "NoSchedule", + "PreferNoSchedule", + "NoExecute" + ], + "enum": [ + "EFFECT_UNSPECIFIED", + "NO_SCHEDULE", + "PREFER_NO_SCHEDULE", + "NO_EXECUTE" + ], + "description": "Effect for taint.", + "type": "string" + }, + "key": { + "description": "Key for taint.", + "type": "string" + } + } + }, + "SetLegacyAbacRequest": { + "description": "SetLegacyAbacRequest enables or disables the ABAC authorization mechanism for\na cluster.", + "type": "object", + "properties": { + "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": "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" + }, + "clusterId": { + "type": "string", + "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field." + } + }, + "id": "SetLegacyAbacRequest" + }, + "AddonsConfig": { + "description": "Configuration for the addons that can be automatically spun up in the\ncluster, enabling additional functionality.", + "type": "object", + "properties": { + "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." + }, + "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": "HorizontalPodAutoscaling" + }, + "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." + } + }, + "id": "AddonsConfig" + }, + "NetworkConfig": { + "description": "NetworkConfig reports the relative names of network & subnetwork.", + "type": "object", + "properties": { + "subnetwork": { + "description": "Output only. The name of the Google Compute Engine\n[subnetwork](/compute/docs/vpc).\nExample: projects/my-project/regions/us-central1/subnetworks/my-subnet", + "type": "string" + }, + "network": { + "description": "Output only. The name of the Google Compute Engine\nnetwork(/compute/docs/networks-and-firewalls#networks).\nExample: projects/my-project/global/networks/my-network", + "type": "string" + } + }, + "id": "NetworkConfig" + }, + "SetLocationsRequest": { + "description": "SetLocationsRequest sets the locations of the cluster.", + "type": "object", + "properties": { + "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" + }, + "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": { + "type": "string", + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field." + } + }, + "id": "SetLocationsRequest" + }, + "SetNodePoolSizeRequest": { + "description": "SetNodePoolSizeRequest sets the size a node\npool.", + "type": "object", + "properties": { + "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" + }, + "nodeCount": { + "description": "The desired node count for the pool.", + "format": "int32", + "type": "integer" + }, + "name": { + "type": "string", + "description": "The name (project, location, cluster, node pool id) of the node pool to set\nsize.\nSpecified in the format 'projects/*/locations/*/clusters/*/nodePools/*'." + }, + "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" + }, + "clusterId": { + "description": "Deprecated. The name of the cluster to update.\nThis field has been deprecated and replaced by the name field.", + "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" + } + }, + "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": { + "type": "boolean", + "description": "Whether NetworkPolicy is enabled for this cluster." + } + }, + "id": "NetworkPolicyConfig" + }, + "UpdateClusterRequest": { + "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": { + "type": "string", + "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." + }, + "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" + }, + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "update": { + "description": "A description of the update.", + "$ref": "ClusterUpdate" + } + }, + "id": "UpdateClusterRequest", + "description": "UpdateClusterRequest updates the settings of a cluster." + }, + "Cluster": { + "description": "A Google Kubernetes Engine cluster.", + "type": "object", + "properties": { + "expireTime": { + "type": "string", + "description": "[Output only] The time the cluster will be automatically\ndeleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format." + }, + "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" + }, + "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": "The 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": { + "description": "The authentication information for accessing the master endpoint.", + "$ref": "MasterAuth" + }, + "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" + }, + "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." + }, + "podSecurityPolicyConfig": { + "$ref": "PodSecurityPolicyConfig", + "description": "Configuration for the PodSecurityPolicy feature." + }, + "addonsConfig": { + "description": "Configurations for the various addons available to run in the cluster.", + "$ref": "AddonsConfig" + }, + "status": { + "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." + ], + "enum": [ + "STATUS_UNSPECIFIED", + "PROVISIONING", + "RUNNING", + "RECONCILING", + "STOPPING", + "ERROR", + "DEGRADED" + ], + "description": "[Output only] The current status of this cluster.", + "type": "string" + }, + "networkConfig": { + "$ref": "NetworkConfig", + "description": "Configuration for cluster networking." + }, + "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" + }, + "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" + }, + "maintenancePolicy": { + "$ref": "MaintenancePolicy", + "description": "Configure the maintenance policy for this cluster." + }, + "resourceLabels": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The resource labels for the cluster to use to annotate any related\nGoogle Compute Engine resources." + }, + "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" + }, + "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" + }, + "ipAllocationPolicy": { + "$ref": "IPAllocationPolicy", + "description": "Configuration for cluster IP allocation." + }, + "legacyAbac": { + "description": "Configuration for the legacy ABAC authorization mode.", + "$ref": "LegacyAbac" + }, + "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" + }, + "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": { + "type": "string", + "description": "[Output only] Server-defined URL for the resource." + }, + "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" + } + }, + "instanceGroupUrls": { + "description": "Deprecated. Use node_pools.instance_group_urls.", + "type": "array", + "items": { + "type": "string" + } + }, + "networkPolicy": { + "$ref": "NetworkPolicy", + "description": "Configuration options for the NetworkPolicy feature." + }, + "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" + }, + "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" + }, + "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" + }, + "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. On output this shows the network ID instead of\nthe name.", + "type": "string" + }, + "labelFingerprint": { + "description": "The fingerprint of the set of labels for this cluster.", + "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" + } + }, + "id": "Cluster" + }, + "CreateNodePoolRequest": { + "description": "CreateNodePoolRequest creates a node pool for a cluster.", + "type": "object", + "properties": { + "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" + }, + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the parent field.", + "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\ncreated. Specified in the format\n'projects/*/locations/*/clusters/*/nodePools/*'.", + "type": "string" + } + }, + "id": "CreateNodePoolRequest" + }, + "MasterAuth": { + "id": "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" + } + } + }, + "DailyMaintenanceWindow": { + "description": "Time window specified for daily maintenance operations.", + "type": "object", + "properties": { + "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" + }, + "duration": { + "type": "string", + "description": "[Output only] Duration of the time window, automatically chosen to be\nsmallest possible in the given scenario." + } + }, + "id": "DailyMaintenanceWindow" + }, + "MaintenancePolicy": { + "properties": { + "window": { + "$ref": "MaintenanceWindow", + "description": "Specifies the maintenance window in which maintenance may be performed." + } + }, + "id": "MaintenancePolicy", + "description": "MaintenancePolicy defines the maintenance policy to be used for the cluster.", + "type": "object" + }, + "ClientCertificateConfig": { + "description": "Configuration for client certificates on the cluster.", + "type": "object", + "properties": { + "issueClientCertificate": { + "description": "Issue a client certificate.", + "type": "boolean" + } + }, + "id": "ClientCertificateConfig" + }, + "SetLoggingServiceRequest": { + "properties": { + "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" + }, + "clusterId": { + "description": "Deprecated. The name of the cluster to upgrade.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "loggingService": { + "type": "string", + "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" + }, + "name": { + "type": "string", + "description": "The name (project, location, cluster) of the cluster to set logging.\nSpecified in the format 'projects/*/locations/*/clusters/*'." + } + }, + "id": "SetLoggingServiceRequest", + "description": "SetLoggingServiceRequest sets the logging service of a cluster.", + "type": "object" + }, + "SetMaintenancePolicyRequest": { + "description": "SetMaintenancePolicyRequest sets the maintenance policy for a cluster.", + "type": "object", + "properties": { + "maintenancePolicy": { + "description": "The maintenance policy to be set for the cluster. An empty field\nclears the existing maintenance policy.", + "$ref": "MaintenancePolicy" + }, + "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": { + "type": "string", + "description": "The Google Developers Console [project ID or project\nnumber](https://support.google.com/cloud/answer/6158840)." + }, + "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" + } + }, + "id": "SetMaintenancePolicyRequest" + }, + "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 `{}`." + }, + "WorkloadMetadataConfig": { + "description": "WorkloadMetadataConfig defines the metadata configuration to expose to\nworkloads on the node pool.", + "type": "object", + "properties": { + "nodeMetadata": { + "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." + ], + "enum": [ + "UNSPECIFIED", + "SECURE", + "EXPOSE" + ], + "description": "NodeMetadata is the configuration for how to expose the node metadata to\nthe workload running on the node.", + "type": "string" + } + }, + "id": "WorkloadMetadataConfig" + }, + "ListNodePoolsResponse": { + "properties": { + "nodePools": { + "description": "A list of node pools for a cluster.", + "type": "array", + "items": { + "$ref": "NodePool" + } + } + }, + "id": "ListNodePoolsResponse", + "description": "ListNodePoolsResponse is the result of ListNodePoolsRequest.", + "type": "object" + }, + "CompleteIPRotationRequest": { + "properties": { + "name": { + "type": "string", + "description": "The name (project, location, cluster id) of the cluster to complete IP\nrotation. Specified in the format 'projects/*/locations/*/clusters/*'." }, - "aggregated": { - "resources": { - "usableSubnetworks": { - "methods": { - "list": { - "description": "Lists subnetworks that are usable for creating clusters in a project.", - "response": { - "$ref": "ListUsableSubnetworksResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "pageToken": { - "description": "Specifies a page token to use. Set this to the nextPageToken returned by\nprevious list requests to get the next page of results.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "The max number of results per page that should be returned. If the number\nof available results is larger than `page_size`, a `next_page_token` is\nreturned which can be used to get the next page of results in subsequent\nrequests. Acceptable values are 0 to 500, inclusive. (Default: 500)", - "format": "int32", - "type": "integer" - }, - "parent": { - "location": "path", - "description": "The parent project where subnetworks are usable.\nSpecified in the format 'projects/*'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - }, - "filter": { - "location": "query", - "description": "Filtering currently only supports equality on the networkProjectId and must\nbe in the form: \"networkProjectId=[PROJECTID]\", where `networkProjectId`\nis the project which owns the listed subnetworks. This defaults to the\nparent project ID.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/aggregated/usableSubnetworks", - "path": "v1beta1/{+parent}/aggregated/usableSubnetworks", - "id": "container.projects.aggregated.usableSubnetworks.list" - } - } - } - } + "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" + }, + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "type": "string" } - } - } - }, - "parameters": { - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" + }, + "id": "CompleteIPRotationRequest", + "description": "CompleteIPRotationRequest moves the cluster master back into single-IP mode.", + "type": "object" }, - "bearer_token": { - "type": "string", - "location": "query", - "description": "OAuth bearer token." + "StartIPRotationRequest": { + "properties": { + "name": { + "description": "The name (project, location, cluster id) of the cluster to start IP\nrotation. Specified 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" + }, + "clusterId": { + "description": "Deprecated. The name of the cluster.\nThis field has been deprecated and replaced by the name field.", + "type": "string" + }, + "rotateCredentials": { + "description": "Whether to rotate credentials during IP rotation.", + "type": "boolean" + } + }, + "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.", + "type": "object" }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" + "ListUsableSubnetworksResponse": { + "description": "ListUsableSubnetworksResponse is the response of\nListUsableSubnetworksRequest.", + "type": "object", + "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 `page_size`, use the\n`next_page_token` as a value for the query parameter `page_token` in the\nnext request. The value will become empty when there are no more pages.", + "type": "string" + }, + "subnetworks": { + "description": "A list of usable subnetworks in the specified network project.", + "type": "array", + "items": { + "$ref": "UsableSubnetwork" + } + } + }, + "id": "ListUsableSubnetworksResponse" }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" + "ListLocationsResponse": { + "description": "ListLocationsResponse returns the list of all GKE locations and their\nrecommendation state.", + "type": "object", + "properties": { + "nextPageToken": { + "description": "Only return ListLocationsResponse that occur after the page_token. This\nvalue should be populated from the ListLocationsResponse.next_page_token if\nthat response token was set (which happens when listing more Locations than\nfit in a single ListLocationsResponse).", + "type": "string" + }, + "locations": { + "description": "A full list of GKE locations.", + "type": "array", + "items": { + "$ref": "Location" + } + } + }, + "id": "ListLocationsResponse" }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" + "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": { + "status": { + "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", + "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." + ] + }, + "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": { + "$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.", + "format": "int32", + "type": "integer" + }, + "management": { + "$ref": "NodeManagement", + "description": "NodeManagement configuration for this NodePool." + }, + "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" + } + } + }, + "id": "NodePool" }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" + "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", + "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" + }, + "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" + }, + "resourceLabels": { + "additionalProperties": { + "type": "string" + }, + "description": "The labels to set for that cluster.", + "type": "object" + }, + "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" + } + }, + "id": "SetLabelsRequest" }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" + "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": { + "type": "boolean", + "description": "Whether the nodes will be automatically repaired." + }, + "upgradeOptions": { + "description": "Specifies the Auto Upgrade knobs for the node pool.", + "$ref": "AutoUpgradeOptions" + } + }, + "id": "NodeManagement" }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" + "CancelOperationRequest": { + "description": "CancelOperationRequest cancels a single operation.", + "type": "object", + "properties": { + "zone": { + "type": "string", + "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." + }, + "name": { + "description": "The name (project, location, operation id) of the operation to cancel.\nSpecified in the format 'projects/*/locations/*/operations/*'.", + "type": "string" + }, + "operationId": { + "type": "string", + "description": "Deprecated. The server-assigned `name` of the operation.\nThis field has been deprecated and replaced by the name field." + }, + "projectId": { + "type": "string", + "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." + } + }, + "id": "CancelOperationRequest" }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" + "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" }, - "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" + "Operation": { + "description": "This operation resource represents operations that may have happened or are\nhappening on the cluster. All fields are output only.", + "type": "object", + "properties": { + "startTime": { + "type": "string", + "description": "[Output only] The time the operation started, in\n[RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format." + }, + "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": { + "enum": [ + "STATUS_UNSPECIFIED", + "PENDING", + "RUNNING", + "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." + ] + }, + "name": { + "description": "The server-assigned ID for the operation.", + "type": "string" + }, + "statusMessage": { + "description": "If an error has occurred, a textual description of the error.", + "type": "string" + }, + "selfLink": { + "description": "Server-defined URL for the resource.", + "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" + }, + "targetLink": { + "description": "Server-defined URL for the target of the operation.", + "type": "string" + }, + "detail": { + "description": "Detailed operation progress, if available.", + "type": "string" + }, + "operationType": { + "enumDescriptions": [ + "Not set.", + "Cluster create.", + "Cluster delete.", + "A master upgrade.", + "A node upgrade.", + "Cluster repair.", + "Cluster update.", + "Node pool create.", + "Node pool delete.", + "Set node pool management.", + "Automatic node pool repair.", + "Automatic node upgrade.", + "Set labels.", + "Set/generate master auth materials", + "Set node pool size.", + "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" + ], + "description": "The operation type.", + "type": "string" + } + }, + "id": "Operation" }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" + "MaintenanceWindow": { + "description": "MaintenanceWindow defines the maintenance window to be used for the cluster.", + "type": "object", + "properties": { + "dailyMaintenanceWindow": { + "$ref": "DailyMaintenanceWindow", + "description": "DailyMaintenanceWindow specifies a daily maintenance operation window." + } + }, + "id": "MaintenanceWindow" }, - "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" + "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", + "properties": { + "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" + }, + "clusterId": { + "description": "Deprecated. The name of the cluster to rollback.\nThis field has been deprecated and replaced by the name field.", + "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" + }, + "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" + } + }, + "id": "RollbackNodePoolUpgradeRequest" }, - "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" + "NetworkPolicy": { + "description": "Configuration options for the NetworkPolicy feature.\nhttps://kubernetes.io/docs/concepts/services-networking/networkpolicies/", + "type": "object", + "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" } }, - "version": "v1beta1", - "baseUrl": "https://container.googleapis.com/", - "kind": "discovery#restDescription", - "description": "The Google Kubernetes Engine API is used for building and managing container based applications, powered by the open source Kubernetes technology.", - "servicePath": "" + "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/" } diff --git a/DiscoveryJson/dataflow_v1b3.json b/DiscoveryJson/dataflow_v1b3.json index c73bf7060d..c8d8584b3d 100644 --- a/DiscoveryJson/dataflow_v1b3.json +++ b/DiscoveryJson/dataflow_v1b3.json @@ -1,40 +1,14 @@ { - "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" - } - } - } - }, - "servicePath": "", - "description": "Manages Google Cloud Dataflow projects on Google Cloud Platform.", - "kind": "discovery#restDescription", - "rootUrl": "https://dataflow.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "dataflow", - "batchPath": "batch", - "revision": "20180501", - "documentationLink": "https://cloud.google.com/dataflow", - "id": "dataflow:v1b3", - "title": "Dataflow API", - "discoveryVersion": "v1", "ownerName": "Google", + "discoveryVersion": "v1", "resources": { "projects": { "methods": { "workerMessages": { + "request": { + "$ref": "SendWorkerMessagesRequest" + }, + "description": "Send a worker_message to the service.", "response": { "$ref": "SendWorkerMessagesResponse" }, @@ -42,142 +16,153 @@ "projectId" ], "httpMethod": "POST", - "parameters": { - "projectId": { - "location": "path", - "description": "The project to send the WorkerMessages to.", - "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" ], + "parameters": { + "projectId": { + "required": true, + "type": "string", + "location": "path", + "description": "The project to send the WorkerMessages to." + } + }, "flatPath": "v1b3/projects/{projectId}/WorkerMessages", "path": "v1b3/projects/{projectId}/WorkerMessages", - "id": "dataflow.projects.workerMessages", - "description": "Send a worker_message to the service.", - "request": { - "$ref": "SendWorkerMessagesRequest" - } + "id": "dataflow.projects.workerMessages" } }, "resources": { - "templates": { + "jobs": { "methods": { - "launch": { - "path": "v1b3/projects/{projectId}/templates:launch", - "id": "dataflow.projects.templates.launch", - "description": "Launch a template.", - "request": { - "$ref": "LaunchTemplateParameters" - }, + "getMetrics": { "response": { - "$ref": "LaunchTemplateResponse" + "$ref": "JobMetrics" }, "parameterOrder": [ - "projectId" + "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" ], - "httpMethod": "POST", "parameters": { - "validateOnly": { - "type": "boolean", + "location": { + "description": "The location which contains the job specified by job_id.", + "type": "string", + "location": "query" + }, + "startTime": { "location": "query", - "description": "If true, the request is validated but not actually executed.\nDefaults to false." + "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" }, "projectId": { - "location": "path", - "description": "Required. The ID of the Cloud Platform project that the job belongs to.", + "description": "A project id.", "required": true, - "type": "string" - }, - "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://'.", "type": "string", - "location": "query" + "location": "path" }, - "location": { - "location": "query", - "description": "The location to which to direct the request.", - "type": "string" + "jobId": { + "description": "The job to get messages for.", + "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:launch" + "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/metrics", + "path": "v1b3/projects/{projectId}/jobs/{jobId}/metrics", + "id": "dataflow.projects.jobs.getMetrics", + "description": "Request the job status." }, "get": { - "httpMethod": "GET", + "description": "Gets the state of the specified Cloud Dataflow job.", "response": { - "$ref": "GetTemplateResponse" + "$ref": "Job" }, "parameterOrder": [ - "projectId" + "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": { "projectId": { - "description": "Required. The ID of the Cloud Platform project that the job belongs to.", + "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" }, "view": { + "description": "The level of information requested in response.", + "type": "string", "location": "query", "enum": [ - "METADATA_ONLY" - ], - "description": "The view to retrieve. Defaults to METADATA_ONLY.", - "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", - "location": "query" + "JOB_VIEW_UNKNOWN", + "JOB_VIEW_SUMMARY", + "JOB_VIEW_ALL", + "JOB_VIEW_DESCRIPTION" + ] }, "location": { - "description": "The location to which to direct the request.", - "type": "string", - "location": "query" + "location": "query", + "description": "The location that contains this job.", + "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." + "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}", + "path": "v1b3/projects/{projectId}/jobs/{jobId}", + "id": "dataflow.projects.jobs.get" }, - "create": { - "id": "dataflow.projects.templates.create", - "path": "v1b3/projects/{projectId}/templates", - "description": "Creates a Cloud Dataflow job from a template.", + "update": { + "description": "Updates the state of an existing Cloud Dataflow job.", "request": { - "$ref": "CreateJobFromTemplateRequest" + "$ref": "Job" }, - "httpMethod": "POST", - "parameterOrder": [ - "projectId" - ], "response": { "$ref": "Job" }, + "parameterOrder": [ + "projectId", + "jobId" + ], + "httpMethod": "PUT", "parameters": { "projectId": { - "description": "Required. The ID of the Cloud Platform project that the job belongs to.", + "required": true, + "type": "string", + "location": "path", + "description": "The ID of the Cloud Platform project that the job belongs to." + }, + "jobId": { + "description": "The job ID.", "required": true, "type": "string", "location": "path" + }, + "location": { + "description": "The location that contains this job.", + "type": "string", + "location": "query" } }, "scopes": [ @@ -186,166 +171,241 @@ "https://www.googleapis.com/auth/compute.readonly", "https://www.googleapis.com/auth/userinfo.email" ], - "flatPath": "v1b3/projects/{projectId}/templates" - } - } - }, - "locations": { - "methods": { - "workerMessages": { - "description": "Send a worker_message to the service.", - "request": { - "$ref": "SendWorkerMessagesRequest" + "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" }, - "httpMethod": "POST", "parameterOrder": [ - "projectId", - "location" + "projectId" ], - "response": { - "$ref": "SendWorkerMessagesResponse" - }, - "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" - } - }, + "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" ], - "flatPath": "v1b3/projects/{projectId}/locations/{location}/WorkerMessages", - "id": "dataflow.projects.locations.workerMessages", - "path": "v1b3/projects/{projectId}/locations/{location}/WorkerMessages" - } - }, - "resources": { - "jobs": { - "methods": { - "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" - }, - "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": { + "pageToken": { + "location": "query", + "description": "Set this to the 'next_page_token' field of a previous response\nto request additional results in a long list.", + "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", + "type": "integer", + "location": "query" + }, + "view": { + "location": "query", + "enum": [ + "JOB_VIEW_UNKNOWN", + "JOB_VIEW_SUMMARY", + "JOB_VIEW_ALL", + "JOB_VIEW_DESCRIPTION" ], - "parameters": { - "location": { - "location": "path", - "description": "The location that contains this job.", - "required": true, - "type": "string" - }, - "replaceJobId": { - "location": "query", - "description": "Deprecated. This field is now in the Job message.", - "type": "string" - }, - "projectId": { - "location": "path", - "description": "The ID of the Cloud Platform project that the job belongs to.", - "required": true, - "type": "string" - }, - "view": { - "location": "query", - "enum": [ - "JOB_VIEW_UNKNOWN", - "JOB_VIEW_SUMMARY", - "JOB_VIEW_ALL", - "JOB_VIEW_DESCRIPTION" - ], - "description": "The level of information requested in response.", - "type": "string" - } - }, - "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs" + "description": "Level of information requested in response. Default is `JOB_VIEW_SUMMARY`.", + "type": "string" }, - "getMetrics": { - "description": "Request the job status.", - "httpMethod": "GET", + "projectId": { + "location": "path", + "description": "The project which owns the jobs.", + "required": true, + "type": "string" + }, + "filter": { + "enum": [ + "UNKNOWN", + "ALL", + "TERMINATED", + "ACTIVE" + ], + "description": "The kind of filter to use.", + "type": "string", + "location": "query" + }, + "location": { + "description": "The location that contains this job.", + "type": "string", + "location": "query" + } + }, + "flatPath": "v1b3/projects/{projectId}/jobs:aggregated", + "path": "v1b3/projects/{projectId}/jobs:aggregated", + "id": "dataflow.projects.jobs.aggregated" + }, + "list": { + "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": { + "description": "The location that contains this job.", + "type": "string", + "location": "query" + }, + "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": { + "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", + "description": "List the jobs of a project in a given region." + }, + "create": { + "response": { + "$ref": "Job" + }, + "parameterOrder": [ + "projectId" + ], + "httpMethod": "POST", + "parameters": { + "projectId": { + "required": true, + "type": "string", + "location": "path", + "description": "The ID of the Cloud Platform project that the job belongs to." + }, + "view": { + "type": "string", + "location": "query", + "enum": [ + "JOB_VIEW_UNKNOWN", + "JOB_VIEW_SUMMARY", + "JOB_VIEW_ALL", + "JOB_VIEW_DESCRIPTION" + ], + "description": "The level of information requested in response." + }, + "location": { + "location": "query", + "description": "The location that contains this job.", + "type": "string" + }, + "replaceJobId": { + "location": "query", + "description": "Deprecated. This field is now in the Job message.", + "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}/jobs", + "path": "v1b3/projects/{projectId}/jobs", + "id": "dataflow.projects.jobs.create", + "description": "Creates a Cloud Dataflow job.", + "request": { + "$ref": "Job" + } + } + }, + "resources": { + "debug": { + "methods": { + "getConfig": { + "httpMethod": "POST", "parameterOrder": [ "projectId", - "location", "jobId" ], "response": { - "$ref": "JobMetrics" + "$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" - ], "parameters": { - "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" - }, "projectId": { - "description": "A project id.", + "description": "The project id.", "required": true, "type": "string", "location": "path" }, "jobId": { "location": "path", - "description": "The job to get messages for.", + "description": "The job id.", "required": true, "type": "string" } }, - "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/metrics", - "id": "dataflow.projects.locations.jobs.getMetrics", - "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/metrics" + "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}/debug/getConfig", + "id": "dataflow.projects.jobs.debug.getConfig", + "path": "v1b3/projects/{projectId}/jobs/{jobId}/debug/getConfig", + "description": "Get encoded debug configuration for component. Not cacheable.", + "request": { + "$ref": "GetDebugConfigRequest" + } }, - "get": { - "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}", - "id": "dataflow.projects.locations.jobs.get", - "description": "Gets the state of the specified Cloud Dataflow job.", + "sendCapture": { "response": { - "$ref": "Job" + "$ref": "SendDebugCaptureResponse" }, "parameterOrder": [ "projectId", - "location", "jobId" ], - "httpMethod": "GET", + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", @@ -353,91 +413,51 @@ "https://www.googleapis.com/auth/userinfo.email" ], "parameters": { - "location": { - "description": "The location that contains this job.", - "required": true, - "type": "string", - "location": "path" - }, "projectId": { - "description": "The ID of the Cloud Platform project that the job belongs to.", + "location": "path", + "description": "The project id.", "required": true, - "type": "string", - "location": "path" + "type": "string" }, "jobId": { "location": "path", - "description": "The job ID.", + "description": "The job id.", "required": true, "type": "string" - }, - "view": { - "type": "string", - "location": "query", - "enum": [ - "JOB_VIEW_UNKNOWN", - "JOB_VIEW_SUMMARY", - "JOB_VIEW_ALL", - "JOB_VIEW_DESCRIPTION" - ], - "description": "The level of information requested in response." } }, - "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}" - }, - "list": { - "httpMethod": "GET", + "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." + } + } + }, + "workItems": { + "methods": { + "reportStatus": { "response": { - "$ref": "ListJobsResponse" + "$ref": "ReportWorkItemStatusResponse" }, "parameterOrder": [ "projectId", - "location" + "jobId" ], + "httpMethod": "POST", "parameters": { "projectId": { "location": "path", - "description": "The project which owns the jobs.", + "description": "The project which owns the WorkItem's job.", "required": true, "type": "string" }, - "filter": { - "type": "string", - "location": "query", - "enum": [ - "UNKNOWN", - "ALL", - "TERMINATED", - "ACTIVE" - ], - "description": "The kind of filter to use." - }, - "location": { - "description": "The location that contains this job.", + "jobId": { + "location": "path", + "description": "The job which the WorkItem is part of.", "required": true, - "type": "string", - "location": "path" - }, - "pageToken": { - "location": "query", - "description": "Set this to the 'next_page_token' field of a previous response\nto request additional results in a long list.", - "type": "string" - }, - "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" } }, @@ -447,21 +467,23 @@ "https://www.googleapis.com/auth/compute.readonly", "https://www.googleapis.com/auth/userinfo.email" ], - "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." + "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" + } }, - "update": { + "lease": { "response": { - "$ref": "Job" + "$ref": "LeaseWorkItemResponse" }, "parameterOrder": [ "projectId", - "location", "jobId" ], - "httpMethod": "PUT", + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", @@ -469,339 +491,93 @@ "https://www.googleapis.com/auth/userinfo.email" ], "parameters": { - "location": { - "location": "path", - "description": "The location that contains this job.", - "required": true, - "type": "string" - }, "projectId": { - "description": "The ID of the Cloud Platform project that the job belongs to.", + "description": "Identifies the project this worker belongs to.", "required": true, "type": "string", "location": "path" }, "jobId": { - "description": "The job ID.", + "location": "path", + "description": "Identifies the workflow job this worker belongs to.", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, - "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}", - "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}", - "id": "dataflow.projects.locations.jobs.update", + "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/workItems:lease", + "path": "v1b3/projects/{projectId}/jobs/{jobId}/workItems:lease", + "id": "dataflow.projects.jobs.workItems.lease", "request": { - "$ref": "Job" + "$ref": "LeaseWorkItemRequest" }, - "description": "Updates the state of an existing Cloud Dataflow job." + "description": "Leases a dataflow WorkItem to run." } - }, - "resources": { - "debug": { - "methods": { - "getConfig": { - "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": { - "description": "The project id.", - "required": true, - "type": "string", - "location": "path" - }, - "jobId": { - "location": "path", - "description": "The job id.", - "required": true, - "type": "string" - }, - "location": { - "required": true, - "type": "string", - "location": "path", - "description": "The location which contains the job specified by job_id." - } - }, - "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", - "request": { - "$ref": "GetDebugConfigRequest" - }, - "description": "Get encoded debug configuration for component. Not cacheable." + } + }, + "messages": { + "methods": { + "list": { + "response": { + "$ref": "ListJobMessagesResponse" + }, + "parameterOrder": [ + "projectId", + "jobId" + ], + "httpMethod": "GET", + "parameters": { + "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" }, - "sendCapture": { - "request": { - "$ref": "SendDebugCaptureRequest" - }, - "description": "Send encoded debug capture data for component.", - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "location", - "jobId" - ], - "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" + "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": { + "type": "integer", + "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" + }, + "minimumImportance": { + "location": "query", + "enum": [ + "JOB_MESSAGE_IMPORTANCE_UNKNOWN", + "JOB_MESSAGE_DEBUG", + "JOB_MESSAGE_DETAILED", + "JOB_MESSAGE_BASIC", + "JOB_MESSAGE_WARNING", + "JOB_MESSAGE_ERROR" ], - "parameters": { - "location": { - "description": "The location which contains the job specified by job_id.", - "required": true, - "type": "string", - "location": "path" - }, - "projectId": { - "description": "The project id.", - "required": true, - "type": "string", - "location": "path" - }, - "jobId": { - "required": true, - "type": "string", - "location": "path", - "description": "The job id." - } - }, - "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" - } - } - }, - "workItems": { - "methods": { - "reportStatus": { - "response": { - "$ref": "ReportWorkItemStatusResponse" - }, - "parameterOrder": [ - "projectId", - "location", - "jobId" - ], - "httpMethod": "POST", - "parameters": { - "projectId": { - "location": "path", - "description": "The project which owns the WorkItem's job.", - "required": true, - "type": "string" - }, - "jobId": { - "location": "path", - "description": "The job which the WorkItem is part of.", - "required": true, - "type": "string" - }, - "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", - "description": "Reports the status of dataflow WorkItems leased by a worker.", - "request": { - "$ref": "ReportWorkItemStatusRequest" - } - }, - "lease": { - "description": "Leases a dataflow WorkItem to run.", - "request": { - "$ref": "LeaseWorkItemRequest" - }, - "response": { - "$ref": "LeaseWorkItemResponse" - }, - "parameterOrder": [ - "projectId", - "location", - "jobId" - ], - "httpMethod": "POST", - "parameters": { - "location": { - "location": "path", - "description": "The location which contains the WorkItem's job.", - "required": true, - "type": "string" - }, - "projectId": { - "location": "path", - "description": "Identifies the project this worker belongs to.", - "required": true, - "type": "string" - }, - "jobId": { - "required": true, - "type": "string", - "location": "path", - "description": "Identifies the workflow job this worker belongs to." - } - }, - "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": { - "response": { - "$ref": "ListJobMessagesResponse" - }, - "parameterOrder": [ - "projectId", - "location", - "jobId" - ], - "httpMethod": "GET", - "parameters": { - "jobId": { - "description": "The job to get messages about.", - "required": true, - "type": "string", - "location": "path" - }, - "projectId": { - "required": true, - "type": "string", - "location": "path", - "description": "A project id." - }, - "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": { - "type": "string", - "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." - }, - "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": { - "description": "Filter to only get messages with importance \u003e= level", - "type": "string", - "location": "query", - "enum": [ - "JOB_MESSAGE_IMPORTANCE_UNKNOWN", - "JOB_MESSAGE_DEBUG", - "JOB_MESSAGE_DETAILED", - "JOB_MESSAGE_BASIC", - "JOB_MESSAGE_WARNING", - "JOB_MESSAGE_ERROR" - ] - } - }, - "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", - "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/messages", - "id": "dataflow.projects.locations.jobs.messages.list", - "description": "Request the job status." - } - } - } - } - }, - "templates": { - "methods": { - "launch": { - "description": "Launch a template.", - "request": { - "$ref": "LaunchTemplateParameters" - }, - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "location" - ], - "response": { - "$ref": "LaunchTemplateResponse" - }, - "parameters": { - "location": { - "location": "path", - "description": "The location to which to direct the request.", - "required": true, - "type": "string" - }, - "validateOnly": { - "location": "query", - "description": "If true, the request is validated but not actually executed.\nDefaults to false.", - "type": "boolean" - }, - "projectId": { - "required": true, - "type": "string", - "location": "path", - "description": "Required. The ID of the Cloud Platform project that the job belongs to." - }, - "gcsPath": { - "type": "string", - "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://'." + "description": "Filter to only get messages with importance \u003e= level", + "type": "string" + }, + "projectId": { + "required": true, + "type": "string", + "location": "path", + "description": "A project id." + }, + "jobId": { + "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.", + "type": "string" + }, + "endTime": { + "type": "string", + "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" } }, "scopes": [ @@ -810,151 +586,45 @@ "https://www.googleapis.com/auth/compute.readonly", "https://www.googleapis.com/auth/userinfo.email" ], - "flatPath": "v1b3/projects/{projectId}/locations/{location}/templates:launch", - "id": "dataflow.projects.locations.templates.launch", - "path": "v1b3/projects/{projectId}/locations/{location}/templates:launch" + "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/messages", + "path": "v1b3/projects/{projectId}/jobs/{jobId}/messages", + "id": "dataflow.projects.jobs.messages.list", + "description": "Request the job status." + } + } + } + } + }, + "templates": { + "methods": { + "launch": { + "response": { + "$ref": "LaunchTemplateResponse" + }, + "parameterOrder": [ + "projectId" + ], + "httpMethod": "POST", + "parameters": { + "validateOnly": { + "location": "query", + "description": "If true, the request is validated but not actually executed.\nDefaults to false.", + "type": "boolean" }, - "get": { - "response": { - "$ref": "GetTemplateResponse" - }, - "parameterOrder": [ - "projectId", - "location" - ], - "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": { - "description": "Required. The ID of the Cloud Platform project that the job belongs to.", - "required": true, - "type": "string", - "location": "path" - }, - "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" - } - }, - "flatPath": "v1b3/projects/{projectId}/locations/{location}/templates:get", - "path": "v1b3/projects/{projectId}/locations/{location}/templates:get", - "id": "dataflow.projects.locations.templates.get", - "description": "Get the template associated with a template." - }, - "create": { - "response": { - "$ref": "Job" - }, - "parameterOrder": [ - "projectId", - "location" - ], - "httpMethod": "POST", - "parameters": { - "projectId": { - "description": "Required. The ID of the Cloud Platform project that the job belongs to.", - "required": true, - "type": "string", - "location": "path" - }, - "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", - "path": "v1b3/projects/{projectId}/locations/{location}/templates", - "id": "dataflow.projects.locations.templates.create", - "description": "Creates a Cloud Dataflow job from a template.", - "request": { - "$ref": "CreateJobFromTemplateRequest" - } - } - } - } - } - }, - "jobs": { - "methods": { - "aggregated": { - "response": { - "$ref": "ListJobsResponse" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "GET", - "parameters": { "projectId": { - "description": "The project which owns the jobs.", + "location": "path", + "description": "Required. The ID of the Cloud Platform project that the job belongs to.", "required": true, - "type": "string", - "location": "path" - }, - "filter": { - "location": "query", - "enum": [ - "UNKNOWN", - "ALL", - "TERMINATED", - "ACTIVE" - ], - "description": "The kind of filter to use.", - "type": "string" - }, - "location": { - "location": "query", - "description": "The location that contains this job.", "type": "string" }, - "pageToken": { + "gcsPath": { "location": "query", - "description": "Set this to the 'next_page_token' field of a previous response\nto request additional results in a long list.", + "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" }, - "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": { "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`.", + "description": "The location to which to direct the request.", "type": "string" } }, @@ -964,81 +634,64 @@ "https://www.googleapis.com/auth/compute.readonly", "https://www.googleapis.com/auth/userinfo.email" ], - "flatPath": "v1b3/projects/{projectId}/jobs:aggregated", - "path": "v1b3/projects/{projectId}/jobs:aggregated", - "id": "dataflow.projects.jobs.aggregated", - "description": "List the jobs of a project across all regions." + "flatPath": "v1b3/projects/{projectId}/templates:launch", + "path": "v1b3/projects/{projectId}/templates:launch", + "id": "dataflow.projects.templates.launch", + "description": "Launch a template.", + "request": { + "$ref": "LaunchTemplateParameters" + } }, - "list": { - "description": "List the jobs of a project in a given region.", + "get": { "response": { - "$ref": "ListJobsResponse" + "$ref": "GetTemplateResponse" }, "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": { - "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.", - "type": "string", - "location": "query" - }, - "pageToken": { "location": "query", - "description": "Set this to the 'next_page_token' field of a previous response\nto request additional results in a long list.", + "description": "The location to which to direct the request.", "type": "string" }, - "pageSize": { - "type": "integer", - "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" + "projectId": { + "description": "Required. The ID of the Cloud Platform project that the job belongs to.", + "required": true, + "type": "string", + "location": "path" }, "view": { - "location": "query", "enum": [ - "JOB_VIEW_UNKNOWN", - "JOB_VIEW_SUMMARY", - "JOB_VIEW_ALL", - "JOB_VIEW_DESCRIPTION" + "METADATA_ONLY" ], - "description": "Level of information requested in response. Default is `JOB_VIEW_SUMMARY`.", - "type": "string" - }, - "projectId": { - "description": "The project which owns the jobs.", - "required": true, + "description": "The view to retrieve. Defaults to METADATA_ONLY.", "type": "string", - "location": "path" + "location": "query" + }, + "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" } }, - "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", - "path": "v1b3/projects/{projectId}/jobs", - "id": "dataflow.projects.jobs.list" + "flatPath": "v1b3/projects/{projectId}/templates:get", + "path": "v1b3/projects/{projectId}/templates:get", + "id": "dataflow.projects.templates.get", + "description": "Get the template associated with a template." }, "create": { - "description": "Creates a Cloud Dataflow job.", "request": { - "$ref": "Job" + "$ref": "CreateJobFromTemplateRequest" }, + "description": "Creates a Cloud Dataflow job from a template.", "response": { "$ref": "Job" }, @@ -1046,200 +699,117 @@ "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": { - "location": { - "description": "The location that contains this job.", - "type": "string", - "location": "query" - }, - "replaceJobId": { - "location": "query", - "description": "Deprecated. This field is now in the Job message.", - "type": "string" - }, "projectId": { "location": "path", - "description": "The ID of the Cloud Platform project that the job belongs to.", + "description": "Required. The ID of the Cloud Platform project that the job belongs to.", "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}/templates", + "path": "v1b3/projects/{projectId}/templates", + "id": "dataflow.projects.templates.create" + } + } + }, + "locations": { + "methods": { + "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", "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", - "path": "v1b3/projects/{projectId}/jobs", - "id": "dataflow.projects.jobs.create" - }, - "getMetrics": { - "description": "Request the job status.", - "httpMethod": "GET", - "parameterOrder": [ - "projectId", - "jobId" - ], - "response": { - "$ref": "JobMetrics" - }, "parameters": { - "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" - }, "projectId": { "location": "path", - "description": "A project id.", - "required": true, - "type": "string" - }, - "jobId": { - "location": "path", - "description": "The job to get messages for.", + "description": "The project to send the WorkerMessages to.", "required": true, "type": "string" }, "location": { - "location": "query", - "description": "The location which contains the job specified by job_id.", - "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}/jobs/{jobId}/metrics", - "id": "dataflow.projects.jobs.getMetrics", - "path": "v1b3/projects/{projectId}/jobs/{jobId}/metrics" - }, - "get": { - "description": "Gets the state of the specified Cloud Dataflow job.", - "response": { - "$ref": "Job" - }, - "parameterOrder": [ - "projectId", - "jobId" - ], - "httpMethod": "GET", - "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": { - "description": "The job ID.", "required": true, "type": "string", - "location": "path" - }, - "view": { - "location": "query", - "enum": [ - "JOB_VIEW_UNKNOWN", - "JOB_VIEW_SUMMARY", - "JOB_VIEW_ALL", - "JOB_VIEW_DESCRIPTION" - ], - "description": "The level of information requested in response.", - "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}/jobs/{jobId}", - "path": "v1b3/projects/{projectId}/jobs/{jobId}", - "id": "dataflow.projects.jobs.get" - }, - "update": { - "response": { - "$ref": "Job" - }, - "parameterOrder": [ - "projectId", - "jobId" - ], - "httpMethod": "PUT", - "parameters": { - "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" - }, - "location": { - "description": "The location that contains this job.", - "type": "string", - "location": "query" + "description": "The location which contains the 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" - ], - "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}", - "path": "v1b3/projects/{projectId}/jobs/{jobId}", - "id": "dataflow.projects.jobs.update", - "description": "Updates the state of an existing Cloud Dataflow job.", - "request": { - "$ref": "Job" - } + "flatPath": "v1b3/projects/{projectId}/locations/{location}/WorkerMessages" } }, "resources": { - "debug": { + "templates": { "methods": { - "getConfig": { - "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/debug/getConfig", - "path": "v1b3/projects/{projectId}/jobs/{jobId}/debug/getConfig", - "id": "dataflow.projects.jobs.debug.getConfig", + "create": { + "httpMethod": "POST", + "parameterOrder": [ + "projectId", + "location" + ], + "response": { + "$ref": "Job" + }, + "parameters": { + "location": { + "location": "path", + "description": "The location to which to direct the request.", + "required": true, + "type": "string" + }, + "projectId": { + "location": "path", + "description": "Required. The ID of the Cloud Platform project that the job belongs to.", + "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", + "description": "Creates a Cloud Dataflow job from a template.", "request": { - "$ref": "GetDebugConfigRequest" + "$ref": "CreateJobFromTemplateRequest" + } + }, + "launch": { + "request": { + "$ref": "LaunchTemplateParameters" }, - "description": "Get encoded debug configuration for component. Not cacheable.", + "description": "Launch a template.", "response": { - "$ref": "GetDebugConfigResponse" + "$ref": "LaunchTemplateResponse" }, "parameterOrder": [ "projectId", - "jobId" + "location" ], "httpMethod": "POST", "scopes": [ @@ -1249,45 +819,68 @@ "https://www.googleapis.com/auth/userinfo.email" ], "parameters": { - "projectId": { - "description": "The project id.", + "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": { "required": true, "type": "string", - "location": "path" - }, - "jobId": { "location": "path", - "description": "The job id.", + "description": "The location to which to direct the request." + }, + "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" + "type": "string", + "location": "path" } - } - }, - "sendCapture": { - "description": "Send encoded debug capture data for component.", - "request": { - "$ref": "SendDebugCaptureRequest" - }, - "response": { - "$ref": "SendDebugCaptureResponse" }, + "flatPath": "v1b3/projects/{projectId}/locations/{location}/templates:launch", + "path": "v1b3/projects/{projectId}/locations/{location}/templates:launch", + "id": "dataflow.projects.locations.templates.launch" + }, + "get": { + "description": "Get the template associated with a template.", + "httpMethod": "GET", "parameterOrder": [ "projectId", - "jobId" + "location" ], - "httpMethod": "POST", + "response": { + "$ref": "GetTemplateResponse" + }, "parameters": { + "gcsPath": { + "type": "string", + "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://`." + }, + "location": { + "required": true, + "type": "string", + "location": "path", + "description": "The location to which to direct the request." + }, "projectId": { "location": "path", - "description": "The project id.", + "description": "Required. The ID of the Cloud Platform project that the job belongs to.", "required": true, "type": "string" }, - "jobId": { - "description": "The job id.", - "required": true, + "view": { + "description": "The view to retrieve. Defaults to METADATA_ONLY.", "type": "string", - "location": "path" + "location": "query", + "enum": [ + "METADATA_ONLY" + ] } }, "scopes": [ @@ -1296,15 +889,27 @@ "https://www.googleapis.com/auth/compute.readonly", "https://www.googleapis.com/auth/userinfo.email" ], - "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/debug/sendCapture", - "path": "v1b3/projects/{projectId}/jobs/{jobId}/debug/sendCapture", - "id": "dataflow.projects.jobs.debug.sendCapture" + "flatPath": "v1b3/projects/{projectId}/locations/{location}/templates:get", + "id": "dataflow.projects.locations.templates.get", + "path": "v1b3/projects/{projectId}/locations/{location}/templates:get" } } }, - "workItems": { + "jobs": { "methods": { - "reportStatus": { + "get": { + "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}", + "id": "dataflow.projects.locations.jobs.get", + "description": "Gets the state of the specified Cloud Dataflow job.", + "response": { + "$ref": "Job" + }, + "parameterOrder": [ + "projectId", + "location", + "jobId" + ], + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute", @@ -1313,45 +918,159 @@ ], "parameters": { "projectId": { - "description": "The project which owns the WorkItem's job.", + "location": "path", + "description": "The ID of the Cloud Platform project that the job belongs to.", "required": true, - "type": "string", - "location": "path" + "type": "string" }, "jobId": { "location": "path", - "description": "The job which the WorkItem is part of.", + "description": "The job ID.", "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", - "request": { - "$ref": "ReportWorkItemStatusRequest" - }, - "description": "Reports the status of dataflow WorkItems leased by a worker.", - "response": { - "$ref": "ReportWorkItemStatusResponse" + }, + "view": { + "location": "query", + "enum": [ + "JOB_VIEW_UNKNOWN", + "JOB_VIEW_SUMMARY", + "JOB_VIEW_ALL", + "JOB_VIEW_DESCRIPTION" + ], + "description": "The level of information requested in response.", + "type": "string" + }, + "location": { + "description": "The location that contains this job.", + "required": true, + "type": "string", + "location": "path" + } + }, + "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}" + }, + "list": { + "description": "List the jobs of a project in a given region.", + "response": { + "$ref": "ListJobsResponse" + }, + "parameterOrder": [ + "projectId", + "location" + ], + "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": { + "filter": { + "enum": [ + "UNKNOWN", + "ALL", + "TERMINATED", + "ACTIVE" + ], + "description": "The kind of filter to use.", + "type": "string", + "location": "query" + }, + "location": { + "location": "path", + "description": "The location that contains this job.", + "required": true, + "type": "string" + }, + "pageToken": { + "location": "query", + "description": "Set this to the 'next_page_token' field of a previous response\nto request additional results in a long list.", + "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", + "type": "integer", + "location": "query" + }, + "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" + }, + "projectId": { + "location": "path", + "description": "The project which owns the jobs.", + "required": true, + "type": "string" + } + }, + "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs", + "path": "v1b3/projects/{projectId}/locations/{location}/jobs", + "id": "dataflow.projects.locations.jobs.list" + }, + "update": { + "id": "dataflow.projects.locations.jobs.update", + "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}", + "description": "Updates the state of an existing Cloud Dataflow job.", + "request": { + "$ref": "Job" }, + "httpMethod": "PUT", "parameterOrder": [ "projectId", + "location", "jobId" ], - "httpMethod": "POST" + "response": { + "$ref": "Job" + }, + "parameters": { + "projectId": { + "required": true, + "type": "string", + "location": "path", + "description": "The ID of the Cloud Platform project that the job belongs to." + }, + "jobId": { + "location": "path", + "description": "The job ID.", + "required": true, + "type": "string" + }, + "location": { + "required": true, + "type": "string", + "location": "path", + "description": "The location that contains this 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" + ], + "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}" }, - "lease": { + "create": { "request": { - "$ref": "LeaseWorkItemRequest" + "$ref": "Job" }, - "description": "Leases a dataflow WorkItem to run.", + "description": "Creates a Cloud Dataflow job.", "response": { - "$ref": "LeaseWorkItemResponse" + "$ref": "Job" }, "parameterOrder": [ "projectId", - "jobId" + "location" ], "httpMethod": "POST", "scopes": [ @@ -1363,87 +1082,71 @@ "parameters": { "projectId": { "location": "path", - "description": "Identifies the project this worker belongs to.", + "description": "The ID of the Cloud Platform project that the job belongs to.", "required": true, "type": "string" }, - "jobId": { + "view": { + "location": "query", + "enum": [ + "JOB_VIEW_UNKNOWN", + "JOB_VIEW_SUMMARY", + "JOB_VIEW_ALL", + "JOB_VIEW_DESCRIPTION" + ], + "description": "The level of information requested in response.", + "type": "string" + }, + "location": { + "description": "The location that contains this job.", "required": true, "type": "string", - "location": "path", - "description": "Identifies the workflow job this worker belongs to." + "location": "path" + }, + "replaceJobId": { + "location": "query", + "description": "Deprecated. This field is now in the Job message.", + "type": "string" } }, - "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/workItems:lease", - "path": "v1b3/projects/{projectId}/jobs/{jobId}/workItems:lease", - "id": "dataflow.projects.jobs.workItems.lease" - } - } - }, - "messages": { - "methods": { - "list": { + "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs", + "path": "v1b3/projects/{projectId}/locations/{location}/jobs", + "id": "dataflow.projects.locations.jobs.create" + }, + "getMetrics": { "httpMethod": "GET", + "response": { + "$ref": "JobMetrics" + }, "parameterOrder": [ "projectId", + "location", "jobId" ], - "response": { - "$ref": "ListJobMessagesResponse" - }, "parameters": { - "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.", - "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", - "type": "string", - "location": "query" - }, - "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", - "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", + "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" }, "projectId": { - "location": "path", "description": "A project id.", "required": true, - "type": "string" + "type": "string", + "location": "path" }, "jobId": { "location": "path", - "description": "The job to get messages about.", + "description": "The job to get messages for.", "required": true, "type": "string" }, - "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.", - "type": "string", - "location": "query" + "required": true, + "type": "string" } }, "scopes": [ @@ -1452,147 +1155,776 @@ "https://www.googleapis.com/auth/compute.readonly", "https://www.googleapis.com/auth/userinfo.email" ], - "flatPath": "v1b3/projects/{projectId}/jobs/{jobId}/messages", - "id": "dataflow.projects.jobs.messages.list", - "path": "v1b3/projects/{projectId}/jobs/{jobId}/messages", + "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/metrics", + "id": "dataflow.projects.locations.jobs.getMetrics", + "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/metrics", "description": "Request the job status." } - } - } - } + }, + "resources": { + "debug": { + "methods": { + "getConfig": { + "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": { + "location": "path", + "description": "The location which contains the job specified by job_id.", + "required": true, + "type": "string" + } + }, + "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", + "request": { + "$ref": "GetDebugConfigRequest" + }, + "description": "Get encoded debug configuration for component. Not cacheable." + }, + "sendCapture": { + "response": { + "$ref": "SendDebugCaptureResponse" + }, + "parameterOrder": [ + "projectId", + "location", + "jobId" + ], + "httpMethod": "POST", + "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": { + "location": "path", + "description": "The job id.", + "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}/debug/sendCapture", + "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/debug/sendCapture", + "id": "dataflow.projects.locations.jobs.debug.sendCapture", + "description": "Send encoded debug capture data for component.", + "request": { + "$ref": "SendDebugCaptureRequest" + } + } + } + }, + "workItems": { + "methods": { + "lease": { + "description": "Leases a dataflow WorkItem to run.", + "request": { + "$ref": "LeaseWorkItemRequest" + }, + "response": { + "$ref": "LeaseWorkItemResponse" + }, + "parameterOrder": [ + "projectId", + "location", + "jobId" + ], + "httpMethod": "POST", + "parameters": { + "projectId": { + "location": "path", + "description": "Identifies the project this worker belongs to.", + "required": true, + "type": "string" + }, + "jobId": { + "location": "path", + "description": "Identifies the workflow job this worker belongs to.", + "required": true, + "type": "string" + }, + "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:lease", + "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/workItems:lease", + "id": "dataflow.projects.locations.jobs.workItems.lease" + }, + "reportStatus": { + "description": "Reports the status of dataflow WorkItems leased by a worker.", + "request": { + "$ref": "ReportWorkItemStatusRequest" + }, + "response": { + "$ref": "ReportWorkItemStatusResponse" + }, + "parameterOrder": [ + "projectId", + "location", + "jobId" + ], + "httpMethod": "POST", + "parameters": { + "location": { + "location": "path", + "description": "The location which contains the WorkItem's job.", + "required": true, + "type": "string" + }, + "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" + } + }, + "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" + } + } + }, + "messages": { + "methods": { + "list": { + "response": { + "$ref": "ListJobMessagesResponse" + }, + "parameterOrder": [ + "projectId", + "location", + "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": { + "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": { + "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", + "location": "query" + }, + "projectId": { + "location": "path", + "description": "A project id.", + "required": true, + "type": "string" + }, + "jobId": { + "location": "path", + "description": "The job to get messages about.", + "required": true, + "type": "string" + }, + "endTime": { + "type": "string", + "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" + }, + "location": { + "description": "The location which contains the job specified by job_id.", + "required": true, + "type": "string", + "location": "path" + }, + "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" + }, + "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" + } + }, + "flatPath": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/messages", + "path": "v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/messages", + "id": "dataflow.projects.locations.jobs.messages.list", + "description": "Request the job status." + } + } + } + } + } + } + } + } + } + }, + "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": { + "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": { + "type": "string", + "location": "query", + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." + }, + "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" + }, + "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" + } + }, + "schemas": { + "PartialGroupByKeyInstruction": { + "description": "An instruction that does a partial group-by-key.\nOne input and one output.", + "type": "object", + "properties": { + "inputElementCodec": { + "description": "The codec to use for interpreting an element in the input PTable.", + "type": "object", + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + } + }, + "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" + }, + "sideInputs": { + "description": "Zero or more side inputs.", + "type": "array", + "items": { + "$ref": "SideInputInfo" + } + }, + "originalCombineValuesStepName": { + "description": "If this instruction includes a combining function, this is the name of the\nCombineValues instruction lifted into this instruction.", + "type": "string" + }, + "input": { + "description": "Describes the input to the partial group-by-key instruction.", + "$ref": "InstructionInput" + } + }, + "id": "PartialGroupByKeyInstruction" + }, + "InstructionInput": { + "type": "object", + "properties": { + "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" + }, + "outputNum": { + "description": "The output index (origin zero) within the producer.", + "format": "int32", + "type": "integer" + } + }, + "id": "InstructionInput", + "description": "An input of an instruction, as a reference to an output of a\nproducer instruction." + }, + "StageSource": { + "description": "Description of an input or output of an execution stage.", + "type": "object", + "properties": { + "name": { + "description": "Dataflow service generated name for this source.", + "type": "string" + }, + "sizeBytes": { + "description": "Size of the source, if measurable.", + "format": "int64", + "type": "string" + }, + "userName": { + "type": "string", + "description": "Human-readable name for this source; may be user or system generated." + }, + "originalTransformOrCollection": { + "description": "User name for the original user transform or collection with which this\nsource is most closely associated.", + "type": "string" + } + }, + "id": "StageSource" + }, + "StringList": { + "properties": { + "elements": { + "description": "Elements of the list.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "id": "StringList", + "description": "A metric value representing a list of strings.", + "type": "object" + }, + "DisplayData": { + "id": "DisplayData", + "description": "Data provided with a pipeline or transform to provide descriptive info.", + "type": "object", + "properties": { + "timestampValue": { + "type": "string", + "description": "Contains value if the data is of timestamp type.", + "format": "google-datetime" + }, + "javaClassValue": { + "description": "Contains value if the data is of java class type.", + "type": "string" + }, + "boolValue": { + "type": "boolean", + "description": "Contains value if the data is of a boolean type." + }, + "strValue": { + "description": "Contains value if the data is of string type.", + "type": "string" + }, + "durationValue": { + "description": "Contains value if the data is of duration type.", + "format": "google-duration", + "type": "string" + }, + "int64Value": { + "type": "string", + "description": "Contains value if the data is of int64 type.", + "format": "int64" + }, + "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" + }, + "label": { + "description": "An optional label to display in a dax UI for the element.", + "type": "string" + }, + "url": { + "description": "An optional full URL.", + "type": "string" } } - } - }, - "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" - }, - "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" + "LeaseWorkItemRequest": { + "description": "Request to lease WorkItems.", + "type": "object", + "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" + }, + "workItemTypes": { + "description": "Filter for WorkItem type.", + "type": "array", + "items": { + "type": "string" + } + }, + "workerId": { + "description": "Identifies the worker leasing work -- typically the ID of the\nvirtual machine running the worker.", + "type": "string" + }, + "workerCapabilities": { + "description": "Worker capabilities. WorkItems might be limited to workers with specific\ncapabilities.", + "type": "array", + "items": { + "type": "string" + } + }, + "requestedLeaseDuration": { + "type": "string", + "description": "The initial lease period.", + "format": "google-duration" + } + }, + "id": "LeaseWorkItemRequest" }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" + "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": { + "type": "string", + "description": "The worker id, i.e., VM hostname." + }, + "location": { + "type": "string", + "description": "The location which contains the job specified by job_id." + } + }, + "id": "GetDebugConfigRequest" }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" + "GetTemplateResponse": { + "description": "The response to a GetTemplate request.", + "type": "object", + "properties": { + "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." + } + }, + "id": "GetTemplateResponse" }, - "fields": { - "type": "string", - "location": "query", - "description": "Selector specifying which fields to include in a partial response." + "Parameter": { + "properties": { + "key": { + "description": "Key or name for this parameter.", + "type": "string" + }, + "value": { + "description": "Value for this parameter.", + "type": "any" + } + }, + "id": "Parameter", + "description": "Structured data associated with this message.", + "type": "object" }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" + "ReportWorkItemStatusRequest": { + "type": "object", + "properties": { + "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" + } + }, + "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": { + "type": "string", + "description": "The current timestamp at the worker.", + "format": "google-datetime" + }, + "location": { + "description": "The location which contains the WorkItem's job.", + "type": "string" + } + }, + "id": "ReportWorkItemStatusRequest", + "description": "Request to report the status of WorkItems." }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" + "PipelineDescription": { + "id": "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": { + "type": "array", + "items": { + "$ref": "ExecutionStageSummary" + }, + "description": "Description of each stage of execution of the pipeline." + }, + "originalPipelineTransform": { + "type": "array", + "items": { + "$ref": "TransformSummary" + }, + "description": "Description of each transform in the pipeline and collections between them." + } + } }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" + "StreamingConfigTask": { + "description": "A task that carries configuration information for streaming computations.", + "type": "object", + "properties": { + "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" + }, + "userStepToStateFamilyNameMap": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Map from user step names to state families." + }, + "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" + } + }, + "id": "StreamingConfigTask" }, - "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" + "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": { + "additionalProperties": { + "$ref": "JobExecutionStageInfo" + }, + "description": "A mapping from each stage to the information about that stage.", + "type": "object" + } + }, + "id": "JobExecutionInfo" }, - "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" + "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": { + "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" }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - } - }, - "schemas": { - "ListJobMessagesResponse": { - "id": "ListJobMessagesResponse", - "description": "Response to a request to list job messages.", + "FailedLocation": { + "description": "Indicates which location failed to respond to a request for data.", "type": "object", "properties": { - "nextPageToken": { - "description": "The token to obtain the next page of results if there are more.", + "name": { + "description": "The name of the failed location.", "type": "string" + } + }, + "id": "FailedLocation" + }, + "Disk": { + "id": "Disk", + "description": "Describes the data disk used by a workflow job.", + "type": "object", + "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" }, - "autoscalingEvents": { - "description": "Autoscaling events in ascending timestamp order.", - "type": "array", - "items": { - "$ref": "AutoscalingEvent" - } + "diskType": { + "type": "string", + "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" }, - "jobMessages": { - "description": "Messages in ascending timestamp order.", - "type": "array", - "items": { - "$ref": "JobMessage" - } + "mountPoint": { + "description": "Directory in a VM where disk is mounted.", + "type": "string" } } }, "CounterMetadata": { + "description": "CounterMetadata includes all static non-name non-value counter attributes.", + "type": "object", "properties": { "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.", - "Aggregated value tracks the latest value of a variable." - ], "enum": [ "INVALID", "SUM", @@ -1606,14 +1938,25 @@ "LATEST_VALUE" ], "description": "Counter aggregation kind.", - "type": "string" + "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.", + "Aggregated value tracks the latest value of a variable." + ] }, "description": { "description": "Human-readable description of the counter semantics.", "type": "string" }, "standardUnits": { - "type": "string", "enumDescriptions": [ "Counter returns a value in bytes.", "Counter returns a value in bytes per second.", @@ -1634,25 +1977,46 @@ "TIMESTAMP_USEC", "TIMESTAMP_NSEC" ], - "description": "System defined Units, see above enum." + "description": "System defined Units, see above enum.", + "type": "string" }, "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" + "id": "CounterMetadata" + }, + "ListJobMessagesResponse": { + "id": "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": { + "type": "array", + "items": { + "$ref": "AutoscalingEvent" + }, + "description": "Autoscaling events in ascending timestamp order." + } + } }, "ApproximateReportedProgress": { + "id": "ApproximateReportedProgress", "description": "A progress measurement of a WorkItem by a worker.", "type": "object", "properties": { - "remainingParallelism": { - "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.", - "$ref": "ReportedParallelism" - }, "position": { "$ref": "Position", "description": "A Position within the work to represent a progress." @@ -1663,26 +2027,14 @@ "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." - } - }, - "id": "ApproximateReportedProgress" - }, - "StateFamilyConfig": { - "description": "State family configuration.", - "type": "object", - "properties": { - "stateFamily": { - "description": "The state family value.", - "type": "string" + "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.", + "$ref": "ReportedParallelism" }, - "isRead": { - "description": "If true, this family corresponds to a read operation.", - "type": "boolean" + "remainingParallelism": { + "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.", + "$ref": "ReportedParallelism" } - }, - "id": "StateFamilyConfig" + } }, "IntegerList": { "description": "A metric value representing a list of integers.", @@ -1698,6 +2050,21 @@ }, "id": "IntegerList" }, + "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" + }, "ResourceUtilizationReportResponse": { "description": "Service-side response to WorkerMessage reporting resource utilization.", "type": "object", @@ -1705,23 +2072,29 @@ "id": "ResourceUtilizationReportResponse" }, "SourceSplitResponse": { - "id": "SourceSplitResponse", "description": "The response to a SourceSplitRequest.", "type": "object", "properties": { + "shards": { + "type": "array", + "items": { + "$ref": "SourceSplitShard" + }, + "description": "DEPRECATED in favor of bundles." + }, "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" + "type": "string", + "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." + ] }, "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.", @@ -1729,23 +2102,33 @@ "items": { "$ref": "DerivedSource" } - }, - "shards": { - "description": "DEPRECATED in favor of bundles.", - "type": "array", - "items": { - "$ref": "SourceSplitShard" - } } - } + }, + "id": "SourceSplitResponse" }, "ParallelInstruction": { "description": "Describes a particular operation comprising a MapTask.", "type": "object", "properties": { + "parDo": { + "$ref": "ParDoInstruction", + "description": "Additional information for ParDo instructions." + }, + "read": { + "$ref": "ReadInstruction", + "description": "Additional information for Read instructions." + }, + "originalName": { + "description": "System-defined name for the operation in the original workflow graph.", + "type": "string" + }, + "flatten": { + "$ref": "FlattenInstruction", + "description": "Additional information for Flatten instructions." + }, "write": { - "description": "Additional information for Write instructions.", - "$ref": "WriteInstruction" + "$ref": "WriteInstruction", + "description": "Additional information for Write instructions." }, "systemName": { "description": "System-defined name of this operation.\nUnique across the workflow.", @@ -1765,72 +2148,63 @@ "name": { "description": "User-provided name of this operation.", "type": "string" - }, - "parDo": { - "$ref": "ParDoInstruction", - "description": "Additional information for ParDo instructions." - }, - "read": { - "description": "Additional information for Read instructions.", - "$ref": "ReadInstruction" - }, - "flatten": { - "$ref": "FlattenInstruction", - "description": "Additional information for Flatten instructions." - }, - "originalName": { - "description": "System-defined name for the operation in the original workflow graph.", - "type": "string" } }, "id": "ParallelInstruction" }, - "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.", + "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": { - "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/", + "end": { + "description": "The end (exclusive) of the key range.", "type": "string" }, - "name": { - "description": "The name of the package.", + "start": { + "type": "string", + "description": "The start (inclusive) of the key range." + }, + "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" } }, - "id": "Package" + "id": "KeyRangeDataDiskAssignment" }, - "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.", + "Package": { + "id": "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": { - "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\".", + "name": { + "description": "The name of the package.", "type": "string" }, - "end": { - "type": "string", - "description": "The end (exclusive) of the key range." + "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" } - }, - "id": "KeyRangeDataDiskAssignment" + } }, "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", "properties": { + "userFn": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The user function to invoke.", + "type": "object" + }, "input": { - "$ref": "InstructionInput", - "description": "The input." + "description": "The input.", + "$ref": "InstructionInput" }, "numOutputs": { - "type": "integer", "description": "The number of outputs.", - "format": "int32" + "format": "int32", + "type": "integer" }, "sideInputs": { "description": "Zero or more side inputs.", @@ -1845,93 +2219,24 @@ "items": { "$ref": "MultiOutputInfo" } - }, - "userFn": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "The user function to invoke.", - "type": "object" } }, - "id": "ParDoInstruction" + "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." }, - "MetricUpdate": { + "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", "properties": { - "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" - }, - "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": { - "$ref": "MetricStructuredName", - "description": "Name of the metric." - }, - "distribution": { - "type": "any", - "description": "A struct value describing properties of a distribution of numeric values." - }, - "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" - }, - "gauge": { - "type": "any", - "description": "A struct value describing properties of a Gauge.\nMetrics of gauge type show the value of a metric across time, and is\naggregated based on the newest value." - }, - "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" - }, - "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" - }, - "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" + "reason": { + "type": "string", + "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." } }, - "id": "MetricUpdate", - "description": "Describes the state of a metric.", - "type": "object" + "id": "WorkerShutdownNotice" }, "CounterStructuredName": { - "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", "properties": { - "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": { - "type": "string", - "description": "System generated name of the original step in the user's graph, before\noptimization." - }, "workerId": { "description": "ID of a particular worker.", "type": "string" @@ -1941,6 +2246,7 @@ "type": "string" }, "origin": { + "type": "string", "enumDescriptions": [ "Counter was created by the Dataflow system.", "Counter was created by the user." @@ -1949,8 +2255,7 @@ "SYSTEM", "USER" ], - "description": "One of the standard Origins defined above.", - "type": "string" + "description": "One of the standard Origins defined above." }, "name": { "description": "Counter name. Not necessarily globally-unique, but unique within the\ncontext of the other fields.\nRequired.", @@ -1972,46 +2277,110 @@ "componentStepName": { "type": "string", "description": "Name of the optimized step being executed by the workers." + }, + "portion": { + "enumDescriptions": [ + "Counter portion has not been set.", + "Counter reports a key.", + "Counter reports a value." + ], + "enum": [ + "ALL", + "KEY", + "VALUE" + ], + "description": "Portion of this counter, either key or value.", + "type": "string" + }, + "originalStepName": { + "description": "System generated name of the original step in the user's graph, before\noptimization.", + "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" }, - "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.", + "MetricUpdate": { "type": "object", "properties": { - "reason": { - "type": "string", - "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." + "gauge": { + "description": "A struct value describing properties of a Gauge.\nMetrics of gauge type show the value of a metric across time, and is\naggregated based on the newest value.", + "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" + }, + "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": { + "$ref": "MetricStructuredName", + "description": "Name of the metric." + }, + "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" } }, - "id": "WorkerShutdownNotice" + "id": "MetricUpdate", + "description": "Describes the state of a metric." }, "ApproximateProgress": { - "description": "Obsolete in favor of ApproximateReportedProgress and ApproximateSplitRequest.", - "type": "object", "properties": { - "percentComplete": { - "description": "Obsolete.", - "format": "float", - "type": "number" - }, "remainingTime": { + "type": "string", "description": "Obsolete.", - "format": "google-duration", - "type": "string" + "format": "google-duration" }, "position": { - "$ref": "Position", - "description": "Obsolete." + "description": "Obsolete.", + "$ref": "Position" + }, + "percentComplete": { + "description": "Obsolete.", + "format": "float", + "type": "number" } }, - "id": "ApproximateProgress" + "id": "ApproximateProgress", + "description": "Obsolete in favor of ApproximateReportedProgress and ApproximateSplitRequest.", + "type": "object" }, "WorkerMessageResponse": { + "description": "A worker_message response allows the server to pass information to the\nsender.", + "type": "object", "properties": { "workerMetricsResponse": { - "$ref": "ResourceUtilizationReportResponse", - "description": "Service's response to reporting worker metrics (currently empty)." + "description": "Service's response to reporting worker metrics (currently empty).", + "$ref": "ResourceUtilizationReportResponse" }, "workerShutdownNoticeResponse": { "description": "Service's response to shutdown notice (currently empty).", @@ -2022,9 +2391,7 @@ "description": "The service's response to a worker's health report." } }, - "id": "WorkerMessageResponse", - "description": "A worker_message response allows the server to pass information to the\nsender.", - "type": "object" + "id": "WorkerMessageResponse" }, "TemplateMetadata": { "id": "TemplateMetadata", @@ -2043,57 +2410,65 @@ } }, "description": { - "description": "Optional. A description of the template.", - "type": "string" + "type": "string", + "description": "Optional. A description of the template." } } }, "WorkerMessage": { + "type": "object", "properties": { - "workerLifecycleEvent": { - "$ref": "WorkerLifecycleEvent", - "description": "Record of worker lifecycle events." - }, "workerShutdownNotice": { "$ref": "WorkerShutdownNotice", "description": "Shutdown notice by workers." }, "workerHealthReport": { - "$ref": "WorkerHealthReport", - "description": "The health of a worker." - }, - "workerMessageCode": { - "$ref": "WorkerMessageCode", - "description": "A worker message code." + "description": "The health of a worker.", + "$ref": "WorkerHealthReport" }, "workerMetrics": { "$ref": "ResourceUtilizationReport", "description": "Resource metrics reported by workers." }, + "workerMessageCode": { + "$ref": "WorkerMessageCode", + "description": "A worker message code." + }, "labels": { - "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", "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": { - "type": "string", "description": "The timestamp of the worker_message.", - "format": "google-datetime" + "format": "google-datetime", + "type": "string" + }, + "workerLifecycleEvent": { + "description": "Record of worker lifecycle events.", + "$ref": "WorkerLifecycleEvent" } }, "id": "WorkerMessage", - "description": "WorkerMessage provides information to the backend about a worker.", - "type": "object" + "description": "WorkerMessage provides information to the backend about a worker." + }, + "WorkerShutdownNoticeResponse": { + "description": "Service-side response to WorkerMessage issuing shutdown notice.", + "type": "object", + "properties": {}, + "id": "WorkerShutdownNoticeResponse" }, "JobMetrics": { + "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", "properties": { "metricTime": { - "type": "string", "description": "Timestamp as of which metric values are current.", - "format": "google-datetime" + "format": "google-datetime", + "type": "string" }, "metrics": { "description": "All metrics for this job.", @@ -2102,17 +2477,10 @@ "$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." - }, - "WorkerShutdownNoticeResponse": { - "properties": {}, - "id": "WorkerShutdownNoticeResponse", - "description": "Service-side response to WorkerMessage issuing shutdown notice.", - "type": "object" + } }, "FloatingPointList": { + "id": "FloatingPointList", "description": "A metric value representing a list of floating point numbers.", "type": "object", "properties": { @@ -2124,74 +2492,73 @@ "type": "number" } } - }, - "id": "FloatingPointList" + } }, "CounterUpdate": { "description": "An update to a Counter sent from a worker.", "type": "object", "properties": { + "integerGauge": { + "description": "Gauge data", + "$ref": "IntegerGauge" + }, + "floatingPointList": { + "$ref": "FloatingPointList", + "description": "List of floating point numbers, for Set." + }, + "integer": { + "$ref": "SplitInt64", + "description": "Integer value for Sum, Max, Min." + }, + "structuredNameAndMetadata": { + "description": "Counter structured name and metadata.", + "$ref": "CounterStructuredNameAndMetadata" + }, + "integerList": { + "$ref": "IntegerList", + "description": "List of integers, for Set." + }, + "integerMean": { + "$ref": "IntegerMean", + "description": "Integer mean aggregation value for Mean." + }, "floatingPoint": { "description": "Floating point value for Sum, Max, Min.", "format": "double", "type": "number" }, - "integerMean": { - "description": "Integer mean aggregation value for Mean.", - "$ref": "IntegerMean" - }, - "internal": { - "type": "any", - "description": "Value for internally-defined counters used by the Dataflow service." - }, "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" }, + "internal": { + "description": "Value for internally-defined counters used by the Dataflow service.", + "type": "any" + }, "floatingPointMean": { "$ref": "FloatingPointMean", "description": "Floating point mean aggregation value for Mean." }, "boolean": { - "type": "boolean", - "description": "Boolean value for And, Or." + "description": "Boolean value for And, Or.", + "type": "boolean" }, "nameAndKind": { "description": "Counter name and aggregation type.", "$ref": "NameAndKind" }, "stringList": { - "description": "List of strings, for Set.", - "$ref": "StringList" + "$ref": "StringList", + "description": "List of strings, for Set." }, "distribution": { - "description": "Distribution data", - "$ref": "DistributionUpdate" + "$ref": "DistributionUpdate", + "description": "Distribution data" }, "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" - }, - "integerGauge": { - "$ref": "IntegerGauge", - "description": "Gauge data" - }, - "floatingPointList": { - "$ref": "FloatingPointList", - "description": "List of floating point numbers, for Set." - }, - "integer": { - "$ref": "SplitInt64", - "description": "Integer value for Sum, Max, Min." - }, - "integerList": { - "description": "List of integers, for Set.", - "$ref": "IntegerList" - }, - "structuredNameAndMetadata": { - "description": "Counter structured name and metadata.", - "$ref": "CounterStructuredNameAndMetadata" } }, "id": "CounterUpdate" @@ -2217,6 +2584,8 @@ "id": "SourceMetadata" }, "DistributionUpdate": { + "description": "A metric value representing a distribution.", + "type": "object", "properties": { "histogram": { "description": "(Optional) Histogram of value counts for the distribution.", @@ -2236,2968 +2605,2599 @@ }, "sumOfSquares": { "description": "Use a double since the sum of squares is likely to overflow int64.", - "format": "double", - "type": "number" - }, - "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." - } - }, - "id": "DistributionUpdate", - "description": "A metric value representing a distribution.", - "type": "object" - }, - "SourceFork": { - "description": "DEPRECATED in favor of DynamicSourceSplit.", - "type": "object", - "properties": { - "residual": { - "description": "DEPRECATED", - "$ref": "SourceSplitShard" - }, - "residualSource": { - "description": "DEPRECATED", - "$ref": "DerivedSource" - }, - "primary": { - "$ref": "SourceSplitShard", - "description": "DEPRECATED" - }, - "primarySource": { - "$ref": "DerivedSource", - "description": "DEPRECATED" - } - }, - "id": "SourceFork" - }, - "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" - } - }, - "id": "WorkerHealthReportResponse", - "description": "WorkerHealthReportResponse contains information returned to the worker\nin response to a health ping.", - "type": "object" - }, - "WorkItemStatus": { - "description": "Conveys a worker's progress through the work described by a WorkItem.", - "type": "object", - "properties": { - "requestedLeaseDuration": { - "description": "Amount of time the worker requests for its lease.", - "format": "google-duration", - "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.", - "format": "int64", - "type": "string" - }, - "stopPosition": { - "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.", - "$ref": "Position" - }, - "completed": { - "description": "True if the WorkItem was completed (successfully or unsuccessfully).", - "type": "boolean" - }, - "reportedProgress": { - "$ref": "ApproximateReportedProgress", - "description": "The worker's progress through this WorkItem." - }, - "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": { - "type": "array", - "items": { - "$ref": "CounterUpdate" - }, - "description": "Worker output counters for this WorkItem." - }, - "workItemId": { - "description": "Identifies the WorkItem.", - "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": { - "$ref": "SourceOperationResponse", - "description": "If the work item represented a SourceOperationRequest, and the work\nis completed, contains the result of the operation." - }, - "progress": { - "description": "DEPRECATED in favor of reported_progress.", - "$ref": "ApproximateProgress" - } - }, - "id": "WorkItemStatus" - }, - "ComponentSource": { - "description": "Description of an interstitial value between transforms in an execution\nstage.", - "type": "object", - "properties": { - "userName": { - "description": "Human-readable name for this transform; 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" - } - }, - "id": "ComponentSource" - }, - "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", - "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" - } - }, - "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" - } - }, - "id": "Histogram" - }, - "WorkItemServiceState": { - "description": "The Dataflow service's idea of the current state of a WorkItem\nbeing processed by a worker.", - "type": "object", - "properties": { - "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": { - "description": "DEPRECATED in favor of split_request.", - "$ref": "ApproximateProgress" - }, - "splitRequest": { - "$ref": "ApproximateSplitRequest", - "description": "The progress point in the WorkItem where the Dataflow service\nsuggests that the worker truncate the task." - }, - "suggestedStopPosition": { - "$ref": "Position", - "description": "Obsolete, always empty." - }, - "reportStatusInterval": { - "description": "New recommended reporting interval.", - "format": "google-duration", - "type": "string" - }, - "harnessData": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "Other data returned by the service, specific to the particular\nworker harness.", - "type": "object" - }, - "leaseExpireTime": { - "type": "string", - "description": "Time at which the current lease will expire.", - "format": "google-datetime" - }, - "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" - } - } - }, - "id": "WorkItemServiceState" - }, - "MetricStructuredName": { - "description": "Identifies a metric, by describing the source which generated the\nmetric.", - "type": "object", - "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" - }, - "name": { - "description": "Worker-defined metric name.", - "type": "string" - }, - "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": { - "sink": { - "description": "The sink to write the output value to.", - "$ref": "Sink" + "format": "double", + "type": "number" }, - "tag": { - "description": "The id of the TupleTag the user code will tag the output value by.", - "type": "string" + "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." } }, - "id": "SeqMapTaskOutputInfo" + "id": "DistributionUpdate" }, - "JobExecutionStageInfo": { - "description": "Contains information about how a particular\ngoogle.dataflow.v1beta3.Step will be executed.", + "WorkerHealthReportResponse": { + "description": "WorkerHealthReportResponse contains information returned to the worker\nin response to a health ping.", "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" - } + "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": "JobExecutionStageInfo" + "id": "WorkerHealthReportResponse" }, - "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.", + "SourceFork": { + "description": "DEPRECATED in favor of DynamicSourceSplit.", "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" + "residual": { + "$ref": "SourceSplitShard", + "description": "DEPRECATED" }, - "end": { - "description": "The end (exclusive) of the key range.", - "type": "string" + "residualSource": { + "description": "DEPRECATED", + "$ref": "DerivedSource" }, - "deprecatedPersistentDirectory": { - "type": "string", - "description": "DEPRECATED. The location of the persistent state for this range, as a\npersistent directory in the worker local filesystem." + "primary": { + "$ref": "SourceSplitShard", + "description": "DEPRECATED" }, - "deliveryEndpoint": { - "description": "The physical location of this range assignment to be used for\nstreaming computation cross-worker message delivery.", - "type": "string" + "primarySource": { + "$ref": "DerivedSource", + "description": "DEPRECATED" } }, - "id": "KeyRangeLocation" - }, - "SourceGetMetadataRequest": { - "id": "SourceGetMetadataRequest", - "description": "A request to compute the SourceMetadata of a Source.", - "type": "object", - "properties": { - "source": { - "description": "Specification of the source whose metadata should be computed.", - "$ref": "Source" - } - } + "id": "SourceFork" }, - "SeqMapTask": { - "description": "Describes a particular function to invoke.", + "WorkItemStatus": { + "description": "Conveys a worker's progress through the work described by a WorkItem.", "type": "object", "properties": { - "name": { - "description": "The user-provided name of the SeqDo operation.", + "counterUpdates": { + "description": "Worker output counters for this WorkItem.", + "type": "array", + "items": { + "$ref": "CounterUpdate" + } + }, + "workItemId": { + "description": "Identifies the WorkItem.", "type": "string" }, - "outputInfos": { - "description": "Information about each of the outputs.", + "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": "SeqMapTaskOutputInfo" + "$ref": "Status" } }, - "inputs": { - "description": "Information about each of the inputs.", + "metricUpdates": { + "description": "DEPRECATED in favor of counter_updates.", "type": "array", "items": { - "$ref": "SideInputInfo" + "$ref": "MetricUpdate" } }, - "stageName": { - "description": "System-defined name of the stage containing the SeqDo operation.\nUnique across the workflow.", - "type": "string" + "dynamicSourceSplit": { + "$ref": "DynamicSourceSplit", + "description": "See documentation of stop_position." }, - "systemName": { - "description": "System-defined name of the SeqDo operation.\nUnique across the workflow.", - "type": "string" + "sourceOperationResponse": { + "description": "If the work item represented a SourceOperationRequest, and the work\nis completed, contains the result of the operation.", + "$ref": "SourceOperationResponse" }, - "userFn": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "The user function to invoke.", - "type": "object" - } - }, - "id": "SeqMapTask" - }, - "NameAndKind": { - "properties": { - "name": { - "description": "Name of the counter.", - "type": "string" + "progress": { + "description": "DEPRECATED in favor of reported_progress.", + "$ref": "ApproximateProgress" }, - "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.", - "Aggregated value tracks the latest value of a variable." - ], - "enum": [ - "INVALID", - "SUM", - "MAX", - "MIN", - "MEAN", - "OR", - "AND", - "SET", - "DISTRIBUTION", - "LATEST_VALUE" - ], - "description": "Counter aggregation kind.", + "requestedLeaseDuration": { + "description": "Amount of time the worker requests for its lease.", + "format": "google-duration", "type": "string" - } - }, - "id": "NameAndKind", - "description": "Basic metadata about a counter.", - "type": "object" - }, - "WorkerMessageCode": { - "properties": { - "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" }, - "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" - } - }, - "id": "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" - }, - "CustomSourceLocation": { - "properties": { - "stateful": { - "description": "Whether this source is stateful.", - "type": "boolean" + "reportIndex": { + "type": "string", + "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" + }, + "stopPosition": { + "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.", + "$ref": "Position" + }, + "completed": { + "type": "boolean", + "description": "True if the WorkItem was completed (successfully or unsuccessfully)." + }, + "reportedProgress": { + "description": "The worker's progress through this WorkItem.", + "$ref": "ApproximateReportedProgress" + }, + "sourceFork": { + "description": "DEPRECATED in favor of dynamic_source_split.", + "$ref": "SourceFork" + }, + "totalThrottlerWaitTimeSeconds": { + "description": "Total time the worker spent being throttled by external systems.", + "format": "double", + "type": "number" } }, - "id": "CustomSourceLocation", - "description": "Identifies the location of a custom souce.", - "type": "object" + "id": "WorkItemStatus" }, - "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.", + "ComponentSource": { + "description": "Description of an interstitial value between transforms in an execution\nstage.", "type": "object", "properties": { - "systemName": { - "description": "System-defined name of this MapTask.\nUnique across the workflow.", + "name": { + "description": "Dataflow service generated name for this source.", "type": "string" }, - "stageName": { + "userName": { "type": "string", - "description": "System-defined name of the stage containing this MapTask.\nUnique across the workflow." - }, - "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": { - "count": { - "description": "The number of values being aggregated.", - "$ref": "SplitInt64" + "description": "Human-readable name for this transform; may be user or system generated." }, - "sum": { - "description": "The sum of all values being aggregated.", - "format": "double", - "type": "number" + "originalTransformOrCollection": { + "description": "User name for the original user transform or collection with which this\nsource is most closely associated.", + "type": "string" } }, - "id": "FloatingPointMean" + "id": "ComponentSource" }, - "ReportWorkItemStatusResponse": { - "description": "Response from a request to report the status of WorkItems.", + "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", "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.", + "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": { - "$ref": "WorkItemServiceState" + "format": "int64", + "type": "string" } + }, + "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" } }, - "id": "ReportWorkItemStatusResponse" + "id": "Histogram" }, - "InstructionOutput": { - "description": "An output of an instruction.", + "WorkItemServiceState": { + "description": "The Dataflow service's idea of the current state of a WorkItem\nbeing processed by a worker.", "type": "object", "properties": { - "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" + "suggestedStopPosition": { + "$ref": "Position", + "description": "Obsolete, always empty." }, - "onlyCountValueBytes": { - "type": "boolean", - "description": "For system-generated byte and mean byte metrics, certain instructions\nshould only report the value size." + "reportStatusInterval": { + "type": "string", + "description": "New recommended reporting interval.", + "format": "google-duration" }, - "codec": { - "description": "The codec to use to encode data being written via this output.", + "harnessData": { + "description": "Other data returned by the service, specific to the particular\nworker harness.", "type": "object", "additionalProperties": { "description": "Properties of the object.", "type": "any" } }, - "name": { - "description": "The user-provided name of this output.", + "leaseExpireTime": { + "description": "Time at which the current lease will expire.", + "format": "google-datetime", "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" - } - }, - "id": "InstructionOutput" - }, - "IntegerGauge": { - "properties": { - "value": { - "$ref": "SplitInt64", - "description": "The value of the variable represented by this gauge." + "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" + } }, - "timestamp": { - "description": "The time at which this value was measured. Measured as msecs from epoch.", - "format": "google-datetime", - "type": "string" + "nextReportIndex": { + "type": "string", + "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" + }, + "suggestedStopPoint": { + "description": "DEPRECATED in favor of split_request.", + "$ref": "ApproximateProgress" + }, + "splitRequest": { + "description": "The progress point in the WorkItem where the Dataflow service\nsuggests that the worker truncate the task.", + "$ref": "ApproximateSplitRequest" } }, - "id": "IntegerGauge", - "description": "A metric value representing temporal values of a variable.", - "type": "object" + "id": "WorkItemServiceState" }, - "CreateJobFromTemplateRequest": { - "description": "A request to create a Cloud Dataflow job from a template.", - "type": "object", + "MetricStructuredName": { "properties": { - "environment": { - "description": "The runtime environment for the job.", - "$ref": "RuntimeEnvironment" + "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" }, - "location": { - "description": "The location to which to direct the request.", + "name": { + "description": "Worker-defined metric name.", "type": "string" }, - "parameters": { + "context": { + "type": "object", "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" - }, - "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" - } - }, - "id": "CreateJobFromTemplateRequest" - }, - "IntegerMean": { - "type": "object", - "properties": { - "count": { - "$ref": "SplitInt64", - "description": "The number of values being aggregated." - }, - "sum": { - "description": "The sum of all values being aggregated.", - "$ref": "SplitInt64" + "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." } }, - "id": "IntegerMean", - "description": "A representation of an integer mean metric contribution." + "id": "MetricStructuredName", + "description": "Identifies a metric, by describing the source which generated the\nmetric.", + "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.", + "SeqMapTaskOutputInfo": { + "description": "Information about an output of a SeqMapTask.", "type": "object", "properties": { - "jobs": { - "description": "A subset of the requested job information.", - "type": "array", - "items": { - "$ref": "Job" - } + "sink": { + "$ref": "Sink", + "description": "The sink to write the output value to." }, - "nextPageToken": { - "description": "Set if there may be more results than fit in this response.", + "tag": { + "description": "The id of the TupleTag the user code will tag the output value by.", "type": "string" - }, - "failedLocation": { - "description": "Zero or more messages describing locations that failed to respond.", - "type": "array", - "items": { - "$ref": "FailedLocation" - } } }, - "id": "ListJobsResponse" + "id": "SeqMapTaskOutputInfo" }, - "ComputationTopology": { - "description": "All configuration data for a particular Computation.", + "JobExecutionStageInfo": { + "description": "Contains information about how a particular\ngoogle.dataflow.v1beta3.Step will be executed.", "type": "object", "properties": { - "systemStageName": { - "description": "The system stage name.", - "type": "string" - }, - "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.", + "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": { - "$ref": "StreamLocation" + "type": "string" } } }, - "id": "ComputationTopology" + "id": "JobExecutionStageInfo" }, - "RuntimeEnvironment": { - "description": "The environment values to set at runtime.", + "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": { - "serviceAccountEmail": { - "description": "The email address of the service account to run the job as.", + "end": { + "description": "The end (exclusive) of the key range.", "type": "string" }, - "tempLocation": { - "description": "The Cloud Storage path to use for temporary files.\nMust be a valid Cloud Storage URL, beginning with `gs://`.", + "deprecatedPersistentDirectory": { + "description": "DEPRECATED. The location of the persistent state for this range, as a\npersistent directory in the worker local filesystem.", "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.", + "deliveryEndpoint": { + "description": "The physical location of this range assignment to be used for\nstreaming computation cross-worker message delivery.", "type": "string" }, - "network": { - "type": "string", - "description": "Network to which VMs will be assigned. If empty or unspecified,\nthe service will use the network \"default\"." - }, - "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.", + "start": { + "description": "The start (inclusive) of the key range.", "type": "string" }, - "additionalExperiments": { - "description": "Additional experiment flags for the job.", - "type": "array", - "items": { - "type": "string" - } - }, - "subnetwork": { - "description": "Subnetwork to which VMs will be assigned, if desired. Expected to be of\nthe form \"regions/REGION/subnetworks/SUBNETWORK\".", + "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" - }, - "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" + "id": "KeyRangeLocation" }, - "MountedDataDisk": { - "description": "Describes mounted data disk.", + "SourceGetMetadataRequest": { + "id": "SourceGetMetadataRequest", + "description": "A request to compute the SourceMetadata of a Source.", "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" + "source": { + "$ref": "Source", + "description": "Specification of the source whose metadata should be computed." } - }, - "id": "MountedDataDisk" + } }, - "StreamingSideInputLocation": { - "description": "Identifies the location of a streaming side input.", + "NameAndKind": { + "description": "Basic metadata about a counter.", "type": "object", "properties": { - "stateFamily": { - "description": "Identifies the state family where this side input is stored.", + "name": { + "description": "Name of the counter.", "type": "string" }, - "tag": { + "kind": { + "enum": [ + "INVALID", + "SUM", + "MAX", + "MIN", + "MEAN", + "OR", + "AND", + "SET", + "DISTRIBUTION", + "LATEST_VALUE" + ], + "description": "Counter aggregation kind.", "type": "string", - "description": "Identifies the particular side input within the streaming Dataflow job." - } - }, - "id": "StreamingSideInputLocation" - }, - "LaunchTemplateResponse": { - "description": "Response to the request to launch a template.", - "type": "object", - "properties": { - "job": { - "description": "The job that was launched, if the request was not a dry run and\nthe job was successfully launched.", - "$ref": "Job" + "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." + ] } }, - "id": "LaunchTemplateResponse" + "id": "NameAndKind" }, - "Job": { + "SeqMapTask": { + "type": "object", "properties": { - "tempFiles": { - "type": "array", - "items": { - "type": "string" + "userFn": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" }, - "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}" - }, - "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" + "description": "The user function to invoke.", + "type": "object" }, "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])?`", + "description": "The user-provided name of the SeqDo operation.", "type": "string" }, - "steps": { - "description": "The top-level steps that constitute the entire job.", + "outputInfos": { + "description": "Information about each of the outputs.", "type": "array", "items": { - "$ref": "Step" - } - }, - "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" - }, - "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" - }, - "currentState": { - "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" - ], - "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." - }, - "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" - } - }, - "labels": { - "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", - "additionalProperties": { - "type": "string" + "$ref": "SeqMapTaskOutputInfo" } }, - "environment": { - "$ref": "Environment", - "description": "The environment for the job." - }, - "createTime": { - "description": "The timestamp when the job was initially created. Immutable and set by the\nCloud Dataflow service.", - "format": "google-datetime", - "type": "string" - }, - "stageStates": { - "description": "This field may be mutated by the Cloud Dataflow service;\ncallers cannot mutate it.", + "inputs": { + "description": "Information about each of the inputs.", "type": "array", "items": { - "$ref": "ExecutionStageState" + "$ref": "SideInputInfo" } }, - "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" - }, - "projectId": { - "description": "The ID of the Cloud Platform project that the job belongs to.", + "stageName": { + "description": "System-defined name of the stage containing the SeqDo operation.\nUnique across the workflow.", "type": "string" }, - "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.", - "$ref": "PipelineDescription" - }, - "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.", + "systemName": { + "description": "System-defined name of the SeqDo operation.\nUnique across the workflow.", "type": "string" - }, - "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.", - "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" - ] } }, - "id": "Job", - "description": "Defines a job to be run by the Cloud Dataflow service.", - "type": "object" + "id": "SeqMapTask", + "description": "Describes a particular function to invoke." }, - "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.", + "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": { - "residual": { - "$ref": "DerivedSource", - "description": "Residual part (returned to the pool of work).\nSpecified relative to the previously-current source." + "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" }, - "primary": { - "$ref": "DerivedSource", - "description": "Primary part (continued to be processed by worker).\nSpecified relative to the previously-current source.\nBecomes current." + "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" } }, - "id": "DynamicSourceSplit" + "id": "WorkerMessageCode" }, - "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", + "CustomSourceLocation": { "properties": { - "derivationMode": { - "description": "What source to base the produced source on (if any).", - "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": "Specification of the source." + "stateful": { + "description": "Whether this source is stateful.", + "type": "boolean" } }, - "id": "DerivedSource" + "id": "CustomSourceLocation", + "description": "Identifies the location of a custom souce.", + "type": "object" }, - "SourceOperationResponse": { - "description": "The result of a SourceOperationRequest, specified in\nReportWorkItemStatusRequest.source_operation when the work item\nis completed.", + "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": { - "split": { - "$ref": "SourceSplitResponse", - "description": "A response to a request to split a source." + "systemName": { + "description": "System-defined name of this MapTask.\nUnique across the workflow.", + "type": "string" }, - "getMetadata": { - "$ref": "SourceGetMetadataResponse", - "description": "A response to a request to get metadata about a source." + "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": "SourceOperationResponse" + "id": "MapTask" }, - "SendDebugCaptureResponse": { - "description": "Response to a send capture request.\nnothing", - "type": "object", - "properties": {}, - "id": "SendDebugCaptureResponse" + "FloatingPointMean": { + "properties": { + "sum": { + "type": "number", + "description": "The sum of all values being aggregated.", + "format": "double" + }, + "count": { + "description": "The number of values being aggregated.", + "$ref": "SplitInt64" + } + }, + "id": "FloatingPointMean", + "description": "A representation of a floating point mean metric contribution.", + "type": "object" }, - "SideInputInfo": { - "description": "Information about a side input of a DoFn or an input of a SeqDoFn.", + "ReportWorkItemStatusResponse": { + "description": "Response from a request to report the status of WorkItems.", "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.", + "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": "Source" + "$ref": "WorkItemServiceState" } + } + }, + "id": "ReportWorkItemStatusResponse" + }, + "InstructionOutput": { + "properties": { + "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" }, - "kind": { + "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" + }, + "codec": { "additionalProperties": { - "description": "Properties of the object.", - "type": "any" + "type": "any", + "description": "Properties of the object." }, - "description": "How to interpret the source element(s) as a side input value.", + "description": "The codec to use to encode data being written via this output.", "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.", + "name": { + "description": "The user-provided name of this output.", "type": "string" } }, - "id": "SideInputInfo" + "id": "InstructionOutput", + "description": "An output of an instruction.", + "type": "object" }, - "CounterStructuredNameAndMetadata": { - "description": "A single message which encapsulates structured name and metadata for a given\ncounter.", + "IntegerGauge": { + "description": "A metric value representing temporal values of a variable.", "type": "object", "properties": { - "metadata": { - "description": "Metadata associated with a counter", - "$ref": "CounterMetadata" + "timestamp": { + "description": "The time at which this value was measured. Measured as msecs from epoch.", + "format": "google-datetime", + "type": "string" }, - "name": { - "$ref": "CounterStructuredName", - "description": "Structured name of the counter." + "value": { + "$ref": "SplitInt64", + "description": "The value of the variable represented by this gauge." } }, - "id": "CounterStructuredNameAndMetadata" + "id": "IntegerGauge" }, - "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", + "CreateJobFromTemplateRequest": { "properties": { - "index": { - "description": "Index of the inner source.", - "format": "int32", - "type": "integer" + "environment": { + "$ref": "RuntimeEnvironment", + "description": "The runtime environment for the job." }, - "position": { - "description": "Position within the inner source.", - "$ref": "Position" + "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" + }, + "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" } }, - "id": "ConcatPosition" + "id": "CreateJobFromTemplateRequest", + "description": "A request to create a Cloud Dataflow job from a template.", + "type": "object" }, - "WriteInstruction": { - "description": "An instruction that writes records.\nTakes one input, produces no outputs.", + "IntegerMean": { + "description": "A representation of an integer mean metric contribution.", "type": "object", "properties": { - "input": { - "description": "The input.", - "$ref": "InstructionInput" + "sum": { + "description": "The sum of all values being aggregated.", + "$ref": "SplitInt64" }, - "sink": { - "description": "The sink to write to.", - "$ref": "Sink" + "count": { + "$ref": "SplitInt64", + "description": "The number of values being aggregated." } }, - "id": "WriteInstruction" + "id": "IntegerMean" }, - "AutoscalingSettings": { - "description": "Settings for WorkerPool autoscaling.", + "ListJobsResponse": { + "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", "properties": { - "algorithm": { - "enum": [ - "AUTOSCALING_ALGORITHM_UNKNOWN", - "AUTOSCALING_ALGORITHM_NONE", - "AUTOSCALING_ALGORITHM_BASIC" - ], - "description": "The algorithm to use for autoscaling.", - "type": "string", - "enumDescriptions": [ - "The algorithm is unknown, or unspecified.", - "Disable autoscaling.", - "Increase worker count over time to reduce job execution time." - ] + "nextPageToken": { + "description": "Set if there may be more results than fit in this response.", + "type": "string" }, - "maxNumWorkers": { - "description": "The maximum number of workers to cap scaling at.", - "format": "int32", - "type": "integer" + "failedLocation": { + "description": "Zero or more messages describing locations that failed to respond.", + "type": "array", + "items": { + "$ref": "FailedLocation" + } + }, + "jobs": { + "description": "A subset of the requested job information.", + "type": "array", + "items": { + "$ref": "Job" + } } - }, - "id": "AutoscalingSettings" + } }, - "StreamingComputationRanges": { - "description": "Describes full or partial data disk assignment information of the computation\nranges.", + "ComputationTopology": { + "description": "All configuration data for a particular Computation.", "type": "object", "properties": { "computationId": { "description": "The ID of the computation.", "type": "string" }, - "rangeAssignments": { - "description": "Data disk assignments for ranges from this computation.", + "inputs": { + "description": "The inputs to the computation.", "type": "array", "items": { - "$ref": "KeyRangeDataDiskAssignment" + "$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": "StreamingComputationRanges" + "id": "ComputationTopology" }, - "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.", + "RuntimeEnvironment": { + "description": "The environment values to set at runtime.", "type": "object", "properties": { - "name": { - "description": "Dataflow service generated name for this stage.", + "network": { + "description": "Network to which VMs will be assigned. If empty or unspecified,\nthe service will use the network \"default\".", "type": "string" }, - "inputSource": { - "description": "Input sources for this stage.", - "type": "array", - "items": { - "$ref": "StageSource" - } + "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" }, - "id": { - "description": "Dataflow service generated id for this stage.", + "subnetwork": { + "description": "Subnetwork to which VMs will be assigned, if desired. Expected to be of\nthe form \"regions/REGION/subnetworks/SUBNETWORK\".", "type": "string" }, - "componentTransform": { - "description": "Transforms that comprise this execution stage.", + "additionalExperiments": { "type": "array", "items": { - "$ref": "ComponentTransform" - } + "type": "string" + }, + "description": "Additional experiment flags for the job." }, - "componentSource": { - "description": "Collections produced and consumed by component transforms of this stage.", - "type": "array", - "items": { - "$ref": "ComponentSource" - } + "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" }, - "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." - ] + "bypassTempDirValidation": { + "description": "Whether to bypass the safety checks for the job's temporary directory.\nUse with caution.", + "type": "boolean" + }, + "tempLocation": { + "description": "The Cloud Storage path to use for temporary files.\nMust be a valid Cloud Storage URL, beginning with `gs://`.", + "type": "string" + }, + "serviceAccountEmail": { + "description": "The email address of the service account to run the job as.", + "type": "string" }, - "outputSource": { - "description": "Output sources for this stage.", - "type": "array", - "items": { - "$ref": "StageSource" - } + "machineType": { + "description": "The machine type to use for the job. Defaults to the value from the\ntemplate if not specified.", + "type": "string" } }, - "id": "ExecutionStageSummary" + "id": "RuntimeEnvironment" }, - "SendWorkerMessagesRequest": { + "MountedDataDisk": { + "description": "Describes mounted data disk.", + "type": "object", "properties": { - "location": { - "description": "The location which contains the job", + "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" - }, - "workerMessages": { - "description": "The WorkerMessages to send.", - "type": "array", - "items": { - "$ref": "WorkerMessage" - } } }, - "id": "SendWorkerMessagesRequest", - "description": "A request for sending worker messages to the service.", - "type": "object" + "id": "MountedDataDisk" }, - "SourceSplitShard": { - "id": "SourceSplitShard", - "description": "DEPRECATED in favor of DerivedSource.", + "StreamingSideInputLocation": { + "description": "Identifies the location of a streaming side input.", "type": "object", "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" - ] + "tag": { + "description": "Identifies the particular side input within the streaming Dataflow job.", + "type": "string" }, - "source": { - "description": "DEPRECATED", - "$ref": "Source" + "stateFamily": { + "description": "Identifies the state family where this side input is stored.", + "type": "string" } - } + }, + "id": "StreamingSideInputLocation" }, - "CPUTime": { - "description": "Modeled after information exposed by /proc/stat.", + "LaunchTemplateResponse": { + "description": "Response to the request to launch a template.", "type": "object", "properties": { - "rate": { - "description": "Average CPU utilization rate (% non-idle cpu / second) since previous\nsample.", - "format": "double", - "type": "number" - }, - "timestamp": { - "type": "string", - "description": "Timestamp of the measurement.", - "format": "google-datetime" - }, - "totalMs": { - "description": "Total active CPU time across all cores (ie., non-idle) in milliseconds\nsince start-up.", - "format": "uint64", - "type": "string" + "job": { + "$ref": "Job", + "description": "The job that was launched, if the request was not a dry run and\nthe job was successfully launched." } }, - "id": "CPUTime" + "id": "LaunchTemplateResponse" }, - "Environment": { - "description": "Describes the environment in which a Dataflow Job runs.", + "Job": { + "description": "Defines a job to be run by the Cloud Dataflow service.", "type": "object", "properties": { - "workerPools": { - "description": "The worker pools. At least one \"harness\" worker pool must be\nspecified in order for the job to have workers.", + "stageStates": { + "description": "This field may be mutated by the Cloud Dataflow service;\ncallers cannot mutate it.", "type": "array", "items": { - "$ref": "WorkerPool" + "$ref": "ExecutionStageState" } }, - "dataset": { + "projectId": { + "description": "The ID of the Cloud Platform project that the job belongs to.", + "type": "string" + }, + "type": { + "enum": [ + "JOB_TYPE_UNKNOWN", + "JOB_TYPE_BATCH", + "JOB_TYPE_STREAMING" + ], + "description": "The type of Cloud Dataflow job.", "type": "string", - "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}" + "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." + ] }, - "experiments": { - "description": "The list of experiments to enable.", + "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.", + "$ref": "PipelineDescription" + }, + "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": { + "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", + "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'." + ] + }, + "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" } }, - "internalExperiments": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "Experimental settings.", - "type": "object" + "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" }, - "version": { - "additionalProperties": { - "type": "any", - "description": "Properties of the object." - }, - "description": "A structure describing which components and their versions of the service\nare required in order to run the job.", - "type": "object" + "name": { + "type": "string", + "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])?`" }, - "serviceAccountEmail": { - "description": "Identity to run virtual machines as. Defaults to the default account.", + "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" }, - "sdkPipelineOptions": { + "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": { + "$ref": "JobExecutionInfo", + "description": "Deprecated." + }, + "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": { "additionalProperties": { - "type": "any", - "description": "Properties of the object." + "type": "string" }, - "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.", + "description": "The map of transform name prefixes of the job to be replaced to the\ncorresponding name prefixes of the new job.", "type": "object" }, - "userAgent": { + "createTime": { + "description": "The timestamp when the job was initially created. Immutable and set by the\nCloud Dataflow service.", + "format": "google-datetime", + "type": "string" + }, + "environment": { + "$ref": "Environment", + "description": "The environment for the job." + }, + "labels": { "additionalProperties": { - "type": "any", - "description": "Properties of the object." + "type": "string" }, - "description": "A description of the process that generated the request.", + "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" + } + }, + "id": "Job" + }, + "DynamicSourceSplit": { + "type": "object", + "properties": { + "residual": { + "$ref": "DerivedSource", + "description": "Residual part (returned to the pool of work).\nSpecified relative to the previously-current source." }, - "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" + "primary": { + "$ref": "DerivedSource", + "description": "Primary part (continued to be processed by worker).\nSpecified relative to the previously-current source.\nBecomes current." } }, - "id": "Environment" + "id": "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." }, - "StreamingComputationTask": { - "id": "StreamingComputationTask", - "description": "A task which describes what action should be performed for the specified\nstreaming computation ranges.", + "DerivedSource": { "type": "object", "properties": { - "taskType": { - "description": "A type of streaming computation task.", + "derivationMode": { + "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", "enumDescriptions": [ - "The streaming computation task is unknown, or unspecified.", - "Stop processing specified streaming computation range(s).", - "Start processing specified streaming computation range(s)." - ], - "enum": [ - "STREAMING_COMPUTATION_TASK_UNKNOWN", - "STREAMING_COMPUTATION_TASK_STOP", - "STREAMING_COMPUTATION_TASK_START" + "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." ] }, - "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" - } + "source": { + "$ref": "Source", + "description": "Specification of the source." } - } + }, + "id": "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." }, - "SendDebugCaptureRequest": { + "SourceOperationResponse": { "type": "object", "properties": { - "componentId": { - "type": "string", - "description": "The internal component id for which debug information is sent." - }, - "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" + "getMetadata": { + "$ref": "SourceGetMetadataResponse", + "description": "A response to a request to get metadata about a source." }, - "data": { - "description": "The encoded debug information.", - "type": "string" + "split": { + "$ref": "SourceSplitResponse", + "description": "A response to a request to split a source." } }, - "id": "SendDebugCaptureRequest", - "description": "Request to send encoded debug information." + "id": "SourceOperationResponse", + "description": "The result of a SourceOperationRequest, specified in\nReportWorkItemStatusRequest.source_operation when the work item\nis completed." }, - "GetDebugConfigResponse": { - "description": "Response to a get debug configuration request.", + "SideInputInfo": { + "description": "Information about a side input of a DoFn or an input of a SeqDoFn.", "type": "object", "properties": { - "config": { - "description": "The encoded debug configuration for the requested component.", + "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": "GetDebugConfigResponse" + "id": "SideInputInfo" }, - "ComponentTransform": { - "description": "Description of a transform executed as part of an execution stage.", + "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": { - "originalTransform": { - "description": "User name for the original user transform with which this transform is\nmost closely associated.", - "type": "string" - }, - "name": { - "description": "Dataflow service generated name for this source.", - "type": "string" + "input": { + "$ref": "InstructionInput", + "description": "The input." }, - "userName": { - "description": "Human-readable name for this transform; may be user or system generated.", - "type": "string" + "sink": { + "$ref": "Sink", + "description": "The sink to write to." } }, - "id": "ComponentTransform" + "id": "WriteInstruction" }, - "StreamingSetupTask": { - "description": "A task which initializes part of a streaming Dataflow job.", + "ConcatPosition": { + "id": "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": { - "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." + "position": { + "$ref": "Position", + "description": "Position within the inner source." }, - "workerHarnessPort": { - "description": "The TCP port used by the worker to communicate with the Dataflow\nworker harness.", + "index": { + "description": "Index of the inner source.", "format": "int32", "type": "integer" - }, - "drain": { - "type": "boolean", - "description": "The user has requested drain." } - }, - "id": "StreamingSetupTask" + } }, - "PubsubLocation": { - "description": "Identifies a pubsub location to use for transferring data into or\nout of a streaming Dataflow job.", + "CounterStructuredNameAndMetadata": { + "description": "A single message which encapsulates structured name and metadata for a given\ncounter.", "type": "object", "properties": { - "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.", - "type": "string" - }, - "topic": { - "description": "A pubsub topic, in the form of\n\"pubsub.googleapis.com/topics/\u003cproject-id\u003e/\u003ctopic-name\u003e\"", - "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.", - "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": { - "type": "boolean", - "description": "Indicates whether the pipeline allows late-arriving data." + "metadata": { + "$ref": "CounterMetadata", + "description": "Metadata associated with a counter" }, - "trackingSubscription": { - "description": "If set, specifies the pubsub subscription that will be used for tracking\ncustom time timestamps for watermark estimation.", - "type": "string" + "name": { + "$ref": "CounterStructuredName", + "description": "Structured name of the counter." } }, - "id": "PubsubLocation" + "id": "CounterStructuredNameAndMetadata" }, - "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.", + "AutoscalingSettings": { + "description": "Settings for WorkerPool autoscaling.", "type": "object", "properties": { - "vmStartupTime": { - "type": "string", - "description": "The time the VM was booted.", - "format": "google-datetime" - }, - "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", + "algorithm": { + "enumDescriptions": [ + "The algorithm is unknown, or unspecified.", + "Disable autoscaling.", + "Increase worker count over time to reduce job execution time." + ], + "enum": [ + "AUTOSCALING_ALGORITHM_UNKNOWN", + "AUTOSCALING_ALGORITHM_NONE", + "AUTOSCALING_ALGORITHM_BASIC" + ], + "description": "The algorithm to use for autoscaling.", "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", - "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - } - } + "maxNumWorkers": { + "description": "The maximum number of workers to cap scaling at.", + "format": "int32", + "type": "integer" } }, - "id": "WorkerHealthReport" + "id": "AutoscalingSettings" }, - "JobMessage": { + "StreamingComputationRanges": { + "description": "Describes full or partial data disk assignment information of the computation\nranges.", "type": "object", "properties": { - "id": { - "description": "Deprecated.", - "type": "string" - }, - "messageText": { - "description": "The text of the message.", - "type": "string" - }, - "messageImportance": { - "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.", - "The message is at the 'detailed' level: somewhat verbose, but\npotentially useful to users. Typically, Dataflow pipeline\nrunners do not display log messages at this level by default.\nThese messages are displayed by default in the Dataflow\nmonitoring UI.", - "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." - ], - "enum": [ - "JOB_MESSAGE_IMPORTANCE_UNKNOWN", - "JOB_MESSAGE_DEBUG", - "JOB_MESSAGE_DETAILED", - "JOB_MESSAGE_BASIC", - "JOB_MESSAGE_WARNING", - "JOB_MESSAGE_ERROR" - ], - "description": "Importance level of the message.", - "type": "string" + "rangeAssignments": { + "description": "Data disk assignments for ranges from this computation.", + "type": "array", + "items": { + "$ref": "KeyRangeDataDiskAssignment" + } }, - "time": { - "description": "The timestamp of the message.", - "format": "google-datetime", + "computationId": { + "description": "The ID of the computation.", "type": "string" } }, - "id": "JobMessage", - "description": "A particular message pertaining to a Dataflow job." + "id": "StreamingComputationRanges" }, - "ParameterMetadata": { + "ExecutionStageSummary": { + "id": "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": { - "helpText": { - "type": "string", - "description": "Required. The help text to display for the parameter." - }, - "isOptional": { - "type": "boolean", - "description": "Optional. Whether the parameter is optional. Defaults to false." + "outputSource": { + "description": "Output sources for this stage.", + "type": "array", + "items": { + "$ref": "StageSource" + } }, "name": { - "description": "Required. The name of the parameter.", + "description": "Dataflow service generated name for this stage.", "type": "string" }, - "regexes": { + "inputSource": { + "description": "Input sources for this stage.", "type": "array", "items": { - "type": "string" - }, - "description": "Optional. Regexes that the parameter must match." + "$ref": "StageSource" + } }, - "label": { - "description": "Required. The label to display for the parameter.", + "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": "ParameterMetadata", - "description": "Metadata for a specific parameter." + } }, - "MultiOutputInfo": { - "id": "MultiOutputInfo", - "description": "Information about an output of a multi-output DoFn.", + "SendWorkerMessagesRequest": { + "id": "SendWorkerMessagesRequest", + "description": "A request for sending worker messages to the service.", "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.", + "location": { + "description": "The location which contains the job", "type": "string" + }, + "workerMessages": { + "type": "array", + "items": { + "$ref": "WorkerMessage" + }, + "description": "The WorkerMessages to send." } } }, - "SourceSplitRequest": { + "SourceSplitShard": { "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": "DEPRECATED", + "type": "string" + }, "source": { "$ref": "Source", - "description": "Specification of the source to be split." - }, - "options": { - "$ref": "SourceSplitOptions", - "description": "Hints for tuning the splitting process." + "description": "DEPRECATED" } }, - "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.", + "id": "SourceSplitShard", + "description": "DEPRECATED in favor of DerivedSource.", "type": "object" }, - "SourceGetMetadataResponse": { - "type": "object", - "properties": { - "metadata": { - "description": "The computed metadata.", - "$ref": "SourceMetadata" - } - }, - "id": "SourceGetMetadataResponse", - "description": "The result of a SourceGetMetadataOperation." - }, - "ShellTask": { - "description": "A task which consists of a shell command for the worker to execute.", + "CPUTime": { + "id": "CPUTime", + "description": "Modeled after information exposed by /proc/stat.", "type": "object", "properties": { - "exitCode": { - "description": "Exit code for the task.", - "format": "int32", - "type": "integer" + "rate": { + "description": "Average CPU utilization rate (% non-idle cpu / second) since previous\nsample.", + "format": "double", + "type": "number" }, - "command": { - "type": "string", - "description": "The shell command to run." - } - }, - "id": "ShellTask" - }, - "MetricShortId": { - "type": "object", - "properties": { - "metricIndex": { - "description": "The index of the corresponding metric in\nthe ReportWorkItemStatusRequest. Required.", - "format": "int32", - "type": "integer" + "timestamp": { + "description": "Timestamp of the measurement.", + "format": "google-datetime", + "type": "string" }, - "shortId": { + "totalMs": { "type": "string", - "description": "The service-generated short identifier for the metric.", - "format": "int64" + "description": "Total active CPU time across all cores (ie., non-idle) in milliseconds\nsince start-up.", + "format": "uint64" } - }, - "id": "MetricShortId", - "description": "The metric short id is returned to the user alongside an offset into\nReportWorkItemStatusRequest" + } }, - "AutoscalingEvent": { - "description": "A structured message reporting an autoscaling decision made by the Dataflow\nservice.", + "Environment": { + "description": "Describes the environment in which a Dataflow Job runs.", "type": "object", "properties": { - "time": { - "description": "The time this event was emitted to indicate a new target or current\nnum_workers value.", - "format": "google-datetime", + "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" }, - "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." + "experiments": { + "description": "The list of experiments to enable.", + "type": "array", + "items": { + "type": "string" + } }, - "workerPool": { - "description": "A short and friendly name for the worker pool this event refers to,\npopulated from the value of PoolStageRelation::user_pool_name.", + "version": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "A structure describing which components and their versions of the service\nare required in order to run the job.", + "type": "object" + }, + "internalExperiments": { + "description": "Experimental settings.", + "type": "object", + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + } + }, + "serviceAccountEmail": { + "type": "string", + "description": "Identity to run virtual machines as. Defaults to the default account." + }, + "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" + }, + "userAgent": { + "additionalProperties": { + "type": "any", + "description": "Properties of the object." + }, + "description": "A description of the process that generated the request.", + "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" }, - "targetNumWorkers": { - "description": "The target number of workers the worker pool wants to resize to use.", - "format": "int64", + "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" }, - "eventType": { - "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." + "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" + } + } + }, + "id": "Environment" + }, + "StreamingComputationTask": { + "description": "A task which describes what action should be performed for the specified\nstreaming computation ranges.", + "type": "object", + "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": { + "enumDescriptions": [ + "The streaming computation task is unknown, or unspecified.", + "Stop processing specified streaming computation range(s).", + "Start processing specified streaming computation range(s)." ], "enum": [ - "TYPE_UNKNOWN", - "TARGET_NUM_WORKERS_CHANGED", - "CURRENT_NUM_WORKERS_CHANGED", - "ACTUATION_FAILURE", - "NO_CHANGE" + "STREAMING_COMPUTATION_TASK_UNKNOWN", + "STREAMING_COMPUTATION_TASK_STOP", + "STREAMING_COMPUTATION_TASK_START" ], - "description": "The type of autoscaling event to report.", - "type": "string" - }, - "currentNumWorkers": { - "description": "The current number of workers the job has.", - "format": "int64", + "description": "A type of streaming computation task.", "type": "string" } }, - "id": "AutoscalingEvent" + "id": "StreamingComputationTask" }, - "TaskRunnerSettings": { - "description": "Taskrunner configuration settings.", + "SendDebugCaptureRequest": { + "description": "Request to send encoded debug information.", "type": "object", "properties": { - "logDir": { - "description": "The directory on the VM to store logs.", - "type": "string" - }, - "dataflowApiVersion": { - "description": "The API version of endpoint, e.g. \"v1b3\"", - "type": "string" - }, - "oauthScopes": { - "description": "The OAuth2 scopes to be requested by the taskrunner in order to\naccess the Cloud Dataflow API.", - "type": "array", - "items": { - "type": "string" - } - }, - "streamingWorkerMainClass": { - "description": "The streaming worker main class name.", + "componentId": { + "description": "The internal component id for which debug information is sent.", "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}", + "workerId": { + "description": "The worker id, i.e., VM hostname.", "type": "string" }, - "workflowFileName": { - "description": "The file to store the workflow in.", + "location": { + "description": "The location which contains the job specified by job_id.", "type": "string" }, - "baseTaskDir": { - "description": "The location on the worker for task-specific subdirectories.", + "data": { + "description": "The encoded debug information.", "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}", + } + }, + "id": "SendDebugCaptureRequest" + }, + "GetDebugConfigResponse": { + "type": "object", + "properties": { + "config": { + "description": "The encoded debug configuration for the requested component.", "type": "string" - }, - "languageHint": { - "description": "The suggested backend language.", + } + }, + "id": "GetDebugConfigResponse", + "description": "Response to a get debug configuration request." + }, + "ComponentTransform": { + "description": "Description of a transform executed as part of an execution stage.", + "type": "object", + "properties": { + "originalTransform": { + "description": "User name for the original user transform with which this transform is\nmost closely associated.", "type": "string" }, - "commandlinesFileName": { - "description": "The file to store preprocessing commands in.", + "name": { + "description": "Dataflow service generated name for this source.", "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/\"", + "userName": { + "description": "Human-readable name for this transform; may be user or system generated.", "type": "string" + } + }, + "id": "ComponentTransform" + }, + "StreamingSetupTask": { + "id": "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" }, - "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": { - "$ref": "WorkerSettings", - "description": "The settings to pass to the parallel worker harness." - }, - "taskUser": { - "type": "string", - "description": "The UNIX user ID on the worker VM to use for tasks launched by\ntaskrunner; e.g. \"root\"." + "streamingComputationTopology": { + "description": "The global topology of the streaming Dataflow job.", + "$ref": "TopologyConfig" }, - "vmId": { - "description": "The ID string of the VM.", - "type": "string" + "workerHarnessPort": { + "type": "integer", + "description": "The TCP port used by the worker to communicate with the Dataflow\nworker harness.", + "format": "int32" }, - "alsologtostderr": { - "description": "Whether to also send taskrunner log info to stderr.", + "drain": { + "description": "The user has requested drain.", "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" } - }, - "id": "TaskRunnerSettings" + } }, - "Position": { - "type": "object", + "PubsubLocation": { "properties": { - "recordIndex": { - "description": "Position is a record index.", - "format": "int64", + "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.", "type": "string" }, - "shufflePosition": { - "description": "CloudPosition is a base64 encoded BatchShufflePosition (with FIXED\nsharding).", + "topic": { + "description": "A pubsub topic, in the form of\n\"pubsub.googleapis.com/topics/\u003cproject-id\u003e/\u003ctopic-name\u003e\"", "type": "string" }, - "concatPosition": { - "$ref": "ConcatPosition", - "description": "CloudPosition is a concat position." + "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" }, - "byteOffset": { - "description": "Position is a byte offset.", - "format": "int64", + "subscription": { + "description": "A pubsub subscription, in the form of\n\"pubsub.googleapis.com/subscriptions/\u003cproject-id\u003e/\u003csubscription-name\u003e\"", "type": "string" }, - "end": { - "description": "Position is past all other positions. Also useful for the end\nposition of an unbounded range.", + "dropLateData": { + "description": "Indicates whether the pipeline allows late-arriving data.", "type": "boolean" }, - "key": { - "description": "Position is a string key, ordered lexicographically.", + "trackingSubscription": { + "description": "If set, specifies the pubsub subscription that will be used for tracking\ncustom time timestamps for watermark estimation.", "type": "string" } }, - "id": "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." + "id": "PubsubLocation", + "description": "Identifies a pubsub location to use for transferring data into or\nout of a streaming Dataflow job.", + "type": "object" }, - "SplitInt64": { - "description": "A representation of an int64, n, that is immune to precision loss when\nencoded in JSON.", + "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": { - "lowBits": { - "type": "integer", - "description": "The low order bits: n & 0xffffffff.", - "format": "uint32" + "vmIsHealthy": { + "description": "Whether the VM is healthy.", + "type": "boolean" }, - "highBits": { - "description": "The high order bits, including the sign: n \u003e\u003e 32.", - "format": "int32", - "type": "integer" - } - }, - "id": "SplitInt64" - }, - "Source": { - "description": "A source that records can be read and decoded from.", - "type": "object", - "properties": { - "metadata": { - "$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." + "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" }, - "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).", + "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", "items": { "additionalProperties": { - "description": "Properties of the object.", - "type": "any" + "type": "any", + "description": "Properties of the object." }, "type": "object" } }, - "codec": { - "additionalProperties": { - "type": "any", - "description": "Properties of the object." - }, - "description": "The codec to use to decode data read from the source.", - "type": "object" + "vmStartupTime": { + "description": "The time the VM was booted.", + "format": "google-datetime", + "type": "string" + } + }, + "id": "WorkerHealthReport" + }, + "JobMessage": { + "properties": { + "time": { + "description": "The timestamp of the message.", + "format": "google-datetime", + "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.", - "type": "boolean" + "id": { + "description": "Deprecated.", + "type": "string" }, - "spec": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "The source to read from, plus its parameters.", - "type": "object" + "messageText": { + "type": "string", + "description": "The text of the message." + }, + "messageImportance": { + "enum": [ + "JOB_MESSAGE_IMPORTANCE_UNKNOWN", + "JOB_MESSAGE_DEBUG", + "JOB_MESSAGE_DETAILED", + "JOB_MESSAGE_BASIC", + "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.", + "The message is at the 'detailed' level: somewhat verbose, but\npotentially useful to users. Typically, Dataflow pipeline\nrunners do not display log messages at this level by default.\nThese messages are displayed by default in the Dataflow\nmonitoring UI.", + "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": "Source" + "id": "JobMessage", + "description": "A particular message pertaining to a Dataflow job.", + "type": "object" }, - "WorkerPool": { + "ParameterMetadata": { + "description": "Metadata for a specific parameter.", "type": "object", "properties": { - "network": { - "description": "Network to which VMs will be assigned. If empty or unspecified,\nthe service will use the network \"default\".", + "helpText": { + "description": "Required. The help text to display for the parameter.", "type": "string" }, - "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.", - "type": "string", - "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" - ] - }, - "zone": { - "type": "string", - "description": "Zone to run the worker pools in. If empty or unspecified, the service\nwill attempt to choose a reasonable default." - }, - "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" + "isOptional": { + "description": "Optional. Whether the parameter is optional. Defaults to false.", + "type": "boolean" }, - "diskSourceImage": { - "description": "Fully qualified source image for disks.", + "name": { + "description": "Required. The name of the parameter.", "type": "string" }, - "packages": { - "description": "Packages to be installed on workers.", + "regexes": { + "description": "Optional. Regexes that the parameter must match.", "type": "array", "items": { - "$ref": "Package" + "type": "string" } }, - "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.", - "type": "string", - "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" - ] - }, - "onHostMaintenance": { - "description": "The action to take on host maintenance, as defined by the Google\nCompute Engine API.", + "label": { + "description": "Required. The label to display for the parameter.", "type": "string" + } + }, + "id": "ParameterMetadata" + }, + "MultiOutputInfo": { + "id": "MultiOutputInfo", + "description": "Information about an output of a multi-output DoFn.", + "type": "object", + "properties": { + "tag": { + "type": "string", + "description": "The id of the tag the user code will emit to this output by; this\nshould correspond to the tag of some SideInputInfo." + } + } + }, + "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", + "properties": { + "source": { + "description": "Specification of the source to be split.", + "$ref": "Source" }, - "poolArgs": { - "description": "Extra arguments for this worker pool.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - }, - "diskSizeGb": { - "description": "Size of root disk for VMs, in GB. If zero or unspecified, the service will\nattempt to choose a reasonable default.", + "options": { + "$ref": "SourceSplitOptions", + "description": "Hints for tuning the splitting process." + } + }, + "id": "SourceSplitRequest" + }, + "SourceGetMetadataResponse": { + "id": "SourceGetMetadataResponse", + "description": "The result of a SourceGetMetadataOperation.", + "type": "object", + "properties": { + "metadata": { + "$ref": "SourceMetadata", + "description": "The computed metadata." + } + } + }, + "ShellTask": { + "type": "object", + "properties": { + "exitCode": { + "description": "Exit code for the task.", "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.", + "command": { + "description": "The shell command to run.", "type": "string" + } + }, + "id": "ShellTask", + "description": "A task which consists of a shell command for the worker to execute." + }, + "MetricShortId": { + "description": "The metric short id is returned to the user alongside an offset into\nReportWorkItemStatusRequest", + "type": "object", + "properties": { + "metricIndex": { + "description": "The index of the corresponding metric in\nthe ReportWorkItemStatusRequest. Required.", + "format": "int32", + "type": "integer" }, - "machineType": { - "description": "Machine type (e.g. \"n1-standard-1\"). If empty or unspecified, the\nservice will attempt to choose a reasonable default.", + "shortId": { + "description": "The service-generated short identifier for the metric.", + "format": "int64", "type": "string" + } + }, + "id": "MetricShortId" + }, + "AutoscalingEvent": { + "description": "A structured message reporting an autoscaling decision made by the Dataflow\nservice.", + "type": "object", + "properties": { + "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." }, - "kind": { - "description": "The kind of the worker pool; currently only `harness` and `shuffle`\nare supported.", + "workerPool": { + "description": "A short and friendly name for the worker pool this event refers to,\npopulated from the value of PoolStageRelation::user_pool_name.", "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\".", + "targetNumWorkers": { + "description": "The target number of workers the worker pool wants to resize to use.", + "format": "int64", "type": "string" }, - "ipConfiguration": { + "eventType": { + "type": "string", "enumDescriptions": [ - "The configuration is unknown, or unspecified.", - "Workers should have public IP addresses.", - "Workers should have private IP addresses." + "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." ], "enum": [ - "WORKER_IP_UNSPECIFIED", - "WORKER_IP_PUBLIC", - "WORKER_IP_PRIVATE" + "TYPE_UNKNOWN", + "TARGET_NUM_WORKERS_CHANGED", + "CURRENT_NUM_WORKERS_CHANGED", + "ACTUATION_FAILURE", + "NO_CHANGE" ], - "description": "Configuration for VM IPs.", - "type": "string" - }, - "autoscalingSettings": { - "$ref": "AutoscalingSettings", - "description": "Settings for autoscaling of this WorkerPool." + "description": "The type of autoscaling event to report." }, - "taskrunnerSettings": { - "$ref": "TaskRunnerSettings", - "description": "Settings passed through to Google Compute Engine workers when\nusing the standard Dataflow task runner. Users should ignore\nthis field." + "currentNumWorkers": { + "type": "string", + "description": "The current number of workers the job has.", + "format": "int64" }, - "metadata": { - "additionalProperties": { - "type": "string" - }, - "description": "Metadata to set on the Google Compute Engine VMs.", - "type": "object" + "time": { + "description": "The time this event was emitted to indicate a new target or current\nnum_workers value.", + "format": "google-datetime", + "type": "string" } }, - "id": "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": "AutoscalingEvent" }, - "SourceOperationRequest": { - "description": "A work item that represents the different operations that can be\nperformed on a user-defined Source specification.", + "TaskRunnerSettings": { + "description": "Taskrunner configuration settings.", "type": "object", "properties": { - "systemName": { - "type": "string", - "description": "System-defined name of the Read instruction for this source.\nUnique across the workflow." - }, - "stageName": { - "description": "System-defined name of the stage containing the source operation.\nUnique across the workflow.", + "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" }, - "getMetadata": { - "$ref": "SourceGetMetadataRequest", - "description": "Information about a request to get metadata about a source." + "logToSerialconsole": { + "description": "Whether to send taskrunner log info to Google Compute Engine VM serial\nconsole.", + "type": "boolean" }, - "split": { - "description": "Information about a request to split a source.", - "$ref": "SourceSplitRequest" + "continueOnException": { + "description": "Whether to continue taskrunner if an exception is hit.", + "type": "boolean" }, - "name": { - "description": "User-provided name of the Read instruction for this source.", - "type": "string" + "parallelWorkerSettings": { + "$ref": "WorkerSettings", + "description": "The settings to pass to the parallel worker harness." }, - "originalName": { - "description": "System-defined name for the Read instruction for this source\nin the original workflow graph.", + "taskUser": { + "description": "The UNIX user ID on the worker VM to use for tasks launched by\ntaskrunner; e.g. \"root\".", "type": "string" - } - }, - "id": "SourceOperationRequest" - }, - "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", - "properties": { - "messageText": { - "description": "Human-readable version of message.", + }, + "vmId": { + "type": "string", + "description": "The ID string of the VM." + }, + "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" }, - "parameters": { - "description": "The structured data associated with this message.", - "type": "array", - "items": { - "$ref": "Parameter" - } + "harnessCommand": { + "type": "string", + "description": "The command to launch the worker harness." }, - "messageKey": { - "description": "Idenfier for this message type. Used by external systems to\ninternationalize or personalize message.", + "logDir": { + "description": "The directory on the VM to store logs.", "type": "string" - } - }, - "id": "StructuredMessage" - }, - "WorkItem": { - "properties": { - "mapTask": { - "description": "Additional information for MapTask WorkItems.", - "$ref": "MapTask" }, - "seqMapTask": { - "$ref": "SeqMapTask", - "description": "Additional information for SeqMapTask WorkItems." + "dataflowApiVersion": { + "description": "The API version of endpoint, e.g. \"v1b3\"", + "type": "string" }, - "packages": { - "description": "Any required packages that need to be fetched in order to execute\nthis WorkItem.", + "oauthScopes": { + "description": "The OAuth2 scopes to be requested by the taskrunner in order to\naccess the Cloud Dataflow API.", "type": "array", "items": { - "$ref": "Package" + "type": "string" } }, - "projectId": { - "description": "Identifies the cloud project this WorkItem belongs to.", + "streamingWorkerMainClass": { + "description": "The streaming worker main class name.", "type": "string" }, - "sourceOperationTask": { - "$ref": "SourceOperationRequest", - "description": "Additional information for source operation WorkItems." + "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" }, - "streamingSetupTask": { - "$ref": "StreamingSetupTask", - "description": "Additional information for StreamingSetupTask WorkItems." + "workflowFileName": { + "type": "string", + "description": "The file to store the workflow in." }, - "reportStatusInterval": { - "description": "Recommended reporting interval.", - "format": "google-duration", + "baseTaskDir": { + "description": "The location on the worker for task-specific subdirectories.", "type": "string" }, - "streamingConfigTask": { - "$ref": "StreamingConfigTask", - "description": "Additional information for StreamingConfigTask WorkItems." + "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" }, - "leaseExpireTime": { - "description": "Time when the lease on this Work will expire.", - "format": "google-datetime", + "languageHint": { + "description": "The suggested backend language.", "type": "string" }, - "initialReportIndex": { - "description": "The initial index to use when reporting the status of the WorkItem.", + "commandlinesFileName": { + "description": "The file to store preprocessing commands in.", + "type": "string" + } + }, + "id": "TaskRunnerSettings" + }, + "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", + "properties": { + "recordIndex": { + "description": "Position is a record index.", "format": "int64", "type": "string" }, - "shellTask": { - "$ref": "ShellTask", - "description": "Additional information for ShellTask WorkItems." - }, - "streamingComputationTask": { - "description": "Additional information for StreamingComputationTask WorkItems.", - "$ref": "StreamingComputationTask" - }, - "jobId": { - "description": "Identifies the workflow job this WorkItem belongs to.", + "shufflePosition": { + "description": "CloudPosition is a base64 encoded BatchShufflePosition (with FIXED\nsharding).", "type": "string" }, - "id": { - "description": "Identifies this WorkItem.", + "concatPosition": { + "$ref": "ConcatPosition", + "description": "CloudPosition is a concat position." + }, + "byteOffset": { + "description": "Position is a byte offset.", "format": "int64", "type": "string" }, - "configuration": { - "description": "Work item-specific configuration as an opaque blob.", + "end": { + "description": "Position is past all other positions. Also useful for the end\nposition of an unbounded range.", + "type": "boolean" + }, + "key": { + "description": "Position is a string key, ordered lexicographically.", "type": "string" } }, - "id": "WorkItem", - "description": "WorkItem represents basic information about a WorkItem to be executed\nin the cloud.", - "type": "object" + "id": "Position" }, - "ResourceUtilizationReport": { + "Source": { + "id": "Source", + "description": "A source that records can be read and decoded from.", "type": "object", "properties": { - "cpuTime": { - "description": "CPU utilization samples.", + "codec": { + "type": "object", + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The codec to use to decode data read from the source." + }, + "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" + }, + "spec": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The source to read from, plus its parameters.", + "type": "object" + }, + "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" + }, + "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": { - "$ref": "CPUTime" + "type": "object", + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + } } } - }, - "id": "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." + } }, - "ReportedParallelism": { - "id": "ReportedParallelism", - "description": "Represents the level of parallelism in a WorkItem's input,\nreported by the worker.", + "SplitInt64": { + "description": "A representation of an int64, n, that is immune to precision loss when\nencoded in JSON.", "type": "object", "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.", - "type": "boolean" + "lowBits": { + "type": "integer", + "description": "The low order bits: n & 0xffffffff.", + "format": "uint32" }, - "value": { - "type": "number", - "description": "Specifies the level of parallelism in case it is finite.", - "format": "double" + "highBits": { + "description": "The high order bits, including the sign: n \u003e\u003e 32.", + "format": "int32", + "type": "integer" } - } + }, + "id": "SplitInt64" }, - "TopologyConfig": { - "description": "Global topology of the streaming Dataflow job, including all\ncomputations and their sharded locations.", + "WorkerPool": { + "id": "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", "properties": { - "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.", + "packages": { + "description": "Packages to be installed on workers.", "type": "array", "items": { - "$ref": "DataDiskAssignment" + "$ref": "Package" } }, - "persistentStateVersion": { - "description": "Version number for persistent state.", - "format": "int32", - "type": "integer" + "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.", + "type": "string", + "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" + ] }, - "forwardingKeyBits": { - "description": "The size (in bits) of keys that will be assigned to source messages.", - "format": "int32", - "type": "integer" + "onHostMaintenance": { + "description": "The action to take on host maintenance, as defined by the Google\nCompute Engine API.", + "type": "string" }, - "userStageToComputationNameMap": { + "poolArgs": { "additionalProperties": { - "type": "string" + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" }, - "description": "Maps user stage names to stable computation names.", + "description": "Extra arguments for this worker pool.", "type": "object" - } - }, - "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": { - "description": "An instruction that reads records.\nTakes no inputs, produces one output.", - "type": "object", - "properties": { - "source": { - "$ref": "Source", - "description": "The source to read from." - } - }, - "id": "ReadInstruction" - }, - "WorkerSettings": { - "id": "WorkerSettings", - "description": "Provides data to pass through to the worker harness.", - "type": "object", - "properties": { - "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}", + "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" }, - "baseUrl": { + "diskType": { "type": "string", - "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/\"" - }, - "reportingEnabled": { - "description": "Whether to send work progress updates to the service.", - "type": "boolean" + "description": "Type of root disk for VMs. If empty or unspecified, the service will\nattempt to choose a reasonable default." }, - "servicePath": { - "description": "The Cloud Dataflow service path relative to the root URL, for example,\n\"dataflow/v1b3/projects\".", + "machineType": { + "description": "Machine type (e.g. \"n1-standard-1\"). If empty or unspecified, the\nservice will attempt to choose a reasonable default.", "type": "string" }, - "shuffleServicePath": { - "description": "The Shuffle service path relative to the root URL, for example,\n\"shuffle/v1beta1\".", + "kind": { + "description": "The kind of the worker pool; currently only `harness` and `shuffle`\nare supported.", "type": "string" }, - "workerId": { - "description": "The ID of the worker running this pipeline.", - "type": "string" - } - } - }, - "DataDiskAssignment": { - "description": "Data disk assignment for a given VM instance.", - "type": "object", - "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\" }.", + "description": "Data disks that are used by a VM in this workflow.", "type": "array", "items": { - "type": "string" + "$ref": "Disk" } }, - "vmInstance": { - "description": "VM instance name the data disks mounted to, for example\n\"myproject-1014-104817-4c2-harness-0\".", - "type": "string" - } - }, - "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.", + "subnetwork": { + "description": "Subnetwork to which VMs will be assigned, if desired. Expected to be of\nthe form \"regions/REGION/subnetworks/SUBNETWORK\".", "type": "string" - } - }, - "id": "StreamingStageLocation" - }, - "ApproximateSplitRequest": { - "id": "ApproximateSplitRequest", - "description": "A suggestion by the service to the worker to dynamically split the WorkItem.", - "type": "object", - "properties": { - "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": "A Position at which to split the work item.", - "$ref": "Position" - } - } - }, - "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" + "ipConfiguration": { + "enum": [ + "WORKER_IP_UNSPECIFIED", + "WORKER_IP_PUBLIC", + "WORKER_IP_PRIVATE" + ], + "description": "Configuration for VM IPs.", + "type": "string", + "enumDescriptions": [ + "The configuration is unknown, or unspecified.", + "Workers should have public IP addresses.", + "Workers should have private IP addresses." + ] }, - "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" + "autoscalingSettings": { + "$ref": "AutoscalingSettings", + "description": "Settings for autoscaling of this WorkerPool." }, - "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": { - "type": "any", - "description": "Properties of the object. Contains field @type with type URL." - }, - "type": "object" - } - } - }, - "id": "Status" - }, - "ExecutionStageState": { - "id": "ExecutionStageState", - "description": "A message describing the state of a particular execution stage.", - "type": "object", - "properties": { - "executionStageName": { - "description": "The name of the execution stage.", - "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." }, - "currentStateTime": { - "description": "The time at which the stage transitioned to this state.", - "format": "google-datetime", - "type": "string" + "metadata": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Metadata to set on the Google Compute Engine VMs." }, - "executionStageState": { + "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.", + "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'." + "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": [ - "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": "Executions stage states allow the same set of values as JobState.", + "DEFAULT_PACKAGE_SET_UNKNOWN", + "DEFAULT_PACKAGE_SET_NONE", + "DEFAULT_PACKAGE_SET_JAVA", + "DEFAULT_PACKAGE_SET_PYTHON" + ] + }, + "network": { + "description": "Network to which VMs will be assigned. If empty or unspecified,\nthe service will use the network \"default\".", + "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" + }, + "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" } } }, - "StreamLocation": { - "description": "Describes a stream of data, either as input to be processed or as\noutput of a streaming Dataflow job.", + "SourceOperationRequest": { + "description": "A work item that represents the different operations that can be\nperformed on a user-defined Source specification.", "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." + "name": { + "description": "User-provided name of the Read instruction for this source.", + "type": "string" }, - "pubsubLocation": { - "$ref": "PubsubLocation", - "description": "The stream is a pubsub stream." + "originalName": { + "description": "System-defined name for the Read instruction for this source\nin the original workflow graph.", + "type": "string" }, - "sideInputLocation": { - "$ref": "StreamingSideInputLocation", - "description": "The stream is a streaming side input." - } - }, - "id": "StreamLocation" - }, - "WorkerLifecycleEvent": { - "properties": { - "event": { - "enum": [ - "UNKNOWN_EVENT", - "OS_START", - "CONTAINER_START", - "NETWORK_UP", - "STAGING_FILES_DOWNLOAD_START", - "STAGING_FILES_DOWNLOAD_FINISH", - "SDK_INSTALL_START", - "SDK_INSTALL_FINISH" - ], - "description": "The event being reported.", - "type": "string", - "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." - ] + "stageName": { + "description": "System-defined name of the stage containing the source operation.\nUnique across the workflow.", + "type": "string" }, - "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", + "systemName": { + "description": "System-defined name of the Read instruction for this source.\nUnique across the workflow.", "type": "string" }, - "metadata": { - "additionalProperties": { - "type": "string" - }, - "description": "Other stats that can accompany an event. E.g.\n{ \"downloaded_bytes\" : \"123456\" }", - "type": "object" + "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": "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.", - "type": "object" + "id": "SourceOperationRequest" }, - "SendWorkerMessagesResponse": { - "description": "The response to the worker messages.", + "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", "properties": { - "workerMessageResponses": { - "description": "The servers response to the worker messages.", - "type": "array", - "items": { - "$ref": "WorkerMessageResponse" - } - } - }, - "id": "SendWorkerMessagesResponse" - }, - "StreamingComputationConfig": { - "properties": { - "computationId": { - "description": "Unique identifier for this computation.", - "type": "string" - }, - "systemName": { - "type": "string", - "description": "System defined name for this computation." + "messageKey": { + "description": "Idenfier for this message type. Used by external systems to\ninternationalize or personalize message.", + "type": "string" }, - "stageName": { - "description": "Stage name of this computation.", + "messageText": { + "description": "Human-readable version of message.", "type": "string" }, - "instructions": { - "description": "Instructions that comprise the computation.", + "parameters": { + "description": "The structured data associated with this message.", "type": "array", "items": { - "$ref": "ParallelInstruction" + "$ref": "Parameter" } } }, - "id": "StreamingComputationConfig", - "description": "Configuration information for a single streaming computation.", - "type": "object" + "id": "StructuredMessage" }, - "TransformSummary": { - "description": "Description of the type, names/ids, and input/outputs for a transform.", + "WorkItem": { + "description": "WorkItem represents basic information about a WorkItem to be executed\nin the cloud.", "type": "object", "properties": { - "name": { - "description": "User provided name for this transform instance.", + "jobId": { + "description": "Identifies the workflow job this WorkItem belongs to.", "type": "string" }, "id": { - "type": "string", - "description": "SDK generated id of this transform instance." + "description": "Identifies this WorkItem.", + "format": "int64", + "type": "string" }, - "outputCollectionName": { - "description": "User names for all collection outputs to this transform.", - "type": "array", - "items": { - "type": "string" - } + "configuration": { + "description": "Work item-specific configuration as an opaque blob.", + "type": "string" }, - "displayData": { - "description": "Transform-specific display data.", - "type": "array", - "items": { - "$ref": "DisplayData" - } + "mapTask": { + "description": "Additional information for MapTask WorkItems.", + "$ref": "MapTask" }, - "kind": { - "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." - ], - "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." + "seqMapTask": { + "$ref": "SeqMapTask", + "description": "Additional information for SeqMapTask WorkItems." }, - "inputCollectionName": { - "description": "User names for all collection inputs to this transform.", + "packages": { + "description": "Any required packages that need to be fetched in order to execute\nthis WorkItem.", "type": "array", "items": { - "type": "string" + "$ref": "Package" } + }, + "projectId": { + "description": "Identifies the cloud project this WorkItem belongs to.", + "type": "string" + }, + "sourceOperationTask": { + "description": "Additional information for source operation WorkItems.", + "$ref": "SourceOperationRequest" + }, + "streamingSetupTask": { + "$ref": "StreamingSetupTask", + "description": "Additional information for StreamingSetupTask WorkItems." + }, + "reportStatusInterval": { + "description": "Recommended reporting interval.", + "format": "google-duration", + "type": "string" + }, + "streamingConfigTask": { + "description": "Additional information for StreamingConfigTask WorkItems.", + "$ref": "StreamingConfigTask" + }, + "leaseExpireTime": { + "description": "Time when the lease on this Work will expire.", + "format": "google-datetime", + "type": "string" + }, + "initialReportIndex": { + "description": "The initial index to use when reporting the status of the WorkItem.", + "format": "int64", + "type": "string" + }, + "shellTask": { + "description": "Additional information for ShellTask WorkItems.", + "$ref": "ShellTask" + }, + "streamingComputationTask": { + "$ref": "StreamingComputationTask", + "description": "Additional information for StreamingComputationTask WorkItems." } }, - "id": "TransformSummary" + "id": "WorkItem" }, - "LeaseWorkItemResponse": { - "description": "Response to a request to lease WorkItems.", + "ReportedParallelism": { + "description": "Represents the level of parallelism in a WorkItem's input,\nreported by the worker.", "type": "object", "properties": { - "workItems": { - "type": "array", - "items": { - "$ref": "WorkItem" - }, - "description": "A list of the leased WorkItems." + "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.", + "type": "boolean" + }, + "value": { + "description": "Specifies the level of parallelism in case it is finite.", + "format": "double", + "type": "number" } }, - "id": "LeaseWorkItemResponse" + "id": "ReportedParallelism" }, - "LaunchTemplateParameters": { - "description": "Parameters to provide to the template being launched.", + "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": { - "jobName": { - "type": "string", - "description": "Required. The job name to use for the created job." - }, - "environment": { - "$ref": "RuntimeEnvironment", - "description": "The runtime environment for the job." - }, - "parameters": { - "description": "The runtime parameters to pass to the job.", - "type": "object", - "additionalProperties": { - "type": "string" + "cpuTime": { + "description": "CPU utilization samples.", + "type": "array", + "items": { + "$ref": "CPUTime" } } }, - "id": "LaunchTemplateParameters" + "id": "ResourceUtilizationReport" }, - "Sink": { - "description": "A sink that records can be encoded and written to.", + "TopologyConfig": { "type": "object", "properties": { - "codec": { - "additionalProperties": { - "type": "any", - "description": "Properties of the object." - }, - "description": "The codec to use to encode data written to the sink.", - "type": "object" + "computations": { + "description": "The computations associated with a streaming Dataflow job.", + "type": "array", + "items": { + "$ref": "ComputationTopology" + } }, - "spec": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "The sink to write to, plus its parameters.", - "type": "object" - } - }, - "id": "Sink" - }, - "FlattenInstruction": { - "properties": { - "inputs": { - "description": "Describes the inputs to the flatten instruction.", + "dataDiskAssignments": { + "description": "The disks assigned to a streaming Dataflow job.", "type": "array", "items": { - "$ref": "InstructionInput" + "$ref": "DataDiskAssignment" + } + }, + "persistentStateVersion": { + "type": "integer", + "description": "Version number for persistent state.", + "format": "int32" + }, + "forwardingKeyBits": { + "description": "The size (in bits) of keys that will be assigned to source messages.", + "format": "int32", + "type": "integer" + }, + "userStageToComputationNameMap": { + "description": "Maps user stage names to stable computation names.", + "type": "object", + "additionalProperties": { + "type": "string" } } }, - "id": "FlattenInstruction", - "description": "An instruction that copies its inputs (zero or more) to its (single) output.", - "type": "object" + "id": "TopologyConfig", + "description": "Global topology of the streaming Dataflow job, including all\ncomputations and their sharded locations." }, - "PartialGroupByKeyInstruction": { - "description": "An instruction that does a partial group-by-key.\nOne input and one output.", + "SourceSplitOptions": { + "id": "SourceSplitOptions", + "description": "Hints for splitting a Source into bundles (parts for parallel\nprocessing) using SourceSplitRequest.", "type": "object", "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.", + "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" }, - "sideInputs": { - "description": "Zero or more side inputs.", - "type": "array", - "items": { - "$ref": "SideInputInfo" - } - }, - "originalCombineValuesStepName": { - "description": "If this instruction includes a combining function, this is the name of the\nCombineValues instruction lifted into this instruction.", + "desiredShardSizeBytes": { + "description": "DEPRECATED in favor of desired_bundle_size_bytes.", + "format": "int64", "type": "string" - }, - "input": { - "$ref": "InstructionInput", - "description": "Describes the input to the partial group-by-key instruction." + } + } + }, + "ReadInstruction": { + "description": "An instruction that reads records.\nTakes no inputs, produces one output.", + "type": "object", + "properties": { + "source": { + "description": "The source to read from.", + "$ref": "Source" } }, - "id": "PartialGroupByKeyInstruction" + "id": "ReadInstruction" }, - "StageSource": { - "description": "Description of an input or output of an execution stage.", + "WorkerSettings": { + "description": "Provides data to pass through to the worker harness.", "type": "object", "properties": { - "name": { - "description": "Dataflow service generated name for this source.", + "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" }, - "sizeBytes": { - "description": "Size of the source, if measurable.", - "format": "int64", + "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" }, - "userName": { - "description": "Human-readable name for this source; may be user or system generated.", + "shuffleServicePath": { + "type": "string", + "description": "The Shuffle service path relative to the root URL, for example,\n\"shuffle/v1beta1\"." + }, + "workerId": { + "description": "The ID of the worker running this pipeline.", "type": "string" }, - "originalTransformOrCollection": { - "description": "User name for the original user transform or collection with which this\nsource is most closely associated.", + "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" } }, - "id": "StageSource" + "id": "WorkerSettings" }, - "InstructionInput": { - "description": "An input of an instruction, as a reference to an output of a\nproducer instruction.", + "DataDiskAssignment": { + "description": "Data disk assignment for a given VM instance.", "type": "object", "properties": { - "producerInstructionIndex": { - "type": "integer", - "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" + "vmInstance": { + "description": "VM instance name the data disks mounted to, for example\n\"myproject-1014-104817-4c2-harness-0\".", + "type": "string" }, - "outputNum": { - "description": "The output index (origin zero) within the producer.", - "format": "int32", - "type": "integer" - } - }, - "id": "InstructionInput" - }, - "StringList": { - "type": "object", - "properties": { - "elements": { - "description": "Elements of the list.", + "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", "items": { "type": "string" } } }, - "id": "StringList", - "description": "A metric value representing a list of strings." + "id": "DataDiskAssignment" }, - "DisplayData": { - "description": "Data provided with a pipeline or transform to provide descriptive info.", + "StreamingStageLocation": { + "id": "StreamingStageLocation", + "description": "Identifies the location of a streaming computation stage, for\nstage-to-stage communication.", "type": "object", "properties": { - "strValue": { - "description": "Contains value if the data is of string type.", - "type": "string" - }, - "durationValue": { - "description": "Contains value if the data is of duration type.", - "format": "google-duration", - "type": "string" - }, - "int64Value": { - "description": "Contains value if the data is of int64 type.", - "format": "int64", - "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.", + "streamId": { + "description": "Identifies the particular stream within the streaming Dataflow\njob.", "type": "string" + } + } + }, + "ApproximateSplitRequest": { + "type": "object", + "properties": { + "position": { + "$ref": "Position", + "description": "A Position at which to split the work item." }, - "floatValue": { - "description": "Contains value if the data is of float type.", - "format": "float", + "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" - }, - "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" - }, - "label": { + } + }, + "id": "ApproximateSplitRequest", + "description": "A suggestion by the service to the worker to dynamically split the WorkItem." + }, + "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": "An optional label to display in a dax UI for the element." - }, - "url": { - "description": "An optional full URL.", - "type": "string" - }, - "timestampValue": { - "description": "Contains value if the data is of timestamp type.", - "format": "google-datetime", - "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." }, - "javaClassValue": { - "description": "Contains value if the data is of java class type.", - "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." }, - "boolValue": { - "type": "boolean", - "description": "Contains value if the data is of a boolean type." + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" } }, - "id": "DisplayData" + "id": "Status" }, - "GetDebugConfigRequest": { - "description": "Request to get updated debug configuration for component.", + "ExecutionStageState": { + "description": "A message describing the state of a particular execution stage.", "type": "object", "properties": { - "componentId": { - "description": "The internal component id for which debug configuration is\nrequested.", + "executionStageName": { + "description": "The name of the execution stage.", "type": "string" }, - "workerId": { - "type": "string", - "description": "The worker id, i.e., VM hostname." + "currentStateTime": { + "description": "The time at which the stage transitioned to this state.", + "format": "google-datetime", + "type": "string" }, - "location": { - "description": "The location which contains the job specified by job_id.", + "executionStageState": { + "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": "Executions stage states allow the same set of values as JobState.", "type": "string" } }, - "id": "GetDebugConfigRequest" + "id": "ExecutionStageState" }, - "LeaseWorkItemRequest": { - "id": "LeaseWorkItemRequest", - "description": "Request to lease WorkItems.", + "StreamLocation": { + "description": "Describes a stream of data, either as input to be processed or as\noutput of a streaming Dataflow job.", "type": "object", "properties": { - "currentWorkerTime": { - "description": "The current timestamp at the worker.", - "format": "google-datetime", - "type": "string" - }, - "workItemTypes": { - "description": "Filter for WorkItem type.", - "type": "array", - "items": { - "type": "string" - } - }, - "location": { - "type": "string", - "description": "The location which contains the WorkItem's job." + "customSourceLocation": { + "description": "The stream is a custom source.", + "$ref": "CustomSourceLocation" }, - "workerCapabilities": { - "description": "Worker capabilities. WorkItems might be limited to workers with specific\ncapabilities.", - "type": "array", - "items": { - "type": "string" - } + "streamingStageLocation": { + "description": "The stream is part of another computation within the current\nstreaming Dataflow job.", + "$ref": "StreamingStageLocation" }, - "workerId": { - "description": "Identifies the worker leasing work -- typically the ID of the\nvirtual machine running the worker.", - "type": "string" + "pubsubLocation": { + "description": "The stream is a pubsub stream.", + "$ref": "PubsubLocation" }, - "requestedLeaseDuration": { - "description": "The initial lease period.", - "format": "google-duration", - "type": "string" + "sideInputLocation": { + "$ref": "StreamingSideInputLocation", + "description": "The stream is a streaming side input." } - } + }, + "id": "StreamLocation" }, - "GetTemplateResponse": { - "description": "The response to a GetTemplate request.", - "type": "object", + "WorkerLifecycleEvent": { "properties": { - "metadata": { - "$ref": "TemplateMetadata", - "description": "The template metadata describing the template name, available\nparameters, etc." + "event": { + "type": "string", + "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." + ], + "enum": [ + "UNKNOWN_EVENT", + "OS_START", + "CONTAINER_START", + "NETWORK_UP", + "STAGING_FILES_DOWNLOAD_START", + "STAGING_FILES_DOWNLOAD_FINISH", + "SDK_INSTALL_START", + "SDK_INSTALL_FINISH" + ], + "description": "The event being reported." }, - "status": { - "$ref": "Status", - "description": "The status of the get template request. Any problems with the\nrequest will be indicated in the error_details." + "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" + }, + "metadata": { + "additionalProperties": { + "type": "string" + }, + "description": "Other stats that can accompany an event. E.g.\n{ \"downloaded_bytes\" : \"123456\" }", + "type": "object" } }, - "id": "GetTemplateResponse" + "id": "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.", + "type": "object" }, - "Parameter": { - "description": "Structured data associated with this message.", + "SendWorkerMessagesResponse": { + "description": "The response to the worker messages.", "type": "object", "properties": { - "key": { - "description": "Key or name for this parameter.", - "type": "string" - }, - "value": { - "description": "Value for this parameter.", - "type": "any" + "workerMessageResponses": { + "type": "array", + "items": { + "$ref": "WorkerMessageResponse" + }, + "description": "The servers response to the worker messages." } }, - "id": "Parameter" + "id": "SendWorkerMessagesResponse" }, - "ReportWorkItemStatusRequest": { - "description": "Request to report the status of WorkItems.", + "StreamingComputationConfig": { + "id": "StreamingComputationConfig", + "description": "Configuration information for a single streaming computation.", "type": "object", "properties": { - "location": { - "description": "The location which contains the WorkItem's job.", + "computationId": { + "description": "Unique identifier for this computation.", "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" - } + "systemName": { + "description": "System defined name for this computation.", + "type": "string" }, - "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).", + "stageName": { + "description": "Stage name of this computation.", "type": "string" }, - "currentWorkerTime": { - "type": "string", - "description": "The current timestamp at the worker.", - "format": "google-datetime" + "instructions": { + "type": "array", + "items": { + "$ref": "ParallelInstruction" + }, + "description": "Instructions that comprise the computation." } - }, - "id": "ReportWorkItemStatusRequest" + } }, - "StreamingConfigTask": { - "description": "A task that carries configuration information for streaming computations.", + "TransformSummary": { + "description": "Description of the type, names/ids, and input/outputs for a transform.", "type": "object", "properties": { - "streamingComputationConfigs": { - "description": "Set of computation configuration information.", + "kind": { + "description": "Type of transform.", + "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." + ], + "enum": [ + "UNKNOWN_KIND", + "PAR_DO_KIND", + "GROUP_BY_KEY_KIND", + "FLATTEN_KIND", + "READ_KIND", + "WRITE_KIND", + "CONSTANT_KIND", + "SINGLETON_KIND", + "SHUFFLE_KIND" + ] + }, + "inputCollectionName": { + "description": "User names for all collection inputs to this transform.", "type": "array", "items": { - "$ref": "StreamingComputationConfig" + "type": "string" } }, - "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.", + "name": { + "description": "User provided name for this transform instance.", "type": "string" }, - "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", + "id": { + "description": "SDK generated id of this transform instance.", "type": "string" - } - }, - "id": "StreamingConfigTask" - }, - "PipelineDescription": { - "id": "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.", + "description": "Transform-specific display data.", "type": "array", "items": { "$ref": "DisplayData" } }, - "executionPipelineStage": { + "outputCollectionName": { + "description": "User names for all collection outputs to this transform.", "type": "array", "items": { - "$ref": "ExecutionStageSummary" - }, - "description": "Description of each stage of execution of the pipeline." - }, - "originalPipelineTransform": { - "description": "Description of each transform in the pipeline and collections between them.", + "type": "string" + } + } + }, + "id": "TransformSummary" + }, + "LeaseWorkItemResponse": { + "description": "Response to a request to lease WorkItems.", + "type": "object", + "properties": { + "workItems": { + "description": "A list of the leased WorkItems.", "type": "array", "items": { - "$ref": "TransformSummary" + "$ref": "WorkItem" } } - } + }, + "id": "LeaseWorkItemResponse" }, - "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", + "LaunchTemplateParameters": { "properties": { - "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" - }, - "properties": { + "parameters": { "type": "object", "additionalProperties": { - "description": "Properties of the object.", - "type": "any" + "type": "string" }, - "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." + "description": "The runtime parameters to pass to the job." + }, + "jobName": { + "description": "Required. The job name to use for the created job.", + "type": "string" + }, + "environment": { + "$ref": "RuntimeEnvironment", + "description": "The runtime environment for the job." } }, - "id": "Step" + "id": "LaunchTemplateParameters", + "description": "Parameters to provide to the template being launched.", + "type": "object" }, - "JobExecutionInfo": { - "description": "Additional information about how a Cloud Dataflow job will be executed that\nisn't contained in the submitted job.", + "Sink": { + "description": "A sink that records can be encoded and written to.", "type": "object", "properties": { - "stages": { - "description": "A mapping from each stage to the information about that stage.", + "spec": { + "description": "The sink to write to, plus its parameters.", "type": "object", "additionalProperties": { - "$ref": "JobExecutionStageInfo" + "type": "any", + "description": "Properties of the object." } + }, + "codec": { + "additionalProperties": { + "type": "any", + "description": "Properties of the object." + }, + "description": "The codec to use to encode data written to the sink.", + "type": "object" } }, - "id": "JobExecutionInfo" - }, - "FailedLocation": { - "id": "FailedLocation", - "description": "Indicates which location failed to respond to a request for data.", - "type": "object", - "properties": { - "name": { - "description": "The name of the failed location.", - "type": "string" - } - } + "id": "Sink" }, - "Disk": { + "FlattenInstruction": { "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" + "inputs": { + "description": "Describes the inputs to the flatten instruction.", + "type": "array", + "items": { + "$ref": "InstructionInput" + } } }, - "id": "Disk", - "description": "Describes the data disk used by a workflow job.", + "id": "FlattenInstruction", + "description": "An instruction that copies its inputs (zero or more) to its (single) output.", "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" }, - "protocol": "rest", "version": "v1b3", - "baseUrl": "https://dataflow.googleapis.com/" + "baseUrl": "https://dataflow.googleapis.com/", + "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": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/userinfo.email": { + "description": "View your email address" + } + } + } + }, + "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": "20180501", + "documentationLink": "https://cloud.google.com/dataflow", + "id": "dataflow:v1b3", + "title": "Dataflow API" } diff --git a/DiscoveryJson/dataproc_v1.json b/DiscoveryJson/dataproc_v1.json index def6f4191f..646e0f4a45 100644 --- a/DiscoveryJson/dataproc_v1.json +++ b/DiscoveryJson/dataproc_v1.json @@ -1,50 +1,101 @@ { + "fullyEncodeReservedExpansion": true, + "title": "Cloud Dataproc API", "ownerName": "Google", "resources": { "projects": { "resources": { "regions": { "resources": { - "operations": { + "clusters": { "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.", + "patch": { "response": { - "$ref": "Empty" + "$ref": "Operation" }, "parameterOrder": [ - "name" + "projectId", + "region", + "clusterName" ], - "httpMethod": "POST", + "httpMethod": "PATCH", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "name": { + "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" + }, + "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.", + "type": "string", + "location": "query" + }, + "region": { "location": "path", - "description": "The name of the operation resource to be cancelled.", + "description": "Required. The Cloud Dataproc region in which to handle the request.", "required": true, + "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", "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$" + "location": "query" + }, + "clusterName": { + "location": "path", + "description": "Required. The cluster name.", + "required": true, + "type": "string" + }, + "projectId": { + "location": "path", + "description": "Required. The ID of the Google Cloud Platform project the cluster belongs to.", + "required": true, + "type": "string" } }, - "flatPath": "v1/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}:cancel", - "path": "v1/{+name}:cancel", - "id": "dataproc.projects.regions.operations.cancel" + "flatPath": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}", + "path": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}", + "id": "dataproc.projects.regions.clusters.patch", + "request": { + "$ref": "Cluster" + }, + "description": "Updates a cluster in a project." }, - "delete": { + "get": { + "path": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}", + "id": "dataproc.projects.regions.clusters.get", + "description": "Gets the resource representation for a cluster in a project.", "response": { - "$ref": "Empty" + "$ref": "Cluster" }, "parameterOrder": [ - "name" + "projectId", + "region", + "clusterName" ], - "httpMethod": "DELETE", + "httpMethod": "GET", "parameters": { - "name": { - "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", + "region": { "location": "path", - "description": "The name of the operation resource to be deleted.", + "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.", "required": true, "type": "string" } @@ -52,106 +103,116 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "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." + "flatPath": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}" }, - "list": { - "httpMethod": "GET", + "diagnose": { + "path": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}:diagnose", + "id": "dataproc.projects.regions.clusters.diagnose", + "description": "Gets cluster diagnostic information. After the operation completes, the Operation.response field contains DiagnoseClusterOutputLocation.", + "request": { + "$ref": "DiagnoseClusterRequest" + }, "response": { - "$ref": "ListOperationsResponse" + "$ref": "Operation" }, "parameterOrder": [ - "name" + "projectId", + "region", + "clusterName" ], + "httpMethod": "POST", "parameters": { - "name": { - "description": "The name of the operation's parent resource.", + "clusterName": { + "description": "Required. The cluster name.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+/operations$", "location": "path" }, - "pageToken": { - "description": "The standard list page token.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "The standard list page size.", - "format": "int32", - "type": "integer", - "location": "query" + "projectId": { + "location": "path", + "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", + "required": true, + "type": "string" }, - "filter": { - "location": "query", - "description": "The standard list filter.", + "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": "v1/projects/{projectsId}/regions/{regionsId}/operations", - "id": "dataproc.projects.regions.operations.list", - "path": "v1/{+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/projects/{projectId}/regions/{region}/clusters/{clusterName}:diagnose" }, - "get": { + "delete": { + "flatPath": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}", + "path": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}", + "id": "dataproc.projects.regions.clusters.delete", + "description": "Deletes a cluster in a project.", "response": { "$ref": "Operation" }, "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "projectId", + "region", + "clusterName" ], + "httpMethod": "DELETE", "parameters": { - "name": { - "description": "The name of the operation resource.", + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "required": true, + "type": "string", + "location": "path" + }, + "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" + }, + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", "location": "path" + }, + "requestId": { + "location": "query", + "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.", + "type": "string" } }, - "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." - } - } - }, - "jobs": { - "methods": { - "cancel": { - "id": "dataproc.projects.regions.jobs.cancel", - "path": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}: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" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists all regions/{region}/clusters in a project.", + "response": { + "$ref": "ListClustersResponse" }, - "httpMethod": "POST", "parameterOrder": [ "projectId", - "region", - "jobId" + "region" ], - "response": { - "$ref": "Job" - }, + "httpMethod": "GET", "parameters": { - "projectId": { - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", - "required": true, - "type": "string", - "location": "path" + "pageSize": { + "description": "Optional. The standard List page size.", + "format": "int32", + "type": "integer", + "location": "query" }, - "jobId": { - "description": "Required. The job ID.", + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", "required": true, "type": "string", "location": "path" @@ -161,103 +222,195 @@ "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": { + "description": "Optional. The standard List page token.", + "type": "string", + "location": "query" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}:cancel" + "flatPath": "v1/projects/{projectId}/regions/{region}/clusters", + "path": "v1/projects/{projectId}/regions/{region}/clusters", + "id": "dataproc.projects.regions.clusters.list" }, - "patch": { + "create": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "projectId", + "region" + ], + "httpMethod": "POST", "parameters": { - "region": { + "projectId": { "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request.", + "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", "required": true, "type": "string" }, - "updateMask": { - "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", - "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.", + "type": "string", + "location": "query" }, - "projectId": { + "region": { "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", + "description": "Required. The Cloud Dataproc region in which to handle the request.", "required": true, "type": "string" - }, - "jobId": { - "description": "Required. The job ID.", - "required": true, - "type": "string", - "location": "path" } }, "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", - "description": "Updates a job in a project.", + "flatPath": "v1/projects/{projectId}/regions/{region}/clusters", + "path": "v1/projects/{projectId}/regions/{region}/clusters", + "id": "dataproc.projects.regions.clusters.create", + "description": "Creates a cluster in a project.", "request": { - "$ref": "Job" - }, + "$ref": "Cluster" + } + } + } + }, + "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.", "response": { - "$ref": "Job" + "$ref": "Empty" }, "parameterOrder": [ - "projectId", - "region", - "jobId" + "name" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "httpMethod": "PATCH" + "parameters": { + "name": { + "location": "path", + "description": "The name of the operation resource to be cancelled.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$" + } + }, + "flatPath": "v1/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}:cancel", + "path": "v1/{+name}:cancel", + "id": "dataproc.projects.regions.operations.cancel" }, - "get": { + "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": "Job" + "$ref": "Empty" }, "parameterOrder": [ - "projectId", - "region", - "jobId" + "name" ], - "httpMethod": "GET", + "httpMethod": "DELETE", "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.", + "name": { + "description": "The name of the operation resource to be deleted.", "required": true, "type": "string", + "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", "location": "path" - }, - "jobId": { - "description": "Required. The job ID.", + } + } + }, + "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": [ + "name" + ], + "httpMethod": "GET", + "parameters": { + "name": { + "location": "path", + "description": "The name of the operation's parent resource.", "required": true, "type": "string", - "location": "path" + "pattern": "^projects/[^/]+/regions/[^/]+/operations$" }, - "region": { - "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request.", - "required": true, - "type": "string" + "pageToken": { + "description": "The standard list page token.", + "type": "string", + "location": "query" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "filter": { + "description": "The standard list filter.", + "type": "string", + "location": "query" } }, - "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." + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/regions/{regionsId}/operations", + "path": "v1/{+name}", + "id": "dataproc.projects.regions.operations.list" }, + "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": [ + "name" + ], + "httpMethod": "GET", + "parameters": { + "name": { + "description": "The name of the operation resource.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", + "location": "path" + } + }, + "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" + } + } + }, + "jobs": { + "methods": { "submit": { - "description": "Submits a job to a cluster.", + "path": "v1/projects/{projectId}/regions/{region}/jobs:submit", + "id": "dataproc.projects.regions.jobs.submit", "request": { "$ref": "SubmitJobRequest" }, + "description": "Submits a job to a cluster.", "response": { "$ref": "Job" }, @@ -266,6 +419,9 @@ "region" ], "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "projectId": { "location": "path", @@ -274,21 +430,16 @@ "type": "string" }, "region": { - "required": true, - "type": "string", "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request." + "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": "v1/projects/{projectId}/regions/{region}/jobs:submit", - "path": "v1/projects/{projectId}/regions/{region}/jobs:submit", - "id": "dataproc.projects.regions.jobs.submit" + "flatPath": "v1/projects/{projectId}/regions/{region}/jobs:submit" }, "delete": { - "httpMethod": "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" }, @@ -297,35 +448,36 @@ "region", "jobId" ], + "httpMethod": "DELETE", "parameters": { - "projectId": { + "region": { + "location": "path", + "description": "Required. The Cloud Dataproc region in which to handle the request.", "required": true, - "type": "string", + "type": "string" + }, + "projectId": { "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to." + "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", - "location": "path" - }, - "region": { - "description": "Required. The Cloud Dataproc region in which to handle the request.", - "required": true, - "type": "string", - "location": "path" + "type": "string" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "flatPath": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}", - "id": "dataproc.projects.regions.jobs.delete", "path": "v1/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." + "id": "dataproc.projects.regions.jobs.delete" }, "list": { + "description": "Lists regions/{region}/jobs in a project.", "response": { "$ref": "ListJobsResponse" }, @@ -334,31 +486,7 @@ "region" ], "httpMethod": "GET", - "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" - }, - "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": { "description": "Optional. The page token, returned by a previous call, to request the next page of results.", "type": "string", @@ -377,290 +505,164 @@ "type": "string" }, "clusterName": { + "location": "query", + "description": "Optional. If set, the returned jobs list includes only jobs that were submitted to the named cluster.", + "type": "string" + }, + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", + "required": true, "type": "string", + "location": "path" + }, + "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": { "location": "query", - "description": "Optional. If set, the returned jobs list includes only jobs that were submitted to the named cluster." + "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" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "flatPath": "v1/projects/{projectId}/regions/{region}/jobs", "path": "v1/projects/{projectId}/regions/{region}/jobs", - "id": "dataproc.projects.regions.jobs.list", - "description": "Lists regions/{region}/jobs in a project." - } - } - }, - "clusters": { - "methods": { - "diagnose": { - "description": "Gets cluster diagnostic information. After the operation completes, the Operation.response field contains DiagnoseClusterOutputLocation.", + "id": "dataproc.projects.regions.jobs.list" + }, + "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": "DiagnoseClusterRequest" - }, - "response": { - "$ref": "Operation" + "$ref": "CancelJobRequest" }, + "httpMethod": "POST", "parameterOrder": [ "projectId", "region", - "clusterName" + "jobId" ], - "httpMethod": "POST", + "response": { + "$ref": "Job" + }, "parameters": { "region": { - "location": "path", "description": "Required. The Cloud Dataproc region in which to handle the request.", "required": true, - "type": "string" + "type": "string", + "location": "path" }, - "clusterName": { + "projectId": { "location": "path", - "description": "Required. The cluster name.", + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", "required": true, "type": "string" }, - "projectId": { - "required": true, - "type": "string", + "jobId": { "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to." + "description": "Required. The job ID.", + "required": true, + "type": "string" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}:diagnose", - "path": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}:diagnose", - "id": "dataproc.projects.regions.clusters.diagnose" + "flatPath": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}:cancel", + "id": "dataproc.projects.regions.jobs.cancel", + "path": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}:cancel" }, - "delete": { - "httpMethod": "DELETE", + "get": { + "description": "Gets the resource representation for a job in a project.", "response": { - "$ref": "Operation" + "$ref": "Job" }, "parameterOrder": [ "projectId", "region", - "clusterName" - ], - "parameters": { - "clusterName": { - "location": "path", - "description": "Required. The cluster name.", - "required": true, - "type": "string" - }, - "clusterUuid": { - "location": "query", - "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" - }, - "projectId": { - "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", - "required": true, - "type": "string", - "location": "path" - }, - "requestId": { - "location": "query", - "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.", - "type": "string" - }, - "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": "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": { - "description": "Lists all regions/{region}/clusters in a project.", - "response": { - "$ref": "ListClustersResponse" - }, - "parameterOrder": [ - "projectId", - "region" + "jobId" ], "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "region": { - "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request.", - "required": true, - "type": "string" - }, - "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 = *", - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "Optional. The standard List page token.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Optional. The standard List page size.", - "format": "int32", - "type": "integer" - }, "projectId": { - "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", "required": true, "type": "string", "location": "path" - } - }, - "flatPath": "v1/projects/{projectId}/regions/{region}/clusters", - "path": "v1/projects/{projectId}/regions/{region}/clusters", - "id": "dataproc.projects.regions.clusters.list" - }, - "create": { - "path": "v1/projects/{projectId}/regions/{region}/clusters", - "id": "dataproc.projects.regions.clusters.create", - "request": { - "$ref": "Cluster" - }, - "description": "Creates a cluster in a project.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "region" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "region": { - "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request.", - "required": true, - "type": "string" }, - "projectId": { - "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", + "jobId": { + "description": "Required. The job ID.", "required": true, "type": "string", "location": "path" }, - "requestId": { - "location": "query", - "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.", - "type": "string" - } - }, - "flatPath": "v1/projects/{projectId}/regions/{region}/clusters" - }, - "patch": { - "path": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}", - "id": "dataproc.projects.regions.clusters.patch", - "description": "Updates a cluster in a project.", - "request": { - "$ref": "Cluster" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "projectId", - "region", - "clusterName" - ], - "httpMethod": "PATCH", - "parameters": { - "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" - }, - "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.", - "type": "string", - "location": "query" - }, "region": { "description": "Required. The Cloud Dataproc region in which to handle the request.", "required": true, "type": "string", "location": "path" - }, - "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", - "format": "google-fieldmask", - "type": "string" - }, - "clusterName": { - "location": "path", - "description": "Required. The cluster name.", - "required": true, - "type": "string" - }, - "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": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}" + "flatPath": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}", + "path": "v1/projects/{projectId}/regions/{region}/jobs/{jobId}", + "id": "dataproc.projects.regions.jobs.get" }, - "get": { + "patch": { "response": { - "$ref": "Cluster" + "$ref": "Job" }, "parameterOrder": [ "projectId", "region", - "clusterName" + "jobId" ], - "httpMethod": "GET", + "httpMethod": "PATCH", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "clusterName": { - "description": "Required. The cluster name.", + "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\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": "path" + "location": "query" }, "projectId": { "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", "required": true, "type": "string" }, - "region": { + "jobId": { "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request.", + "description": "Required. The job ID.", "required": true, "type": "string" } }, - "flatPath": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}", - "path": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}", - "id": "dataproc.projects.regions.clusters.get", - "description": "Gets the resource representation for a cluster in a project." + "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." } } } @@ -670,39 +672,34 @@ } }, "parameters": { - "bearer_token": { + "oauth_token": { "location": "query", - "description": "OAuth bearer token.", + "description": "OAuth 2.0 token for the current user.", "type": "string" }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", + "bearer_token": { + "description": "OAuth bearer token.", "type": "string", "location": "query" }, "upload_protocol": { - "type": "string", "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")." + "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", - "location": "query" - }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" + "default": "true" }, "fields": { - "location": "query", "description": "Selector specifying which fields to include in a partial response.", - "type": "string" + "type": "string", + "location": "query" }, - "callback": { - "description": "JSONP", + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", "type": "string", "location": "query" }, @@ -719,84 +716,160 @@ "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" - ], + "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": { + "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" }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" - }, - "quotaUser": { + "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", - "location": "query" + "default": "true" } }, "version": "v1", "baseUrl": "https://dataproc.googleapis.com/", - "servicePath": "", - "description": "Manages Hadoop-based clusters and jobs on Google Cloud Platform.", "kind": "discovery#restDescription", + "description": "Manages Hadoop-based clusters and jobs on Google Cloud Platform.", + "servicePath": "", "basePath": "", + "id": "dataproc:v1", "documentationLink": "https://cloud.google.com/dataproc/", "revision": "20180502", - "id": "dataproc:v1", "discoveryVersion": "v1", "schemas": { - "PySparkJob": { + "ListClustersResponse": { + "description": "The list of all clusters in a project.", + "type": "object", "properties": { - "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.", + "clusters": { + "description": "Output only. The clusters in the project.", "type": "array", "items": { - "type": "string" + "$ref": "Cluster" } }, - "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": { + "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": "ListClustersResponse" + }, + "Job": { + "description": "A Cloud Dataproc job resource.", + "type": "object", + "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" + }, + "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." + }, + "labels": { + "additionalProperties": { "type": "string" - } + }, + "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" }, - "mainPythonFileUri": { - "description": "Required. The HCFS URI of the main Python file to use as the driver. Must be a .py file.", + "driverOutputResourceUri": { + "description": "Output only. A URI pointing to the location of the stdout of the job's driver program.", "type": "string" }, - "archiveUris": { - "description": "Optional. HCFS URIs of archives to be extracted in the working directory of .jar, .tar, .tar.gz, .tgz, and .zip.", + "sparkJob": { + "$ref": "SparkJob", + "description": "Job is a Spark job." + }, + "sparkSqlJob": { + "$ref": "SparkSqlJob", + "description": "Job is a SparkSql job." + }, + "statusHistory": { + "description": "Output only. The previous job status.", "type": "array", "items": { - "type": "string" + "$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" } }, + "pysparkJob": { + "$ref": "PySparkJob", + "description": "Job is a Pyspark job." + }, + "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." + }, + "hadoopJob": { + "description": "Job is a Hadoop job.", + "$ref": "HadoopJob" + }, + "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." + }, + "placement": { + "description": "Required. Job information, including how, when, and where to run the job.", + "$ref": "JobPlacement" + } + }, + "id": "Job" + }, + "SparkJob": { + "description": "A Cloud Dataproc job for running Apache Spark (http://spark.apache.org/) 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.", + "description": "Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Spark driver and tasks.", "type": "array", "items": { "type": "string" @@ -810,7 +883,7 @@ "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.", + "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" }, "args": { @@ -819,517 +892,433 @@ "items": { "type": "string" } - } - }, - "id": "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" - }, - "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" }, - "serviceAccountScopes": { - "description": "Optional. The URIs of service account scopes to be included in 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", + "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" } }, - "tags": { - "description": "The Compute Engine tags to add to all instances (see Tagging instances).", + "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" } }, - "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 following 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" - }, - "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" - }, - "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" - }, - "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", + "mainJarFileUri": { + "description": "The HCFS URI of the jar file that contains the main class.", "type": "string" } }, - "id": "GceClusterConfig", - "description": "Common config settings for resources of Compute Engine cluster instances, applicable to all instances in the cluster.", - "type": "object" + "id": "SparkJob" }, - "ClusterMetrics": { + "JobStatus": { + "description": "Cloud Dataproc job status.", "type": "object", "properties": { - "yarnMetrics": { - "additionalProperties": { - "format": "int64", - "type": "string" - }, - "description": "The YARN metrics.", - "type": "object" + "state": { + "description": "Output only. A state message specifying the overall job 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." + ], + "enum": [ + "STATE_UNSPECIFIED", + "PENDING", + "SETUP_DONE", + "RUNNING", + "CANCEL_PENDING", + "CANCEL_STARTED", + "CANCELLED", + "DONE", + "ERROR", + "ATTEMPT_FAILURE" + ] }, - "hdfsMetrics": { - "description": "The HDFS metrics.", - "type": "object", - "additionalProperties": { - "format": "int64", - "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": { + "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": "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": "JobStatus" }, - "AcceleratorConfig": { - "description": "Specifies the type and number of accelerator cards attached to the instances of an instance. See GPUs on Compute Engine.", + "ManagedGroupConfig": { + "description": "Specifies the resources used to actively manage an instance group.", "type": "object", "properties": { - "acceleratorCount": { - "description": "The number of the accelerator cards of this type exposed to this instance.", - "format": "int32", - "type": "integer" + "instanceGroupManagerName": { + "description": "Output only. The name of the Instance Group Manager for this group.", + "type": "string" }, - "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-k80Auto Zone Exception: If you are using the Cloud Dataproc Auto Zone Placement feature, you must use the short name of the accelerator type resource, for example, nvidia-tesla-k80.", + "instanceTemplateName": { + "description": "Output only. The name of the Instance Template used for the Managed Instance Group.", "type": "string" } }, - "id": "AcceleratorConfig" + "id": "ManagedGroupConfig" }, - "LoggingConfig": { - "description": "The runtime logging config of the job.", + "ClusterOperationStatus": { + "description": "The status of the operation.", "type": "object", "properties": { - "driverLogLevels": { - "additionalProperties": { - "type": "string", - "enum": [ - "LEVEL_UNSPECIFIED", - "ALL", - "TRACE", - "DEBUG", - "INFO", - "WARN", - "ERROR", - "FATAL", - "OFF" - ] - }, - "description": "The per-package log levels for the driver. This may include \"root\" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'", - "type": "object" - } - }, - "id": "LoggingConfig" - }, - "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" + "stateStartTime": { + "description": "Output only. The time this state was entered.", + "format": "google-datetime", + "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" + "state": { + "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." + ], + "enum": [ + "UNKNOWN", + "PENDING", + "RUNNING", + "DONE" + ] }, - "response": { - "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 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" + "details": { + "description": "Output only. A message containing any operation metadata details.", + "type": "string" }, - "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.", + "innerState": { + "description": "Output only. A message containing the detailed operation state.", "type": "string" } }, - "id": "Operation" + "id": "ClusterOperationStatus" }, - "JobReference": { - "description": "Encapsulates the full scoping used to reference a job.", + "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": { - "projectId": { + "state": { + "description": "Required. The application state.", "type": "string", - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to." + "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" + ] }, - "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.", + "name": { + "description": "Required. The application name.", "type": "string" - } - }, - "id": "JobReference" - }, - "SubmitJobRequest": { - "description": "A request to submit a job.", - "type": "object", - "properties": { - "job": { - "description": "Required. The job resource.", - "$ref": "Job" }, - "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.", + "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": "SubmitJobRequest" + "id": "YarnApplication" }, - "Status": { + "QueryList": { + "description": "A list of queries to run on a cluster.", + "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.", + "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": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } + "type": "string" } } }, - "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" + "id": "QueryList" }, - "InstanceGroupConfig": { - "id": "InstanceGroupConfig", - "description": "Optional. The config settings for Compute Engine resources in an instance group, such as a master or worker group.", + "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": { - "diskConfig": { - "$ref": "DiskConfig", - "description": "Optional. Disk option config settings." - }, - "managedGroupConfig": { - "description": "Output only. The config for Compute Engine Instance Group Manager that manages this group. This is only used for preemptible instance groups.", - "$ref": "ManagedGroupConfig" + "properties": { + "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", + "additionalProperties": { + "type": "string" + } }, - "isPreemptible": { - "description": "Optional. Specifies that this instance group contains preemptible instances.", - "type": "boolean" + "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" + } }, - "imageUri": { - "type": "string", - "description": "Output only. The Compute Engine image resource used for cluster instances. Inferred from SoftwareConfig.image_version." + "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" + } }, - "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-2Auto Zone Exception: If you are using the Cloud Dataproc Auto Zone Placement feature, you must use the short name of the machine type resource, for example, n1-standard-2.", + "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" }, - "instanceNames": { - "description": "Output only. The list of instance names. Cloud Dataproc derives the names from cluster_name, num_instances, and the instance group.", + "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" } }, - "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.", + "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": { - "$ref": "AcceleratorConfig" + "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" + "loggingConfig": { + "$ref": "LoggingConfig", + "description": "Optional. The runtime log config for job execution." } - } + }, + "id": "HadoopJob" }, - "JobScheduling": { - "description": "Job scheduling options.", + "DiagnoseClusterRequest": { + "description": "A request to collect cluster diagnostic information.", "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" + "properties": {}, + "id": "DiagnoseClusterRequest" }, - "NodeInitializationAction": { - "description": "Specifies an executable to run on a fully configured node and a timeout period for executable completion.", + "DiskConfig": { + "description": "Specifies the config of disk options for a group of VM instances.", "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" + "bootDiskSizeGb": { + "description": "Optional. Size in GB of the boot disk (default is 500GB).", + "format": "int32", + "type": "integer" }, - "executableFile": { - "description": "Required. Cloud Storage URI of executable file.", - "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" } }, - "id": "NodeInitializationAction" + "id": "DiskConfig" }, - "ListJobsResponse": { - "description": "A list of jobs in a project.", + "ClusterOperationMetadata": { + "description": "Metadata describing the operation.", "type": "object", "properties": { - "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" + "warnings": { + "description": "Output only. Errors encountered during operation execution.", + "type": "array", + "items": { + "type": "string" + } }, - "jobs": { - "description": "Output only. Jobs list.", + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Output only. Labels associated with the operation", + "type": "object" + }, + "status": { + "$ref": "ClusterOperationStatus", + "description": "Output only. Current operation status." + }, + "statusHistory": { + "description": "Output only. The previous operation status.", "type": "array", "items": { - "$ref": "Job" + "$ref": "ClusterOperationStatus" } + }, + "clusterUuid": { + "description": "Output only. Cluster UUID for the operation.", + "type": "string" + }, + "clusterName": { + "description": "Output only. Name of the cluster for the operation.", + "type": "string" + }, + "operationType": { + "description": "Output only. The operation type.", + "type": "string" + }, + "description": { + "description": "Output only. Short description of operation.", + "type": "string" } }, - "id": "ListJobsResponse" - }, - "CancelJobRequest": { - "description": "A request to cancel a job.", - "type": "object", - "properties": {}, - "id": "CancelJobRequest" + "id": "ClusterOperationMetadata" }, - "SparkSqlJob": { + "HiveJob": { + "description": "A Cloud Dataproc job for running Apache Hive (https://hive.apache.org/) queries on YARN.", "type": "object", "properties": { - "scriptVariables": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Optional. Mapping of query variable names to values (equivalent to the Spark SQL command: SET name=\"value\";)." + "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." }, "jarFileUris": { - "description": "Optional. HCFS URIs of jar files to be added to the Spark CLASSPATH.", + "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", "items": { "type": "string" } }, - "loggingConfig": { - "$ref": "LoggingConfig", - "description": "Optional. The runtime log config for job execution." - }, - "properties": { + "scriptVariables": { "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.", + "description": "Optional. Mapping of query variable names to values (equivalent to the Hive command: SET name=\"value\";).", "type": "object" }, - "queryFileUri": { - "type": "string", - "description": "The HCFS URI of the script that contains SQL queries." - }, - "queryList": { - "description": "A list of queries.", - "$ref": "QueryList" - } - }, - "id": "SparkSqlJob", - "description": "A Cloud Dataproc job for running Apache Spark SQL (http://spark.apache.org/sql/) queries." - }, - "Cluster": { - "properties": { - "labels": { + "properties": { + "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", "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." - }, - "status": { - "description": "Output only. Cluster status.", - "$ref": "ClusterStatus" - }, - "statusHistory": { - "description": "Output only. The previous cluster status.", - "type": "array", - "items": { - "$ref": "ClusterStatus" } - }, - "config": { - "$ref": "ClusterConfig", - "description": "Required. The cluster config. Note that Cloud Dataproc may set default values, and values may change when clusters are updated." - }, - "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" - }, - "projectId": { - "description": "Required. The Google Cloud Platform project ID that the cluster belongs to.", - "type": "string" } }, - "id": "Cluster", - "description": "Describes the identifying information, config, and status of a cluster of Compute Engine instances.", - "type": "object" + "id": "HiveJob" }, - "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" + "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" }, - "SoftwareConfig": { - "description": "Specifies the selection and config of software inside the cluster.", + "DiagnoseClusterResults": { + "description": "The location of diagnostic output.", "type": "object", "properties": { - "imageVersion": { - "description": "Optional. The version of software inside the cluster. It must be one of the supported Cloud Dataproc Versions, such as \"1.2\" (including a subminor version, such as \"1.2.29\"), or the \"preview\" version. If unspecified, it defaults to the latest version.", + "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" - }, - "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" + "id": "DiagnoseClusterResults" }, - "JobPlacement": { - "description": "Cloud Dataproc job config.", + "ClusterConfig": { + "description": "The cluster config.", "type": "object", "properties": { - "clusterName": { - "description": "Required. The name of the cluster where the job will be submitted.", - "type": "string" + "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" + } }, - "clusterUuid": { - "description": "Output only. A cluster UUID generated by the Cloud Dataproc service when the job is submitted.", + "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" - } - }, - "id": "JobPlacement" - }, - "ClusterStatus": { - "properties": { - "stateStartTime": { - "type": "string", - "description": "Output only. Time when this state was entered.", - "format": "google-datetime" }, - "substate": { - "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." - ], - "enum": [ - "UNSPECIFIED", - "UNHEALTHY", - "STALE_STATUS" - ], - "description": "Output only. Additional state information that includes status reported by the agent.", - "type": "string" + "workerConfig": { + "description": "Optional. The Compute Engine config settings for worker instances in a cluster.", + "$ref": "InstanceGroupConfig" }, - "detail": { - "description": "Output only. Optional details of cluster's state.", - "type": "string" + "gceClusterConfig": { + "$ref": "GceClusterConfig", + "description": "Required. The shared Compute Engine config settings for all instances in a cluster." }, - "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." - ], - "enum": [ - "UNKNOWN", - "CREATING", - "RUNNING", - "ERROR", - "DELETING", - "UPDATING" - ], - "description": "Output only. The cluster's state.", - "type": "string" + "softwareConfig": { + "$ref": "SoftwareConfig", + "description": "Optional. The config settings for software inside the cluster." + }, + "masterConfig": { + "description": "Optional. The Compute Engine config settings for the master instance in a cluster.", + "$ref": "InstanceGroupConfig" + }, + "secondaryWorkerConfig": { + "$ref": "InstanceGroupConfig", + "description": "Optional. The Compute Engine config settings for additional worker instances in a cluster." } }, - "id": "ClusterStatus", - "description": "The status of a cluster and its instances.", - "type": "object" + "id": "ClusterConfig" }, - "PigJob": { - "description": "A Cloud Dataproc job for running Apache Pig (https://pig.apache.org/) queries on YARN.", + "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" - }, - "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." - }, - "scriptVariables": { - "additionalProperties": { - "type": "string" - }, - "description": "Optional. Mapping of query variable names to values (equivalent to the Pig command: name=[value]).", - "type": "object" + } }, "loggingConfig": { "description": "Optional. The runtime log config for job execution.", @@ -1339,562 +1328,575 @@ "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.", + "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" }, - "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": { - "$ref": "QueryList", - "description": "A list of queries." - }, - "queryFileUri": { - "description": "The HCFS URI of the script that contains the Pig queries.", - "type": "string" - } - }, - "id": "PigJob" - }, - "ListClustersResponse": { - "id": "ListClustersResponse", - "description": "The list of all clusters in a project.", - "type": "object", - "properties": { - "clusters": { - "description": "Output only. The clusters in the project.", + "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": { - "$ref": "Cluster" + "type": "string" } }, - "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.", + "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" }, - "Job": { - "description": "A Cloud Dataproc job resource.", + "GceClusterConfig": { + "description": "Common config settings for resources of Compute Engine cluster instances, applicable to all instances in the cluster.", "type": "object", "properties": { - "hadoopJob": { - "$ref": "HadoopJob", - "description": "Job is a Hadoop 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." - }, - "placement": { - "description": "Required. Job information, including how, when, and where to run the job.", - "$ref": "JobPlacement" - }, - "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.", + "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" }, - "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." + "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" }, - "labels": { + "metadata": { "additionalProperties": { "type": "string" }, - "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.", + "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" }, - "driverOutputResourceUri": { - "description": "Output only. A URI pointing to the location of the stdout of the job's driver program.", - "type": "string" - }, - "sparkJob": { - "$ref": "SparkJob", - "description": "Job is a Spark job." - }, - "sparkSqlJob": { - "$ref": "SparkSqlJob", - "description": "Job is a SparkSql job." + "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" }, - "statusHistory": { - "description": "Output only. The previous job status.", + "serviceAccountScopes": { + "description": "Optional. The URIs of service account scopes to be included in 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": { - "$ref": "JobStatus" + "type": "string" } }, - "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.", + "tags": { + "description": "The Compute Engine tags to add to all instances (see Tagging instances).", "type": "array", "items": { - "$ref": "YarnApplication" + "type": "string" } }, - "pysparkJob": { - "$ref": "PySparkJob", - "description": "Job is a Pyspark job." + "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 following 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" }, - "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." + "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" } }, - "id": "Job" + "id": "GceClusterConfig" }, - "SparkJob": { - "description": "A Cloud Dataproc job for running Apache Spark (http://spark.apache.org/) applications on YARN.", + "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": { - "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", + "yarnMetrics": { "additionalProperties": { - "type": "string" - } - }, - "args": { - "type": "array", - "items": { + "format": "int64", "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 Spark 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 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" + "description": "The YARN metrics.", + "type": "object" }, - "jarFileUris": { - "description": "Optional. HCFS URIs of jar files to add to the CLASSPATHs of the Spark driver and tasks.", - "type": "array", - "items": { + "hdfsMetrics": { + "additionalProperties": { + "format": "int64", "type": "string" - } + }, + "description": "The HDFS metrics.", + "type": "object" } }, - "id": "SparkJob" + "id": "ClusterMetrics" }, - "JobStatus": { + "AcceleratorConfig": { + "description": "Specifies the type and number of accelerator cards attached to the instances of an instance. See GPUs on Compute Engine.", "type": "object", "properties": { - "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." - ], - "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." - }, - "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", + "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-k80Auto Zone Exception: If you are using the Cloud Dataproc Auto Zone Placement feature, you must use the short name of the accelerator type resource, for example, nvidia-tesla-k80.", "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" - ] + "acceleratorCount": { + "description": "The number of the accelerator cards of this type exposed to this instance.", + "format": "int32", + "type": "integer" } }, - "id": "JobStatus", - "description": "Cloud Dataproc job status." + "id": "AcceleratorConfig" }, - "ManagedGroupConfig": { - "description": "Specifies the resources used to actively manage an instance group.", + "LoggingConfig": { + "description": "The runtime logging config of the job.", "type": "object", "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" + "driverLogLevels": { + "description": "The per-package log levels for the driver. This may include \"root\" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'", + "type": "object", + "additionalProperties": { + "enum": [ + "LEVEL_UNSPECIFIED", + "ALL", + "TRACE", + "DEBUG", + "INFO", + "WARN", + "ERROR", + "FATAL", + "OFF" + ], + "type": "string" + } } }, - "id": "ManagedGroupConfig" + "id": "LoggingConfig" }, - "ClusterOperationStatus": { + "Operation": { "properties": { - "innerState": { - "description": "Output only. A message containing the detailed operation state.", - "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" }, - "stateStartTime": { - "description": "Output only. The time this state was entered.", - "format": "google-datetime", + "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" }, - "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." - ] + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." }, - "details": { - "description": "Output only. A message containing any operation metadata details.", - "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 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": "ClusterOperationStatus", - "description": "The status of the operation.", + "id": "Operation", + "description": "This resource represents a long-running operation that is the result of a network API call.", "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.", - "type": "object", + "JobReference": { "properties": { - "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.", + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", "type": "string" }, - "progress": { - "description": "Required. The numerical progress of the application, from 1 to 100.", - "format": "float", - "type": "number" - }, - "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.", + "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", + "description": "Encapsulates the full scoping used to reference a job.", + "type": "object" + }, + "SubmitJobRequest": { + "properties": { + "job": { + "$ref": "Job", + "description": "Required. The job resource." }, - "name": { - "type": "string", - "description": "Required. The application name." + "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": "YarnApplication" + "id": "SubmitJobRequest", + "description": "A request to submit a job.", + "type": "object" }, - "QueryList": { - "id": "QueryList", - "description": "A list of queries to run on a cluster.", + "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": { - "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", + "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": "string" + "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" }, - "HadoopJob": { - "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).", + "InstanceGroupConfig": { + "description": "Optional. The config settings for Compute Engine resources in an instance group, such as a master or worker group.", "type": "object", "properties": { - "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'", + "diskConfig": { + "$ref": "DiskConfig", + "description": "Optional. Disk option config settings." + }, + "managedGroupConfig": { + "description": "Output only. The config for 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 Compute Engine image resource used for cluster instances. Inferred from SoftwareConfig.image_version.", "type": "string" }, - "jarFileUris": { - "description": "Optional. Jar file URIs to add to the CLASSPATHs of the Hadoop driver and tasks.", + "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-2Auto Zone Exception: If you are using the Cloud Dataproc Auto Zone Placement feature, you must use the short name of the machine type resource, for example, n1-standard-2.", + "type": "string" + }, + "instanceNames": { + "description": "Output only. The list of instance names. Cloud Dataproc derives the names from cluster_name, num_instances, and the instance group.", "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" - }, - "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.", + "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.", "type": "array", "items": { - "type": "string" + "$ref": "AcceleratorConfig" } }, - "fileUris": { + "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" + } + }, + "id": "InstanceGroupConfig" + }, + "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" + } + }, + "id": "JobScheduling", + "description": "Job scheduling options.", + "type": "object" + }, + "NodeInitializationAction": { + "description": "Specifies an executable to run on a fully configured node and a timeout period for executable completion.", + "type": "object", + "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" + } + }, + "id": "NodeInitializationAction" + }, + "ListJobsResponse": { + "description": "A list of jobs in a project.", + "type": "object", + "properties": { + "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" + }, + "jobs": { + "description": "Output only. Jobs list.", "type": "array", "items": { + "$ref": "Job" + } + } + }, + "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": { + "properties": { + "additionalProperties": { "type": "string" }, - "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." + "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" }, - "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.", + "queryList": { + "$ref": "QueryList", + "description": "A list of queries." + }, + "queryFileUri": { + "description": "The HCFS URI of the script that contains SQL queries.", "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.", + "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" } - } - } - }, - "DiagnoseClusterRequest": { - "type": "object", - "properties": {}, - "id": "DiagnoseClusterRequest", - "description": "A request to collect cluster diagnostic information." - }, - "DiskConfig": { - "description": "Specifies the config of disk options for a group of VM instances.", - "type": "object", - "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" + "loggingConfig": { + "$ref": "LoggingConfig", + "description": "Optional. The runtime log config for job execution." } }, - "id": "DiskConfig" + "id": "SparkSqlJob" }, - "ClusterOperationMetadata": { - "description": "Metadata describing the operation.", + "Cluster": { + "description": "Describes the identifying information, config, and status of a cluster of Compute Engine instances.", "type": "object", "properties": { - "description": { - "description": "Output only. Short description of operation.", + "projectId": { + "description": "Required. The Google Cloud Platform project ID that the cluster belongs to.", "type": "string" }, - "warnings": { - "description": "Output only. Errors encountered during operation execution.", - "type": "array", - "items": { - "type": "string" - } - }, "labels": { - "description": "Output only. Labels associated with the operation", - "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.", + "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." }, "status": { - "$ref": "ClusterOperationStatus", - "description": "Output only. Current operation status." + "description": "Output only. Cluster status.", + "$ref": "ClusterStatus" + }, + "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 operation status.", + "description": "Output only. The previous cluster status.", "type": "array", "items": { - "$ref": "ClusterOperationStatus" + "$ref": "ClusterStatus" } }, - "clusterUuid": { - "description": "Output only. Cluster UUID for the operation.", - "type": "string" - }, "clusterName": { - "type": "string", - "description": "Output only. Name of the cluster for the operation." + "description": "Required. The cluster name. Cluster names within a project must be unique. Names of deleted clusters can be reused.", + "type": "string" }, - "operationType": { - "description": "Output only. The operation type.", + "clusterUuid": { + "description": "Output only. A cluster UUID (Unique Universal Identifier). Cloud Dataproc generates this value when it creates the cluster.", "type": "string" } }, - "id": "ClusterOperationMetadata" + "id": "Cluster" }, - "HiveJob": { - "description": "A Cloud Dataproc job for running Apache Hive (https://hive.apache.org/) queries on YARN.", + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", "type": "object", "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" - }, - "queryFileUri": { - "description": "The HCFS URI of the script that contains Hive queries.", + "nextPageToken": { + "description": "The standard List next-page token.", "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" - }, - "jarFileUris": { + "operations": { + "description": "A list of operations that matches the specified filter in the request.", "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." + "$ref": "Operation" + } + } + }, + "id": "ListOperationsResponse" + }, + "SoftwareConfig": { + "properties": { + "imageVersion": { + "description": "Optional. The version of software inside the cluster. It must be one of the supported Cloud Dataproc Versions, such as \"1.2\" (including a subminor version, such as \"1.2.29\"), or the \"preview\" version. If unspecified, it defaults to the latest version.", + "type": "string" }, "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" - }, - "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" + } } }, - "id": "HiveJob" + "id": "SoftwareConfig", + "description": "Specifies the selection and config of software inside the cluster.", + "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 {}.", + "JobPlacement": { + "description": "Cloud Dataproc job config.", "type": "object", - "properties": {}, - "id": "Empty" + "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" }, - "DiagnoseClusterResults": { - "description": "The location of diagnostic output.", + "ClusterStatus": { + "description": "The status of a cluster and its instances.", "type": "object", "properties": { - "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.", + "state": { + "enum": [ + "UNKNOWN", + "CREATING", + "RUNNING", + "ERROR", + "DELETING", + "UPDATING" + ], + "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", + "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." + ] + }, + "detail": { + "description": "Output only. Optional details of cluster's state.", "type": "string" } }, - "id": "DiagnoseClusterResults" + "id": "ClusterStatus" }, - "ClusterConfig": { + "PigJob": { + "description": "A Cloud Dataproc job for running Apache Pig (https://pig.apache.org/) queries on YARN.", "type": "object", "properties": { - "softwareConfig": { - "$ref": "SoftwareConfig", - "description": "Optional. The config settings for software inside the cluster." + "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" }, - "masterConfig": { - "$ref": "InstanceGroupConfig", - "description": "Optional. The Compute Engine config settings for the master instance in a cluster." + "queryList": { + "$ref": "QueryList", + "description": "A list of queries." }, - "secondaryWorkerConfig": { - "$ref": "InstanceGroupConfig", - "description": "Optional. The Compute Engine config settings for additional worker instances in a cluster." + "queryFileUri": { + "description": "The HCFS URI of the script that contains the Pig queries.", + "type": "string" }, - "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", + "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": { - "$ref": "NodeInitializationAction" + "type": "string" } }, - "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" + "scriptVariables": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Mapping of query variable names to values (equivalent to the Pig command: name=[value]).", + "type": "object" }, - "workerConfig": { - "description": "Optional. The Compute Engine config settings for worker instances in a cluster.", - "$ref": "InstanceGroupConfig" + "loggingConfig": { + "$ref": "LoggingConfig", + "description": "Optional. The runtime log config for job execution." }, - "gceClusterConfig": { - "$ref": "GceClusterConfig", - "description": "Required. The shared Compute Engine config settings for all instances in a cluster." + "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" } }, - "id": "ClusterConfig", - "description": "The cluster config." + "id": "PigJob" } }, "icons": { @@ -1915,7 +1917,5 @@ "rootUrl": "https://dataproc.googleapis.com/", "ownerDomain": "google.com", "name": "dataproc", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Cloud Dataproc API" + "batchPath": "batch" } diff --git a/DiscoveryJson/dataproc_v1beta2.json b/DiscoveryJson/dataproc_v1beta2.json index e3353899ac..5120f581ee 100644 --- a/DiscoveryJson/dataproc_v1beta2.json +++ b/DiscoveryJson/dataproc_v1beta2.json @@ -1,17 +1,64 @@ { - "kind": "discovery#restDescription", - "description": "Manages Hadoop-based clusters and jobs on Google Cloud Platform.", - "servicePath": "", - "basePath": "", - "revision": "20180502", - "id": "dataproc:v1beta2", - "documentationLink": "https://cloud.google.com/dataproc/", "discoveryVersion": "v1", "version_module": true, "schemas": { - "Policy": { + "GceClusterConfig": { + "description": "Common config settings for resources of Compute Engine cluster instances, applicable to all instances in the cluster.", "type": "object", "properties": { + "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" + }, + "internalIpOnly": { + "type": "boolean", + "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." + }, + "serviceAccountScopes": { + "description": "Optional. The URIs of service account scopes to be included in 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": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The Compute Engine tags to add to all instances (see Tagging instances)." + }, + "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 following 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" + }, + "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" + }, + "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" + }, + "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": "GceClusterConfig" + }, + "Policy": { + "properties": { + "bindings": { + "description": "Associates a list of members to a role. 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 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", @@ -21,35 +68,16 @@ "description": "Deprecated.", "format": "int32", "type": "integer" - }, - "bindings": { - "type": "array", - "items": { - "$ref": "Binding" - }, - "description": "Associates a list of members to a role. bindings with no members will result in an error." } }, "id": "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.JSON 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}\nYAML Example\nbindings:\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 role: roles/owner\n- members:\n - user:sean@example.com\n role: roles/viewer\nFor a description of IAM and its features, see the IAM developer's guide (https://cloud.google.com/iam/docs)." + "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.JSON 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}\nYAML Example\nbindings:\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 role: roles/owner\n- members:\n - user:sean@example.com\n role: roles/viewer\nFor a description of IAM and its features, see the IAM developer's guide (https://cloud.google.com/iam/docs).", + "type": "object" }, "Operation": { - "id": "Operation", "description": "This resource represents a long-running operation that is the result of a network API call.", "type": "object", "properties": { - "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.", - "type": "boolean" - }, "response": { "additionalProperties": { "description": "Properties of the object. Contains field @type with type URL.", @@ -65,28 +93,42 @@ "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" } - } + }, + "id": "Operation" }, "ListWorkflowTemplatesResponse": { - "description": "A response to a request to list workflow templates in a project.", "type": "object", "properties": { - "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 \u003ccode\u003eListWorkflowTemplatesRequest\u003c/code\u003e." - }, "templates": { "description": "Output only. WorkflowTemplates list.", "type": "array", "items": { "$ref": "WorkflowTemplate" } + }, + "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" } }, - "id": "ListWorkflowTemplatesResponse" + "id": "ListWorkflowTemplatesResponse", + "description": "A response to a request to list workflow templates in a project." }, "JobReference": { + "id": "JobReference", "description": "Encapsulates the full scoping used to reference a job.", "type": "object", "properties": { @@ -95,27 +137,15 @@ "type": "string" }, "jobId": { - "type": "string", - "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." + "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": { - "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", @@ -124,6 +154,17 @@ "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" @@ -132,46 +173,35 @@ "description": "Associates members with a role.", "type": "object", "properties": { - "role": { - "description": "Role that is assigned to members. For example, roles/viewer, roles/editor, or roles/owner. Required", - "type": "string" - }, "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 .\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" }, "InstanceGroupConfig": { + "description": "Optional. The config settings for Compute Engine resources in an instance group, such as a master or worker group.", "type": "object", "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.", - "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": { - "type": "string", - "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-2Auto Zone Exception: If you are using the Cloud Dataproc Auto Zone Placement feature, you must use the short name of the machine type resource, for example, n1-standard-2." + "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-2Auto Zone Exception: If you are using the Cloud Dataproc Auto Zone Placement feature, you must use the short name of the machine type resource, for example, n1-standard-2.", + "type": "string" + }, + "imageUri": { + "description": "Output only. The Compute Engine image resource used for cluster instances. Inferred from SoftwareConfig.image_version.", + "type": "string" }, "managedGroupConfig": { "$ref": "ManagedGroupConfig", @@ -181,24 +211,33 @@ "description": "Optional. Specifies that this instance group contains preemptible instances.", "type": "boolean" }, - "imageUri": { - "description": "Output only. The Compute Engine image resource used for cluster instances. Inferred from SoftwareConfig.image_version.", - "type": "string" - }, "instanceNames": { "description": "Output only. The list of instance names. Cloud Dataproc derives the names from cluster_name, num_instances, and the instance group.", "type": "array", "items": { "type": "string" } + }, + "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.", + "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" } }, - "id": "InstanceGroupConfig", - "description": "Optional. The config settings for Compute Engine resources in an instance group, such as a master or worker group." + "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.", @@ -210,108 +249,130 @@ "type": "string" } }, - "id": "NodeInitializationAction" + "id": "NodeInitializationAction", + "description": "Specifies an executable to run on a fully configured node and a timeout period for executable completion.", + "type": "object" }, "ListJobsResponse": { - "description": "A list of jobs in a project.", "type": "object", "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." - }, "jobs": { + "description": "Output only. Jobs list.", "type": "array", "items": { "$ref": "Job" - }, - "description": "Output only. Jobs list." + } + }, + "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" + "id": "ListJobsResponse", + "description": "A list of jobs in a project." }, "CancelJobRequest": { - "type": "object", "properties": {}, "id": "CancelJobRequest", - "description": "A request to cancel a job." + "description": "A request to cancel a job.", + "type": "object" }, "SparkSqlJob": { - "id": "SparkSqlJob", "description": "A Cloud Dataproc job for running Apache Spark SQL (http://spark.apache.org/sql/) queries.", "type": "object", "properties": { - "queryList": { - "$ref": "QueryList", - "description": "A list of queries." - }, "queryFileUri": { "description": "The HCFS URI of the script that contains SQL queries.", "type": "string" }, + "queryList": { + "$ref": "QueryList", + "description": "A list of queries." + }, "scriptVariables": { - "description": "Optional. Mapping of query variable names to values (equivalent to the Spark SQL command: SET name=\"value\";).", - "type": "object", "additionalProperties": { "type": "string" - } + }, + "description": "Optional. Mapping of query variable names to values (equivalent to the Spark SQL command: SET name=\"value\";).", + "type": "object" }, "jarFileUris": { + "description": "Optional. HCFS URIs of jar files to be added to the Spark CLASSPATH.", "type": "array", "items": { "type": "string" - }, - "description": "Optional. HCFS URIs of jar files to be added to the Spark CLASSPATH." + } }, "loggingConfig": { "description": "Optional. The runtime log config for job execution.", "$ref": "LoggingConfig" }, "properties": { - "type": "object", "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." + "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": { "type": "object", "properties": { "operations": { + "description": "A list of operations that matches the specified filter in the request.", "type": "array", "items": { "$ref": "Operation" - }, - "description": "A list of operations that matches the specified filter in the request." + } }, "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" + "type": "string", + "description": "The standard List next-page token." } }, "id": "ListOperationsResponse", "description": "The response message for Operations.ListOperations." }, "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." + "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", - "description": "Cloud Dataproc job config.", - "type": "object" + "id": "JobPlacement" }, "ClusterStatus": { + "description": "The status of a cluster and its instances.", "type": "object", "properties": { + "stateStartTime": { + "type": "string", + "description": "Output only. Time when this state was entered.", + "format": "google-datetime" + }, + "substate": { + "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." + ], + "enum": [ + "UNSPECIFIED", + "UNHEALTHY", + "STALE_STATUS" + ], + "description": "Output only. Additional state information that includes status reported by the agent.", + "type": "string" + }, "detail": { "description": "Output only. Optional details of cluster's state.", "type": "string" @@ -335,46 +396,25 @@ ], "description": "Output only. The cluster's state.", "type": "string" - }, - "stateStartTime": { - "description": "Output only. Time when this state was entered.", - "format": "google-datetime", - "type": "string" - }, - "substate": { - "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." - ], - "enum": [ - "UNSPECIFIED", - "UNHEALTHY", - "STALE_STATUS" - ], - "description": "Output only. Additional state information that includes status reported by the agent.", - "type": "string" } }, - "id": "ClusterStatus", - "description": "The status of a cluster and its instances." + "id": "ClusterStatus" }, "PigJob": { - "description": "A Cloud Dataproc job for running Apache Pig (https://pig.apache.org/) queries on YARN.", "type": "object", "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" }, - "queryFileUri": { - "type": "string", - "description": "The HCFS URI of the script that contains the Pig queries." - }, "queryList": { "description": "A list of queries.", "$ref": "QueryList" }, + "queryFileUri": { + "description": "The HCFS URI of the script that contains the Pig queries.", + "type": "string" + }, "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", @@ -401,34 +441,45 @@ "type": "object" } }, - "id": "PigJob" + "id": "PigJob", + "description": "A Cloud Dataproc job for running Apache Pig (https://pig.apache.org/) queries on YARN." }, "WorkflowTemplate": { + "id": "WorkflowTemplate", "description": "A Cloud Dataproc workflow template resource.", "type": "object", "properties": { - "jobs": { - "description": "Required. The Directed Acyclic Graph of Jobs to submit.", - "type": "array", + "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" + }, + "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" + }, + "jobs": { + "description": "Required. The Directed Acyclic Graph of Jobs to submit.", + "type": "array", "items": { "$ref": "OrderedJob" } }, + "createTime": { + "type": "string", + "description": "Output only. The time template was created.", + "format": "google-datetime" + }, "labels": { - "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", "additionalProperties": { "type": "string" - } - }, - "createTime": { - "description": "Output only. The time template was created.", - "format": "google-datetime", - "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" }, "placement": { - "description": "Required. WorkflowTemplate scheduling information.", - "$ref": "WorkflowTemplatePlacement" + "$ref": "WorkflowTemplatePlacement", + "description": "Required. WorkflowTemplate scheduling information." }, "updateTime": { "description": "Output only. The time template was last updated.", @@ -438,20 +489,11 @@ "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": { - "type": "string", - "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." - }, - "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": "WorkflowTemplate" + } }, "ListClustersResponse": { + "id": "ListClustersResponse", "description": "The list of all clusters in a project.", "type": "object", "properties": { @@ -466,59 +508,34 @@ "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": "ListClustersResponse" + } }, "Job": { "description": "A Cloud Dataproc job resource.", "type": "object", "properties": { - "hadoopJob": { - "$ref": "HadoopJob", - "description": "Job is a Hadoop 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." - }, - "placement": { - "description": "Required. Job information, including how, when, and where to run the job.", - "$ref": "JobPlacement" - }, - "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." - }, - "pigJob": { - "description": "Job is a Pig job.", - "$ref": "PigJob" - }, "hiveJob": { - "description": "Job is a Hive job.", - "$ref": "HiveJob" + "$ref": "HiveJob", + "description": "Job is a Hive job." }, "labels": { + "type": "object", "additionalProperties": { "type": "string" }, - "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" + "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." }, "driverOutputResourceUri": { - "description": "Output only. A URI pointing to the location of the stdout of the job's driver program.", - "type": "string" + "type": "string", + "description": "Output only. A URI pointing to the location of the stdout of the job's driver program." }, "sparkJob": { "$ref": "SparkJob", "description": "Job is a Spark job." }, "sparkSqlJob": { - "$ref": "SparkSqlJob", - "description": "Job is a SparkSql job." + "description": "Job is a SparkSql job.", + "$ref": "SparkSqlJob" }, "statusHistory": { "description": "Output only. The previous job status.", @@ -535,30 +552,39 @@ } }, "pysparkJob": { - "description": "Job is a Pyspark job.", - "$ref": "PySparkJob" + "$ref": "PySparkJob", + "description": "Job is a Pyspark job." }, "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." - } - }, - "id": "Job" - }, - "ManagedGroupConfig": { - "id": "ManagedGroupConfig", - "description": "Specifies the resources used to actively manage an instance group.", - "type": "object", - "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.", + "hadoopJob": { + "description": "Job is a Hadoop job.", + "$ref": "HadoopJob" + }, + "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." + }, + "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." + }, + "pigJob": { + "$ref": "PigJob", + "description": "Job is a Pig job." } - } + }, + "id": "Job" }, "LifecycleConfig": { "description": "Specifies the cluster auto delete related schedule configuration.", @@ -582,34 +608,62 @@ }, "id": "LifecycleConfig" }, + "ManagedGroupConfig": { + "type": "object", + "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" + } + }, + "id": "ManagedGroupConfig", + "description": "Specifies the resources used to actively manage an instance group." + }, "ManagedCluster": { "description": "Cluster that is managed by the workflow.", "type": "object", "properties": { - "config": { - "$ref": "ClusterConfig", - "description": "Required. The cluster configuration." - }, "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" }, "labels": { + "type": "object", "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" + "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." + }, + "config": { + "$ref": "ClusterConfig", + "description": "Required. The cluster configuration." } }, "id": "ManagedCluster" }, "ClusterOperationStatus": { - "id": "ClusterOperationStatus", - "description": "The status of the operation.", "type": "object", "properties": { + "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" + }, "state": { + "enum": [ + "UNKNOWN", + "PENDING", + "RUNNING", + "DONE" + ], "description": "Output only. A message containing the operation state.", "type": "string", "enumDescriptions": [ @@ -617,40 +671,20 @@ "The operation has been created.", "The operation is running.", "The operation is done; either cancelled or completed." - ], - "enum": [ - "UNKNOWN", - "PENDING", - "RUNNING", - "DONE" ] }, "details": { - "type": "string", - "description": "Output only. A message containing any operation metadata details." - }, - "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", + "description": "Output only. A message containing any operation metadata details.", "type": "string" } - } + }, + "id": "ClusterOperationStatus", + "description": "The status of the operation." }, "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": { - "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": { - "type": "number", - "description": "Required. The numerical progress of the application, from 1 to 100.", - "format": "float" - }, "state": { "description": "Required. The application state.", "type": "string", @@ -680,11 +714,18 @@ "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": { + "type": "number", + "description": "Required. The numerical progress of the application, from 1 to 100.", + "format": "float" } }, - "id": "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" + "id": "YarnApplication" }, "QueryList": { "description": "A list of queries to run on a cluster.", @@ -704,10 +745,6 @@ "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": { - "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", @@ -741,8 +778,8 @@ } }, "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." + "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.", @@ -750,6 +787,10 @@ "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" } }, "id": "HadoopJob" @@ -766,20 +807,9 @@ "id": "SetIamPolicyRequest" }, "HiveJob": { + "description": "A Cloud Dataproc job for running Apache Hive (https://hive.apache.org/) queries on YARN.", "type": "object", "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" - }, - "queryFileUri": { - "description": "The HCFS URI of the script that contains Hive queries.", - "type": "string" - }, - "queryList": { - "description": "A list of queries.", - "$ref": "QueryList" - }, "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", @@ -795,23 +825,34 @@ "type": "object" }, "properties": { + "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", "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" + }, + "queryList": { + "$ref": "QueryList", + "description": "A list of queries." + }, + "queryFileUri": { + "description": "The HCFS URI of the script that contains Hive queries.", + "type": "string" } }, - "id": "HiveJob", - "description": "A Cloud Dataproc job for running Apache Hive (https://hive.apache.org/) queries on YARN." + "id": "HiveJob" }, "DiagnoseClusterResults": { "description": "The location of diagnostic output.", "type": "object", "properties": { "outputUri": { - "type": "string", - "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." + "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" } }, "id": "DiagnoseClusterResults" @@ -834,46 +875,45 @@ "description": "The cluster config.", "type": "object", "properties": { - "masterConfig": { - "description": "Optional. The Compute Engine config settings for the master instance in a cluster.", - "$ref": "InstanceGroupConfig" - }, "secondaryWorkerConfig": { - "description": "Optional. The Compute Engine config settings for additional worker instances in a cluster.", - "$ref": "InstanceGroupConfig" + "$ref": "InstanceGroupConfig", + "description": "Optional. The 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 \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", "items": { "$ref": "NodeInitializationAction" - }, - "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" + } }, "lifecycleConfig": { - "$ref": "LifecycleConfig", - "description": "Optional. The config setting for auto delete cluster schedule." + "description": "Optional. The config setting for auto delete cluster schedule.", + "$ref": "LifecycleConfig" }, "configBucket": { "type": "string", "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." }, "workerConfig": { - "description": "Optional. The Compute Engine config settings for worker instances in a cluster.", - "$ref": "InstanceGroupConfig" + "$ref": "InstanceGroupConfig", + "description": "Optional. The Compute Engine config settings for worker instances in a cluster." }, "gceClusterConfig": { "$ref": "GceClusterConfig", "description": "Required. The shared Compute Engine config settings for all instances in a cluster." }, "softwareConfig": { - "description": "Optional. The config settings for software inside the cluster.", - "$ref": "SoftwareConfig" + "$ref": "SoftwareConfig", + "description": "Optional. The config settings for software inside the cluster." + }, + "masterConfig": { + "$ref": "InstanceGroupConfig", + "description": "Optional. The Compute Engine config settings for the master instance in a cluster." } }, "id": "ClusterConfig" }, "PySparkJob": { - "id": "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": { @@ -889,11 +929,11 @@ "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" - } + }, + "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" }, "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.", @@ -921,72 +961,74 @@ "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" - } + }, + "description": "Optional. HCFS URIs of archives to be extracted in the working directory of .jar, .tar, .tar.gz, .tgz, and .zip." } - } + }, + "id": "PySparkJob" }, - "ClusterMetrics": { - "id": "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.", + "TestIamPermissionsRequest": { + "id": "TestIamPermissionsRequest", + "description": "Request message for TestIamPermissions method.", "type": "object", "properties": { - "yarnMetrics": { - "additionalProperties": { - "type": "string", - "format": "int64" - }, - "description": "The YARN metrics.", - "type": "object" - }, - "hdfsMetrics": { - "type": "object", - "additionalProperties": { - "format": "int64", + "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", + "items": { "type": "string" - }, - "description": "The HDFS metrics." + } } } }, "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 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-k80Auto Zone Exception: If you are using the Cloud Dataproc Auto Zone Placement feature, you must use the short name of the accelerator type resource, for example, nvidia-tesla-k80.", "type": "string" + }, + "acceleratorCount": { + "description": "The number of the accelerator cards of this type exposed to this instance.", + "format": "int32", + "type": "integer" } }, - "id": "AcceleratorConfig" + "id": "AcceleratorConfig", + "description": "Specifies the type and number of accelerator cards attached to the instances of an instance group (see GPUs on Compute Engine)." }, - "TestIamPermissionsRequest": { - "description": "Request message for TestIamPermissions method.", + "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": { - "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", - "items": { + "hdfsMetrics": { + "description": "The HDFS metrics.", + "type": "object", + "additionalProperties": { + "format": "int64", + "type": "string" + } + }, + "yarnMetrics": { + "description": "The YARN metrics.", + "type": "object", + "additionalProperties": { + "format": "int64", "type": "string" } } }, - "id": "TestIamPermissionsRequest" + "id": "ClusterMetrics" }, "LoggingConfig": { - "description": "The runtime logging config of the job.", "type": "object", "properties": { "driverLogLevels": { + "description": "The per-package log levels for the driver. This may include \"root\" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'", + "type": "object", "additionalProperties": { "enum": [ "LEVEL_UNSPECIFIED", @@ -1000,32 +1042,31 @@ "OFF" ], "type": "string" - }, - "description": "The per-package log levels for the driver. This may include \"root\" package name to configure rootLogger. Examples: 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG'", - "type": "object" + } } }, - "id": "LoggingConfig" + "id": "LoggingConfig", + "description": "The runtime logging config of the job." }, "OrderedJob": { "description": "A job executed by the workflow.", "type": "object", "properties": { "scheduling": { - "$ref": "JobScheduling", - "description": "Optional. Job scheduling configuration." - }, - "pigJob": { - "description": "Job is a Pig job.", - "$ref": "PigJob" + "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" }, + "pigJob": { + "$ref": "PigJob", + "description": "Job is a Pig job." + }, "hadoopJob": { - "$ref": "HadoopJob", - "description": "Job is a Hadoop job." + "description": "Job is a Hadoop job.", + "$ref": "HadoopJob" }, "hiveJob": { "$ref": "HiveJob", @@ -1045,14 +1086,14 @@ "type": "string" } }, + "sparkSqlJob": { + "description": "Job is a SparkSql job.", + "$ref": "SparkSqlJob" + }, "sparkJob": { "description": "Job is a Spark job.", "$ref": "SparkJob" }, - "sparkSqlJob": { - "$ref": "SparkSqlJob", - "description": "Job is a SparkSql job." - }, "pysparkJob": { "$ref": "PySparkJob", "description": "Job is a Pyspark job." @@ -1061,7 +1102,29 @@ "id": "OrderedJob" }, "WorkflowNode": { + "description": "The workflow node.", + "type": "object", "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" @@ -1080,49 +1143,29 @@ "items": { "type": "string" } - }, - "state": { - "description": "Output only. The node state.", - "type": "string", - "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" - ] } }, - "id": "WorkflowNode", - "description": "The workflow node.", - "type": "object" + "id": "WorkflowNode" }, "InstantiateWorkflowTemplateRequest": { "description": "A request to instantiate a workflow template.", "type": "object", "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" - }, - "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" } }, "id": "InstantiateWorkflowTemplateRequest" }, "SubmitJobRequest": { + "description": "A request to submit a job.", + "type": "object", "properties": { "job": { "$ref": "Job", @@ -1133,66 +1176,64 @@ "type": "string" } }, - "id": "SubmitJobRequest", - "description": "A request to submit a job.", - "type": "object" + "id": "SubmitJobRequest" }, "JobScheduling": { "description": "Job scheduling options.", "type": "object", "properties": { "maxFailuresPerHour": { - "type": "integer", "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" + "format": "int32", + "type": "integer" } }, "id": "JobScheduling" }, "Cluster": { + "id": "Cluster", "description": "Describes the identifying information, config, and status of a cluster of Compute Engine instances.", "type": "object", "properties": { + "projectId": { + "description": "Required. The Google Cloud Platform project ID that the cluster belongs to.", + "type": "string" + }, "labels": { + "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", "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" + } + }, + "status": { + "description": "Output only. Cluster status.", + "$ref": "ClusterStatus" }, "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." - }, "statusHistory": { + "description": "Output only. The previous cluster status.", "type": "array", "items": { "$ref": "ClusterStatus" - }, - "description": "Output only. The previous 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." - }, - "clusterName": { - "description": "Required. The cluster name. Cluster names within a project must be unique. Names of deleted clusters can be reused.", - "type": "string" + "description": "Required. The cluster config. Note that Cloud Dataproc may set default values, and values may change when clusters are updated.", + "$ref": "ClusterConfig" }, "clusterUuid": { - "description": "Output only. A cluster UUID (Unique Universal Identifier). Cloud Dataproc generates this value when it creates the cluster.", - "type": "string" + "type": "string", + "description": "Output only. A cluster UUID (Unique Universal Identifier). Cloud Dataproc generates this value when it creates the cluster." }, - "projectId": { - "description": "Required. The Google Cloud Platform project ID that the cluster belongs to.", + "clusterName": { + "description": "Required. The cluster name. Cluster names within a project must be unique. Names of deleted clusters can be reused.", "type": "string" } - }, - "id": "Cluster" + } }, "GetIamPolicyRequest": { "properties": {}, @@ -1215,7 +1256,6 @@ "id": "TestIamPermissionsResponse" }, "SoftwareConfig": { - "description": "Specifies the selection and config of software inside the cluster.", "type": "object", "properties": { "properties": { @@ -1226,29 +1266,30 @@ "type": "object" }, "imageVersion": { - "type": "string", - "description": "Optional. The version of software inside the cluster. It must be one of the supported Cloud Dataproc Versions, such as \"1.2\" (including a subminor version, such as \"1.2.29\"), or the \"preview\" version. If unspecified, it defaults to the latest version." + "description": "Optional. The version of software inside the cluster. It must be one of the supported Cloud Dataproc Versions, such as \"1.2\" (including a subminor version, such as \"1.2.29\"), or the \"preview\" version. If unspecified, it defaults to the latest version.", + "type": "string" } }, - "id": "SoftwareConfig" + "id": "SoftwareConfig", + "description": "Specifies the selection and config of software inside the cluster." }, "ClusterSelector": { + "id": "ClusterSelector", "description": "A selector that chooses target cluster for jobs based on metadata.", "type": "object", "properties": { "zone": { - "type": "string", - "description": "Optional. The zone where workflow process executes. This parameter does not affect the selection of the cluster.If unspecified, the zone of the first cluster matching the selector is used." + "description": "Optional. The zone where workflow process executes. This parameter does not affect the selection of the cluster.If unspecified, the zone of the first cluster matching the selector is used.", + "type": "string" }, "clusterLabels": { + "description": "Required. The cluster labels. Cluster must have all labels to match.", + "type": "object", "additionalProperties": { "type": "string" - }, - "description": "Required. The cluster labels. Cluster must have all labels to match.", - "type": "object" + } } - }, - "id": "ClusterSelector" + } }, "WorkflowTemplatePlacement": { "description": "Specifies workflow execution target.Either managed_cluster or cluster_selector is required.", @@ -1259,8 +1300,8 @@ "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" + "$ref": "ManagedCluster", + "description": "Optional. A cluster that is managed by the workflow." } }, "id": "WorkflowTemplatePlacement" @@ -1269,11 +1310,30 @@ "description": "A Cloud Dataproc workflow template resource.", "type": "object", "properties": { + "createCluster": { + "$ref": "ClusterOperation", + "description": "Output only. The create cluster operation metadata." + }, + "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": { + "type": "string", + "description": "Output only. The \"resource name\" of the template." + }, "deleteCluster": { "$ref": "ClusterOperation", "description": "Output only. The delete cluster operation metadata." }, "state": { + "description": "Output only. The workflow state.", + "type": "string", "enumDescriptions": [ "Unused.", "The operation has been created.", @@ -1285,37 +1345,18 @@ "PENDING", "RUNNING", "DONE" - ], - "description": "Output only. The workflow state.", - "type": "string" + ] }, "parameters": { - "description": "Map from parameter names to values that were used for those parameters.", - "type": "object", "additionalProperties": { "type": "string" - } + }, + "description": "Map from parameter names to values that were used for those parameters.", + "type": "object" }, "clusterName": { "description": "Output only. The name of the managed cluster.", "type": "string" - }, - "createCluster": { - "$ref": "ClusterOperation", - "description": "Output only. The create cluster operation metadata." - }, - "graph": { - "$ref": "WorkflowGraph", - "description": "Output only. The workflow graph." - }, - "version": { - "description": "Output only. The version of template at the time of workflow instantiation.", - "format": "int32", - "type": "integer" - }, - "template": { - "type": "string", - "description": "Output only. The \"resource name\" of the template." } }, "id": "WorkflowMetadata" @@ -1340,37 +1381,18 @@ "id": "ClusterOperation" }, "SparkJob": { - "description": "A Cloud Dataproc job for running Apache Spark (http://spark.apache.org/) applications on YARN.", "type": "object", "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.", - "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": { - "description": "Optional. The runtime log config for job execution.", - "$ref": "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" - }, - "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" + } }, "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.", @@ -1389,15 +1411,55 @@ "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" + } } }, - "id": "SparkJob" + "id": "SparkJob", + "description": "A Cloud Dataproc job for running Apache Spark (http://spark.apache.org/) applications on YARN." }, "JobStatus": { + "description": "Cloud Dataproc job status.", "type": "object", "properties": { - "state": { + "stateStartTime": { + "description": "Output only. The time when this state was entered.", + "format": "google-datetime", + "type": "string" + }, + "substate": { "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" + ], + "description": "Output only. Additional state information, which includes status reported by the agent." + }, + "state": { "enumDescriptions": [ "The job state is unknown.", "The job is pending; it has been submitted, but is not yet running.", @@ -1422,44 +1484,24 @@ "ERROR", "ATTEMPT_FAILURE" ], - "description": "Output only. A state message specifying the overall job state." + "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": { - "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." + "id": "JobStatus" }, "DiagnoseClusterRequest": { + "id": "DiagnoseClusterRequest", "description": "A request to collect cluster diagnostic information.", "type": "object", - "properties": {}, - "id": "DiagnoseClusterRequest" + "properties": {} }, "DiskConfig": { + "id": "DiskConfig", "description": "Specifies the config of disk options for a group of VM instances.", "type": "object", "properties": { @@ -1477,38 +1519,10 @@ "format": "int32", "type": "integer" } - }, - "id": "DiskConfig" + } }, "ClusterOperationMetadata": { - "type": "object", "properties": { - "operationType": { - "description": "Output only. The operation type.", - "type": "string" - }, - "description": { - "type": "string", - "description": "Output only. Short description of operation." - }, - "warnings": { - "description": "Output only. Errors encountered during operation execution.", - "type": "array", - "items": { - "type": "string" - } - }, - "labels": { - "description": "Output only. Labels associated with the operation", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "status": { - "$ref": "ClusterOperationStatus", - "description": "Output only. Current operation status." - }, "statusHistory": { "description": "Output only. The previous operation status.", "type": "array", @@ -1523,70 +1537,49 @@ "clusterName": { "description": "Output only. Name of the cluster for the operation.", "type": "string" - } - }, - "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 {}." - }, - "GceClusterConfig": { - "type": "object", - "properties": { - "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" - }, - "networkUri": { - "type": "string", - "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" }, - "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", + "operationType": { + "description": "Output only. The operation type.", "type": "string" }, - "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" - }, - "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" + "description": { + "description": "Output only. Short description of operation.", + "type": "string" }, - "serviceAccountScopes": { - "description": "Optional. The URIs of service account scopes to be included in 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", + "warnings": { "type": "array", "items": { "type": "string" - } + }, + "description": "Output only. Errors encountered during operation execution." }, - "tags": { - "description": "The Compute Engine tags to add to all instances (see Tagging instances).", - "type": "array", - "items": { + "labels": { + "description": "Output only. Labels associated with the operation", + "type": "object", + "additionalProperties": { "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 following 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" + "status": { + "description": "Output only. Current operation status.", + "$ref": "ClusterOperationStatus" } }, - "id": "GceClusterConfig", - "description": "Common config settings for resources of Compute Engine cluster instances, applicable to all instances in the cluster." + "id": "ClusterOperationMetadata", + "description": "Metadata describing the operation.", + "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", + "properties": {}, + "id": "Empty" } }, "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" + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" }, "canonicalName": "Dataproc", "auth": { @@ -1608,50 +1601,54 @@ "resources": { "projects": { "resources": { - "regions": { + "locations": { "resources": { - "clusters": { + "workflowTemplates": { "methods": { - "create": { + "list": { "response": { - "$ref": "Operation" + "$ref": "ListWorkflowTemplatesResponse" }, "parameterOrder": [ - "projectId", - "region" + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "httpMethod": "POST", "parameters": { - "region": { - "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request.", - "required": true, - "type": "string" - }, - "projectId": { - "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", + "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}", "required": true, "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+$", "location": "path" }, - "requestId": { - "location": "query", - "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.", - "type": "string" + "pageToken": { + "description": "Optional. The page token, returned by a previous call, to request the next page of results.", + "type": "string", + "location": "query" + }, + "pageSize": { + "description": "Optional. The maximum number of results to return in each response.", + "format": "int32", + "type": "integer", + "location": "query" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters", - "path": "v1beta2/projects/{projectId}/regions/{region}/clusters", - "id": "dataproc.projects.regions.clusters.create", - "description": "Creates a cluster in a project.", - "request": { - "$ref": "Cluster" - } + "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." }, "setIamPolicy": { + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates/{workflowTemplatesId}:setIamPolicy", + "path": "v1beta2/{+resource}:setIamPolicy", + "id": "dataproc.projects.locations.workflowTemplates.setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", "response": { "$ref": "Policy" }, @@ -1659,29 +1656,48 @@ "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. See the operation documentation for the appropriate value for this field.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+/clusters/[^/]+$" + "pattern": "^projects/[^/]+/locations/[^/]+/workflowTemplates/[^/]+$", + "location": "path" } - }, + } + }, + "create": { "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", - "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "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}", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates", + "path": "v1beta2/{+parent}/workflowTemplates", + "id": "dataproc.projects.locations.workflowTemplates.create", "request": { - "$ref": "SetIamPolicyRequest" - } + "$ref": "WorkflowTemplate" + }, + "description": "Creates new workflow template.", + "response": { + "$ref": "WorkflowTemplate" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST" }, "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.", "response": { "$ref": "Policy" @@ -1695,116 +1711,138 @@ ], "parameters": { "resource": { - "location": "path", "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+/clusters/[^/]+$" + "pattern": "^projects/[^/]+/locations/[^/]+/workflowTemplates/[^/]+$", + "location": "path" } }, - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/clusters/{clustersId}:getIamPolicy" + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates/{workflowTemplatesId}:getIamPolicy", + "path": "v1beta2/{+resource}:getIamPolicy", + "id": "dataproc.projects.locations.workflowTemplates.getIamPolicy" }, - "get": { - "description": "Gets the resource representation for a cluster in a project.", - "httpMethod": "GET", - "parameterOrder": [ - "projectId", - "region", - "clusterName" - ], + "instantiate": { + "request": { + "$ref": "InstantiateWorkflowTemplateRequest" + }, + "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.", "response": { - "$ref": "Cluster" + "$ref": "Operation" }, + "parameterOrder": [ + "name" + ], + "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": "Required. The cluster name.", + "name": { "required": true, "type": "string", - "location": "path" - }, - "projectId": { + "pattern": "^projects/[^/]+/locations/[^/]+/workflowTemplates/[^/]+$", "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", - "required": true, - "type": "string" + "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}" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}", - "id": "dataproc.projects.regions.clusters.get", - "path": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}" + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates/{workflowTemplatesId}:instantiate", + "path": "v1beta2/{+name}:instantiate", + "id": "dataproc.projects.locations.workflowTemplates.instantiate" }, - "patch": { - "response": { - "$ref": "Operation" + "instantiateInline": { + "id": "dataproc.projects.locations.workflowTemplates.instantiateInline", + "path": "v1beta2/{+parent}/workflowTemplates: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.", + "request": { + "$ref": "WorkflowTemplate" }, + "httpMethod": "POST", "parameterOrder": [ - "projectId", - "region", - "clusterName" + "parent" ], - "httpMethod": "PATCH", + "response": { + "$ref": "Operation" + }, "parameters": { - "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" - }, - "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.", - "type": "string", - "location": "query" - }, - "region": { - "description": "Required. The Cloud Dataproc region in which to handle the request.", + "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/[^/]+/locations/[^/]+$", "location": "path" }, - "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:\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", - "type": "string" + "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", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates:instantiateInline" + }, + "get": { + "description": "Retrieves the latest workflow template.Can retrieve previously instantiated template by specifying optional version parameter.", + "response": { + "$ref": "WorkflowTemplate" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "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" }, - "clusterName": { + "name": { + "pattern": "^projects/[^/]+/locations/[^/]+/workflowTemplates/[^/]+$", "location": "path", - "description": "Required. The cluster 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" - }, - "projectId": { - "description": "Required. The ID of the Google Cloud Platform project the cluster belongs to.", - "required": true, - "type": "string", - "location": "path" } }, + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates/{workflowTemplatesId}", + "path": "v1beta2/{+name}", + "id": "dataproc.projects.locations.workflowTemplates.get" + }, + "update": { + "response": { + "$ref": "WorkflowTemplate" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "PUT", "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.patch", - "description": "Updates a cluster in a project.", + "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}", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/workflowTemplates/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates/{workflowTemplatesId}", + "path": "v1beta2/{+name}", + "id": "dataproc.projects.locations.workflowTemplates.update", "request": { - "$ref": "Cluster" - } + "$ref": "WorkflowTemplate" + }, + "description": "Updates (replaces) workflow template. The updated template must contain version that matches the current server version." }, "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.", - "request": { - "$ref": "TestIamPermissionsRequest" - }, "response": { "$ref": "TestIamPermissionsResponse" }, @@ -1812,510 +1850,503 @@ "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. See the operation documentation for the appropriate value for this field.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+/clusters/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/locations/[^/]+/workflowTemplates/[^/]+$", + "location": "path", + "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field." } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/clusters/{clustersId}:testIamPermissions", + "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates/{workflowTemplatesId}:testIamPermissions", "path": "v1beta2/{+resource}:testIamPermissions", - "id": "dataproc.projects.regions.clusters.testIamPermissions" - }, - "diagnose": { - "description": "Gets cluster diagnostic information. After the operation completes, the Operation.response field contains DiagnoseClusterOutputLocation.", + "id": "dataproc.projects.locations.workflowTemplates.testIamPermissions", "request": { - "$ref": "DiagnoseClusterRequest" - }, - "response": { - "$ref": "Operation" + "$ref": "TestIamPermissionsRequest" }, - "parameterOrder": [ - "projectId", - "region", - "clusterName" - ], - "httpMethod": "POST", + "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." + }, + "delete": { "parameters": { - "region": { - "description": "Required. The Cloud Dataproc region in which to handle the request.", + "name": { "required": true, "type": "string", - "location": "path" - }, - "clusterName": { + "pattern": "^projects/[^/]+/locations/[^/]+/workflowTemplates/[^/]+$", "location": "path", - "description": "Required. The cluster name.", - "required": true, - "type": "string" + "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}" }, - "projectId": { - "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", - "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", + "type": "integer", + "location": "query" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}:diagnose", - "path": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}:diagnose", - "id": "dataproc.projects.regions.clusters.diagnose" - }, - "delete": { - "path": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}", - "id": "dataproc.projects.regions.clusters.delete", - "description": "Deletes a cluster in a project.", + "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.", "response": { - "$ref": "Operation" + "$ref": "Empty" }, "parameterOrder": [ - "projectId", - "region", - "clusterName" + "name" ], - "httpMethod": "DELETE", + "httpMethod": "DELETE" + } + } + } + } + }, + "regions": { + "resources": { + "jobs": { + "methods": { + "testIamPermissions": { + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/jobs/{jobsId}:testIamPermissions", + "path": "v1beta2/{+resource}:testIamPermissions", + "id": "dataproc.projects.regions.jobs.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", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "projectId": { - "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", + "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/[^/]+/jobs/[^/]+$", "location": "path" - }, - "requestId": { - "location": "query", - "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.", - "type": "string" - }, - "region": { - "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request.", - "required": true, - "type": "string" - }, - "clusterName": { - "location": "path", - "description": "Required. The cluster name.", - "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.", - "type": "string", - "location": "query" } - }, - "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}" + } }, - "list": { - "description": "Lists all regions/{region}/clusters in a project.", + "submit": { "response": { - "$ref": "ListClustersResponse" + "$ref": "Job" }, "parameterOrder": [ "projectId", "region" ], - "httpMethod": "GET", + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "pageToken": { - "location": "query", - "description": "Optional. The standard List page token.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Optional. The standard List page size.", - "format": "int32", - "type": "integer" - }, "projectId": { - "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", "required": true, - "type": "string" + "type": "string", + "location": "path", + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to." }, "region": { "description": "Required. The Cloud Dataproc region in which to handle the request.", "required": true, "type": "string", "location": "path" - }, - "filter": { - "type": "string", - "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 = *" } }, - "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters", - "path": "v1beta2/projects/{projectId}/regions/{region}/clusters", - "id": "dataproc.projects.regions.clusters.list" - } - } - }, - "workflowTemplates": { - "methods": { - "instantiate": { - "path": "v1beta2/{+name}:instantiate", - "id": "dataproc.projects.regions.workflowTemplates.instantiate", + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/jobs:submit", + "path": "v1beta2/projects/{projectId}/regions/{region}/jobs:submit", + "id": "dataproc.projects.regions.jobs.submit", "request": { - "$ref": "InstantiateWorkflowTemplateRequest" + "$ref": "SubmitJobRequest" }, - "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.", + "description": "Submits a job to a cluster." + }, + "delete": { + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}", + "path": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}", + "id": "dataproc.projects.regions.jobs.delete", + "description": "Deletes the job from the project. If the job is active, the delete fails, and the response returns FAILED_PRECONDITION.", "response": { - "$ref": "Operation" + "$ref": "Empty" }, "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "projectId", + "region", + "jobId" ], + "httpMethod": "DELETE", "parameters": { - "name": { - "pattern": "^projects/[^/]+/regions/[^/]+/workflowTemplates/[^/]+$", + "projectId": { "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}", + "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": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "required": true, + "type": "string", + "location": "path" } }, - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}:instantiate" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, - "getIamPolicy": { - "path": "v1beta2/{+resource}:getIamPolicy", - "id": "dataproc.projects.regions.workflowTemplates.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.", - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "GET", + "list": { "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "resource": { - "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", + "pageToken": { + "description": "Optional. The page token, returned by a previous call, to request the next page of results.", + "type": "string", + "location": "query" + }, + "pageSize": { + "description": "Optional. The number of results to return in each response.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "required": true, + "type": "string", + "location": "path" + }, + "clusterName": { + "type": "string", + "location": "query", + "description": "Optional. If set, the returned jobs list includes only jobs that were submitted to the named cluster." + }, + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+/workflowTemplates/[^/]+$", "location": "path" + }, + "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 = *", + "type": "string", + "location": "query" + }, + "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" } }, - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}:getIamPolicy" + "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" }, - "instantiateInline": { + "setIamPolicy": { "request": { - "$ref": "WorkflowTemplate" + "$ref": "SetIamPolicyRequest" }, - "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.", + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", "response": { - "$ref": "Operation" + "$ref": "Policy" }, "parameterOrder": [ - "parent" + "resource" ], "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "parent": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+$", + "resource": { "location": "path", - "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}" - }, - "instanceId": { + "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + "required": true, "type": "string", - "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." + "pattern": "^projects/[^/]+/regions/[^/]+/jobs/[^/]+$" } }, - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates:instantiateInline", - "path": "v1beta2/{+parent}/workflowTemplates:instantiateInline", - "id": "dataproc.projects.regions.workflowTemplates.instantiateInline" + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/jobs/{jobsId}:setIamPolicy", + "path": "v1beta2/{+resource}:setIamPolicy", + "id": "dataproc.projects.regions.jobs.setIamPolicy" }, - "get": { - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}", - "path": "v1beta2/{+name}", - "id": "dataproc.projects.regions.workflowTemplates.get", - "description": "Retrieves the latest workflow template.Can retrieve previously instantiated template by specifying optional version parameter.", - "response": { - "$ref": "WorkflowTemplate" - }, - "parameterOrder": [ - "name" + "cancel": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "httpMethod": "GET", "parameters": { - "version": { - "type": "integer", - "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" - }, - "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}", + "projectId": { "required": true, "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+/workflowTemplates/[^/]+$", - "location": "path" + "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": { + "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" - ] - }, - "update": { + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}:cancel", + "path": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}:cancel", + "id": "dataproc.projects.regions.jobs.cancel", "request": { - "$ref": "WorkflowTemplate" + "$ref": "CancelJobRequest" }, - "description": "Updates (replaces) workflow template. The updated template must contain version that matches the current server version.", + "description": "Starts a job cancellation request. To access the job resource after cancellation, call regions/{region}/jobs.list or regions/{region}/jobs.get.", "response": { - "$ref": "WorkflowTemplate" + "$ref": "Job" }, "parameterOrder": [ - "name" - ], - "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "projectId", + "region", + "jobId" ], - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+/workflowTemplates/[^/]+$", - "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}" - } - }, - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}", - "path": "v1beta2/{+name}", - "id": "dataproc.projects.regions.workflowTemplates.update" + "httpMethod": "POST" }, - "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.", - "request": { - "$ref": "TestIamPermissionsRequest" - }, + "getIamPolicy": { + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/jobs/{jobsId}:getIamPolicy", + "path": "v1beta2/{+resource}:getIamPolicy", + "id": "dataproc.projects.regions.jobs.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.", "response": { - "$ref": "TestIamPermissionsResponse" + "$ref": "Policy" }, "parameterOrder": [ "resource" ], - "httpMethod": "POST", + "httpMethod": "GET", "parameters": { "resource": { - "location": "path", - "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", + "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+/workflowTemplates/[^/]+$" + "pattern": "^projects/[^/]+/regions/[^/]+/jobs/[^/]+$", + "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}:testIamPermissions", - "path": "v1beta2/{+resource}:testIamPermissions", - "id": "dataproc.projects.regions.workflowTemplates.testIamPermissions" + ] }, - "delete": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "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", - "pattern": "^projects/[^/]+/regions/[^/]+/workflowTemplates/[^/]+$" - }, - "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", - "type": "integer", - "location": "query" - } - }, - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}", - "path": "v1beta2/{+name}", - "id": "dataproc.projects.regions.workflowTemplates.delete", - "description": "Deletes a workflow template. It does not cancel in-progress workflows.", + "get": { + "description": "Gets the resource representation for a job in a project.", "response": { - "$ref": "Empty" + "$ref": "Job" }, "parameterOrder": [ - "name" + "projectId", + "region", + "jobId" ], - "httpMethod": "DELETE" - }, - "list": { + "httpMethod": "GET", "parameters": { - "parent": { - "pattern": "^projects/[^/]+/regions/[^/]+$", + "region": { "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}", + "description": "Required. The Cloud Dataproc region in which to handle the request.", "required": true, "type": "string" }, - "pageToken": { - "location": "query", - "description": "Optional. The page token, returned by a previous call, to request the next page of results.", + "projectId": { + "location": "path", + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", + "required": true, "type": "string" }, - "pageSize": { - "type": "integer", - "location": "query", - "description": "Optional. The maximum number of results to return in each response.", - "format": "int32" + "jobId": { + "description": "Required. The job ID.", + "required": true, + "type": "string", + "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "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.", - "response": { - "$ref": "ListWorkflowTemplatesResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET" + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}", + "path": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}", + "id": "dataproc.projects.regions.jobs.get" }, - "setIamPolicy": { - "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "patch": { + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}", + "path": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}", + "id": "dataproc.projects.regions.jobs.patch", "request": { - "$ref": "SetIamPolicyRequest" + "$ref": "Job" + }, + "description": "Updates a job in a project.", + "response": { + "$ref": "Job" }, - "httpMethod": "POST", "parameterOrder": [ - "resource" + "projectId", + "region", + "jobId" ], + "httpMethod": "PATCH", + "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" + }, + "updateMask": { + "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", + "type": "string" + }, + "projectId": { + "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", + "required": true, + "type": "string", + "location": "path" + }, + "jobId": { + "location": "path", + "description": "Required. The job ID.", + "required": true, + "type": "string" + } + } + } + } + }, + "clusters": { + "methods": { + "list": { + "path": "v1beta2/projects/{projectId}/regions/{region}/clusters", + "id": "dataproc.projects.regions.clusters.list", + "description": "Lists all regions/{region}/clusters in a project.", "response": { - "$ref": "Policy" + "$ref": "ListClustersResponse" }, + "parameterOrder": [ + "projectId", + "region" + ], + "httpMethod": "GET", "parameters": { - "resource": { + "projectId": { "location": "path", - "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", + "required": true, + "type": "string" + }, + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+/workflowTemplates/[^/]+$" + "location": "path" + }, + "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 = *", + "type": "string" + }, + "pageToken": { + "location": "query", + "description": "Optional. The standard List page token.", + "type": "string" + }, + "pageSize": { + "location": "query", + "description": "Optional. The standard List page size.", + "format": "int32", + "type": "integer" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}:setIamPolicy", - "id": "dataproc.projects.regions.workflowTemplates.setIamPolicy", - "path": "v1beta2/{+resource}:setIamPolicy" + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters" }, "create": { + "path": "v1beta2/projects/{projectId}/regions/{region}/clusters", + "id": "dataproc.projects.regions.clusters.create", "request": { - "$ref": "WorkflowTemplate" + "$ref": "Cluster" }, - "description": "Creates new workflow template.", + "description": "Creates a cluster in a project.", "response": { - "$ref": "WorkflowTemplate" + "$ref": "Operation" }, "parameterOrder": [ - "parent" + "projectId", + "region" ], "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "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}", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates", - "path": "v1beta2/{+parent}/workflowTemplates", - "id": "dataproc.projects.regions.workflowTemplates.create" - } - } - }, - "operations": { - "methods": { - "list": { - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations", - "id": "dataproc.projects.regions.operations.list", - "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.", - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "ListOperationsResponse" - }, - "parameters": { - "name": { - "description": "The name of the operation's parent resource.", + "region": { + "location": "path", + "description": "Required. The Cloud Dataproc region in which to handle the request.", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+/operations$", - "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" + "projectId": { + "location": "path", + "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", + "required": true, + "type": "string" }, - "filter": { + "requestId": { "location": "query", - "description": "The standard list filter.", + "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.", "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters" }, "setIamPolicy": { "path": "v1beta2/{+resource}:setIamPolicy", - "id": "dataproc.projects.regions.operations.setIamPolicy", - "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "id": "dataproc.projects.regions.clusters.setIamPolicy", "request": { "$ref": "SetIamPolicyRequest" }, + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", "response": { "$ref": "Policy" }, @@ -2323,47 +2354,21 @@ "resource" ], "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "resource": { - "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/regions/[^/]+/clusters/[^/]+$", "location": "path", "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", "required": true, "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}:setIamPolicy" - }, - "cancel": { - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "name": { - "description": "The name of the operation resource to be cancelled.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}:cancel", - "id": "dataproc.projects.regions.operations.cancel", - "path": "v1beta2/{+name}: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": "v1beta2/projects/{projectsId}/regions/{regionsId}/clusters/{clustersId}:setIamPolicy" }, "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.", "response": { "$ref": "Policy" }, @@ -2373,156 +2378,212 @@ "httpMethod": "GET", "parameters": { "resource": { + "pattern": "^projects/[^/]+/regions/[^/]+/clusters/[^/]+$", + "location": "path", "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", - "location": "path" + "type": "string" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}:getIamPolicy", + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/clusters/{clustersId}:getIamPolicy", "path": "v1beta2/{+resource}:getIamPolicy", - "id": "dataproc.projects.regions.operations.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." }, "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.", - "httpMethod": "GET", + "response": { + "$ref": "Cluster" + }, "parameterOrder": [ - "name" + "projectId", + "region", + "clusterName" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], + "parameters": { + "region": { + "location": "path", + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "required": true, + "type": "string" + }, + "clusterName": { + "location": "path", + "description": "Required. The cluster name.", + "required": true, + "type": "string" + }, + "projectId": { + "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/{clusterName}", + "path": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}", + "id": "dataproc.projects.regions.clusters.get", + "description": "Gets the resource representation for a cluster in a project." + }, + "patch": { "response": { "$ref": "Operation" }, + "parameterOrder": [ + "projectId", + "region", + "clusterName" + ], + "httpMethod": "PATCH", "parameters": { - "name": { - "description": "The name of the operation resource.", + "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" + }, + "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.", + "type": "string", + "location": "query" + }, + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", + "required": true, + "type": "string", + "location": "path" + }, + "updateMask": { + "type": "string", + "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:\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" + }, + "clusterName": { + "description": "Required. The cluster name.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", "location": "path" + }, + "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/{projectsId}/regions/{regionsId}/operations/{operationsId}", - "id": "dataproc.projects.regions.operations.get", - "path": "v1beta2/{+name}" + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}", + "path": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}", + "id": "dataproc.projects.regions.clusters.patch", + "description": "Updates a cluster in a project.", + "request": { + "$ref": "Cluster" + } }, "testIamPermissions": { + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/clusters/{clustersId}:testIamPermissions", + "id": "dataproc.projects.regions.clusters.testIamPermissions", "path": "v1beta2/{+resource}:testIamPermissions", - "id": "dataproc.projects.regions.operations.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.", "request": { "$ref": "TestIamPermissionsRequest" }, - "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/[^/]+/operations/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}:testIamPermissions" - }, - "delete": { - "httpMethod": "DELETE", "parameterOrder": [ - "name" + "resource" ], "response": { - "$ref": "Empty" + "$ref": "TestIamPermissionsResponse" }, "parameters": { - "name": { - "description": "The name of the operation resource to be deleted.", + "resource": { + "location": "path", + "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/[^/]+/operations/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/regions/[^/]+/clusters/[^/]+$" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}", - "id": "dataproc.projects.regions.operations.delete", - "path": "v1beta2/{+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." - } - } - }, - "jobs": { - "methods": { - "delete": { - "httpMethod": "DELETE", - "parameterOrder": [ - "projectId", - "region", - "jobId" - ], - "response": { - "$ref": "Empty" - }, + ] + }, + "diagnose": { "parameters": { - "projectId": { - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", + "region": { + "description": "Required. The Cloud Dataproc region in which to handle the request.", "required": true, "type": "string", "location": "path" }, - "jobId": { - "description": "Required. The job ID.", + "clusterName": { + "description": "Required. The cluster name.", "required": true, "type": "string", "location": "path" }, - "region": { - "description": "Required. The Cloud Dataproc region in which to handle the request.", + "projectId": { + "location": "path", + "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", "required": true, - "type": "string", - "location": "path" + "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." + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}:diagnose", + "id": "dataproc.projects.regions.clusters.diagnose", + "path": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}:diagnose", + "description": "Gets cluster diagnostic information. After the operation completes, the Operation.response field contains DiagnoseClusterOutputLocation.", + "request": { + "$ref": "DiagnoseClusterRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "projectId", + "region", + "clusterName" + ], + "response": { + "$ref": "Operation" + } }, - "list": { - "path": "v1beta2/projects/{projectId}/regions/{region}/jobs", - "id": "dataproc.projects.regions.jobs.list", - "description": "Lists regions/{region}/jobs in a project.", + "delete": { + "description": "Deletes a cluster in a project.", "response": { - "$ref": "ListJobsResponse" + "$ref": "Operation" }, "parameterOrder": [ "projectId", - "region" + "region", + "clusterName" ], - "httpMethod": "GET", + "httpMethod": "DELETE", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { + "projectId": { + "location": "path", + "description": "Required. The ID of the Google Cloud Platform project that the cluster belongs to.", + "required": true, + "type": "string" + }, + "requestId": { + "location": "query", + "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.", + "type": "string" + }, "region": { "description": "Required. The Cloud Dataproc region in which to handle the request.", "required": true, @@ -2530,225 +2591,177 @@ "location": "path" }, "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.", + "description": "Required. The cluster name.", "required": true, "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 = *", - "type": "string", - "location": "query" - }, - "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": { - "description": "Optional. The page token, returned by a previous call, to request the next page of results.", - "type": "string", - "location": "query" - }, - "pageSize": { + "clusterUuid": { "location": "query", - "description": "Optional. The number of results to return in each response.", - "format": "int32", - "type": "integer" + "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" } }, - "flatPath": "v1beta2/projects/{projectId}/regions/{region}/jobs" - }, - "setIamPolicy": { - "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", - "request": { - "$ref": "SetIamPolicyRequest" - }, + "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}", + "path": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}", + "id": "dataproc.projects.regions.clusters.delete" + } + } + }, + "workflowTemplates": { + "methods": { + "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.", "response": { "$ref": "Policy" }, "parameterOrder": [ "resource" ], - "httpMethod": "POST", + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "resource": { + "pattern": "^projects/[^/]+/regions/[^/]+/workflowTemplates/[^/]+$", "location": "path", - "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/regions/[^/]+/jobs/[^/]+$" + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/jobs/{jobsId}:setIamPolicy", - "path": "v1beta2/{+resource}:setIamPolicy", - "id": "dataproc.projects.regions.jobs.setIamPolicy" + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}:getIamPolicy", + "path": "v1beta2/{+resource}:getIamPolicy", + "id": "dataproc.projects.regions.workflowTemplates.getIamPolicy" }, - "cancel": { + "instantiate": { + "path": "v1beta2/{+name}:instantiate", + "id": "dataproc.projects.regions.workflowTemplates.instantiate", + "request": { + "$ref": "InstantiateWorkflowTemplateRequest" + }, + "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.", "response": { - "$ref": "Job" + "$ref": "Operation" }, "parameterOrder": [ - "projectId", - "region", - "jobId" + "name" ], "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { - "region": { - "description": "Required. The Cloud Dataproc region in which to handle the request.", + "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" - }, - "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" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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" - } + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}:instantiate" }, - "getIamPolicy": { - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/jobs/{jobsId}:getIamPolicy", - "path": "v1beta2/{+resource}:getIamPolicy", - "id": "dataproc.projects.regions.jobs.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.", + "instantiateInline": { + "path": "v1beta2/{+parent}/workflowTemplates:instantiateInline", + "id": "dataproc.projects.regions.workflowTemplates.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.", + "request": { + "$ref": "WorkflowTemplate" + }, "response": { - "$ref": "Policy" + "$ref": "Operation" }, "parameterOrder": [ - "resource" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "parent" ], + "httpMethod": "POST", "parameters": { - "resource": { - "pattern": "^projects/[^/]+/regions/[^/]+/jobs/[^/]+$", + "parent": { "location": "path", - "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 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" + "type": "string", + "pattern": "^projects/[^/]+/regions/[^/]+$" + }, + "instanceId": { + "type": "string", + "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." } - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates:instantiateInline" }, "get": { "httpMethod": "GET", - "parameterOrder": [ - "projectId", - "region", - "jobId" - ], "response": { - "$ref": "Job" + "$ref": "WorkflowTemplate" }, + "parameterOrder": [ + "name" + ], "parameters": { - "region": { - "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request.", - "required": true, - "type": "string" - }, - "projectId": { - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", - "required": true, - "type": "string", - "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" }, - "jobId": { - "description": "Required. The job ID.", + "name": { "required": true, "type": "string", - "location": "path" + "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}" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}", - "id": "dataproc.projects.regions.jobs.get", - "path": "v1beta2/projects/{projectId}/regions/{region}/jobs/{jobId}", - "description": "Gets the resource representation for a job in a project." + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}", + "id": "dataproc.projects.regions.workflowTemplates.get", + "path": "v1beta2/{+name}", + "description": "Retrieves the latest workflow template.Can retrieve previously instantiated template by specifying optional version parameter." }, - "patch": { + "update": { + "request": { + "$ref": "WorkflowTemplate" + }, + "description": "Updates (replaces) workflow template. The updated template must contain version that matches the current server version.", "response": { - "$ref": "Job" + "$ref": "WorkflowTemplate" }, "parameterOrder": [ - "projectId", - "region", - "jobId" + "name" + ], + "httpMethod": "PUT", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "httpMethod": "PATCH", "parameters": { - "region": { - "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request.", - "required": true, - "type": "string" - }, - "updateMask": { - "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", - "type": "string" - }, - "projectId": { - "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to.", - "required": true, - "type": "string" - }, - "jobId": { + "name": { + "pattern": "^projects/[^/]+/regions/[^/]+/workflowTemplates/[^/]+$", "location": "path", - "description": "Required. The job ID.", + "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" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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" - } + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}", + "path": "v1beta2/{+name}", + "id": "dataproc.projects.regions.workflowTemplates.update" }, "testIamPermissions": { + "path": "v1beta2/{+resource}:testIamPermissions", + "id": "dataproc.projects.regions.workflowTemplates.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" }, @@ -2756,218 +2769,227 @@ "resource" ], "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "resource": { + "pattern": "^projects/[^/]+/regions/[^/]+/workflowTemplates/[^/]+$", + "location": "path", "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/[^/]+/jobs/[^/]+$", - "location": "path" + "type": "string" } }, + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}:testIamPermissions" + }, + "delete": { + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/jobs/{jobsId}:testIamPermissions", - "path": "v1beta2/{+resource}:testIamPermissions", - "id": "dataproc.projects.regions.jobs.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.", - "request": { - "$ref": "TestIamPermissionsRequest" - } + "parameters": { + "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", + "type": "integer", + "location": "query" + }, + "name": { + "required": true, + "type": "string", + "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}" + } + }, + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}", + "path": "v1beta2/{+name}", + "id": "dataproc.projects.regions.workflowTemplates.delete", + "description": "Deletes a workflow template. It does not cancel in-progress workflows." }, - "submit": { - "httpMethod": "POST", - "parameterOrder": [ - "projectId", - "region" - ], + "list": { "response": { - "$ref": "Job" + "$ref": "ListWorkflowTemplatesResponse" }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { - "projectId": { + "parent": { "required": true, "type": "string", + "pattern": "^projects/[^/]+/regions/[^/]+$", "location": "path", - "description": "Required. The ID of the Google Cloud Platform project that the job belongs to." + "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}" }, - "region": { - "location": "path", - "description": "Required. The Cloud Dataproc region in which to handle the request.", - "required": true, + "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 maximum number of results to return in each response.", + "format": "int32", + "type": "integer" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectId}/regions/{region}/jobs:submit", - "id": "dataproc.projects.regions.jobs.submit", - "path": "v1beta2/projects/{projectId}/regions/{region}/jobs:submit", - "description": "Submits a job to a cluster.", - "request": { - "$ref": "SubmitJobRequest" - } - } - } - } - } - }, - "locations": { - "resources": { - "workflowTemplates": { - "methods": { - "getIamPolicy": { - "path": "v1beta2/{+resource}:getIamPolicy", - "id": "dataproc.projects.locations.workflowTemplates.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", + "path": "v1beta2/{+parent}/workflowTemplates", + "id": "dataproc.projects.regions.workflowTemplates.list", + "description": "Lists workflows that match the specified filter in the request." + }, + "setIamPolicy": { "response": { "$ref": "Policy" }, "parameterOrder": [ "resource" ], - "httpMethod": "GET", + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "resource": { "required": true, "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/workflowTemplates/[^/]+$", + "pattern": "^projects/[^/]+/regions/[^/]+/workflowTemplates/[^/]+$", "location": "path", - "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." } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates/{workflowTemplatesId}:getIamPolicy" + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates/{workflowTemplatesId}:setIamPolicy", + "path": "v1beta2/{+resource}:setIamPolicy", + "id": "dataproc.projects.regions.workflowTemplates.setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "description": "Sets the access control policy on the specified resource. Replaces any existing policy." }, - "instantiate": { + "create": { + "path": "v1beta2/{+parent}/workflowTemplates", + "id": "dataproc.projects.regions.workflowTemplates.create", + "description": "Creates new workflow template.", + "request": { + "$ref": "WorkflowTemplate" + }, "response": { - "$ref": "Operation" + "$ref": "WorkflowTemplate" }, "parameterOrder": [ - "name" + "parent" ], "httpMethod": "POST", "parameters": { - "name": { + "parent": { "required": true, "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/workflowTemplates/[^/]+$", + "pattern": "^projects/[^/]+/regions/[^/]+$", "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}" + "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}" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates/{workflowTemplatesId}:instantiate", - "path": "v1beta2/{+name}:instantiate", - "id": "dataproc.projects.locations.workflowTemplates.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.", - "request": { - "$ref": "InstantiateWorkflowTemplateRequest" - } - }, - "get": { + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/workflowTemplates" + } + } + }, + "operations": { + "methods": { + "cancel": { "response": { - "$ref": "WorkflowTemplate" + "$ref": "Empty" }, "parameterOrder": [ "name" ], - "httpMethod": "GET", + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { - "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" - }, "name": { "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}", + "description": "The name of the operation resource to be cancelled.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/workflowTemplates/[^/]+$" + "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates/{workflowTemplatesId}", - "path": "v1beta2/{+name}", - "id": "dataproc.projects.locations.workflowTemplates.get", - "description": "Retrieves the latest workflow template.Can retrieve previously instantiated template by specifying optional version parameter." + "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." }, - "instantiateInline": { - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates:instantiateInline", - "path": "v1beta2/{+parent}/workflowTemplates:instantiateInline", - "id": "dataproc.projects.locations.workflowTemplates.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.", - "request": { - "$ref": "WorkflowTemplate" - }, + "getIamPolicy": { + "path": "v1beta2/{+resource}:getIamPolicy", + "id": "dataproc.projects.regions.operations.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.", "response": { - "$ref": "Operation" + "$ref": "Policy" }, "parameterOrder": [ - "parent" + "resource" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "httpMethod": "POST", "parameters": { - "parent": { + "resource": { + "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", "location": "path", - "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}", + "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$" - }, - "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", - "location": "query" + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}:getIamPolicy" }, - "update": { - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates/{workflowTemplatesId}", - "path": "v1beta2/{+name}", - "id": "dataproc.projects.locations.workflowTemplates.update", - "request": { - "$ref": "WorkflowTemplate" - }, - "description": "Updates (replaces) workflow template. The updated template must contain version that matches the current server version.", + "get": { "response": { - "$ref": "WorkflowTemplate" + "$ref": "Operation" }, "parameterOrder": [ "name" ], - "httpMethod": "PUT", + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/workflowTemplates/[^/]+$", "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}", + "description": "The name of the operation resource.", "required": true, - "type": "string" + "type": "string", + "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$" } - } + }, + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}", + "path": "v1beta2/{+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." }, "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.", "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" }, @@ -2975,116 +2997,87 @@ "resource" ], "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "resource": { + "location": "path", "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/[^/]+/locations/[^/]+/workflowTemplates/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates/{workflowTemplatesId}:testIamPermissions", + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}:testIamPermissions", "path": "v1beta2/{+resource}:testIamPermissions", - "id": "dataproc.projects.locations.workflowTemplates.testIamPermissions" + "id": "dataproc.projects.regions.operations.testIamPermissions" }, "delete": { - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates/{workflowTemplatesId}", - "id": "dataproc.projects.locations.workflowTemplates.delete", - "path": "v1beta2/{+name}", - "description": "Deletes a workflow template. It does not cancel in-progress workflows.", - "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], "response": { "$ref": "Empty" }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "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}", + "description": "The name of the operation resource to be deleted.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/workflowTemplates/[^/]+$", + "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", "location": "path" - }, - "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" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}", + "path": "v1beta2/{+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." }, "list": { - "parameters": { - "pageToken": { - "location": "query", - "description": "Optional. The page token, returned by a previous call, to request the next page of results.", - "type": "string" - }, - "pageSize": { - "description": "Optional. The maximum number of results to return in each response.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "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}", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates", - "id": "dataproc.projects.locations.workflowTemplates.list", - "path": "v1beta2/{+parent}/workflowTemplates", - "description": "Lists workflows that match the specified filter in the request.", - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], + "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": "ListWorkflowTemplatesResponse" - } - }, - "create": { - "id": "dataproc.projects.locations.workflowTemplates.create", - "path": "v1beta2/{+parent}/workflowTemplates", - "description": "Creates new workflow template.", - "request": { - "$ref": "WorkflowTemplate" + "$ref": "ListOperationsResponse" }, - "httpMethod": "POST", "parameterOrder": [ - "parent" + "name" ], - "response": { - "$ref": "WorkflowTemplate" - }, + "httpMethod": "GET", "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}", + "filter": { + "location": "query", + "description": "The standard list filter.", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$", + "pattern": "^projects/[^/]+/regions/[^/]+/operations$", "location": "path" + }, + "pageToken": { + "type": "string", + "location": "query", + "description": "The standard list page token." + }, + "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/{locationsId}/workflowTemplates" + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations", + "path": "v1beta2/{+name}", + "id": "dataproc.projects.regions.operations.list" }, "setIamPolicy": { "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", @@ -3103,15 +3096,15 @@ "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/workflowTemplates/[^/]+$", + "pattern": "^projects/[^/]+/regions/[^/]+/operations/[^/]+$", "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta2/projects/{projectsId}/locations/{locationsId}/workflowTemplates/{workflowTemplatesId}:setIamPolicy", - "id": "dataproc.projects.locations.workflowTemplates.setIamPolicy", + "flatPath": "v1beta2/projects/{projectsId}/regions/{regionsId}/operations/{operationsId}:setIamPolicy", + "id": "dataproc.projects.regions.operations.setIamPolicy", "path": "v1beta2/{+resource}:setIamPolicy" } } @@ -3122,15 +3115,52 @@ } }, "parameters": { + "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": { + "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": { "location": "query", "description": "OAuth 2.0 token for the current user.", "type": "string" }, "bearer_token": { - "location": "query", "description": "OAuth bearer token.", - "type": "string" + "type": "string", + "location": "query" }, "upload_protocol": { "location": "query", @@ -3143,17 +3173,18 @@ "default": "true", "location": "query" }, - "uploadType": { + "fields": { "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "description": "Selector specifying which fields to include in a partial response.", "type": "string" }, - "fields": { + "uploadType": { "location": "query", - "description": "Selector specifying which fields to include in a partial response.", + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", "type": "string" }, "$.xgafv": { + "description": "V1 error format.", "type": "string", "enumDescriptions": [ "v1 error format", @@ -3163,52 +3194,21 @@ "enum": [ "1", "2" - ], - "description": "V1 error format." + ] }, "callback": { "location": "query", "description": "JSONP", "type": "string" - }, - "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": { - "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": { - "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": "v1beta2", - "baseUrl": "https://dataproc.googleapis.com/" + "baseUrl": "https://dataproc.googleapis.com/", + "kind": "discovery#restDescription", + "description": "Manages Hadoop-based clusters and jobs on Google Cloud Platform.", + "servicePath": "", + "basePath": "", + "id": "dataproc:v1beta2", + "documentationLink": "https://cloud.google.com/dataproc/", + "revision": "20180502" } diff --git a/DiscoveryJson/datastore_v1.json b/DiscoveryJson/datastore_v1.json index 0b175072ed..5b836ac064 100644 --- a/DiscoveryJson/datastore_v1.json +++ b/DiscoveryJson/datastore_v1.json @@ -1,8 +1,4 @@ { - "id": "datastore:v1", - "documentationLink": "https://cloud.google.com/datastore/", - "revision": "20180501", - "title": "Cloud Datastore API", "ownerName": "Google", "discoveryVersion": "v1", "version_module": true, @@ -11,132 +7,131 @@ "resources": { "operations": { "methods": { - "list": { + "cancel": { "response": { - "$ref": "GoogleLongrunningListOperationsResponse" + "$ref": "Empty" }, "parameterOrder": [ "name" ], - "httpMethod": "GET", + "httpMethod": "POST", "parameters": { - "filter": { - "location": "query", - "description": "The standard list filter.", - "type": "string" - }, "name": { + "pattern": "^projects/[^/]+/operations/[^/]+$", "location": "path", - "description": "The name of the operation's parent resource.", + "description": "The name of the operation resource to be cancelled.", "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - }, - "pageToken": { - "type": "string", - "location": "query", - "description": "The standard list page token." - }, - "pageSize": { - "location": "query", - "description": "The standard list page size.", - "format": "int32", - "type": "integer" + "type": "string" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/datastore" ], - "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." + "flatPath": "v1/projects/{projectsId}/operations/{operationsId}:cancel", + "path": "v1/{+name}:cancel", + "id": "datastore.projects.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`." }, - "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.", + "delete": { + "httpMethod": "DELETE", "response": { - "$ref": "GoogleLongrunningOperation" + "$ref": "Empty" }, "parameterOrder": [ "name" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], "parameters": { "name": { - "description": "The name of the operation resource.", - "required": true, - "type": "string", "pattern": "^projects/[^/]+/operations/[^/]+$", - "location": "path" + "location": "path", + "description": "The name of the operation resource to be deleted.", + "required": true, + "type": "string" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ], "flatPath": "v1/projects/{projectsId}/operations/{operationsId}", + "id": "datastore.projects.operations.delete", "path": "v1/{+name}", - "id": "datastore.projects.operations.get" + "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`." }, - "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`.", + "list": { + "httpMethod": "GET", "response": { - "$ref": "Empty" + "$ref": "GoogleLongrunningListOperationsResponse" }, "parameterOrder": [ "name" ], - "httpMethod": "POST", "parameters": { "name": { + "pattern": "^projects/[^/]+$", "location": "path", - "description": "The name of the operation resource to be cancelled.", + "description": "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": { + "description": "The standard list filter.", "type": "string", - "pattern": "^projects/[^/]+/operations/[^/]+$" + "location": "query" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/datastore" ], - "flatPath": "v1/projects/{projectsId}/operations/{operationsId}:cancel", - "path": "v1/{+name}:cancel", - "id": "datastore.projects.operations.cancel" + "flatPath": "v1/projects/{projectsId}/operations", + "id": "datastore.projects.operations.list", + "path": "v1/{+name}/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." }, - "delete": { + "get": { "response": { - "$ref": "Empty" + "$ref": "GoogleLongrunningOperation" }, "parameterOrder": [ "name" ], - "httpMethod": "DELETE", + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ], "parameters": { "name": { + "pattern": "^projects/[^/]+/operations/[^/]+$", "location": "path", - "description": "The name of the operation resource to be deleted.", + "description": "The name of the operation resource.", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/operations/[^/]+$" + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], "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`." + "id": "datastore.projects.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." } } } }, "methods": { "commit": { - "flatPath": "v1/projects/{projectId}:commit", "path": "v1/projects/{projectId}:commit", "id": "datastore.projects.commit", "request": { @@ -161,15 +156,10 @@ "type": "string", "location": "path" } - } + }, + "flatPath": "v1/projects/{projectId}:commit" }, "import": { - "path": "v1/projects/{projectId}:import", - "id": "datastore.projects.import", - "request": { - "$ref": "GoogleDatastoreAdminV1ImportEntitiesRequest" - }, - "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" }, @@ -183,26 +173,32 @@ ], "parameters": { "projectId": { + "description": "Project ID against which to make the request.", "required": true, "type": "string", - "location": "path", - "description": "Project ID against which to make the request." + "location": "path" } }, - "flatPath": "v1/projects/{projectId}:import" + "flatPath": "v1/projects/{projectId}:import", + "path": "v1/projects/{projectId}:import", + "id": "datastore.projects.import", + "request": { + "$ref": "GoogleDatastoreAdminV1ImportEntitiesRequest" + }, + "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." }, "beginTransaction": { "description": "Begins a new transaction.", "request": { "$ref": "BeginTransactionRequest" }, - "httpMethod": "POST", - "parameterOrder": [ - "projectId" - ], "response": { "$ref": "BeginTransactionResponse" }, + "parameterOrder": [ + "projectId" + ], + "httpMethod": "POST", "parameters": { "projectId": { "location": "path", @@ -216,14 +212,10 @@ "https://www.googleapis.com/auth/datastore" ], "flatPath": "v1/projects/{projectId}:beginTransaction", - "id": "datastore.projects.beginTransaction", - "path": "v1/projects/{projectId}:beginTransaction" + "path": "v1/projects/{projectId}:beginTransaction", + "id": "datastore.projects.beginTransaction" }, "reserveIds": { - "description": "Prevents the supplied keys' IDs from being auto-allocated by Cloud\nDatastore.", - "request": { - "$ref": "ReserveIdsRequest" - }, "response": { "$ref": "ReserveIdsResponse" }, @@ -233,10 +225,10 @@ "httpMethod": "POST", "parameters": { "projectId": { + "location": "path", "description": "The ID of the project against which to make the request.", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, "scopes": [ @@ -245,15 +237,13 @@ ], "flatPath": "v1/projects/{projectId}:reserveIds", "path": "v1/projects/{projectId}:reserveIds", - "id": "datastore.projects.reserveIds" + "id": "datastore.projects.reserveIds", + "description": "Prevents the supplied keys' IDs from being auto-allocated by Cloud\nDatastore.", + "request": { + "$ref": "ReserveIdsRequest" + } }, "runQuery": { - "path": "v1/projects/{projectId}:runQuery", - "id": "datastore.projects.runQuery", - "request": { - "$ref": "RunQueryRequest" - }, - "description": "Queries for entities.", "response": { "$ref": "RunQueryResponse" }, @@ -267,19 +257,27 @@ ], "parameters": { "projectId": { + "location": "path", "description": "The ID of the project against which to make the request.", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, - "flatPath": "v1/projects/{projectId}:runQuery" + "flatPath": "v1/projects/{projectId}:runQuery", + "path": "v1/projects/{projectId}:runQuery", + "id": "datastore.projects.runQuery", + "request": { + "$ref": "RunQueryRequest" + }, + "description": "Queries for entities." }, "rollback": { - "description": "Rolls back a transaction.", + "path": "v1/projects/{projectId}:rollback", + "id": "datastore.projects.rollback", "request": { "$ref": "RollbackRequest" }, + "description": "Rolls back a transaction.", "response": { "$ref": "RollbackResponse" }, @@ -287,6 +285,10 @@ "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.", @@ -295,18 +297,9 @@ "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "flatPath": "v1/projects/{projectId}:rollback", - "path": "v1/projects/{projectId}:rollback", - "id": "datastore.projects.rollback" + "flatPath": "v1/projects/{projectId}:rollback" }, "lookup": { - "flatPath": "v1/projects/{projectId}:lookup", - "path": "v1/projects/{projectId}:lookup", - "id": "datastore.projects.lookup", "request": { "$ref": "LookupRequest" }, @@ -324,18 +317,17 @@ ], "parameters": { "projectId": { + "description": "The ID of the project against which to make the request.", "required": true, "type": "string", - "location": "path", - "description": "The ID of the project against which to make the request." + "location": "path" } - } + }, + "flatPath": "v1/projects/{projectId}:lookup", + "path": "v1/projects/{projectId}:lookup", + "id": "datastore.projects.lookup" }, "export": { - "request": { - "$ref": "GoogleDatastoreAdminV1ExportEntitiesRequest" - }, - "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.", "response": { "$ref": "GoogleLongrunningOperation" }, @@ -343,21 +335,25 @@ "projectId" ], "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], "parameters": { "projectId": { + "location": "path", "description": "Project ID against which to make the request.", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ], "flatPath": "v1/projects/{projectId}:export", "path": "v1/projects/{projectId}:export", - "id": "datastore.projects.export" + "id": "datastore.projects.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.", + "request": { + "$ref": "GoogleDatastoreAdminV1ExportEntitiesRequest" + } }, "allocateIds": { "response": { @@ -367,759 +363,749 @@ "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", - "location": "path" + "type": "string" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ], "flatPath": "v1/projects/{projectId}:allocateIds", "path": "v1/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" - }, - "description": "Allocates IDs for the given keys, which is useful for referencing an entity\nbefore it is inserted." + } } } } }, "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" }, + "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": "string", + "location": "query" }, "pp": { - "location": "query", "description": "Pretty-print response.", "type": "boolean", - "default": "true" + "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" }, - "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", - "location": "query" + "default": "true" }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "fields": { + "description": "Selector specifying which fields to include in a partial response.", "type": "string", "location": "query" }, - "fields": { + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string", + "location": "query" + }, + "callback": { "location": "query", - "description": "Selector specifying which fields to include in a partial response.", + "description": "JSONP", "type": "string" }, "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", "enum": [ "1", "2" ], "description": "V1 error format.", - "type": "string" + "type": "string", + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query" }, - "callback": { + "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": "JSONP", - "type": "string" + "description": "Data format for response.", + "default": "json" } }, "schemas": { - "GoogleDatastoreAdminV1beta1CommonMetadata": { - "description": "Metadata common to all Datastore Admin operations.", + "AllocateIdsResponse": { + "description": "The response for Datastore.AllocateIds.", "type": "object", "properties": { - "labels": { + "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" + }, + "GoogleLongrunningOperation": { + "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": { - "type": "string" + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" }, - "description": "The client-assigned labels which were provided when the operation was\ncreated. May also include additional labels.", + "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" }, - "endTime": { - "description": "The time the operation ended, either successfully or otherwise.", - "format": "google-datetime", - "type": "string" - }, - "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.", + "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" }, - "state": { - "description": "The current state of the Operation.", - "type": "string", - "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" - ] + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." }, - "startTime": { - "description": "The time that work began on the operation.", - "format": "google-datetime", - "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" } }, - "id": "GoogleDatastoreAdminV1beta1CommonMetadata" + "id": "GoogleLongrunningOperation" }, - "ArrayValue": { - "description": "An array value.", - "type": "object", + "PropertyFilter": { "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", - "items": { - "$ref": "Value" - } + "value": { + "description": "The value to compare the property to.", + "$ref": "Value" + }, + "property": { + "$ref": "PropertyReference", + "description": "The property to filter by." + }, + "op": { + "enumDescriptions": [ + "Unspecified. This value must not be used.", + "Less than.", + "Less than or equal.", + "Greater than.", + "Greater than or equal.", + "Equal.", + "Has ancestor." + ], + "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" } }, - "id": "ArrayValue" + "id": "PropertyFilter", + "description": "A filter on a specific property.", + "type": "object" }, - "GoogleDatastoreAdminV1EntityFilter": { - "type": "object", + "CommitResponse": { "properties": { - "kinds": { - "description": "If empty, then this represents all kinds.", - "type": "array", - "items": { - "type": "string" - } + "indexUpdates": { + "description": "The number of index entries updated during the commit, or zero if none were\nupdated.", + "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.", + "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": { - "type": "string" + "$ref": "MutationResult" } } }, - "id": "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": "CommitResponse", + "description": "The response for Datastore.Commit.", + "type": "object" }, - "GoogleDatastoreAdminV1beta1ExportEntitiesResponse": { + "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", "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.", + "namespaceId": { + "description": "If not empty, the ID of the namespace to which the entities belong.", "type": "string" - } - }, - "id": "GoogleDatastoreAdminV1beta1ExportEntitiesResponse", - "description": "The response for\ngoogle.datastore.admin.v1beta1.DatastoreAdmin.ExportEntities." - }, - "GoogleDatastoreAdminV1ImportEntitiesMetadata": { - "properties": { - "progressBytes": { - "description": "An estimate of the number of bytes processed.", - "$ref": "GoogleDatastoreAdminV1Progress" }, - "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.", + "projectId": { + "description": "The ID of the project to which the entities belong.", "type": "string" - }, - "entityFilter": { - "$ref": "GoogleDatastoreAdminV1EntityFilter", - "description": "Description of which entities are being imported." - }, - "progressEntities": { - "description": "An estimate of the number of entities processed.", - "$ref": "GoogleDatastoreAdminV1Progress" - }, - "common": { - "$ref": "GoogleDatastoreAdminV1CommonMetadata", - "description": "Metadata common to all Datastore Admin operations." } }, - "id": "GoogleDatastoreAdminV1ImportEntitiesMetadata", - "description": "Metadata for ImportEntities operations.", - "type": "object" + "id": "PartitionId" }, - "GqlQuery": { - "id": "GqlQuery", - "description": "A [GQL query](https://cloud.google.com/datastore/docs/apis/gql/gql_reference).", - "type": "object", + "Entity": { "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" + "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." }, - "namedBindings": { + "properties": { "additionalProperties": { - "$ref": "GqlQueryParameter" + "$ref": "Value" }, - "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 `\"\"`.", + "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" - }, - "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": "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" }, - "Filter": { - "description": "A holder for any type of filter.", + "QueryResultBatch": { + "description": "A batch of results produced by a query.", "type": "object", "properties": { - "propertyFilter": { - "$ref": "PropertyFilter", - "description": "A filter on a property." + "entityResultType": { + "enum": [ + "RESULT_TYPE_UNSPECIFIED", + "FULL", + "PROJECTION", + "KEY_ONLY" + ], + "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." + ] }, - "compositeFilter": { - "description": "A composite filter.", - "$ref": "CompositeFilter" + "entityResults": { + "description": "The results for this batch.", + "type": "array", + "items": { + "$ref": "EntityResult" + } + }, + "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" + }, + "endCursor": { + "description": "A cursor that points to the position after the last result in the batch.", + "format": "byte", + "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.", + "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" } }, - "id": "Filter" - }, - "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" + "id": "QueryResultBatch" }, - "RunQueryRequest": { - "id": "RunQueryRequest", - "description": "The request for Datastore.RunQuery.", - "type": "object", + "GoogleDatastoreAdminV1beta1Progress": { "properties": { - "readOptions": { - "description": "The options for this query.", - "$ref": "ReadOptions" - }, - "query": { - "$ref": "Query", - "description": "The query to run." - }, - "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.", - "$ref": "PartitionId" + "workCompleted": { + "description": "The amount of work that has been completed. Note that this may be greater\nthan work_estimated.", + "format": "int64", + "type": "string" }, - "gqlQuery": { - "description": "The GQL query to run.", - "$ref": "GqlQuery" + "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", + "description": "Measures the progress of a particular metric.", + "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", + "GoogleDatastoreAdminV1Progress": { "properties": { - "readWrite": { - "$ref": "ReadWrite", - "description": "The transaction should allow both reads and writes." + "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" }, - "readOnly": { - "$ref": "ReadOnly", - "description": "The transaction should only allow reads." + "workCompleted": { + "description": "The amount of work that has been completed. Note that this may be greater\nthan work_estimated.", + "format": "int64", + "type": "string" } }, - "id": "TransactionOptions" + "id": "GoogleDatastoreAdminV1Progress", + "description": "Measures the progress of a particular metric.", + "type": "object" }, - "GoogleDatastoreAdminV1beta1ImportEntitiesMetadata": { - "description": "Metadata for ImportEntities operations.", + "GoogleDatastoreAdminV1CommonMetadata": { + "description": "Metadata common to all Datastore Admin operations.", "type": "object", "properties": { - "common": { - "description": "Metadata common to all Datastore Admin operations.", - "$ref": "GoogleDatastoreAdminV1beta1CommonMetadata" + "operationType": { + "enum": [ + "OPERATION_TYPE_UNSPECIFIED", + "EXPORT_ENTITIES", + "IMPORT_ENTITIES" + ], + "description": "The type of the operation. Can be used as a filter in\nListOperationsRequest.", + "type": "string", + "enumDescriptions": [ + "Unspecified.", + "ExportEntities.", + "ImportEntities." + ] }, - "progressBytes": { - "description": "An estimate of the number of bytes processed.", - "$ref": "GoogleDatastoreAdminV1beta1Progress" + "state": { + "enum": [ + "STATE_UNSPECIFIED", + "INITIALIZING", + "PROCESSING", + "CANCELLING", + "FINALIZING", + "SUCCESSFUL", + "FAILED", + "CANCELLED" + ], + "description": "The current state of the Operation.", + "type": "string", + "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." + ] }, - "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.", + "startTime": { + "description": "The time that work began on the operation.", + "format": "google-datetime", "type": "string" }, - "entityFilter": { - "description": "Description of which entities are being imported.", - "$ref": "GoogleDatastoreAdminV1beta1EntityFilter" + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The client-assigned labels which were provided when the operation was\ncreated. May also include additional labels.", + "type": "object" }, - "progressEntities": { - "$ref": "GoogleDatastoreAdminV1beta1Progress", - "description": "An estimate of the number of entities processed." + "endTime": { + "description": "The time the operation ended, either successfully or otherwise.", + "format": "google-datetime", + "type": "string" } }, - "id": "GoogleDatastoreAdminV1beta1ImportEntitiesMetadata" + "id": "GoogleDatastoreAdminV1CommonMetadata" }, - "Query": { - "description": "A query for entities.", - "type": "object", + "PathElement": { "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" + }, "kind": { - "description": "The kinds to query (if empty, returns entities of all kinds).\nCurrently at most 1 kind may be specified.", + "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" + } + }, + "id": "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" + }, + "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": { + "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": "KindExpression" + "$ref": "GoogleLongrunningOperation" } - }, - "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).", + } + }, + "id": "GoogleLongrunningListOperationsResponse", + "description": "The response message for Operations.ListOperations.", + "type": "object" + }, + "BeginTransactionResponse": { + "properties": { + "transaction": { + "description": "The transaction identifier (always present).", + "format": "byte", + "type": "string" + } + }, + "id": "BeginTransactionResponse", + "description": "The response for Datastore.BeginTransaction.", + "type": "object" + }, + "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": "PropertyReference" + "$ref": "EntityResult" } }, - "order": { - "description": "The order to apply to the query results (if empty, order is unspecified).", + "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": "PropertyOrder" + "$ref": "EntityResult" } }, - "projection": { - "description": "The projection to return. Defaults to returning all 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.", "type": "array", "items": { - "$ref": "Projection" + "$ref": "Key" } + } + }, + "id": "LookupResponse", + "description": "The response for Datastore.Lookup.", + "type": "object" + }, + "RunQueryResponse": { + "properties": { + "query": { + "description": "The parsed form of the `GqlQuery` from the request, if it was set.", + "$ref": "Query" }, - "endCursor": { - "type": "string", - "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" - }, - "filter": { - "$ref": "Filter", - "description": "The filter to apply." - }, - "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" - }, - "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" - }, - "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" + "batch": { + "description": "A batch of query results (always present).", + "$ref": "QueryResultBatch" } }, - "id": "Query" + "id": "RunQueryResponse", + "description": "The response for Datastore.RunQuery.", + "type": "object" }, - "ReadOnly": { + "AllocateIdsRequest": { + "description": "The request for Datastore.AllocateIds.", "type": "object", - "properties": {}, - "id": "ReadOnly", - "description": "Options specific to read-only transactions." + "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" }, - "EntityResult": { - "id": "EntityResult", - "description": "The result of fetching an entity from Datastore.", - "type": "object", + "BeginTransactionRequest": { "properties": { - "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" - }, - "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" + "transactionOptions": { + "description": "Options for a new transaction.", + "$ref": "TransactionOptions" } - } + }, + "id": "BeginTransactionRequest", + "description": "The request for Datastore.BeginTransaction.", + "type": "object" }, - "Value": { - "description": "A message that can hold any of the supported value types and associated\nmetadata.", + "CommitRequest": { + "description": "The request for Datastore.Commit.", "type": "object", "properties": { - "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", + "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" }, - "booleanValue": { - "description": "A boolean value.", - "type": "boolean" - }, - "nullValue": { + "mode": { "enumDescriptions": [ - "Null value." + "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": [ - "NULL_VALUE" + "MODE_UNSPECIFIED", + "TRANSACTIONAL", + "NON_TRANSACTIONAL" ], - "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", + "description": "The type of commit to perform. Defaults to `TRANSACTIONAL`.", "type": "string" }, - "meaning": { - "description": "The `meaning` field should only be populated for backwards compatibility.", - "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": { - "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.", - "$ref": "Entity" - }, - "geoPointValue": { - "description": "A geo point value representing a point on the surface of Earth.", - "$ref": "LatLng" - }, - "keyValue": { - "description": "A key value.", - "$ref": "Key" - }, - "integerValue": { - "description": "An integer value.", - "format": "int64", - "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": "Value" + "id": "CommitRequest" }, - "ReadWrite": { - "description": "Options specific to read / write transactions.", - "type": "object", + "KindExpression": { "properties": { - "previousTransaction": { - "description": "The transaction identifier of the transaction being retried.", - "format": "byte", + "name": { + "description": "The name of the kind.", "type": "string" } }, - "id": "ReadWrite" - }, - "LookupRequest": { - "id": "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": "KindExpression", + "description": "A representation of a kind.", + "type": "object" }, - "ReserveIdsRequest": { - "description": "The request for Datastore.ReserveIds.", - "type": "object", + "LatLng": { "properties": { - "keys": { - "description": "A list of keys with complete key paths whose numeric IDs should not be\nauto-allocated.", - "type": "array", - "items": { - "$ref": "Key" - } + "longitude": { + "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", + "format": "double", + "type": "number" }, - "databaseId": { - "description": "If not empty, the ID of the database against which to make the request.", - "type": "string" + "latitude": { + "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", + "format": "double", + "type": "number" } }, - "id": "ReserveIdsRequest" + "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" }, - "Status": { - "type": "object", + "Key": { "properties": { - "details": { + "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": { - "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." - }, - "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" + "$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": "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": "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" }, - "PropertyOrder": { - "description": "The desired order for a specific property.", + "GoogleDatastoreAdminV1beta1CommonMetadata": { + "description": "Metadata common to all Datastore Admin operations.", "type": "object", "properties": { - "property": { - "$ref": "PropertyReference", - "description": "The property to order by." - }, - "direction": { + "operationType": { "enum": [ - "DIRECTION_UNSPECIFIED", - "ASCENDING", - "DESCENDING" + "OPERATION_TYPE_UNSPECIFIED", + "EXPORT_ENTITIES", + "IMPORT_ENTITIES" ], - "description": "The direction to order by. Defaults to `ASCENDING`.", + "description": "The type of the operation. Can be used as a filter in\nListOperationsRequest.", "type": "string", "enumDescriptions": [ - "Unspecified. This value must not be used.", - "Ascending.", - "Descending." + "Unspecified.", + "ExportEntities.", + "ImportEntities." ] - } - }, - "id": "PropertyOrder" - }, - "GoogleDatastoreAdminV1ImportEntitiesRequest": { - "properties": { + }, + "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": { - "description": "Client-assigned labels.", - "type": "object", "additionalProperties": { "type": "string" - } + }, + "description": "The client-assigned labels which were provided when the operation was\ncreated. May also include additional 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.v1.ExportEntitiesResponse.output_url.", + "endTime": { + "description": "The time the operation ended, either successfully or otherwise.", + "format": "google-datetime", "type": "string" - }, - "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." } }, - "id": "GoogleDatastoreAdminV1ImportEntitiesRequest", - "description": "The request for\ngoogle.datastore.admin.v1.DatastoreAdmin.ImportEntities.", - "type": "object" + "id": "GoogleDatastoreAdminV1beta1CommonMetadata" }, - "ReserveIdsResponse": { + "ArrayValue": { + "description": "An array value.", "type": "object", - "properties": {}, - "id": "ReserveIdsResponse", - "description": "The response for Datastore.ReserveIds." + "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", + "items": { + "$ref": "Value" + } + } + }, + "id": "ArrayValue" }, - "GoogleDatastoreAdminV1beta1EntityFilter": { + "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']", "type": "object", "properties": { - "kinds": { - "description": "If empty, then this represents all kinds.", + "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" } }, - "namespaceIds": { + "kinds": { + "description": "If empty, then this represents all kinds.", "type": "array", "items": { "type": "string" - }, - "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." + } } }, - "id": "GoogleDatastoreAdminV1beta1EntityFilter" + "id": "GoogleDatastoreAdminV1EntityFilter" }, - "PropertyReference": { - "description": "A reference to a property relative to the kind expressions.", + "GoogleDatastoreAdminV1beta1ExportEntitiesResponse": { + "description": "The response for\ngoogle.datastore.admin.v1beta1.DatastoreAdmin.ExportEntities.", "type": "object", "properties": { - "name": { - "description": "The name of the property.\nIf name includes \".\"s, it may be interpreted as a property name path.", + "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": "PropertyReference" - }, - "Projection": { - "type": "object", - "properties": { - "property": { - "$ref": "PropertyReference", - "description": "The property to project." - } - }, - "id": "Projection", - "description": "A representation of a property in a projection." - }, - "Mutation": { - "type": "object", - "properties": { - "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": { - "type": "string", - "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" - }, - "update": { - "description": "The entity to update. The entity must already exist.\nMust have a complete key path.", - "$ref": "Entity" - }, - "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" - }, - "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" - } - }, - "id": "Mutation", - "description": "A mutation to apply to an entity." + "id": "GoogleDatastoreAdminV1beta1ExportEntitiesResponse" }, - "ReadOptions": { - "id": "ReadOptions", - "description": "The options shared by read requests.", + "GoogleDatastoreAdminV1ImportEntitiesMetadata": { + "description": "Metadata for ImportEntities operations.", "type": "object", "properties": { - "readConsistency": { - "description": "The non-transactional read consistency to use.\nCannot be set to `STRONG` for global queries.", - "type": "string", - "enumDescriptions": [ - "Unspecified. This value must not be used.", - "Strong consistency.", - "Eventual consistency." - ], - "enum": [ - "READ_CONSISTENCY_UNSPECIFIED", - "STRONG", - "EVENTUAL" - ] + "progressEntities": { + "$ref": "GoogleDatastoreAdminV1Progress", + "description": "An estimate of the number of entities processed." }, - "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" - } - } - }, - "RollbackResponse": { - "properties": {}, - "id": "RollbackResponse", - "description": "The response for Datastore.Rollback.\n(an empty message).", - "type": "object" - }, - "GoogleDatastoreAdminV1ExportEntitiesMetadata": { - "description": "Metadata for ExportEntities operations.", - "type": "object", - "properties": { "common": { "$ref": "GoogleDatastoreAdminV1CommonMetadata", "description": "Metadata common to all Datastore Admin operations." @@ -1128,97 +1114,109 @@ "description": "An estimate of the number of bytes processed.", "$ref": "GoogleDatastoreAdminV1Progress" }, - "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.", + "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" }, - "progressEntities": { - "description": "An estimate of the number of entities processed.", - "$ref": "GoogleDatastoreAdminV1Progress" + "entityFilter": { + "$ref": "GoogleDatastoreAdminV1EntityFilter", + "description": "Description of which entities are being imported." } }, - "id": "GoogleDatastoreAdminV1ExportEntitiesMetadata" + "id": "GoogleDatastoreAdminV1ImportEntitiesMetadata" }, - "GoogleDatastoreAdminV1ExportEntitiesResponse": { - "id": "GoogleDatastoreAdminV1ExportEntitiesResponse", - "description": "The response for\ngoogle.datastore.admin.v1.DatastoreAdmin.ExportEntities.", - "type": "object", + "GqlQuery": { "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.", + "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", + "description": "A [GQL query](https://cloud.google.com/datastore/docs/apis/gql/gql_reference).", + "type": "object" }, - "MutationResult": { + "Filter": { "properties": { - "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" - }, - "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" + "compositeFilter": { + "$ref": "CompositeFilter", + "description": "A composite filter." }, - "key": { - "$ref": "Key", - "description": "The automatically allocated key.\nSet only when the mutation allocated a key." + "propertyFilter": { + "$ref": "PropertyFilter", + "description": "A filter on a property." } }, - "id": "MutationResult", - "description": "The result of applying a mutation.", + "id": "Filter", + "description": "A holder for any type of filter.", "type": "object" }, - "GoogleDatastoreAdminV1ExportEntitiesRequest": { + "RunQueryRequest": { "properties": { - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Client-assigned labels.", - "type": "object" + "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" }, - "entityFilter": { - "$ref": "GoogleDatastoreAdminV1EntityFilter", - "description": "Description of what data from the project is included in the export." + "readOptions": { + "$ref": "ReadOptions", + "description": "The options for this query." }, - "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" + "query": { + "description": "The query to run.", + "$ref": "Query" } }, - "id": "GoogleDatastoreAdminV1ExportEntitiesRequest", - "description": "The request for\ngoogle.datastore.admin.v1.DatastoreAdmin.ExportEntities.", + "id": "RunQueryRequest", + "description": "The request for Datastore.RunQuery.", "type": "object" }, - "RollbackRequest": { + "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" + }, + "TransactionOptions": { "properties": { - "transaction": { - "description": "The transaction identifier, returned by a call to\nDatastore.BeginTransaction.", - "format": "byte", - "type": "string" + "readWrite": { + "description": "The transaction should allow both reads and writes.", + "$ref": "ReadWrite" + }, + "readOnly": { + "description": "The transaction should only allow reads.", + "$ref": "ReadOnly" } }, - "id": "RollbackRequest", - "description": "The request for Datastore.Rollback." + "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" }, - "GoogleDatastoreAdminV1beta1ExportEntitiesMetadata": { + "GoogleDatastoreAdminV1beta1ImportEntitiesMetadata": { + "description": "Metadata for ImportEntities operations.", "type": "object", "properties": { - "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" - }, "progressEntities": { "description": "An estimate of the number of entities processed.", "$ref": "GoogleDatastoreAdminV1beta1Progress" @@ -1230,556 +1228,554 @@ "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." } }, - "id": "GoogleDatastoreAdminV1beta1ExportEntitiesMetadata", - "description": "Metadata for ExportEntities operations." + "id": "GoogleDatastoreAdminV1beta1ImportEntitiesMetadata" }, - "CompositeFilter": { - "description": "A filter that merges multiple other filters using the given operator.", + "Query": { + "description": "A query for entities.", "type": "object", "properties": { - "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" - }, - "filters": { - "description": "The list of filters to combine.\nMust contain at least one filter.", + "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": "Filter" + "$ref": "KindExpression" } - } - }, - "id": "CompositeFilter" - }, - "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.", + }, + "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": "Key" + "$ref": "PropertyReference" } - } - }, - "id": "AllocateIdsResponse", - "description": "The response for Datastore.AllocateIds.", - "type": "object" - }, - "GoogleLongrunningOperation": { - "id": "GoogleLongrunningOperation", - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object", - "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" }, - "error": { - "$ref": "Status", - "description": "The error result of the operation in case of failure or cancellation." + "order": { + "description": "The order to apply to the query results (if empty, order is unspecified).", + "type": "array", + "items": { + "$ref": "PropertyOrder" + } }, - "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" + "projection": { + "description": "The projection to return. Defaults to returning all properties.", + "type": "array", + "items": { + "$ref": "Projection" } }, - "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" + "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" }, - "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" - } - } - }, - "PropertyFilter": { - "description": "A filter on a specific property.", - "type": "object", - "properties": { - "value": { - "$ref": "Value", - "description": "The value to compare the property to." + "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" }, - "property": { - "description": "The property to filter by.", - "$ref": "PropertyReference" + "filter": { + "description": "The filter to apply.", + "$ref": "Filter" }, - "op": { - "enumDescriptions": [ - "Unspecified. This value must not be used.", - "Less than.", - "Less than or equal.", - "Greater than.", - "Greater than or equal.", - "Equal.", - "Has ancestor." - ], - "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" - } - }, - "id": "PropertyFilter" - }, - "CommitResponse": { - "id": "CommitResponse", - "description": "The response for Datastore.Commit.", - "type": "object", - "properties": { - "indexUpdates": { - "description": "The number of index entries updated during the commit, or zero if none were\nupdated.", + "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" }, - "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" - } + "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" } - } + }, + "id": "Query" }, - "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", + "ReadOnly": { + "properties": {}, + "id": "ReadOnly", + "description": "Options specific to read-only transactions.", + "type": "object" + }, + "EntityResult": { "properties": { - "projectId": { - "description": "The ID of the project to which the entities belong.", + "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" }, - "namespaceId": { - "description": "If not empty, the ID of the namespace to which the entities belong.", + "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" - } - }, - "id": "PartitionId" - }, - "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", - "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" }, - "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" + "entity": { + "description": "The resulting entity.", + "$ref": "Entity" } }, - "id": "Entity" + "id": "EntityResult", + "description": "The result of fetching an entity from Datastore.", + "type": "object" }, - "GoogleDatastoreAdminV1beta1Progress": { - "description": "Measures the progress of a particular metric.", - "type": "object", + "Value": { "properties": { - "workEstimated": { - "description": "An estimate of how much work needs to be performed. May be zero if the\nwork estimate is unavailable.", + "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." + }, + "integerValue": { + "description": "An integer value.", "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", + "keyValue": { + "description": "A key value.", + "$ref": "Key" + }, + "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" - } - }, - "id": "GoogleDatastoreAdminV1beta1Progress" - }, - "QueryResultBatch": { - "description": "A batch of results produced by a query.", - "type": "object", - "properties": { - "entityResults": { - "description": "The results for this batch.", - "type": "array", - "items": { - "$ref": "EntityResult" - } }, - "moreResults": { - "description": "The state of the query after the current batch.", + "nullValue": { + "enum": [ + "NULL_VALUE" + ], + "description": "A null value.", "type": "string", "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" + "Null value." ] }, - "endCursor": { - "type": "string", - "description": "A cursor that points to the position after the last result in the batch.", - "format": "byte" - }, - "snapshotVersion": { - "type": "string", - "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" + "booleanValue": { + "description": "A boolean value.", + "type": "boolean" }, - "skippedCursor": { - "description": "A cursor that points to the position after the last skipped result.\nWill be set when `skipped_results` != 0.", + "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" }, - "skippedResults": { - "description": "The number of results skipped, typically because of an offset.", + "meaning": { + "description": "The `meaning` field should only be populated for backwards compatibility.", "format": "int32", "type": "integer" }, - "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." - ], - "enum": [ - "RESULT_TYPE_UNSPECIFIED", - "FULL", - "PROJECTION", - "KEY_ONLY" - ], - "description": "The result type for every entity in `entity_results`.", - "type": "string" + "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`." } }, - "id": "QueryResultBatch" + "id": "Value", + "description": "A message that can hold any of the supported value types and associated\nmetadata.", + "type": "object" }, - "GoogleDatastoreAdminV1Progress": { - "description": "Measures the progress of a particular metric.", - "type": "object", + "ReadWrite": { "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", + "previousTransaction": { + "description": "The transaction identifier of the transaction being retried.", + "format": "byte", "type": "string" } }, - "id": "GoogleDatastoreAdminV1Progress" + "id": "ReadWrite", + "description": "Options specific to read / write transactions.", + "type": "object" }, - "GoogleDatastoreAdminV1CommonMetadata": { - "description": "Metadata common to all Datastore Admin operations.", - "type": "object", + "LookupRequest": { "properties": { - "labels": { - "additionalProperties": { - "type": "string" - }, - "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": { - "description": "The type of the operation. Can be used as a filter in\nListOperationsRequest.", - "type": "string", - "enumDescriptions": [ - "Unspecified.", - "ExportEntities.", - "ImportEntities." - ], - "enum": [ - "OPERATION_TYPE_UNSPECIFIED", - "EXPORT_ENTITIES", - "IMPORT_ENTITIES" - ] + "keys": { + "description": "Keys of entities to look up.", + "type": "array", + "items": { + "$ref": "Key" + } }, - "state": { - "type": "string", - "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." + "readOptions": { + "description": "The options for this lookup request.", + "$ref": "ReadOptions" + } + }, + "id": "LookupRequest", + "description": "The request for Datastore.Lookup.", + "type": "object" + }, + "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" + } }, - "startTime": { - "description": "The time that work began on the operation.", - "format": "google-datetime", + "databaseId": { + "description": "If not empty, the ID of the database against which to make the request.", "type": "string" } }, - "id": "GoogleDatastoreAdminV1CommonMetadata" + "id": "ReserveIdsRequest", + "description": "The request for Datastore.ReserveIds.", + "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.", + "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": { - "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" + "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" + } }, - "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" + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" }, - "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 `\"\"`.", + "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": "PathElement" + "id": "Status" }, - "GqlQueryParameter": { - "type": "object", + "PropertyOrder": { "properties": { - "cursor": { - "description": "A query cursor. Query cursors are returned in query\nresult batches.", - "format": "byte", - "type": "string" + "property": { + "description": "The property to order by.", + "$ref": "PropertyReference" }, - "value": { - "$ref": "Value", - "description": "A value parameter." + "direction": { + "enum": [ + "DIRECTION_UNSPECIFIED", + "ASCENDING", + "DESCENDING" + ], + "description": "The direction to order by. Defaults to `ASCENDING`.", + "type": "string", + "enumDescriptions": [ + "Unspecified. This value must not be used.", + "Ascending.", + "Descending." + ] } }, - "id": "GqlQueryParameter", - "description": "A binding parameter for a GQL query." + "id": "PropertyOrder", + "description": "The desired order for a specific property.", + "type": "object" }, - "GoogleLongrunningListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", + "GoogleDatastoreAdminV1ImportEntitiesRequest": { + "description": "The request for\ngoogle.datastore.admin.v1.DatastoreAdmin.ImportEntities.", "type": "object", "properties": { - "nextPageToken": { - "description": "The standard List next-page token.", + "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.v1.ExportEntitiesResponse.output_url.", "type": "string" }, - "operations": { - "description": "A list of operations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "GoogleLongrunningOperation" - } + "entityFilter": { + "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.", + "$ref": "GoogleDatastoreAdminV1EntityFilter" } }, - "id": "GoogleLongrunningListOperationsResponse" + "id": "GoogleDatastoreAdminV1ImportEntitiesRequest" }, - "BeginTransactionResponse": { - "description": "The response for Datastore.BeginTransaction.", + "ReserveIdsResponse": { + "description": "The response for Datastore.ReserveIds.", "type": "object", + "properties": {}, + "id": "ReserveIdsResponse" + }, + "PropertyReference": { "properties": { - "transaction": { - "description": "The transaction identifier (always present).", - "format": "byte", + "name": { + "description": "The name of the property.\nIf name includes \".\"s, it may be interpreted as a property name path.", "type": "string" } }, - "id": "BeginTransactionResponse" + "id": "PropertyReference", + "description": "A reference to a property relative to the kind expressions.", + "type": "object" }, - "LookupResponse": { - "description": "The response for Datastore.Lookup.", - "type": "object", + "GoogleDatastoreAdminV1beta1EntityFilter": { "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.", + "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": { - "$ref": "Key" + "type": "string" } }, - "found": { - "type": "array", - "items": { - "$ref": "EntityResult" - }, - "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." - }, - "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.", + "kinds": { + "description": "If empty, then this represents all kinds.", "type": "array", "items": { - "$ref": "EntityResult" + "type": "string" } } }, - "id": "LookupResponse" + "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" }, - "RunQueryResponse": { - "description": "The response for Datastore.RunQuery.", + "Projection": { + "description": "A representation of a property in a projection.", "type": "object", "properties": { - "query": { - "description": "The parsed form of the `GqlQuery` from the request, if it was set.", - "$ref": "Query" - }, - "batch": { - "$ref": "QueryResultBatch", - "description": "A batch of query results (always present)." + "property": { + "description": "The property to project.", + "$ref": "PropertyReference" } }, - "id": "RunQueryResponse" + "id": "Projection" }, - "AllocateIdsRequest": { + "Mutation": { "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" - } + "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": { + "description": "The entity to insert. The entity must 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" + }, + "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" } }, - "id": "AllocateIdsRequest", - "description": "The request for Datastore.AllocateIds.", + "id": "Mutation", + "description": "A mutation to apply to an entity.", "type": "object" }, - "BeginTransactionRequest": { - "description": "The request for Datastore.BeginTransaction.", + "ReadOptions": { + "description": "The options shared by read requests.", "type": "object", "properties": { - "transactionOptions": { - "$ref": "TransactionOptions", - "description": "Options for a new transaction." + "readConsistency": { + "enum": [ + "READ_CONSISTENCY_UNSPECIFIED", + "STRONG", + "EVENTUAL" + ], + "description": "The non-transactional read consistency to use.\nCannot be set to `STRONG` for global queries.", + "type": "string", + "enumDescriptions": [ + "Unspecified. This value must not be used.", + "Strong consistency.", + "Eventual consistency." + ] + }, + "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": "BeginTransactionRequest" + "id": "ReadOptions" }, - "CommitRequest": { - "id": "CommitRequest", - "description": "The request for Datastore.Commit.", + "RollbackResponse": { + "description": "The response for Datastore.Rollback.\n(an empty message).", "type": "object", + "properties": {}, + "id": "RollbackResponse" + }, + "GoogleDatastoreAdminV1ExportEntitiesResponse": { "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", + "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" + } + }, + "id": "GoogleDatastoreAdminV1ExportEntitiesResponse", + "description": "The response for\ngoogle.datastore.admin.v1.DatastoreAdmin.ExportEntities.", + "type": "object" + }, + "GoogleDatastoreAdminV1ExportEntitiesMetadata": { + "properties": { + "progressEntities": { + "$ref": "GoogleDatastoreAdminV1Progress", + "description": "An estimate of the number of entities processed." }, - "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`.", + "common": { + "description": "Metadata common to all Datastore Admin operations.", + "$ref": "GoogleDatastoreAdminV1CommonMetadata" + }, + "progressBytes": { + "description": "An estimate of the number of bytes processed.", + "$ref": "GoogleDatastoreAdminV1Progress" + }, + "entityFilter": { + "description": "Description of which entities are being exported.", + "$ref": "GoogleDatastoreAdminV1EntityFilter" + }, + "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" + } + }, + "id": "GoogleDatastoreAdminV1ExportEntitiesMetadata", + "description": "Metadata for ExportEntities operations.", + "type": "object" + }, + "MutationResult": { + "properties": { + "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" }, - "mutations": { - "type": "array", - "items": { - "$ref": "Mutation" - }, - "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." + "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" } - } + }, + "id": "MutationResult", + "description": "The result of applying a mutation.", + "type": "object" }, - "KindExpression": { - "description": "A representation of a kind.", + "GoogleDatastoreAdminV1ExportEntitiesRequest": { + "description": "The request for\ngoogle.datastore.admin.v1.DatastoreAdmin.ExportEntities.", "type": "object", "properties": { - "name": { - "description": "The name of the kind.", + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Client-assigned labels.", + "type": "object" + }, + "entityFilter": { + "description": "Description of what data from the project is included in the export.", + "$ref": "GoogleDatastoreAdminV1EntityFilter" + }, + "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" } }, - "id": "KindExpression" + "id": "GoogleDatastoreAdminV1ExportEntitiesRequest" }, - "LatLng": { + "RollbackRequest": { "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" + "transaction": { + "description": "The transaction identifier, returned by a call to\nDatastore.BeginTransaction.", + "format": "byte", + "type": "string" } }, - "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.", + "id": "RollbackRequest", + "description": "The request for Datastore.Rollback.", "type": "object" }, - "Key": { - "id": "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.", + "GoogleDatastoreAdminV1beta1ExportEntitiesMetadata": { + "description": "Metadata for ExportEntities operations.", "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.", + "progressEntities": { + "description": "An estimate of the number of entities processed.", + "$ref": "GoogleDatastoreAdminV1beta1Progress" + }, + "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" + } + }, + "id": "GoogleDatastoreAdminV1beta1ExportEntitiesMetadata" + }, + "CompositeFilter": { + "properties": { + "filters": { + "description": "The list of filters to combine.\nMust contain at least one filter.", "type": "array", "items": { - "$ref": "PathElement" + "$ref": "Filter" } }, - "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." + "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", + "description": "A filter that merges multiple other filters using the given operator.", + "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" + "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", @@ -1803,5 +1799,9 @@ "basePath": "", "ownerDomain": "google.com", "name": "datastore", - "batchPath": "batch" + "batchPath": "batch", + "id": "datastore:v1", + "documentationLink": "https://cloud.google.com/datastore/", + "revision": "20180501", + "title": "Cloud Datastore API" } diff --git a/DiscoveryJson/datastore_v1beta1.json b/DiscoveryJson/datastore_v1beta1.json index 3f762be7ac..30d8bd2af1 100644 --- a/DiscoveryJson/datastore_v1beta1.json +++ b/DiscoveryJson/datastore_v1beta1.json @@ -1,15 +1,14 @@ { - "revision": "20180501", - "documentationLink": "https://cloud.google.com/datastore/", - "id": "datastore:v1beta1", - "title": "Cloud Datastore API", - "ownerName": "Google", - "discoveryVersion": "v1", - "version_module": true, "resources": { "projects": { "methods": { "export": { + "path": "v1beta1/projects/{projectId}:export", + "id": "datastore.projects.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.", + "request": { + "$ref": "GoogleDatastoreAdminV1beta1ExportEntitiesRequest" + }, "response": { "$ref": "GoogleLongrunningOperation" }, @@ -17,31 +16,25 @@ "projectId" ], "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], "parameters": { "projectId": { + "location": "path", "description": "Project ID against which to make the request.", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, - "flatPath": "v1beta1/projects/{projectId}:export", - "path": "v1beta1/projects/{projectId}:export", - "id": "datastore.projects.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." + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ], + "flatPath": "v1beta1/projects/{projectId}:export" }, "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.", "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" }, @@ -49,6 +42,10 @@ "projectId" ], "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ], "parameters": { "projectId": { "location": "path", @@ -57,10 +54,6 @@ "type": "string" } }, - "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" @@ -69,20 +62,26 @@ } }, "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", - "location": "query" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" + "type": "string" }, "$.xgafv": { "enumDescriptions": [ @@ -97,6 +96,11 @@ "description": "V1 error format.", "type": "string" }, + "callback": { + "location": "query", + "description": "JSONP", + "type": "string" + }, "alt": { "enum": [ "json", @@ -124,9 +128,9 @@ "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" + "type": "string", + "location": "query" }, "pp": { "description": "Pretty-print response.", @@ -134,135 +138,118 @@ "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": { - "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", + "bearer_token": { + "description": "OAuth bearer token.", + "type": "string", "location": "query" } }, "schemas": { - "GoogleDatastoreAdminV1beta1ImportEntitiesMetadata": { - "description": "Metadata for ImportEntities operations.", + "GoogleDatastoreAdminV1ExportEntitiesMetadata": { + "description": "Metadata for ExportEntities operations.", "type": "object", "properties": { + "progressEntities": { + "$ref": "GoogleDatastoreAdminV1Progress", + "description": "An estimate of the number of entities processed." + }, "common": { - "description": "Metadata common to all Datastore Admin operations.", - "$ref": "GoogleDatastoreAdminV1beta1CommonMetadata" + "$ref": "GoogleDatastoreAdminV1CommonMetadata", + "description": "Metadata common to all Datastore Admin operations." }, "progressBytes": { - "$ref": "GoogleDatastoreAdminV1beta1Progress", - "description": "An estimate of the number of bytes processed." - }, - "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" + "description": "An estimate of the number of bytes processed.", + "$ref": "GoogleDatastoreAdminV1Progress" }, "entityFilter": { - "$ref": "GoogleDatastoreAdminV1beta1EntityFilter", - "description": "Description of which entities are being imported." + "description": "Description of which entities are being exported.", + "$ref": "GoogleDatastoreAdminV1EntityFilter" }, - "progressEntities": { - "description": "An estimate of the number of entities processed.", - "$ref": "GoogleDatastoreAdminV1beta1Progress" + "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" } }, - "id": "GoogleDatastoreAdminV1beta1ImportEntitiesMetadata" + "id": "GoogleDatastoreAdminV1ExportEntitiesMetadata" }, - "GoogleDatastoreAdminV1beta1ImportEntitiesRequest": { - "description": "The request for\ngoogle.datastore.admin.v1beta1.DatastoreAdmin.ImportEntities.", + "GoogleDatastoreAdminV1beta1Progress": { + "description": "Measures the progress of a particular metric.", "type": "object", "properties": { - "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.", + "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" }, - "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." - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Client-assigned labels.", - "type": "object" + "workCompleted": { + "description": "The amount of work that has been completed. Note that this may be greater\nthan work_estimated.", + "format": "int64", + "type": "string" } }, - "id": "GoogleDatastoreAdminV1beta1ImportEntitiesRequest" + "id": "GoogleDatastoreAdminV1beta1Progress" }, - "GoogleLongrunningOperation": { - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "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" + } + }, + "id": "GoogleDatastoreAdminV1ExportEntitiesResponse", + "description": "The response for\ngoogle.datastore.admin.v1.DatastoreAdmin.ExportEntities.", + "type": "object" + }, + "GoogleDatastoreAdminV1ImportEntitiesMetadata": { + "description": "Metadata for ImportEntities operations.", "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" + "progressEntities": { + "description": "An estimate of the number of entities processed.", + "$ref": "GoogleDatastoreAdminV1Progress" }, - "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" + "common": { + "$ref": "GoogleDatastoreAdminV1CommonMetadata", + "description": "Metadata common to all Datastore Admin operations." }, - "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" + "progressBytes": { + "$ref": "GoogleDatastoreAdminV1Progress", + "description": "An estimate of the number of bytes processed." }, - "error": { - "description": "The error result of the operation in case of failure or cancellation.", - "$ref": "Status" + "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" }, - "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" - } + "entityFilter": { + "description": "Description of which entities are being imported.", + "$ref": "GoogleDatastoreAdminV1EntityFilter" } }, - "id": "GoogleLongrunningOperation" + "id": "GoogleDatastoreAdminV1ImportEntitiesMetadata" }, - "GoogleDatastoreAdminV1beta1EntityFilter": { + "GoogleDatastoreAdminV1Progress": { + "description": "Measures the progress of a particular metric.", + "type": "object", "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" - } + "workCompleted": { + "description": "The amount of work that has been completed. Note that this may be greater\nthan work_estimated.", + "format": "int64", + "type": "string" }, - "kinds": { - "description": "If empty, then this represents all kinds.", - "type": "array", - "items": { - "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": "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" + "id": "GoogleDatastoreAdminV1Progress" }, - "GoogleDatastoreAdminV1beta1CommonMetadata": { + "GoogleDatastoreAdminV1CommonMetadata": { "description": "Metadata common to all Datastore Admin operations.", "type": "object", "properties": { @@ -279,8 +266,6 @@ "type": "string" }, "operationType": { - "description": "The type of the operation. Can be used as a filter in\nListOperationsRequest.", - "type": "string", "enumDescriptions": [ "Unspecified.", "ExportEntities.", @@ -290,11 +275,11 @@ "OPERATION_TYPE_UNSPECIFIED", "EXPORT_ENTITIES", "IMPORT_ENTITIES" - ] + ], + "description": "The type of the operation. Can be used as a filter in\nListOperationsRequest.", + "type": "string" }, "state": { - "description": "The current state of the Operation.", - "type": "string", "enumDescriptions": [ "Unspecified.", "Request is being prepared for processing.", @@ -314,7 +299,9 @@ "SUCCESSFUL", "FAILED", "CANCELLED" - ] + ], + "description": "The current state of the Operation.", + "type": "string" }, "startTime": { "description": "The time that work began on the operation.", @@ -322,178 +309,208 @@ "type": "string" } }, - "id": "GoogleDatastoreAdminV1beta1CommonMetadata" + "id": "GoogleDatastoreAdminV1CommonMetadata" }, - "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']", - "type": "object", + "Status": { "properties": { - "kinds": { - "description": "If empty, then this represents all kinds.", - "type": "array", - "items": { - "type": "string" - } + "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" }, - "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.", + "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": "string" + "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": "GoogleDatastoreAdminV1EntityFilter" + "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" }, - "GoogleDatastoreAdminV1beta1ExportEntitiesResponse": { - "description": "The response for\ngoogle.datastore.admin.v1beta1.DatastoreAdmin.ExportEntities.", - "type": "object", + "GoogleDatastoreAdminV1beta1ExportEntitiesRequest": { "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.", + "entityFilter": { + "description": "Description of what data from the project is included in the export.", + "$ref": "GoogleDatastoreAdminV1beta1EntityFilter" + }, + "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": { + "additionalProperties": { + "type": "string" + }, + "description": "Client-assigned labels.", + "type": "object" } }, - "id": "GoogleDatastoreAdminV1beta1ExportEntitiesResponse" + "id": "GoogleDatastoreAdminV1beta1ExportEntitiesRequest", + "description": "The request for\ngoogle.datastore.admin.v1beta1.DatastoreAdmin.ExportEntities.", + "type": "object" }, - "GoogleDatastoreAdminV1ExportEntitiesMetadata": { + "GoogleDatastoreAdminV1beta1ExportEntitiesMetadata": { "description": "Metadata for ExportEntities operations.", "type": "object", "properties": { + "progressEntities": { + "description": "An estimate of the number of entities processed.", + "$ref": "GoogleDatastoreAdminV1beta1Progress" + }, "common": { - "description": "Metadata common to all Datastore Admin operations.", - "$ref": "GoogleDatastoreAdminV1CommonMetadata" + "$ref": "GoogleDatastoreAdminV1beta1CommonMetadata", + "description": "Metadata common to all Datastore Admin operations." }, "progressBytes": { - "$ref": "GoogleDatastoreAdminV1Progress", - "description": "An estimate of the number of bytes processed." + "description": "An estimate of the number of bytes processed.", + "$ref": "GoogleDatastoreAdminV1beta1Progress" }, "entityFilter": { - "description": "Description of which entities are being exported.", - "$ref": "GoogleDatastoreAdminV1EntityFilter" + "$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.v1.ExportEntitiesRequest.output_url_prefix\nfield. The final output location is provided in\ngoogle.datastore.admin.v1.ExportEntitiesResponse.output_url.", + "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": "GoogleDatastoreAdminV1Progress", - "description": "An estimate of the number of entities processed." } }, - "id": "GoogleDatastoreAdminV1ExportEntitiesMetadata" + "id": "GoogleDatastoreAdminV1beta1ExportEntitiesMetadata" }, - "GoogleDatastoreAdminV1beta1Progress": { - "description": "Measures the progress of a particular metric.", - "type": "object", + "GoogleDatastoreAdminV1beta1ImportEntitiesRequest": { "properties": { - "workCompleted": { - "description": "The amount of work that has been completed. Note that this may be greater\nthan work_estimated.", - "format": "int64", + "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" }, - "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" - }, - "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" + "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." + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Client-assigned labels.", + "type": "object" } }, - "id": "GoogleDatastoreAdminV1ExportEntitiesResponse", - "description": "The response for\ngoogle.datastore.admin.v1.DatastoreAdmin.ExportEntities.", + "id": "GoogleDatastoreAdminV1beta1ImportEntitiesRequest", + "description": "The request for\ngoogle.datastore.admin.v1beta1.DatastoreAdmin.ImportEntities.", "type": "object" }, - "GoogleDatastoreAdminV1ImportEntitiesMetadata": { - "description": "Metadata for ImportEntities operations.", - "type": "object", + "GoogleDatastoreAdminV1beta1ImportEntitiesMetadata": { "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": "GoogleDatastoreAdminV1Progress", - "description": "An estimate of the number of bytes processed." + "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.v1.ExportEntitiesResponse.output_url field.", + "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": "GoogleDatastoreAdminV1EntityFilter", + "$ref": "GoogleDatastoreAdminV1beta1EntityFilter", "description": "Description of which entities are being imported." - }, - "progressEntities": { - "description": "An estimate of the number of entities processed.", - "$ref": "GoogleDatastoreAdminV1Progress" - }, - "common": { - "description": "Metadata common to all Datastore Admin operations.", - "$ref": "GoogleDatastoreAdminV1CommonMetadata" } }, - "id": "GoogleDatastoreAdminV1ImportEntitiesMetadata" + "id": "GoogleDatastoreAdminV1beta1ImportEntitiesMetadata", + "description": "Metadata for ImportEntities operations.", + "type": "object" }, - "GoogleDatastoreAdminV1Progress": { - "description": "Measures the progress of a particular metric.", + "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": { - "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" + "kinds": { + "description": "If empty, then this represents all kinds.", + "type": "array", + "items": { + "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" + "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": "GoogleDatastoreAdminV1Progress" + "id": "GoogleDatastoreAdminV1beta1EntityFilter" }, - "GoogleDatastoreAdminV1CommonMetadata": { + "GoogleLongrunningOperation": { "properties": { - "labels": { + "response": { "additionalProperties": { - "type": "string" + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" }, - "description": "The client-assigned labels which were provided when the operation was\ncreated. May also include additional labels.", + "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" }, - "endTime": { - "description": "The time the operation ended, either successfully or otherwise.", - "format": "google-datetime", + "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" + }, + "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", + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "type": "object" + }, + "GoogleDatastoreAdminV1beta1CommonMetadata": { + "description": "Metadata common to all Datastore Admin operations.", + "type": "object", + "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", - "enumDescriptions": [ - "Unspecified.", - "ExportEntities.", - "ImportEntities." - ] + "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", @@ -505,98 +522,74 @@ "CANCELLED" ], "description": "The current state of the Operation.", - "type": "string" + "type": "string", + "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." + ] }, "startTime": { "description": "The time that work began on the operation.", "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" + }, + "endTime": { + "description": "The time the operation ended, either successfully or otherwise.", + "format": "google-datetime", + "type": "string" } }, - "id": "GoogleDatastoreAdminV1CommonMetadata", - "description": "Metadata common to all Datastore Admin operations.", - "type": "object" + "id": "GoogleDatastoreAdminV1beta1CommonMetadata" }, - "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.", + "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']", "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.", + "kinds": { + "description": "If empty, then this represents all kinds.", "type": "array", "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } + "type": "string" } - } - }, - "id": "Status" - }, - "GoogleDatastoreAdminV1beta1ExportEntitiesMetadata": { - "description": "Metadata for ExportEntities operations.", - "type": "object", - "properties": { - "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": { - "description": "An estimate of the number of entities processed.", - "$ref": "GoogleDatastoreAdminV1beta1Progress" - }, - "common": { - "description": "Metadata common to all Datastore Admin operations.", - "$ref": "GoogleDatastoreAdminV1beta1CommonMetadata" + "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": "GoogleDatastoreAdminV1beta1ExportEntitiesMetadata" + "id": "GoogleDatastoreAdminV1EntityFilter" }, - "GoogleDatastoreAdminV1beta1ExportEntitiesRequest": { - "description": "The request for\ngoogle.datastore.admin.v1beta1.DatastoreAdmin.ExportEntities.", - "type": "object", + "GoogleDatastoreAdminV1beta1ExportEntitiesResponse": { "properties": { - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Client-assigned labels.", - "type": "object" - }, - "entityFilter": { - "$ref": "GoogleDatastoreAdminV1beta1EntityFilter", - "description": "Description of what data from the project is included in the export." - }, - "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.", + "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": "GoogleDatastoreAdminV1beta1ExportEntitiesRequest" + "id": "GoogleDatastoreAdminV1beta1ExportEntitiesResponse", + "description": "The response for\ngoogle.datastore.admin.v1beta1.DatastoreAdmin.ExportEntities.", + "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" + "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", @@ -604,11 +597,11 @@ "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" + }, + "https://www.googleapis.com/auth/datastore": { + "description": "View and manage your Google Cloud Datastore data" } } } @@ -620,5 +613,12 @@ "basePath": "", "ownerDomain": "google.com", "name": "datastore", - "batchPath": "batch" + "batchPath": "batch", + "id": "datastore:v1beta1", + "documentationLink": "https://cloud.google.com/datastore/", + "revision": "20180501", + "title": "Cloud Datastore API", + "ownerName": "Google", + "discoveryVersion": "v1", + "version_module": true } diff --git a/DiscoveryJson/datastore_v1beta3.json b/DiscoveryJson/datastore_v1beta3.json index 4c5cdc63d7..e8d4e0772b 100644 --- a/DiscoveryJson/datastore_v1beta3.json +++ b/DiscoveryJson/datastore_v1beta3.json @@ -1,69 +1,103 @@ { + "title": "Cloud Datastore API", + "discoveryVersion": "v1", + "ownerName": "Google", "version_module": true, "resources": { "projects": { "methods": { - "rollback": { + "reserveIds": { + "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" + }, "response": { - "$ref": "RollbackResponse" + "$ref": "ReserveIdsResponse" }, "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" + ] + }, + "rollback": { + "response": { + "$ref": "RollbackResponse" + }, + "parameterOrder": [ + "projectId" ], + "httpMethod": "POST", "parameters": { "projectId": { + "location": "path", "description": "The ID of the project against which to make the request.", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, + "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", + "description": "Rolls back a transaction.", "request": { "$ref": "RollbackRequest" - }, - "description": "Rolls back a transaction." + } }, "runQuery": { - "request": { - "$ref": "RunQueryRequest" - }, - "description": "Queries for entities.", - "response": { - "$ref": "RunQueryResponse" - }, + "httpMethod": "POST", "parameterOrder": [ "projectId" ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], + "response": { + "$ref": "RunQueryResponse" + }, "parameters": { "projectId": { + "location": "path", "description": "The ID of the project against which to make the request.", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ], "flatPath": "v1beta3/projects/{projectId}:runQuery", + "id": "datastore.projects.runQuery", "path": "v1beta3/projects/{projectId}:runQuery", - "id": "datastore.projects.runQuery" + "description": "Queries for entities.", + "request": { + "$ref": "RunQueryRequest" + } }, "lookup": { + "flatPath": "v1beta3/projects/{projectId}:lookup", + "path": "v1beta3/projects/{projectId}:lookup", + "id": "datastore.projects.lookup", + "description": "Looks up entities by key.", "request": { "$ref": "LookupRequest" }, - "description": "Looks up entities by key.", "response": { "$ref": "LookupResponse" }, @@ -71,10 +105,6 @@ "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.", @@ -83,17 +113,12 @@ "location": "path" } }, - "flatPath": "v1beta3/projects/{projectId}:lookup", - "path": "v1beta3/projects/{projectId}:lookup", - "id": "datastore.projects.lookup" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] }, "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" - }, "response": { "$ref": "AllocateIdsResponse" }, @@ -113,7 +138,13 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/datastore" ], - "flatPath": "v1beta3/projects/{projectId}:allocateIds" + "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" + } }, "beginTransaction": { "response": { @@ -123,66 +154,38 @@ "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" + "type": "string", + "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], "flatPath": "v1beta3/projects/{projectId}:beginTransaction", "path": "v1beta3/projects/{projectId}:beginTransaction", "id": "datastore.projects.beginTransaction", - "description": "Begins a new transaction.", "request": { "$ref": "BeginTransactionRequest" - } + }, + "description": "Begins a new transaction." }, "commit": { - "id": "datastore.projects.commit", - "path": "v1beta3/projects/{projectId}:commit", "description": "Commits a transaction, optionally creating, deleting or modifying some\nentities.", "request": { "$ref": "CommitRequest" }, - "httpMethod": "POST", - "parameterOrder": [ - "projectId" - ], "response": { "$ref": "CommitResponse" }, - "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}:commit" - }, - "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.", @@ -191,39 +194,55 @@ "location": "path" } }, - "flatPath": "v1beta3/projects/{projectId}:reserveIds", - "path": "v1beta3/projects/{projectId}:reserveIds", - "id": "datastore.projects.reserveIds", - "request": { - "$ref": "ReserveIdsRequest" - }, - "description": "Prevents the supplied keys' IDs from being auto-allocated by Cloud\nDatastore." + "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" } } } }, "parameters": { - "upload_protocol": { + "pp": { + "description": "Pretty-print response.", + "type": "boolean", + "default": "true", + "location": "query" + }, + "oauth_token": { "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "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": { + "location": "query", "description": "Returns response with indentations and line breaks.", "type": "boolean", - "default": "true", - "location": "query" + "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" }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, "$.xgafv": { "enumDescriptions": [ "v1 error format", @@ -238,33 +257,33 @@ "type": "string" }, "callback": { - "location": "query", "description": "JSONP", - "type": "string" + "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" - }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" + "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" }, @@ -272,483 +291,750 @@ "description": "Available 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" } }, "schemas": { - "PropertyFilter": { + "RunQueryRequest": { + "description": "The request for Datastore.RunQuery.", + "type": "object", "properties": { - "property": { - "description": "The property to filter by.", - "$ref": "PropertyReference" + "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.", + "$ref": "PartitionId" }, - "op": { - "enumDescriptions": [ - "Unspecified. This value must not be used.", - "Less than.", - "Less than or equal.", - "Greater than.", - "Greater than or equal.", - "Equal.", - "Has ancestor." - ], - "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" + "gqlQuery": { + "description": "The GQL query to run.", + "$ref": "GqlQuery" }, - "value": { - "$ref": "Value", - "description": "The value to compare the property to." + "readOptions": { + "description": "The options for this query.", + "$ref": "ReadOptions" + }, + "query": { + "description": "The query to run.", + "$ref": "Query" } }, - "id": "PropertyFilter", - "description": "A filter on a specific property.", - "type": "object" + "id": "RunQueryRequest" }, - "CommitResponse": { + "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": { - "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" - } + "readWrite": { + "description": "The transaction should allow both reads and writes.", + "$ref": "ReadWrite" }, - "indexUpdates": { - "description": "The number of index entries updated during the commit, or zero if none were\nupdated.", - "format": "int32", - "type": "integer" + "readOnly": { + "description": "The transaction should only allow reads.", + "$ref": "ReadOnly" } }, - "id": "CommitResponse", - "description": "The response for Datastore.Commit.", - "type": "object" + "id": "TransactionOptions" }, - "PartitionId": { + "GoogleDatastoreAdminV1beta1ImportEntitiesMetadata": { + "description": "Metadata for ImportEntities operations.", + "type": "object", "properties": { - "projectId": { - "description": "The ID of the project to which the entities belong.", - "type": "string" + "common": { + "description": "Metadata common to all Datastore Admin operations.", + "$ref": "GoogleDatastoreAdminV1beta1CommonMetadata" }, - "namespaceId": { - "description": "If not empty, the ID of the namespace to which the entities belong.", + "progressBytes": { + "$ref": "GoogleDatastoreAdminV1beta1Progress", + "description": "An estimate of the number of bytes processed." + }, + "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" - } - }, - "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" - }, - "Entity": { - "properties": { - "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": { - "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" + "entityFilter": { + "$ref": "GoogleDatastoreAdminV1beta1EntityFilter", + "description": "Description of which entities are being imported." + }, + "progressEntities": { + "description": "An estimate of the number of entities processed.", + "$ref": "GoogleDatastoreAdminV1beta1Progress" } }, - "id": "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": "GoogleDatastoreAdminV1beta1ImportEntitiesMetadata" }, - "QueryResultBatch": { - "description": "A batch of results produced by a query.", + "Query": { + "description": "A query for entities.", "type": "object", "properties": { - "skippedCursor": { - "description": "A cursor that points to the position after the last skipped result.\nWill be set when `skipped_results` != 0.", + "projection": { + "description": "The projection to return. Defaults to returning all properties.", + "type": "array", + "items": { + "$ref": "Projection" + } + }, + "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" }, - "skippedResults": { - "description": "The number of results skipped, typically because of an offset.", + "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" }, - "entityResultType": { - "enum": [ - "RESULT_TYPE_UNSPECIFIED", - "FULL", - "PROJECTION", - "KEY_ONLY" - ], - "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." - ] + "filter": { + "$ref": "Filter", + "description": "The filter to apply." }, - "entityResults": { - "description": "The results for this batch.", + "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" + }, + "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" + }, + "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": "EntityResult" + "$ref": "KindExpression" } }, - "moreResults": { - "description": "The state of the query after the current batch.", - "type": "string", - "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" - ] + "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" + } }, - "endCursor": { - "description": "A cursor that points to the position after the last result in the batch.", + "order": { + "description": "The order to apply to the query results (if empty, order is unspecified).", + "type": "array", + "items": { + "$ref": "PropertyOrder" + } + } + }, + "id": "Query" + }, + "ReadOnly": { + "description": "Options specific to read-only transactions.", + "type": "object", + "properties": {}, + "id": "ReadOnly" + }, + "EntityResult": { + "description": "The result of fetching an entity from Datastore.", + "type": "object", + "properties": { + "entity": { + "$ref": "Entity", + "description": "The resulting entity." + }, + "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" }, - "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" } }, - "id": "QueryResultBatch" + "id": "EntityResult" }, - "GoogleDatastoreAdminV1beta1Progress": { - "description": "Measures the progress of a particular metric.", + "Value": { + "description": "A message that can hold any of the supported value types and associated\nmetadata.", "type": "object", "properties": { - "workEstimated": { - "description": "An estimate of how much work needs to be performed. May be zero if the\nwork estimate is unavailable.", - "format": "int64", + "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" }, - "workCompleted": { - "description": "The amount of work that has been completed. Note that this may be greater\nthan work_estimated.", + "booleanValue": { + "description": "A boolean value.", + "type": "boolean" + }, + "nullValue": { + "enumDescriptions": [ + "Null value." + ], + "enum": [ + "NULL_VALUE" + ], + "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": { + "$ref": "LatLng", + "description": "A geo point value representing a point on the surface of Earth." + }, + "keyValue": { + "$ref": "Key", + "description": "A key value." + }, + "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" } }, - "id": "GoogleDatastoreAdminV1beta1Progress" + "id": "Value" }, - "GoogleDatastoreAdminV1Progress": { - "description": "Measures the progress of a particular metric.", + "ReadWrite": { + "description": "Options specific to read / write transactions.", "type": "object", "properties": { - "workCompleted": { - "description": "The amount of work that has been completed. Note that this may be greater\nthan work_estimated.", - "format": "int64", + "previousTransaction": { + "description": "The transaction identifier of the transaction being retried.", + "format": "byte", "type": "string" + } + }, + "id": "ReadWrite" + }, + "LookupRequest": { + "description": "The request for Datastore.Lookup.", + "type": "object", + "properties": { + "readOptions": { + "description": "The options for this lookup request.", + "$ref": "ReadOptions" }, - "workEstimated": { - "description": "An estimate of how much work needs to be performed. May be zero if the\nwork estimate is unavailable.", - "format": "int64", + "keys": { + "description": "Keys of entities to look up.", + "type": "array", + "items": { + "$ref": "Key" + } + } + }, + "id": "LookupRequest" + }, + "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": "GoogleDatastoreAdminV1Progress" + "id": "ReserveIdsRequest" }, - "GoogleDatastoreAdminV1CommonMetadata": { + "PropertyOrder": { + "description": "The desired order for a specific property.", + "type": "object", "properties": { - "operationType": { + "property": { + "$ref": "PropertyReference", + "description": "The property to order by." + }, + "direction": { + "description": "The direction to order by. Defaults to `ASCENDING`.", + "type": "string", "enumDescriptions": [ - "Unspecified.", - "ExportEntities.", - "ImportEntities." + "Unspecified. This value must not be used.", + "Ascending.", + "Descending." ], "enum": [ - "OPERATION_TYPE_UNSPECIFIED", - "EXPORT_ENTITIES", - "IMPORT_ENTITIES" - ], - "description": "The type of the operation. Can be used as a filter in\nListOperationsRequest.", + "DIRECTION_UNSPECIFIED", + "ASCENDING", + "DESCENDING" + ] + } + }, + "id": "PropertyOrder" + }, + "ReserveIdsResponse": { + "description": "The response for Datastore.ReserveIds.", + "type": "object", + "properties": {}, + "id": "ReserveIdsResponse" + }, + "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" + }, + "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", + "items": { + "type": "string" + } }, - "state": { + "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" + }, + "Projection": { + "description": "A representation of a property in a projection.", + "type": "object", + "properties": { + "property": { + "description": "The property to project.", + "$ref": "PropertyReference" + } + }, + "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": { + "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" + } + }, + "id": "Mutation" + }, + "ReadOptions": { + "description": "The options shared by read requests.", + "type": "object", + "properties": { + "readConsistency": { + "description": "The non-transactional read consistency to use.\nCannot be set to `STRONG` for global queries.", + "type": "string", "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." + "Unspecified. This value must not be used.", + "Strong consistency.", + "Eventual consistency." ], "enum": [ - "STATE_UNSPECIFIED", - "INITIALIZING", - "PROCESSING", - "CANCELLING", - "FINALIZING", - "SUCCESSFUL", - "FAILED", - "CANCELLED" - ], - "description": "The current state of the Operation.", - "type": "string" + "READ_CONSISTENCY_UNSPECIFIED", + "STRONG", + "EVENTUAL" + ] }, - "startTime": { - "description": "The time that work began on the operation.", - "format": "google-datetime", + "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" + }, + "GoogleDatastoreAdminV1ExportEntitiesMetadata": { + "description": "Metadata for ExportEntities operations.", + "type": "object", + "properties": { + "progressBytes": { + "description": "An estimate of the number of bytes processed.", + "$ref": "GoogleDatastoreAdminV1Progress" }, - "labels": { - "description": "The client-assigned labels which were provided when the operation was\ncreated. May also include additional labels.", - "type": "object", - "additionalProperties": { - "type": "string" - } + "entityFilter": { + "description": "Description of which entities are being exported.", + "$ref": "GoogleDatastoreAdminV1EntityFilter" }, - "endTime": { - "description": "The time the operation ended, either successfully or otherwise.", - "format": "google-datetime", + "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" + }, + "progressEntities": { + "description": "An estimate of the number of entities processed.", + "$ref": "GoogleDatastoreAdminV1Progress" + }, + "common": { + "$ref": "GoogleDatastoreAdminV1CommonMetadata", + "description": "Metadata common to all Datastore Admin operations." } }, - "id": "GoogleDatastoreAdminV1CommonMetadata", - "description": "Metadata common to all Datastore Admin operations.", - "type": "object" + "id": "GoogleDatastoreAdminV1ExportEntitiesMetadata" }, - "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.", + "GoogleDatastoreAdminV1ExportEntitiesResponse": { + "description": "The response for\ngoogle.datastore.admin.v1.DatastoreAdmin.ExportEntities.", "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", + "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" + } + }, + "id": "GoogleDatastoreAdminV1ExportEntitiesResponse" + }, + "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" }, - "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" + "key": { + "$ref": "Key", + "description": "The automatically allocated key.\nSet only when the mutation allocated a key." }, - "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 `\"\"`.", + "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": "PathElement" + "id": "MutationResult" }, - "GqlQueryParameter": { - "description": "A binding parameter for a GQL query.", + "RollbackRequest": { + "description": "The request for Datastore.Rollback.", "type": "object", "properties": { - "cursor": { - "description": "A query cursor. Query cursors are returned in query\nresult batches.", + "transaction": { + "description": "The transaction identifier, returned by a call to\nDatastore.BeginTransaction.", "format": "byte", "type": "string" - }, - "value": { - "description": "A value parameter.", - "$ref": "Value" } }, - "id": "GqlQueryParameter" + "id": "RollbackRequest" }, - "BeginTransactionResponse": { - "description": "The response for Datastore.BeginTransaction.", + "GoogleDatastoreAdminV1beta1ExportEntitiesMetadata": { + "description": "Metadata for ExportEntities operations.", "type": "object", "properties": { - "transaction": { - "description": "The transaction identifier (always present).", - "format": "byte", + "common": { + "$ref": "GoogleDatastoreAdminV1beta1CommonMetadata", + "description": "Metadata common to all Datastore Admin operations." + }, + "progressBytes": { + "$ref": "GoogleDatastoreAdminV1beta1Progress", + "description": "An estimate of the number of bytes processed." + }, + "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" + }, + "progressEntities": { + "description": "An estimate of the number of entities processed.", + "$ref": "GoogleDatastoreAdminV1beta1Progress" } }, - "id": "BeginTransactionResponse" + "id": "GoogleDatastoreAdminV1beta1ExportEntitiesMetadata" }, - "RunQueryResponse": { - "description": "The response for Datastore.RunQuery.", + "CompositeFilter": { + "description": "A filter that merges multiple other filters using the given operator.", "type": "object", "properties": { - "query": { - "description": "The parsed form of the `GqlQuery` from the request, if it was set.", - "$ref": "Query" + "op": { + "description": "The operator for combining multiple filters.", + "type": "string", + "enumDescriptions": [ + "Unspecified. This value must not be used.", + "The results are required to satisfy each of the combined filters." + ], + "enum": [ + "OPERATOR_UNSPECIFIED", + "AND" + ] }, - "batch": { - "$ref": "QueryResultBatch", - "description": "A batch of query results (always present)." + "filters": { + "description": "The list of filters to combine.\nMust contain at least one filter.", + "type": "array", + "items": { + "$ref": "Filter" + } } }, - "id": "RunQueryResponse" + "id": "CompositeFilter" }, - "LookupResponse": { - "description": "The response for Datastore.Lookup.", + "AllocateIdsResponse": { + "description": "The response for Datastore.AllocateIds.", "type": "object", "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.", + "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" + }, + "PropertyFilter": { + "description": "A filter on a specific property.", + "type": "object", + "properties": { + "property": { + "description": "The property to filter by.", + "$ref": "PropertyReference" }, - "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" - } + "op": { + "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." + ], + "enum": [ + "OPERATOR_UNSPECIFIED", + "LESS_THAN", + "LESS_THAN_OR_EQUAL", + "GREATER_THAN", + "GREATER_THAN_OR_EQUAL", + "EQUAL", + "HAS_ANCESTOR" + ] }, - "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" - } + "value": { + "description": "The value to compare the property to.", + "$ref": "Value" } }, - "id": "LookupResponse" + "id": "PropertyFilter" }, - "AllocateIdsRequest": { - "description": "The request for Datastore.AllocateIds.", + "CommitResponse": { + "description": "The response for Datastore.Commit.", "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.", + "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": "Key" + "$ref": "MutationResult" } + }, + "indexUpdates": { + "description": "The number of index entries updated during the commit, or zero if none were\nupdated.", + "format": "int32", + "type": "integer" } }, - "id": "AllocateIdsRequest" + "id": "CommitResponse" }, - "BeginTransactionRequest": { - "description": "The request for Datastore.BeginTransaction.", + "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", "properties": { - "transactionOptions": { - "$ref": "TransactionOptions", - "description": "Options for a new transaction." + "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" } }, - "id": "BeginTransactionRequest" + "id": "PartitionId" }, - "CommitRequest": { - "description": "The request for Datastore.Commit.", + "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", "properties": { - "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.", + "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" + } + } + }, + "id": "Entity" + }, + "QueryResultBatch": { + "description": "A batch of results produced by a query.", + "type": "object", + "properties": { + "entityResults": { + "description": "The results for this batch.", "type": "array", "items": { - "$ref": "Mutation" + "$ref": "EntityResult" } }, - "transaction": { - "description": "The identifier of the transaction associated with the commit. A\ntransaction identifier is returned by a call to\nDatastore.BeginTransaction.", + "moreResults": { + "description": "The state of the query after the current batch.", + "type": "string", + "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" + ] + }, + "endCursor": { + "description": "A cursor that points to the position after the last result in the batch.", "format": "byte", "type": "string" }, - "mode": { - "enum": [ - "MODE_UNSPECIFIED", - "TRANSACTIONAL", - "NON_TRANSACTIONAL" - ], - "description": "The type of commit to perform. Defaults to `TRANSACTIONAL`.", + "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" + }, + "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 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." + "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": "CommitRequest" - }, - "KindExpression": { - "properties": { - "name": { - "description": "The name of the kind.", - "type": "string" - } - }, - "id": "KindExpression", - "description": "A representation of a kind.", - "type": "object" + "id": "QueryResultBatch" }, - "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.", + "GoogleDatastoreAdminV1beta1Progress": { + "description": "Measures the progress of a particular metric.", "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" - } + "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" }, - "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" + "workCompleted": { + "description": "The amount of work that has been completed. Note that this may be greater\nthan work_estimated.", + "format": "int64", + "type": "string" } }, - "id": "Key" + "id": "GoogleDatastoreAdminV1beta1Progress" }, - "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.", + "GoogleDatastoreAdminV1Progress": { + "description": "Measures the progress of a particular metric.", "type": "object", "properties": { - "latitude": { - "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", - "format": "double", - "type": "number" + "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" }, - "longitude": { - "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", - "format": "double", - "type": "number" + "workCompleted": { + "description": "The amount of work that has been completed. Note that this may be greater\nthan work_estimated.", + "format": "int64", + "type": "string" } }, - "id": "LatLng" + "id": "GoogleDatastoreAdminV1Progress" }, - "GoogleDatastoreAdminV1beta1CommonMetadata": { + "GoogleDatastoreAdminV1CommonMetadata": { "description": "Metadata common to all Datastore Admin operations.", "type": "object", "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" - }, - "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.", @@ -756,6 +1042,8 @@ "type": "string" }, "operationType": { + "description": "The type of the operation. Can be used as a filter in\nListOperationsRequest.", + "type": "string", "enumDescriptions": [ "Unspecified.", "ExportEntities.", @@ -765,9 +1053,7 @@ "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": [ @@ -799,437 +1085,280 @@ "type": "string" } }, - "id": "GoogleDatastoreAdminV1beta1CommonMetadata" - }, - "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", - "items": { - "$ref": "Value" - } - } - }, - "id": "ArrayValue" - }, - "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']", - "type": "object", - "properties": { - "kinds": { - "description": "If empty, then this represents all kinds.", - "type": "array", - "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": "GoogleDatastoreAdminV1EntityFilter" + "id": "GoogleDatastoreAdminV1CommonMetadata" }, - "GoogleDatastoreAdminV1beta1ExportEntitiesResponse": { - "description": "The response for\ngoogle.datastore.admin.v1beta1.DatastoreAdmin.ExportEntities.", + "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": { - "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.", + "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": "GoogleDatastoreAdminV1beta1ExportEntitiesResponse" - }, - "GoogleDatastoreAdminV1ImportEntitiesMetadata": { - "description": "Metadata for ImportEntities operations.", - "type": "object", - "properties": { - "common": { - "$ref": "GoogleDatastoreAdminV1CommonMetadata", - "description": "Metadata common to all Datastore Admin operations." - }, - "progressBytes": { - "description": "An estimate of the number of bytes processed.", - "$ref": "GoogleDatastoreAdminV1Progress" }, - "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.", + "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" }, - "entityFilter": { - "description": "Description of which entities are being imported.", - "$ref": "GoogleDatastoreAdminV1EntityFilter" - }, - "progressEntities": { - "$ref": "GoogleDatastoreAdminV1Progress", - "description": "An estimate of the number of entities processed." - } - }, - "id": "GoogleDatastoreAdminV1ImportEntitiesMetadata" - }, - "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).", + "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" - }, - "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": { - "description": "A holder for any type of filter.", - "type": "object", - "properties": { - "compositeFilter": { - "$ref": "CompositeFilter", - "description": "A composite filter." - }, - "propertyFilter": { - "$ref": "PropertyFilter", - "description": "A filter on a property." - } - }, - "id": "Filter" - }, - "RunQueryRequest": { - "properties": { - "readOptions": { - "$ref": "ReadOptions", - "description": "The options for this query." - }, - "query": { - "description": "The query to run.", - "$ref": "Query" - }, - "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.", - "$ref": "PartitionId" - }, - "gqlQuery": { - "$ref": "GqlQuery", - "description": "The GQL query to run." } }, - "id": "RunQueryRequest", - "description": "The request for Datastore.RunQuery.", - "type": "object" + "id": "PathElement" }, - "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.", + "GqlQueryParameter": { + "description": "A binding parameter for a GQL query.", "type": "object", "properties": { - "readWrite": { - "$ref": "ReadWrite", - "description": "The transaction should allow both reads and writes." + "cursor": { + "description": "A query cursor. Query cursors are returned in query\nresult batches.", + "format": "byte", + "type": "string" }, - "readOnly": { - "$ref": "ReadOnly", - "description": "The transaction should only allow reads." + "value": { + "$ref": "Value", + "description": "A value parameter." } }, - "id": "TransactionOptions" + "id": "GqlQueryParameter" }, - "GoogleDatastoreAdminV1beta1ImportEntitiesMetadata": { - "description": "Metadata for ImportEntities operations.", + "BeginTransactionResponse": { + "description": "The response for Datastore.BeginTransaction.", "type": "object", "properties": { - "progressBytes": { - "$ref": "GoogleDatastoreAdminV1beta1Progress", - "description": "An estimate of the number of bytes processed." - }, - "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.", + "transaction": { + "description": "The transaction identifier (always present).", + "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" - }, - "common": { - "description": "Metadata common to all Datastore Admin operations.", - "$ref": "GoogleDatastoreAdminV1beta1CommonMetadata" } }, - "id": "GoogleDatastoreAdminV1beta1ImportEntitiesMetadata" + "id": "BeginTransactionResponse" }, - "Query": { - "description": "A query for entities.", + "AllocateIdsRequest": { + "description": "The request for Datastore.AllocateIds.", "type": "object", "properties": { - "kind": { - "description": "The kinds to query (if empty, returns entities of all kinds).\nCurrently at most 1 kind may be specified.", + "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": "KindExpression" + "$ref": "Key" } - }, - "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).", + } + }, + "id": "AllocateIdsRequest" + }, + "LookupResponse": { + "description": "The response for Datastore.Lookup.", + "type": "object", + "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.", "type": "array", "items": { - "$ref": "PropertyReference" + "$ref": "Key" } }, - "order": { - "description": "The order to apply to the query results (if empty, order is unspecified).", + "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": "PropertyOrder" + "$ref": "EntityResult" } }, - "projection": { - "description": "The projection to return. Defaults to returning all properties.", + "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": "Projection" + "$ref": "EntityResult" } - }, - "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", - "type": "string" } }, - "id": "Query" + "id": "LookupResponse" }, - "ReadOnly": { - "description": "Options specific to read-only transactions.", + "RunQueryResponse": { + "description": "The response for Datastore.RunQuery.", "type": "object", - "properties": {}, - "id": "ReadOnly" - }, - "EntityResult": { "properties": { - "entity": { - "$ref": "Entity", - "description": "The resulting entity." - }, - "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" + "query": { + "description": "The parsed form of the `GqlQuery` from the request, if it was set.", + "$ref": "Query" }, - "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" + "batch": { + "description": "A batch of query results (always present).", + "$ref": "QueryResultBatch" } }, - "id": "EntityResult", - "description": "The result of fetching an entity from Datastore.", - "type": "object" + "id": "RunQueryResponse" }, - "Value": { - "description": "A message that can hold any of the supported value types and associated\nmetadata.", + "CommitRequest": { + "description": "The request for Datastore.Commit.", "type": "object", "properties": { - "meaning": { - "description": "The `meaning` field should only be populated for backwards compatibility.", - "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": { - "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.", - "$ref": "Entity" - }, - "geoPointValue": { - "description": "A geo point value representing a point on the surface of Earth.", - "$ref": "LatLng" - }, - "keyValue": { - "$ref": "Key", - "description": "A key value." - }, - "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": { - "description": "A null value.", + "mode": { + "description": "The type of commit to perform. Defaults to `TRANSACTIONAL`.", "type": "string", "enumDescriptions": [ - "Null value." + "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": [ - "NULL_VALUE" + "MODE_UNSPECIFIED", + "TRANSACTIONAL", + "NON_TRANSACTIONAL" ] }, - "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.", + "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" + } + }, + "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": "Value" + "id": "CommitRequest" }, - "ReadWrite": { - "description": "Options specific to read / write transactions.", + "BeginTransactionRequest": { + "description": "The request for Datastore.BeginTransaction.", "type": "object", "properties": { - "previousTransaction": { - "description": "The transaction identifier of the transaction being retried.", - "format": "byte", + "transactionOptions": { + "description": "Options for a new transaction.", + "$ref": "TransactionOptions" + } + }, + "id": "BeginTransactionRequest" + }, + "KindExpression": { + "description": "A representation of a kind.", + "type": "object", + "properties": { + "name": { + "description": "The name of the kind.", "type": "string" } }, - "id": "ReadWrite" + "id": "KindExpression" }, - "LookupRequest": { - "description": "The request for Datastore.Lookup.", + "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": { - "readOptions": { - "$ref": "ReadOptions", - "description": "The options for this lookup request." + "latitude": { + "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", + "format": "double", + "type": "number" }, - "keys": { - "description": "Keys of entities to look up.", - "type": "array", - "items": { - "$ref": "Key" - } + "longitude": { + "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", + "format": "double", + "type": "number" } }, - "id": "LookupRequest" + "id": "LatLng" }, - "ReserveIdsRequest": { - "description": "The request for Datastore.ReserveIds.", + "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": { - "keys": { - "description": "A list of keys with complete key paths whose numeric IDs should not be\nauto-allocated.", + "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": "Key" + "$ref": "PathElement" } }, - "databaseId": { - "description": "If not empty, the ID of the database against which to make the request.", - "type": "string" + "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." } }, - "id": "ReserveIdsRequest" + "id": "Key" }, - "PropertyOrder": { - "description": "The desired order for a specific property.", + "GoogleDatastoreAdminV1beta1CommonMetadata": { + "description": "Metadata common to all Datastore Admin operations.", "type": "object", "properties": { - "property": { - "$ref": "PropertyReference", - "description": "The property to order by." + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The client-assigned labels which were provided when the operation was\ncreated. May also include additional labels.", + "type": "object" }, - "direction": { + "endTime": { + "description": "The time the operation ended, either successfully or otherwise.", + "format": "google-datetime", + "type": "string" + }, + "operationType": { "enumDescriptions": [ - "Unspecified. This value must not be used.", - "Ascending.", - "Descending." + "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": [ - "DIRECTION_UNSPECIFIED", - "ASCENDING", - "DESCENDING" + "STATE_UNSPECIFIED", + "INITIALIZING", + "PROCESSING", + "CANCELLING", + "FINALIZING", + "SUCCESSFUL", + "FAILED", + "CANCELLED" ], - "description": "The direction to order by. Defaults to `ASCENDING`.", + "description": "The current state of the Operation.", + "type": "string" + }, + "startTime": { + "description": "The time that work began on the operation.", + "format": "google-datetime", "type": "string" } }, - "id": "PropertyOrder" + "id": "GoogleDatastoreAdminV1beta1CommonMetadata" }, - "ReserveIdsResponse": { - "description": "The response for Datastore.ReserveIds.", + "ArrayValue": { + "description": "An array value.", "type": "object", - "properties": {}, - "id": "ReserveIdsResponse" - }, - "PropertyReference": { "properties": { - "name": { - "description": "The name of the property.\nIf name includes \".\"s, it may be interpreted as a property name path.", - "type": "string" + "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", + "items": { + "$ref": "Value" + } } }, - "id": "PropertyReference", - "description": "A reference to a property relative to the kind expressions.", - "type": "object" + "id": "ArrayValue" }, - "GoogleDatastoreAdminV1beta1EntityFilter": { + "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']", "type": "object", "properties": { @@ -1248,222 +1377,96 @@ } } }, - "id": "GoogleDatastoreAdminV1beta1EntityFilter" - }, - "Projection": { - "description": "A representation of a property in a projection.", - "type": "object", - "properties": { - "property": { - "$ref": "PropertyReference", - "description": "The property to project." - } - }, - "id": "Projection" + "id": "GoogleDatastoreAdminV1EntityFilter" }, - "Mutation": { - "description": "A mutation to apply to an entity.", + "GoogleDatastoreAdminV1beta1ExportEntitiesResponse": { + "description": "The response for\ngoogle.datastore.admin.v1beta1.DatastoreAdmin.ExportEntities.", "type": "object", "properties": { - "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", + "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" - }, - "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." - }, - "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." } }, - "id": "Mutation" + "id": "GoogleDatastoreAdminV1beta1ExportEntitiesResponse" }, - "ReadOptions": { - "description": "The options shared by read requests.", + "GoogleDatastoreAdminV1ImportEntitiesMetadata": { + "description": "Metadata for ImportEntities operations.", "type": "object", "properties": { - "readConsistency": { - "enum": [ - "READ_CONSISTENCY_UNSPECIFIED", - "STRONG", - "EVENTUAL" - ], - "description": "The non-transactional read consistency to use.\nCannot be set to `STRONG` for global queries.", - "type": "string", - "enumDescriptions": [ - "Unspecified. This value must not be used.", - "Strong consistency.", - "Eventual consistency." - ] + "progressBytes": { + "$ref": "GoogleDatastoreAdminV1Progress", + "description": "An estimate of the number of bytes processed." }, - "transaction": { - "description": "The identifier of the transaction in which to read. A\ntransaction identifier is returned by a call to\nDatastore.BeginTransaction.", - "format": "byte", + "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" - } - }, - "id": "ReadOptions" - }, - "RollbackResponse": { - "description": "The response for Datastore.Rollback.\n(an empty message).", - "type": "object", - "properties": {}, - "id": "RollbackResponse" - }, - "GoogleDatastoreAdminV1ExportEntitiesMetadata": { - "description": "Metadata for ExportEntities operations.", - "type": "object", - "properties": { - "common": { - "description": "Metadata common to all Datastore Admin operations.", - "$ref": "GoogleDatastoreAdminV1CommonMetadata" - }, - "progressBytes": { - "description": "An estimate of the number of bytes processed.", - "$ref": "GoogleDatastoreAdminV1Progress" }, "entityFilter": { - "description": "Description of which entities are being exported.", - "$ref": "GoogleDatastoreAdminV1EntityFilter" - }, - "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" + "$ref": "GoogleDatastoreAdminV1EntityFilter", + "description": "Description of which entities are being imported." }, "progressEntities": { "description": "An estimate of the number of entities processed.", "$ref": "GoogleDatastoreAdminV1Progress" + }, + "common": { + "$ref": "GoogleDatastoreAdminV1CommonMetadata", + "description": "Metadata common to all Datastore Admin operations." } }, - "id": "GoogleDatastoreAdminV1ExportEntitiesMetadata" - }, - "GoogleDatastoreAdminV1ExportEntitiesResponse": { - "description": "The response for\ngoogle.datastore.admin.v1.DatastoreAdmin.ExportEntities.", - "type": "object", - "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" - } - }, - "id": "GoogleDatastoreAdminV1ExportEntitiesResponse" + "id": "GoogleDatastoreAdminV1ImportEntitiesMetadata" }, - "MutationResult": { - "description": "The result of applying a mutation.", + "GqlQuery": { + "description": "A [GQL query](https://cloud.google.com/datastore/docs/apis/gql/gql_reference).", "type": "object", "properties": { - "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", + "queryString": { + "description": "A string of the format described\n[here](https://cloud.google.com/datastore/docs/apis/gql/gql_reference).", "type": "string" }, - "conflictDetected": { - "description": "Whether a conflict was detected for this mutation. Always false when a\nconflict detection strategy field is not set in the mutation.", + "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" }, - "key": { - "$ref": "Key", - "description": "The automatically allocated key.\nSet only when the mutation allocated a key." - } - }, - "id": "MutationResult" - }, - "RollbackRequest": { - "properties": { - "transaction": { - "description": "The transaction identifier, returned by a call to\nDatastore.BeginTransaction.", - "format": "byte", - "type": "string" - } - }, - "id": "RollbackRequest", - "description": "The request for Datastore.Rollback.", - "type": "object" - }, - "GoogleDatastoreAdminV1beta1ExportEntitiesMetadata": { - "description": "Metadata for ExportEntities operations.", - "type": "object", - "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" - }, - "CompositeFilter": { - "description": "A filter that merges multiple other filters using the given operator.", - "type": "object", - "properties": { - "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" + "namedBindings": { + "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", + "additionalProperties": { + "$ref": "GqlQueryParameter" + } }, - "filters": { - "description": "The list of filters to combine.\nMust contain at least one filter.", + "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": "Filter" + "$ref": "GqlQueryParameter" } } }, - "id": "CompositeFilter" + "id": "GqlQuery" }, - "AllocateIdsResponse": { - "description": "The response for Datastore.AllocateIds.", + "Filter": { + "description": "A holder for any type of filter.", "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" - } + "propertyFilter": { + "$ref": "PropertyFilter", + "description": "A filter on a property." + }, + "compositeFilter": { + "description": "A composite filter.", + "$ref": "CompositeFilter" } }, - "id": "AllocateIdsResponse" + "id": "Filter" } }, - "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" + "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": "v1beta3", "baseUrl": "https://datastore.googleapis.com/", "auth": { @@ -1478,9 +1481,9 @@ } } }, - "kind": "discovery#restDescription", - "description": "Accesses the schemaless NoSQL database to provide fully managed, robust, scalable storage for your application.\n", "servicePath": "", + "description": "Accesses the schemaless NoSQL database to provide fully managed, robust, scalable storage for your application.\n", + "kind": "discovery#restDescription", "rootUrl": "https://datastore.googleapis.com/", "basePath": "", "ownerDomain": "google.com", @@ -1488,8 +1491,5 @@ "batchPath": "batch", "revision": "20180501", "documentationLink": "https://cloud.google.com/datastore/", - "id": "datastore:v1beta3", - "title": "Cloud Datastore API", - "discoveryVersion": "v1", - "ownerName": "Google" + "id": "datastore:v1beta3" } diff --git a/DiscoveryJson/dialogflow_v2.json b/DiscoveryJson/dialogflow_v2.json index a1c8c1e5e3..15f859a6b3 100644 --- a/DiscoveryJson/dialogflow_v2.json +++ b/DiscoveryJson/dialogflow_v2.json @@ -1,1470 +1,482 @@ { - "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": "GoogleCloudDialogflowV2Agent" - }, - "parameterOrder": [ - "parent" + "basePath": "", + "revision": "20180504", + "documentationLink": "https://cloud.google.com/dialogflow-enterprise/", + "id": "dialogflow:v2", + "discoveryVersion": "v1", + "version_module": true, + "schemas": { + "GoogleCloudDialogflowV2InputAudioConfig": { + "properties": { + "audioEncoding": { + "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." ], - "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/[^/]+$" - } + "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" + ], + "description": "Required. Audio encoding of the audio content to process.", + "type": "string" + }, + "sampleRateHertz": { + "description": "Required. Sample rate (in Hertz) of the audio content sent in the query.\nRefer to\n[Cloud Speech API\ndocumentation](https://cloud.google.com/speech-to-text/docs/basics) for\nmore details.", + "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\n[Cloud Speech API\ndocumentation](https://cloud.google.com/speech-to-text/docs/basics#phrase-hints)\nfor more details.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "id": "GoogleCloudDialogflowV2InputAudioConfig", + "description": "Instructs the speech recognizer how to process the audio content.", + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageListSelectItem": { + "properties": { + "description": { + "description": "Optional. The main text describing the item.", + "type": "string" + }, + "info": { + "description": "Required. Additional information about this option.", + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo" + }, + "title": { + "description": "Required. The title of the list item.", + "type": "string" + }, + "image": { + "description": "Optional. The image to display.", + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageImage" + } + }, + "id": "GoogleCloudDialogflowV2beta1IntentMessageListSelectItem", + "description": "An item in the list.", + "type": "object" + }, + "GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata": { + "properties": { + "state": { + "enum": [ + "STATE_UNSPECIFIED", + "PENDING", + "RUNNING", + "DONE" + ], + "description": "Required. The current state of this operation.", + "type": "string", + "enumDescriptions": [ + "State unspecified.", + "The operation has been created.", + "The operation is currently running.", + "The operation is done, either cancelled or completed." + ] + } + }, + "id": "GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata", + "description": "Metadata in google::longrunning::Operation for Knowledge operations.", + "type": "object" + }, + "GoogleCloudDialogflowV2BatchUpdateIntentsRequest": { + "description": "The request message for Intents.BatchUpdateIntents.", + "type": "object", + "properties": { + "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": { + "enum": [ + "INTENT_VIEW_UNSPECIFIED", + "INTENT_VIEW_FULL" + ], + "description": "Optional. The resource view to apply to the returned intent.", + "type": "string", + "enumDescriptions": [ + "Training phrases field is not populated in the response.", + "All fields are populated." + ] + }, + "intentBatchInline": { + "description": "The collection of intents to update or create.", + "$ref": "GoogleCloudDialogflowV2IntentBatch" + }, + "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": "GoogleCloudDialogflowV2BatchUpdateIntentsRequest" + }, + "GoogleCloudDialogflowV2IntentTrainingPhrasePart": { + "properties": { + "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" + }, + "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" + } + }, + "id": "GoogleCloudDialogflowV2IntentTrainingPhrasePart", + "description": "Represents a part of a training phrase.", + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessage": { + "description": "Corresponds to the `Response` field in the Dialogflow console.", + "type": "object", + "properties": { + "carouselSelect": { + "description": "Displays a carousel card for Actions on Google.", + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect" + }, + "linkOutSuggestion": { + "description": "Displays a link out suggestion chip for Actions on Google.", + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion" + }, + "simpleResponses": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses", + "description": "Returns a voice or text-only response for Actions on Google." + }, + "image": { + "description": "Displays an image.", + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageImage" + }, + "payload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "description": "Returns a response containing a custom, platform-specific payload.\nSee the Intent.Message.Platform type for a description of the\nstructure that may be required for your platform.", + "type": "object" + }, + "text": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageText", + "description": "Returns a text response." + }, + "platform": { + "enum": [ + "PLATFORM_UNSPECIFIED", + "FACEBOOK", + "SLACK", + "TELEGRAM", + "KIK", + "SKYPE", + "LINE", + "VIBER", + "ACTIONS_ON_GOOGLE" ], - "flatPath": "v2/projects/{projectsId}/agent", - "path": "v2/{+parent}/agent", - "id": "dialogflow.projects.getAgent" + "description": "Optional. The platform that this message is intended for.", + "type": "string", + "enumDescriptions": [ + "Not specified.", + "Facebook.", + "Slack.", + "Telegram.", + "Kik.", + "Skype.", + "Line.", + "Viber.", + "Actions on Google.\nWhen using Actions on Google, you can choose one of the specific\nIntent.Message types that mention support for Actions on Google,\nor you can use the advanced Intent.Message.payload field.\nThe payload field provides access to AoG features not available in the\nspecific message types.\nIf using the Intent.Message.payload field, it should have a structure\nsimilar to the JSON message shown here. For more information, see\n[Actions on Google Webhook\nFormat](https://developers.google.com/actions/dialogflow/webhook)\n\u003cpre\u003e{\n \"expectUserResponse\": true,\n \"isSsml\": false,\n \"noInputPrompts\": [],\n \"richResponse\": {\n \"items\": [\n {\n \"simpleResponse\": {\n \"displayText\": \"hi\",\n \"textToSpeech\": \"hello\"\n }\n }\n ],\n \"suggestions\": [\n {\n \"title\": \"Say this\"\n },\n {\n \"title\": \"or this\"\n }\n ]\n },\n \"systemIntent\": {\n \"data\": {\n \"@type\": \"type.googleapis.com/google.actions.v2.OptionValueSpec\",\n \"listSelect\": {\n \"items\": [\n {\n \"optionInfo\": {\n \"key\": \"key1\",\n \"synonyms\": [\n \"key one\"\n ]\n },\n \"title\": \"must not be empty, but unique\"\n },\n {\n \"optionInfo\": {\n \"key\": \"key2\",\n \"synonyms\": [\n \"key two\"\n ]\n },\n \"title\": \"must not be empty, but unique\"\n }\n ]\n }\n },\n \"intent\": \"actions.intent.OPTION\"\n }\n}\u003c/pre\u003e" + ] + }, + "suggestions": { + "description": "Displays suggestion chips for Actions on Google.", + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSuggestions" + }, + "listSelect": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageListSelect", + "description": "Displays a list card for Actions on Google." + }, + "quickReplies": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageQuickReplies", + "description": "Displays quick replies." + }, + "card": { + "description": "Displays a card.", + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageCard" + }, + "basicCard": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageBasicCard", + "description": "Displays a basic card for Actions on Google." } }, - "resources": { - "agent": { - "methods": { - "export": { - "request": { - "$ref": "GoogleCloudDialogflowV2ExportAgentRequest" - }, - "description": "Exports the specified agent to a ZIP file.\n\nOperation \u003cresponse: ExportAgentResponse,\n metadata: google.protobuf.Struct\u003e", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "location": "path", - "description": "Required. The project that the agent to export is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - } - }, - "flatPath": "v2/projects/{projectsId}/agent:export", - "path": "v2/{+parent}/agent:export", - "id": "dialogflow.projects.agent.export" + "id": "GoogleCloudDialogflowV2beta1IntentMessage" + }, + "GoogleCloudDialogflowV2Intent": { + "properties": { + "parameters": { + "description": "Optional. The collection of parameters associated with the intent.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentParameter" + } + }, + "resetContexts": { + "description": "Optional. Indicates whether to delete all contexts in the current\nsession when this intent is matched.", + "type": "boolean" + }, + "trainingPhrases": { + "description": "Optional. The collection of examples/templates that the agent is\ntrained on.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentTrainingPhrase" + } + }, + "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" + } + }, + "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" + }, + "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": "GoogleCloudDialogflowV2Context" + } + }, + "defaultResponsePlatforms": { + "enumDescriptions": [ + "Not specified.", + "Facebook.", + "Slack.", + "Telegram.", + "Kik.", + "Skype.", + "Line.", + "Viber.", + "Actions on Google.\nWhen using Actions on Google, you can choose one of the specific\nIntent.Message types that mention support for Actions on Google,\nor you can use the advanced Intent.Message.payload field.\nThe payload field provides access to AoG features not available in the\nspecific message types.\nIf using the Intent.Message.payload field, it should have a structure\nsimilar to the JSON message shown here. For more information, see\n[Actions on Google Webhook\nFormat](https://developers.google.com/actions/dialogflow/webhook)\n\u003cpre\u003e{\n \"expectUserResponse\": true,\n \"isSsml\": false,\n \"noInputPrompts\": [],\n \"richResponse\": {\n \"items\": [\n {\n \"simpleResponse\": {\n \"displayText\": \"hi\",\n \"textToSpeech\": \"hello\"\n }\n }\n ],\n \"suggestions\": [\n {\n \"title\": \"Say this\"\n },\n {\n \"title\": \"or this\"\n }\n ]\n },\n \"systemIntent\": {\n \"data\": {\n \"@type\": \"type.googleapis.com/google.actions.v2.OptionValueSpec\",\n \"listSelect\": {\n \"items\": [\n {\n \"optionInfo\": {\n \"key\": \"key1\",\n \"synonyms\": [\n \"key one\"\n ]\n },\n \"title\": \"must not be empty, but unique\"\n },\n {\n \"optionInfo\": {\n \"key\": \"key2\",\n \"synonyms\": [\n \"key two\"\n ]\n },\n \"title\": \"must not be empty, but unique\"\n }\n ]\n }\n },\n \"intent\": \"actions.intent.OPTION\"\n }\n}\u003c/pre\u003e" + ], + "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", + "FACEBOOK", + "SLACK", + "TELEGRAM", + "KIK", + "SKYPE", + "LINE", + "VIBER", + "ACTIONS_ON_GOOGLE" + ], + "type": "string" + } + }, + "action": { + "description": "Optional. The name of the action associated with the intent.", + "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`.", + "type": "string" + }, + "messages": { + "description": "Optional. The collection of rich messages corresponding to the\n`Response` field in the Dialogflow console.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentMessage" + } + }, + "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", + "items": { + "type": "string" + } + }, + "webhookState": { + "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", + "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." + ] + }, + "followupIntentInfo": { + "description": "Optional. Collection of information about all followup intents that have\nname of this intent as a root_name.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentFollowupIntentInfo" + } + }, + "displayName": { + "description": "Required. The name of this intent.", + "type": "string" + }, + "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" + }, + "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" + }, + "isFallback": { + "description": "Optional. Indicates whether this is a fallback intent.", + "type": "boolean" + } + }, + "id": "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.", + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion": { + "description": "The suggestion chip message that allows the user to jump out to the app\nor website associated with this agent.", + "type": "object", + "properties": { + "uri": { + "description": "Required. The URI of the app or site to open when the user taps the\nsuggestion chip.", + "type": "string" + }, + "destinationName": { + "description": "Required. The name of the app or site this chip is linking to.", + "type": "string" + } + }, + "id": "GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion" + }, + "GoogleCloudDialogflowV2beta1IntentParameter": { + "description": "Represents intent parameters.", + "type": "object", + "properties": { + "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" + } + }, + "mandatory": { + "description": "Optional. Indicates whether the parameter is required. That is,\nwhether the intent cannot be completed without collecting the parameter\nvalue.", + "type": "boolean" + }, + "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" + }, + "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" + }, + "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" + } + }, + "id": "GoogleCloudDialogflowV2beta1IntentParameter" + }, + "GoogleCloudDialogflowV2beta1IntentMessageBasicCard": { + "description": "The basic card message. Useful for displaying information.", + "type": "object", + "properties": { + "title": { + "description": "Optional. The title of the card.", + "type": "string" + }, + "image": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageImage", + "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": "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton" + } + }, + "subtitle": { + "description": "Optional. The subtitle of the card.", + "type": "string" + } + }, + "id": "GoogleCloudDialogflowV2beta1IntentMessageBasicCard" + }, + "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": { + "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" }, - "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", - "request": { - "$ref": "GoogleCloudDialogflowV2RestoreAgentRequest" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "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": "v2/projects/{projectsId}/agent:restore", - "path": "v2/{+parent}/agent:restore", - "id": "dialogflow.projects.agent.restore" - }, - "import": { - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "description": "Required. The project that the agent to import is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2/projects/{projectsId}/agent:import", - "path": "v2/{+parent}/agent:import", - "id": "dialogflow.projects.agent.import", - "request": { - "$ref": "GoogleCloudDialogflowV2ImportAgentRequest" - }, - "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" - }, - "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).", - "response": { - "$ref": "GoogleCloudDialogflowV2SearchAgentsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "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" - }, - "parent": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "Required. The project to list agents from.\nFormat: `projects/\u003cProject ID or '-'\u003e`." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/agent:search", - "path": "v2/{+parent}/agent:search", - "id": "dialogflow.projects.agent.search" - }, - "train": { - "description": "Trains the specified agent.\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", - "request": { - "$ref": "GoogleCloudDialogflowV2TrainAgentRequest" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "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": "v2/projects/{projectsId}/agent:train", - "path": "v2/{+parent}/agent:train", - "id": "dialogflow.projects.agent.train" - } - }, - "resources": { - "sessions": { - "resources": { - "entityTypes": { - "methods": { - "delete": { - "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/sessions/[^/]+/entityTypes/[^/]+$", - "location": "path", - "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`." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes/{entityTypesId}", - "id": "dialogflow.projects.agent.sessions.entityTypes.delete", - "path": "v2/{+name}", - "description": "Deletes the specified session entity type." - }, - "list": { - "description": "Returns the list of all session entity types in the specified session.", - "httpMethod": "GET", - "response": { - "$ref": "GoogleCloudDialogflowV2ListSessionEntityTypesResponse" - }, - "parameterOrder": [ - "parent" - ], - "parameters": { - "parent": { - "description": "Required. The session to list all session entity types from.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", - "location": "path" - }, - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes", - "id": "dialogflow.projects.agent.sessions.entityTypes.list", - "path": "v2/{+parent}/entityTypes" - }, - "get": { - "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes/{entityTypesId}", - "id": "dialogflow.projects.agent.sessions.entityTypes.get", - "path": "v2/{+name}", - "description": "Retrieves the specified session entity type.", - "httpMethod": "GET", - "response": { - "$ref": "GoogleCloudDialogflowV2SessionEntityType" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/agent/sessions/[^/]+/entityTypes/[^/]+$", - "location": "path", - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "patch": { - "httpMethod": "PATCH", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "GoogleCloudDialogflowV2SessionEntityType" - }, - "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": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes/{entityTypesId}", - "id": "dialogflow.projects.agent.sessions.entityTypes.patch", - "path": "v2/{+name}", - "description": "Updates the specified session entity type.", - "request": { - "$ref": "GoogleCloudDialogflowV2SessionEntityType" - } - }, - "create": { - "description": "Creates a session entity type.", - "request": { - "$ref": "GoogleCloudDialogflowV2SessionEntityType" - }, - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GoogleCloudDialogflowV2SessionEntityType" - }, - "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": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes", - "id": "dialogflow.projects.agent.sessions.entityTypes.create", - "path": "v2/{+parent}/entityTypes" - } - } - }, - "contexts": { - "methods": { - "delete": { - "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "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`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/sessions/[^/]+/contexts/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/contexts/{contextsId}", - "id": "dialogflow.projects.agent.sessions.contexts.delete", - "path": "v2/{+name}", - "description": "Deletes the specified context." - }, - "list": { - "id": "dialogflow.projects.agent.sessions.contexts.list", - "path": "v2/{+parent}/contexts", - "description": "Returns the list of all contexts in the specified session.", - "httpMethod": "GET", - "response": { - "$ref": "GoogleCloudDialogflowV2ListContextsResponse" - }, - "parameterOrder": [ - "parent" - ], - "parameters": { - "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" - }, - "parent": { - "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/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/contexts" - }, - "get": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "location": "path", - "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/[^/]+$" - } - }, - "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/contexts/{contextsId}", - "path": "v2/{+name}", - "id": "dialogflow.projects.agent.sessions.contexts.get", - "description": "Retrieves the specified context.", - "response": { - "$ref": "GoogleCloudDialogflowV2Context" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET" - }, - "patch": { - "response": { - "$ref": "GoogleCloudDialogflowV2Context" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/agent/sessions/[^/]+/contexts/[^/]+$", - "location": "path", - "description": "Required. The unique identifier of the context. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`.", - "required": true, - "type": "string" - }, - "updateMask": { - "type": "string", - "location": "query", - "description": "Optional. The mask to control which fields get updated.", - "format": "google-fieldmask" - } - }, - "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/contexts/{contextsId}", - "path": "v2/{+name}", - "id": "dialogflow.projects.agent.sessions.contexts.patch", - "request": { - "$ref": "GoogleCloudDialogflowV2Context" - }, - "description": "Updates the specified context." - }, - "create": { - "description": "Creates a context.", - "request": { - "$ref": "GoogleCloudDialogflowV2Context" - }, - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GoogleCloudDialogflowV2Context" - }, - "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": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/contexts", - "id": "dialogflow.projects.agent.sessions.contexts.create", - "path": "v2/{+parent}/contexts" - } - } - } - }, - "methods": { - "deleteContexts": { - "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/contexts", - "path": "v2/{+parent}/contexts", - "id": "dialogflow.projects.agent.sessions.deleteContexts", - "description": "Deletes all active contexts in the specified session.", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "DELETE", - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "detectIntent": { - "httpMethod": "POST", - "parameterOrder": [ - "session" - ], - "response": { - "$ref": "GoogleCloudDialogflowV2DetectIntentResponse" - }, - "parameters": { - "session": { - "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`. 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.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/sessions/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}:detectIntent", - "id": "dialogflow.projects.agent.sessions.detectIntent", - "path": "v2/{+session}: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.", - "request": { - "$ref": "GoogleCloudDialogflowV2DetectIntentRequest" - } - } - } - }, - "entityTypes": { - "methods": { - "list": { - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GoogleCloudDialogflowV2ListEntityTypesResponse" - }, - "parameters": { - "languageCode": { - "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.", - "type": "string" - }, - "pageToken": { - "description": "Optional. The next_page_token value returned from a previous list request.", - "type": "string", - "location": "query" - }, - "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" - }, - "parent": { - "pattern": "^projects/[^/]+/agent$", - "location": "path", - "description": "Required. The agent to list all entity types from.\nFormat: `projects/\u003cProject ID\u003e/agent`.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/agent/entityTypes", - "id": "dialogflow.projects.agent.entityTypes.list", - "path": "v2/{+parent}/entityTypes", - "description": "Returns the list of all entity types in the specified agent." - }, - "batchDelete": { - "description": "Deletes entity types in the specified agent.\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", - "request": { - "$ref": "GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/agent/entityTypes:batchDelete", - "id": "dialogflow.projects.agent.entityTypes.batchDelete", - "path": "v2/{+parent}/entityTypes:batchDelete" - }, - "create": { - "description": "Creates an entity type in the specified agent.", - "request": { - "$ref": "GoogleCloudDialogflowV2EntityType" - }, - "response": { - "$ref": "GoogleCloudDialogflowV2EntityType" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "description": "Required. The agent to create a entity type for.\nFormat: `projects/\u003cProject ID\u003e/agent`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent$", - "location": "path" - }, - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/agent/entityTypes", - "path": "v2/{+parent}/entityTypes", - "id": "dialogflow.projects.agent.entityTypes.create" - }, - "patch": { - "response": { - "$ref": "GoogleCloudDialogflowV2EntityType" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "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" - }, - "updateMask": { - "location": "query", - "description": "Optional. The mask to control which fields get updated.", - "format": "google-fieldmask", - "type": "string" - }, - "name": { - "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", - "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" - } - }, - "flatPath": "v2/projects/{projectsId}/agent/entityTypes/{entityTypesId}", - "path": "v2/{+name}", - "id": "dialogflow.projects.agent.entityTypes.patch", - "request": { - "$ref": "GoogleCloudDialogflowV2EntityType" - }, - "description": "Updates the specified entity type." - }, - "get": { - "response": { - "$ref": "GoogleCloudDialogflowV2EntityType" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "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": { - "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.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/agent/entityTypes/{entityTypesId}", - "path": "v2/{+name}", - "id": "dialogflow.projects.agent.entityTypes.get", - "description": "Retrieves the specified entity type." - }, - "batchUpdate": { - "parameters": { - "parent": { - "pattern": "^projects/[^/]+/agent$", - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/agent/entityTypes:batchUpdate", - "id": "dialogflow.projects.agent.entityTypes.batchUpdate", - "path": "v2/{+parent}/entityTypes:batchUpdate", - "description": "Updates/Creates multiple entity types in the specified agent.\n\nOperation \u003cresponse: BatchUpdateEntityTypesResponse,\n metadata: google.protobuf.Struct\u003e", - "request": { - "$ref": "GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GoogleLongrunningOperation" - } - }, - "delete": { - "parameters": { - "name": { - "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", - "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/agent/entityTypes/{entityTypesId}", - "path": "v2/{+name}", - "id": "dialogflow.projects.agent.entityTypes.delete", - "description": "Deletes the specified entity type.", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE" - } - }, - "resources": { - "entities": { - "methods": { - "batchUpdate": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2/projects/{projectsId}/agent/entityTypes/{entityTypesId}/entities:batchUpdate", - "path": "v2/{+parent}/entities:batchUpdate", - "id": "dialogflow.projects.agent.entityTypes.entities.batchUpdate", - "request": { - "$ref": "GoogleCloudDialogflowV2BatchUpdateEntitiesRequest" - }, - "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", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST" - }, - "batchDelete": { - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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" - } - }, - "flatPath": "v2/projects/{projectsId}/agent/entityTypes/{entityTypesId}/entities:batchDelete", - "id": "dialogflow.projects.agent.entityTypes.entities.batchDelete", - "path": "v2/{+parent}/entities:batchDelete", - "request": { - "$ref": "GoogleCloudDialogflowV2BatchDeleteEntitiesRequest" - }, - "description": "Deletes entities in the specified entity type.\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e" - }, - "batchCreate": { - "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`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/agent/entityTypes/{entityTypesId}/entities:batchCreate", - "id": "dialogflow.projects.agent.entityTypes.entities.batchCreate", - "path": "v2/{+parent}/entities: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": "GoogleCloudDialogflowV2BatchCreateEntitiesRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GoogleLongrunningOperation" - } - } - } - } - } - }, - "intents": { - "methods": { - "batchDelete": { - "id": "dialogflow.projects.agent.intents.batchDelete", - "path": "v2/{+parent}/intents:batchDelete", - "request": { - "$ref": "GoogleCloudDialogflowV2BatchDeleteIntentsRequest" - }, - "description": "Deletes intents in the specified agent.\n\nOperation \u003cresponse: google.protobuf.Empty\u003e", - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "required": true, - "type": "string", - "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`." - } - }, - "flatPath": "v2/projects/{projectsId}/agent/intents:batchDelete" - }, - "create": { - "request": { - "$ref": "GoogleCloudDialogflowV2Intent" - }, - "description": "Creates an intent in the specified agent.", - "response": { - "$ref": "GoogleCloudDialogflowV2Intent" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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": { - "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.", - "type": "string" - } - }, - "flatPath": "v2/projects/{projectsId}/agent/intents", - "path": "v2/{+parent}/intents", - "id": "dialogflow.projects.agent.intents.create" - }, - "patch": { - "response": { - "$ref": "GoogleCloudDialogflowV2Intent" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "parameters": { - "languageCode": { - "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.", - "type": "string" - }, - "updateMask": { - "description": "Optional. The mask to control which fields get updated.", - "format": "google-fieldmask", - "type": "string", - "location": "query" - }, - "name": { - "pattern": "^projects/[^/]+/agent/intents/[^/]+$", - "location": "path", - "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" - }, - "intentView": { - "enum": [ - "INTENT_VIEW_UNSPECIFIED", - "INTENT_VIEW_FULL" - ], - "description": "Optional. The resource view to apply to the returned intent.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/agent/intents/{intentsId}", - "path": "v2/{+name}", - "id": "dialogflow.projects.agent.intents.patch", - "description": "Updates the specified intent.", - "request": { - "$ref": "GoogleCloudDialogflowV2Intent" - } - }, - "get": { - "response": { - "$ref": "GoogleCloudDialogflowV2Intent" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "location": "path", - "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/[^/]+$" - }, - "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" - } - }, - "flatPath": "v2/projects/{projectsId}/agent/intents/{intentsId}", - "path": "v2/{+name}", - "id": "dialogflow.projects.agent.intents.get", - "description": "Retrieves the specified intent." - }, - "batchUpdate": { - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "pattern": "^projects/[^/]+/agent$", - "location": "path", - "description": "Required. The name of the agent to update or create intents in.\nFormat: `projects/\u003cProject ID\u003e/agent`.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/agent/intents:batchUpdate", - "path": "v2/{+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": "GoogleCloudDialogflowV2BatchUpdateIntentsRequest" - } - }, - "delete": { - "httpMethod": "DELETE", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/agent/intents/[^/]+$", - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/agent/intents/{intentsId}", - "id": "dialogflow.projects.agent.intents.delete", - "path": "v2/{+name}", - "description": "Deletes the specified intent." - }, - "list": { - "flatPath": "v2/projects/{projectsId}/agent/intents", - "path": "v2/{+parent}/intents", - "id": "dialogflow.projects.agent.intents.list", - "description": "Returns the list of all intents in the specified agent.", - "response": { - "$ref": "GoogleCloudDialogflowV2ListIntentsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "intentView": { - "enum": [ - "INTENT_VIEW_UNSPECIFIED", - "INTENT_VIEW_FULL" - ], - "description": "Optional. The resource view to apply to the returned intent.", - "type": "string", - "location": "query" - }, - "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" - }, - "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": { - "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" - } - } - } - } - } - } - }, - "operations": { - "methods": { - "get": { - "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": "v2/projects/{projectsId}/operations/{operationsId}", - "id": "dialogflow.projects.operations.get", - "path": "v2/{+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": "GoogleLongrunningOperation" - } - } - } - } - } - } - }, - "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": { - "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": { - "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": { - "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" - ] - } - }, - "version": "v2", - "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": "20180504", - "id": "dialogflow:v2", - "documentationLink": "https://cloud.google.com/dialogflow-enterprise/", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "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.", - "type": "object", - "properties": { - "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" - } - }, - "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" - }, - "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": "GoogleCloudDialogflowV2Context" - } - }, - "defaultResponsePlatforms": { - "enumDescriptions": [ - "Not specified.", - "Facebook.", - "Slack.", - "Telegram.", - "Kik.", - "Skype.", - "Line.", - "Viber.", - "Actions on Google.\nWhen using Actions on Google, you can choose one of the specific\nIntent.Message types that mention support for Actions on Google,\nor you can use the advanced Intent.Message.payload field.\nThe payload field provides access to AoG features not available in the\nspecific message types.\nIf using the Intent.Message.payload field, it should have a structure\nsimilar to the JSON message shown here. For more information, see\n[Actions on Google Webhook\nFormat](https://developers.google.com/actions/dialogflow/webhook)\n\u003cpre\u003e{\n \"expectUserResponse\": true,\n \"isSsml\": false,\n \"noInputPrompts\": [],\n \"richResponse\": {\n \"items\": [\n {\n \"simpleResponse\": {\n \"displayText\": \"hi\",\n \"textToSpeech\": \"hello\"\n }\n }\n ],\n \"suggestions\": [\n {\n \"title\": \"Say this\"\n },\n {\n \"title\": \"or this\"\n }\n ]\n },\n \"systemIntent\": {\n \"data\": {\n \"@type\": \"type.googleapis.com/google.actions.v2.OptionValueSpec\",\n \"listSelect\": {\n \"items\": [\n {\n \"optionInfo\": {\n \"key\": \"key1\",\n \"synonyms\": [\n \"key one\"\n ]\n },\n \"title\": \"must not be empty, but unique\"\n },\n {\n \"optionInfo\": {\n \"key\": \"key2\",\n \"synonyms\": [\n \"key two\"\n ]\n },\n \"title\": \"must not be empty, but unique\"\n }\n ]\n }\n },\n \"intent\": \"actions.intent.OPTION\"\n }\n}\u003c/pre\u003e" - ], - "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", - "FACEBOOK", - "SLACK", - "TELEGRAM", - "KIK", - "SKYPE", - "LINE", - "VIBER", - "ACTIONS_ON_GOOGLE" - ], - "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`.", - "type": "string" - }, - "messages": { - "description": "Optional. The collection of rich messages corresponding to the\n`Response` field in the Dialogflow console.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2IntentMessage" - } - }, - "action": { - "description": "Optional. The name of the action associated with the intent.", - "type": "string" - }, - "webhookState": { - "type": "string", - "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." - }, - "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", - "items": { - "type": "string" - } - }, - "followupIntentInfo": { - "description": "Optional. Collection of information about all followup intents that have\nname of this intent as a root_name.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2IntentFollowupIntentInfo" - } - }, - "rootFollowupIntentName": { - "type": "string", - "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`." - }, - "displayName": { - "description": "Required. The name of this intent.", - "type": "string" - }, - "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" - }, - "isFallback": { - "description": "Optional. Indicates whether this is a fallback intent.", - "type": "boolean" - }, - "trainingPhrases": { - "description": "Optional. The collection of examples/templates that the agent is\ntrained on.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2IntentTrainingPhrase" - } - }, - "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", - "items": { - "$ref": "GoogleCloudDialogflowV2IntentParameter" - } - } - }, - "id": "GoogleCloudDialogflowV2Intent" - }, - "GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion": { - "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": { - "type": "string", - "description": "Required. The URI of the app or site to open when the user taps the\nsuggestion chip." - } - }, - "id": "GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion" - }, - "GoogleCloudDialogflowV2beta1IntentParameter": { - "description": "Represents intent parameters.", - "type": "object", - "properties": { - "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" + "type": "object" } }, - "mandatory": { - "description": "Optional. Indicates whether the parameter is required. That is,\nwhether the intent cannot be completed without collecting the parameter\nvalue.", - "type": "boolean" - }, - "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" - }, - "name": { - "description": "The unique identifier of this parameter.", - "type": "string" - }, - "isList": { - "description": "Optional. Indicates whether the parameter represents a list of values.", - "type": "boolean" - }, - "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" - }, - "displayName": { - "description": "Required. The name of the parameter.", - "type": "string" - } - }, - "id": "GoogleCloudDialogflowV2beta1IntentParameter" - }, - "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": { "code": { "description": "The status code, which should be an enum value of google.rpc.Code.", "format": "int32", @@ -1473,26 +485,14 @@ "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." - } - } } - } + }, + "id": "GoogleRpcStatus" }, "GoogleCloudDialogflowV2IntentParameter": { + "description": "Represents intent parameters.", + "type": "object", "properties": { - "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" - }, "displayName": { "description": "Required. The name of the parameter.", "type": "string" @@ -1502,70 +502,57 @@ "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" - }, - "description": "Optional. The collection of prompts that the agent can present to the\nuser in order to collect value for the parameter." + } }, "mandatory": { - "type": "boolean", - "description": "Optional. Indicates whether the parameter is required. That is,\nwhether the intent cannot be completed without collecting the parameter\nvalue." + "description": "Optional. Indicates whether the parameter is required. That is,\nwhether the intent cannot be completed without collecting the parameter\nvalue.", + "type": "boolean" }, "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" }, - "name": { - "description": "The unique identifier of this parameter.", - "type": "string" - }, "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": "GoogleCloudDialogflowV2IntentParameter", - "description": "Represents intent parameters.", - "type": "object" + "id": "GoogleCloudDialogflowV2IntentParameter" }, - "GoogleCloudDialogflowV2beta1IntentMessageBasicCard": { - "id": "GoogleCloudDialogflowV2beta1IntentMessageBasicCard", - "description": "The basic card message. Useful for displaying information.", + "GoogleCloudDialogflowV2beta1IntentMessageListSelect": { + "description": "The card for presenting a list of options to select from.", "type": "object", "properties": { "title": { - "description": "Optional. The title of the card.", - "type": "string" - }, - "image": { - "description": "Optional. The image for the card.", - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageImage" - }, - "formattedText": { - "description": "Required, unless image is present. The body text of the card.", + "description": "Optional. The overall title of the list.", "type": "string" }, - "buttons": { - "description": "Optional. The collection of card buttons.", + "items": { + "description": "Required. List items.", "type": "array", "items": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton" + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageListSelectItem" } - }, - "subtitle": { - "description": "Optional. The subtitle of the card.", - "type": "string" } - } + }, + "id": "GoogleCloudDialogflowV2beta1IntentMessageListSelect" }, "GoogleCloudDialogflowV2IntentMessageCard": { + "description": "The card response message.", "type": "object", "properties": { - "imageUri": { - "description": "Optional. The public URI to an image file for the card.", - "type": "string" - }, "title": { "description": "Optional. The title of the card.", "type": "string" @@ -1580,28 +567,13 @@ "subtitle": { "description": "Optional. The subtitle of the card.", "type": "string" - } - }, - "id": "GoogleCloudDialogflowV2IntentMessageCard", - "description": "The card response message." - }, - "GoogleCloudDialogflowV2beta1IntentMessageListSelect": { - "properties": { - "title": { - "description": "Optional. The overall title of the list.", - "type": "string" }, - "items": { - "description": "Required. List items.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageListSelectItem" - } + "imageUri": { + "description": "Optional. The public URI to an image file for the card.", + "type": "string" } }, - "id": "GoogleCloudDialogflowV2beta1IntentMessageListSelect", - "description": "The card for presenting a list of options to select from.", - "type": "object" + "id": "GoogleCloudDialogflowV2IntentMessageCard" }, "GoogleCloudDialogflowV2IntentBatch": { "description": "This message is a wrapper around a collection of intents.", @@ -1618,6 +590,8 @@ "id": "GoogleCloudDialogflowV2IntentBatch" }, "GoogleCloudDialogflowV2DetectIntentRequest": { + "description": "The request to detect user's intent.", + "type": "object", "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.", @@ -1633,9 +607,7 @@ "description": "Optional. The parameters of this query." } }, - "id": "GoogleCloudDialogflowV2DetectIntentRequest", - "description": "The request to detect user's intent.", - "type": "object" + "id": "GoogleCloudDialogflowV2DetectIntentRequest" }, "GoogleCloudDialogflowV2IntentMessageBasicCardButton": { "description": "The button object that appears at the bottom of a card.", @@ -1646,8 +618,8 @@ "type": "string" }, "openUriAction": { - "$ref": "GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction", - "description": "Required. Action to take when a user taps on the button." + "description": "Required. Action to take when a user taps on the button.", + "$ref": "GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction" } }, "id": "GoogleCloudDialogflowV2IntentMessageBasicCardButton" @@ -1691,22 +663,22 @@ "id": "GoogleCloudDialogflowV2beta1Context" }, "GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo": { - "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" } + }, + "key": { + "description": "Required. A unique key that will be sent back to the agent if this\nresponse is given.", + "type": "string" } }, - "id": "GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo" + "id": "GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo", + "description": "Additional info about the select item for when it is triggered in a\ndialog.", + "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`.", @@ -1736,25 +708,9 @@ }, "id": "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect" }, - "GoogleCloudDialogflowV2BatchDeleteEntitiesRequest": { - "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" - }, - "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": "GoogleCloudDialogflowV2BatchDeleteEntitiesRequest", - "description": "The request message for EntityTypes.BatchDeleteEntities." - }, "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.", + "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`.", @@ -1782,8 +738,24 @@ } } }, - "id": "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" + }, + "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`.", + "type": "array", + "items": { + "type": "string" + } + }, + "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" + } + }, + "id": "GoogleCloudDialogflowV2BatchDeleteEntitiesRequest", + "description": "The request message for EntityTypes.BatchDeleteEntities.", "type": "object" }, "GoogleCloudDialogflowV2beta1IntentMessageCard": { @@ -1821,16 +793,16 @@ "type": "string" }, "name": { - "type": "string", - "description": "Required. The unique identifier of the event." + "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." - }, - "description": "Optional. The collection of parameters associated with the event." + "description": "Properties of the object.", + "type": "any" + } } }, "id": "GoogleCloudDialogflowV2EventInput" @@ -1847,7 +819,6 @@ "id": "GoogleCloudDialogflowV2beta1IntentMessageSuggestion" }, "GoogleCloudDialogflowV2IntentMessageSuggestions": { - "type": "object", "properties": { "suggestions": { "description": "Required. The list of suggested replies.", @@ -1858,20 +829,21 @@ } }, "id": "GoogleCloudDialogflowV2IntentMessageSuggestions", - "description": "The collection of suggestions." + "description": "The collection of suggestions.", + "type": "object" }, "GoogleCloudDialogflowV2ListContextsResponse": { "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": "GoogleCloudDialogflowV2Context" } - }, - "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.", - "type": "string" } }, "id": "GoogleCloudDialogflowV2ListContextsResponse", @@ -1879,23 +851,23 @@ "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.", "type": "object", "properties": { + "event": { + "description": "The event to be processed.", + "$ref": "GoogleCloudDialogflowV2EventInput" + }, "text": { "description": "The natural language text to be processed.", "$ref": "GoogleCloudDialogflowV2TextInput" }, "audioConfig": { - "description": "Instructs the speech recognizer how to process the speech audio.", - "$ref": "GoogleCloudDialogflowV2InputAudioConfig" - }, - "event": { - "$ref": "GoogleCloudDialogflowV2EventInput", - "description": "The event to be processed." + "$ref": "GoogleCloudDialogflowV2InputAudioConfig", + "description": "Instructs the speech recognizer how to process the speech audio." } }, - "id": "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" }, "GoogleCloudDialogflowV2beta1IntentTrainingPhrase": { "description": "Represents an example or template that the agent is trained on.", @@ -1949,8 +921,6 @@ "id": "GoogleCloudDialogflowV2IntentMessageSimpleResponses" }, "GoogleCloudDialogflowV2IntentMessageImage": { - "description": "The image response message.", - "type": "object", "properties": { "imageUri": { "description": "Optional. The public URI to an image file.", @@ -1961,7 +931,9 @@ "type": "string" } }, - "id": "GoogleCloudDialogflowV2IntentMessageImage" + "id": "GoogleCloudDialogflowV2IntentMessageImage", + "description": "The image response message.", + "type": "object" }, "GoogleCloudDialogflowV2IntentMessageText": { "description": "The text response message.", @@ -1978,6 +950,8 @@ "id": "GoogleCloudDialogflowV2IntentMessageText" }, "GoogleCloudDialogflowV2BatchDeleteIntentsRequest": { + "description": "The request message for Intents.BatchDeleteIntents.", + "type": "object", "properties": { "intents": { "description": "Required. The collection of intents to delete. Only intent `name` must be\nfilled in.", @@ -1987,21 +961,19 @@ } } }, - "id": "GoogleCloudDialogflowV2BatchDeleteIntentsRequest", - "description": "The request message for Intents.BatchDeleteIntents.", - "type": "object" + "id": "GoogleCloudDialogflowV2BatchDeleteIntentsRequest" }, "GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion": { "description": "The suggestion chip message that allows the user to jump out to the app\nor website associated with this agent.", "type": "object", "properties": { + "uri": { + "description": "Required. The URI of the app or site to open when the user taps the\nsuggestion chip.", + "type": "string" + }, "destinationName": { "description": "Required. The name of the app or site this chip is linking to.", "type": "string" - }, - "uri": { - "type": "string", - "description": "Required. The URI of the app or site to open when the user taps the\nsuggestion chip." } }, "id": "GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion" @@ -2024,10 +996,40 @@ "description": "Optional. Represents an entity.", "type": "object" }, + "GoogleCloudDialogflowV2beta1IntentMessageText": { + "properties": { + "text": { + "description": "Optional. The collection of the agent's responses.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "id": "GoogleCloudDialogflowV2beta1IntentMessageText", + "description": "The text response message.", + "type": "object" + }, "GoogleCloudDialogflowV2QueryResult": { "description": "Represents the result of conversational query or event processing.", "type": "object", "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" + }, + "fulfillmentText": { + "description": "The text to be pronounced to the user or shown on the screen.", + "type": "string" + }, + "parameters": { + "description": "The collection of extracted parameters.", + "type": "object", + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + } + }, "intentDetectionConfidence": { "description": "The intent detection confidence. Values range from 0.0\n(completely uncertain) to 1.0 (completely certain).", "format": "float", @@ -2047,20 +1049,12 @@ "type": "string" }, "diagnosticInfo": { - "description": "The free-form diagnostic info. For example, this field\ncould contain webhook call latency.", - "type": "object", "additionalProperties": { - "type": "any", - "description": "Properties of the object." - } - }, - "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`." - }, - "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" + "description": "Properties of the object.", + "type": "any" + }, + "description": "The free-form diagnostic info. For example, this field\ncould contain webhook call latency.", + "type": "object" }, "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.", @@ -2069,6 +1063,14 @@ "$ref": "GoogleCloudDialogflowV2Context" } }, + "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" + }, + "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`." + }, "webhookPayload": { "additionalProperties": { "description": "Properties of the object.", @@ -2087,70 +1089,54 @@ "action": { "description": "The action name from the matched intent.", "type": "string" - }, - "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" - }, - "fulfillmentText": { - "description": "The text to be pronounced to the user or shown on the screen.", - "type": "string" - }, - "parameters": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "The collection of extracted parameters.", - "type": "object" } }, "id": "GoogleCloudDialogflowV2QueryResult" }, - "GoogleCloudDialogflowV2beta1IntentMessageText": { - "id": "GoogleCloudDialogflowV2beta1IntentMessageText", - "description": "The text response message.", - "type": "object", - "properties": { - "text": { - "description": "Optional. The collection of the agent's responses.", - "type": "array", - "items": { - "type": "string" - } - } - } - }, "GoogleCloudDialogflowV2IntentMessageCarouselSelect": { "description": "The card for presenting a carousel of options to select from.", "type": "object", "properties": { "items": { + "description": "Required. Carousel items.", "type": "array", "items": { "$ref": "GoogleCloudDialogflowV2IntentMessageCarouselSelectItem" - }, - "description": "Required. Carousel items." + } } }, "id": "GoogleCloudDialogflowV2IntentMessageCarouselSelect" }, "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", "properties": { - "longitude": { - "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", + "latitude": { + "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", "format": "double", "type": "number" }, - "latitude": { - "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", + "longitude": { + "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", "format": "double", "type": "number" } }, - "id": "GoogleTypeLatLng" + "id": "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" + }, + "GoogleCloudDialogflowV2beta1IntentMessageSuggestions": { + "description": "The collection of suggestions.", + "type": "object", + "properties": { + "suggestions": { + "description": "Required. The list of suggested replies.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSuggestion" + } + } + }, + "id": "GoogleCloudDialogflowV2beta1IntentMessageSuggestions" }, "GoogleCloudDialogflowV2IntentFollowupIntentInfo": { "description": "Represents a single followup intent in the chain.", @@ -2167,43 +1153,28 @@ }, "id": "GoogleCloudDialogflowV2IntentFollowupIntentInfo" }, - "GoogleCloudDialogflowV2beta1IntentMessageSuggestions": { - "description": "The collection of suggestions.", - "type": "object", + "GoogleCloudDialogflowV2beta1IntentMessageQuickReplies": { "properties": { - "suggestions": { - "description": "Required. The list of suggested replies.", + "quickReplies": { + "description": "Optional. The collection of quick replies.", "type": "array", "items": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSuggestion" + "type": "string" } + }, + "title": { + "description": "Optional. The title of the collection of quick replies.", + "type": "string" } }, - "id": "GoogleCloudDialogflowV2beta1IntentMessageSuggestions" + "id": "GoogleCloudDialogflowV2beta1IntentMessageQuickReplies", + "description": "The quick replies response message.", + "type": "object" }, "GoogleCloudDialogflowV2EntityType": { "description": "Represents an entity type.\nEntity types serve as a tool for extracting parameter values from natural\nlanguage queries.", "type": "object", "properties": { - "autoExpansionMode": { - "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." - ], - "enum": [ - "AUTO_EXPANSION_MODE_UNSPECIFIED", - "AUTO_EXPANSION_MODE_DEFAULT" - ] - }, - "entities": { - "description": "Optional. The collection of entities associated with the entity type.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2EntityTypeEntity" - } - }, "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" @@ -2213,52 +1184,43 @@ "type": "string" }, "kind": { + "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" ], "description": "Required. Indicates the kind of entity type.", - "type": "string", + "type": "string" + }, + "autoExpansionMode": { "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)." - ] - } - }, - "id": "GoogleCloudDialogflowV2EntityType" - }, - "GoogleCloudDialogflowV2beta1IntentMessageQuickReplies": { - "description": "The quick replies response message.", - "type": "object", - "properties": { - "quickReplies": { - "description": "Optional. The collection of quick replies.", + "Auto expansion disabled for the entity.", + "Allows an agent to recognize values that have not been explicitly\nlisted in the entity." + ], + "enum": [ + "AUTO_EXPANSION_MODE_UNSPECIFIED", + "AUTO_EXPANSION_MODE_DEFAULT" + ], + "description": "Optional. Indicates whether the entity type can be automatically\nexpanded.", + "type": "string" + }, + "entities": { + "description": "Optional. The collection of entities associated with the entity type.", "type": "array", "items": { - "type": "string" + "$ref": "GoogleCloudDialogflowV2EntityTypeEntity" } - }, - "title": { - "description": "Optional. The title of the collection of quick replies.", - "type": "string" } }, - "id": "GoogleCloudDialogflowV2beta1IntentMessageQuickReplies" + "id": "GoogleCloudDialogflowV2EntityType" }, "GoogleCloudDialogflowV2WebhookRequest": { - "description": "The request message for a webhook call.", - "type": "object", "properties": { - "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" - }, "queryResult": { "$ref": "GoogleCloudDialogflowV2QueryResult", "description": "The result of the conversational query or event processing. Contains the\nsame value as `[Streaming]DetectIntentResponse.query_result`." @@ -2266,37 +1228,42 @@ "originalDetectIntentRequest": { "$ref": "GoogleCloudDialogflowV2OriginalDetectIntentRequest", "description": "Optional. The contents of the original request that was passed to\n`[Streaming]DetectIntent` call." + }, + "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" } }, - "id": "GoogleCloudDialogflowV2WebhookRequest" + "id": "GoogleCloudDialogflowV2WebhookRequest", + "description": "The request message for a webhook call.", + "type": "object" }, "GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo": { "properties": { - "parentFollowupIntentName": { - "description": "The unique identifier of the followup intent parent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", - "type": "string" - }, "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" } }, "id": "GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo", "description": "Represents a single followup intent in the chain.", "type": "object" }, - "GoogleCloudDialogflowV2TrainAgentRequest": { - "description": "The request message for Agents.TrainAgent.", - "type": "object", - "properties": {}, - "id": "GoogleCloudDialogflowV2TrainAgentRequest" - }, "GoogleCloudDialogflowV2ExportAgentResponse": { + "description": "The response message for Agents.ExportAgent.", "type": "object", "properties": { "agentUri": { - "type": "string", - "description": "The URI to a file containing the exported agent. This field is populated\nonly if `agent_uri` is specified in `ExportAgentRequest`." + "description": "The URI to a file containing the exported agent. This field is populated\nonly if `agent_uri` is specified in `ExportAgentRequest`.", + "type": "string" }, "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", @@ -2304,46 +1271,36 @@ "type": "string" } }, - "id": "GoogleCloudDialogflowV2ExportAgentResponse", - "description": "The response message for Agents.ExportAgent." + "id": "GoogleCloudDialogflowV2ExportAgentResponse" + }, + "GoogleCloudDialogflowV2TrainAgentRequest": { + "properties": {}, + "id": "GoogleCloudDialogflowV2TrainAgentRequest", + "description": "The request message for Agents.TrainAgent.", + "type": "object" }, "GoogleCloudDialogflowV2beta1EntityTypeEntity": { "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": { "description": "Required. A collection of synonyms. For `KIND_LIST` entity types this\nmust contain exactly one synonym equal to `value`.", "type": "array", "items": { "type": "string" } + }, + "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" } }, "id": "GoogleCloudDialogflowV2beta1EntityTypeEntity" }, "GoogleCloudDialogflowV2QueryParameters": { + "description": "Represents the parameters of the conversational query.", "type": "object", "properties": { - "payload": { - "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", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - } - }, - "geoLocation": { - "$ref": "GoogleTypeLatLng", - "description": "Optional. The geo location of this conversational query." - }, - "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", @@ -2361,43 +1318,25 @@ "items": { "$ref": "GoogleCloudDialogflowV2SessionEntityType" } - } - }, - "id": "GoogleCloudDialogflowV2QueryParameters", - "description": "Represents the parameters of the conversational query." - }, - "GoogleCloudDialogflowV2IntentMessageCardButton": { - "description": "Optional. Contains information about a button.", - "type": "object", - "properties": { - "text": { - "description": "Optional. The text to show on the button.", - "type": "string" }, - "postback": { - "description": "Optional. The text to send back to the Dialogflow API or a URI to\nopen.", - "type": "string" - } - }, - "id": "GoogleCloudDialogflowV2IntentMessageCardButton" - }, - "GoogleCloudDialogflowV2BatchCreateEntitiesRequest": { - "description": "The request message for EntityTypes.BatchCreateEntities.", - "type": "object", - "properties": { - "entities": { - "description": "Required. The collection of entities to create.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2EntityTypeEntity" + "payload": { + "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", + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" } }, - "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" + "geoLocation": { + "$ref": "GoogleTypeLatLng", + "description": "Optional. The geo location of this conversational query." + }, + "resetContexts": { + "description": "Optional. Specifies whether to delete all contexts in the current session\nbefore the new ones are activated.", + "type": "boolean" } }, - "id": "GoogleCloudDialogflowV2BatchCreateEntitiesRequest" + "id": "GoogleCloudDialogflowV2QueryParameters" }, "GoogleCloudDialogflowV2WebhookResponse": { "description": "The response message for a webhook call.", @@ -2408,8 +1347,8 @@ "type": "string" }, "followupEventInput": { - "description": "Optional. Makes the platform immediately invoke another `DetectIntent` call\ninternally with the specified event as input.", - "$ref": "GoogleCloudDialogflowV2EventInput" + "$ref": "GoogleCloudDialogflowV2EventInput", + "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`.", @@ -2431,8 +1370,8 @@ }, "payload": { "additionalProperties": { - "type": "any", - "description": "Properties of the object." + "description": "Properties of the object.", + "type": "any" }, "description": "Optional. This value is passed directly to `QueryResult.webhook_payload`.\nSee the related `fulfillment_messages[i].payload field`, which may be used\nas an alternative to this field.\n\nThis field can be used for Actions on Google responses.\nIt should have a structure similar to the JSON message shown here. For more\ninformation, see\n[Actions on Google Webhook\nFormat](https://developers.google.com/actions/dialogflow/webhook)\n\u003cpre\u003e{\n \"google\": {\n \"expectUserResponse\": true,\n \"richResponse\": {\n \"items\": [\n {\n \"simpleResponse\": {\n \"textToSpeech\": \"this is a simple response\"\n }\n }\n ]\n }\n }\n}\u003c/pre\u003e", "type": "object" @@ -2440,9 +1379,40 @@ }, "id": "GoogleCloudDialogflowV2WebhookResponse" }, - "GoogleCloudDialogflowV2ListIntentsResponse": { - "description": "The response message for Intents.ListIntents.", + "GoogleCloudDialogflowV2BatchCreateEntitiesRequest": { + "description": "The request message for EntityTypes.BatchCreateEntities.", "type": "object", + "properties": { + "entities": { + "description": "Required. The collection of entities to create.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2EntityTypeEntity" + } + }, + "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" + } + }, + "id": "GoogleCloudDialogflowV2BatchCreateEntitiesRequest" + }, + "GoogleCloudDialogflowV2IntentMessageCardButton": { + "properties": { + "text": { + "description": "Optional. The text to show on the button.", + "type": "string" + }, + "postback": { + "description": "Optional. The text to send back to the Dialogflow API or a URI to\nopen.", + "type": "string" + } + }, + "id": "GoogleCloudDialogflowV2IntentMessageCardButton", + "description": "Optional. Contains information about a button.", + "type": "object" + }, + "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.", @@ -2456,50 +1426,50 @@ "type": "string" } }, - "id": "GoogleCloudDialogflowV2ListIntentsResponse" + "id": "GoogleCloudDialogflowV2ListIntentsResponse", + "description": "The response message for Intents.ListIntents.", + "type": "object" }, "GoogleCloudDialogflowV2beta1ExportAgentResponse": { - "id": "GoogleCloudDialogflowV2beta1ExportAgentResponse", "description": "The response message for Agents.ExportAgent.", "type": "object", "properties": { + "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" + }, "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": { - "type": "string", - "description": "The URI to a file containing the exported agent. This field is populated\nonly if `agent_uri` is specified in `ExportAgentRequest`." } - } + }, + "id": "GoogleCloudDialogflowV2beta1ExportAgentResponse" }, "GoogleCloudDialogflowV2OriginalDetectIntentRequest": { - "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.", - "type": "string" - }, "payload": { - "type": "object", "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." + "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.", + "type": "string" } }, - "id": "GoogleCloudDialogflowV2OriginalDetectIntentRequest" + "id": "GoogleCloudDialogflowV2OriginalDetectIntentRequest", + "description": "Represents the contents of the original request that was passed to\nthe `[Streaming]DetectIntent` call.", + "type": "object" }, "GoogleLongrunningOperation": { - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object", "properties": { "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" }, "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`.", @@ -2514,8 +1484,8 @@ "type": "string" }, "error": { - "$ref": "GoogleRpcStatus", - "description": "The error result of the operation in case of failure or cancellation." + "description": "The error result of the operation in case of failure or cancellation.", + "$ref": "GoogleRpcStatus" }, "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.", @@ -2526,7 +1496,9 @@ } } }, - "id": "GoogleLongrunningOperation" + "id": "GoogleLongrunningOperation", + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "type": "object" }, "GoogleCloudDialogflowV2beta1IntentMessageImage": { "description": "The image response message.", @@ -2543,24 +1515,6 @@ }, "id": "GoogleCloudDialogflowV2beta1IntentMessageImage" }, - "GoogleCloudDialogflowV2ListEntityTypesResponse": { - "description": "The response message for EntityTypes.ListEntityTypes.", - "type": "object", - "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.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2EntityType" - } - }, - "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.", - "type": "string" - } - }, - "id": "GoogleCloudDialogflowV2ListEntityTypesResponse" - }, "GoogleCloudDialogflowV2IntentMessageSimpleResponse": { "description": "The simple response message containing speech or text.", "type": "object", @@ -2584,32 +1538,50 @@ "description": "An item in the carousel.", "type": "object", "properties": { + "description": { + "description": "Optional. The body text of the card.", + "type": "string" + }, "info": { - "description": "Required. Additional info about the option item.", - "$ref": "GoogleCloudDialogflowV2IntentMessageSelectItemInfo" + "$ref": "GoogleCloudDialogflowV2IntentMessageSelectItemInfo", + "description": "Required. Additional info about the option item." }, "title": { "description": "Required. Title of the carousel item.", "type": "string" }, "image": { - "$ref": "GoogleCloudDialogflowV2IntentMessageImage", - "description": "Optional. The image to display." + "description": "Optional. The image to display.", + "$ref": "GoogleCloudDialogflowV2IntentMessageImage" + } + }, + "id": "GoogleCloudDialogflowV2IntentMessageCarouselSelectItem" + }, + "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.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2EntityType" + } }, - "description": { - "description": "Optional. The body text of the card.", + "nextPageToken": { + "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.", "type": "string" } }, - "id": "GoogleCloudDialogflowV2IntentMessageCarouselSelectItem" + "id": "GoogleCloudDialogflowV2ListEntityTypesResponse", + "description": "The response message for EntityTypes.ListEntityTypes.", + "type": "object" }, "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton": { "description": "The button object that appears at the bottom of a card.", "type": "object", "properties": { "title": { - "type": "string", - "description": "Required. The title of the button." + "description": "Required. The title of the button.", + "type": "string" }, "openUriAction": { "description": "Required. Action to take when a user taps on the button.", @@ -2623,11 +1595,12 @@ "type": "object", "properties": { "timesAddedCount": { - "type": "integer", "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" + "format": "int32", + "type": "integer" }, "type": { + "description": "Required. The type of the training phrase.", "type": "string", "enumDescriptions": [ "Not specified. This value should never be used.", @@ -2638,8 +1611,7 @@ "TYPE_UNSPECIFIED", "EXAMPLE", "TEMPLATE" - ], - "description": "Required. The type of the training phrase." + ] }, "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.", @@ -2656,6 +1628,8 @@ "id": "GoogleCloudDialogflowV2IntentTrainingPhrase" }, "GoogleCloudDialogflowV2SearchAgentsResponse": { + "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.", @@ -2665,15 +1639,15 @@ } }, "nextPageToken": { - "type": "string", - "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list." + "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.", + "type": "string" } }, - "id": "GoogleCloudDialogflowV2SearchAgentsResponse", - "description": "The response message for Agents.SearchAgents.", - "type": "object" + "id": "GoogleCloudDialogflowV2SearchAgentsResponse" }, "GoogleCloudDialogflowV2EntityTypeBatch": { + "description": "This message is a wrapper around a collection of entity types.", + "type": "object", "properties": { "entityTypes": { "description": "A collection of entity types.", @@ -2683,29 +1657,27 @@ } } }, - "id": "GoogleCloudDialogflowV2EntityTypeBatch", - "description": "This message is a wrapper around a collection of entity types.", - "type": "object" + "id": "GoogleCloudDialogflowV2EntityTypeBatch" }, "GoogleCloudDialogflowV2beta1WebhookRequest": { "description": "The request message for a webhook call.", "type": "object", "properties": { - "queryResult": { - "$ref": "GoogleCloudDialogflowV2beta1QueryResult", - "description": "The result of the conversational query or event processing. Contains the\nsame value as `[Streaming]DetectIntentResponse.query_result`." - }, - "originalDetectIntentRequest": { - "$ref": "GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest", - "description": "Optional. The contents of the original request that was passed to\n`[Streaming]DetectIntent` call." - }, "responseId": { "description": "The unique identifier of the response. Contains the same value as\n`[Streaming]DetectIntentResponse.response_id`.", "type": "string" }, "session": { - "type": "string", - "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`." + "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" + }, + "queryResult": { + "description": "The result of the conversational query or event processing. Contains the\nsame value as `[Streaming]DetectIntentResponse.query_result`.", + "$ref": "GoogleCloudDialogflowV2beta1QueryResult" + }, + "originalDetectIntentRequest": { + "$ref": "GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest", + "description": "Optional. The contents of the original request that was passed to\n`[Streaming]DetectIntent` call." } }, "id": "GoogleCloudDialogflowV2beta1WebhookRequest" @@ -2744,10 +1716,10 @@ "id": "GoogleCloudDialogflowV2beta1IntentMessageCardButton" }, "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" + "id": "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" }, "GoogleCloudDialogflowV2ImportAgentRequest": { "properties": { @@ -2766,18 +1738,9 @@ "type": "object" }, "GoogleCloudDialogflowV2IntentMessageListSelectItem": { - "id": "GoogleCloudDialogflowV2IntentMessageListSelectItem", "description": "An item in the list.", "type": "object", "properties": { - "description": { - "description": "Optional. The main text describing the item.", - "type": "string" - }, - "info": { - "$ref": "GoogleCloudDialogflowV2IntentMessageSelectItemInfo", - "description": "Required. Additional information about this option." - }, "title": { "description": "Required. The title of the list item.", "type": "string" @@ -2785,11 +1748,19 @@ "image": { "$ref": "GoogleCloudDialogflowV2IntentMessageImage", "description": "Optional. The image to display." + }, + "description": { + "description": "Optional. The main text describing the item.", + "type": "string" + }, + "info": { + "$ref": "GoogleCloudDialogflowV2IntentMessageSelectItemInfo", + "description": "Required. Additional information about this option." } - } + }, + "id": "GoogleCloudDialogflowV2IntentMessageListSelectItem" }, "GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest": { - "id": "GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest", "description": "The request message for EntityTypes.BatchDeleteEntityTypes.", "type": "object", "properties": { @@ -2800,19 +1771,20 @@ "type": "string" } } - } + }, + "id": "GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest" }, "GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest": { "description": "Represents the contents of the original request that was passed to\nthe `[Streaming]DetectIntent` call.", "type": "object", "properties": { "payload": { - "description": "Optional. This field is set to the value of `QueryParameters.payload` field\npassed in the request.", - "type": "object", "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.", @@ -2822,22 +1794,12 @@ "id": "GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest" }, "GoogleCloudDialogflowV2beta1WebhookResponse": { + "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`.\nSee the related `fulfillment_messages[i].payload field`, which may be used\nas an alternative to this field.\n\nThis field can be used for Actions on Google responses.\nIt should have a structure similar to the JSON message shown here. For more\ninformation, see\n[Actions on Google Webhook\nFormat](https://developers.google.com/actions/dialogflow/webhook)\n\u003cpre\u003e{\n \"google\": {\n \"expectUserResponse\": true,\n \"richResponse\": {\n \"items\": [\n {\n \"simpleResponse\": {\n \"textToSpeech\": \"this is a simple response\"\n }\n }\n ]\n }\n }\n}\u003c/pre\u003e", - "type": "object" - }, - "source": { - "description": "Optional. This value is passed directly to `QueryResult.webhook_source`.", - "type": "string" - }, "followupEventInput": { - "description": "Optional. Makes the platform immediately invoke another `DetectIntent` call\ninternally with the specified event as input.", - "$ref": "GoogleCloudDialogflowV2beta1EventInput" + "$ref": "GoogleCloudDialogflowV2beta1EventInput", + "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`.", @@ -2856,40 +1818,50 @@ "items": { "$ref": "GoogleCloudDialogflowV2beta1IntentMessage" } + }, + "payload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Optional. This value is passed directly to `QueryResult.webhook_payload`.\nSee the related `fulfillment_messages[i].payload field`, which may be used\nas an alternative to this field.\n\nThis field can be used for Actions on Google responses.\nIt should have a structure similar to the JSON message shown here. For more\ninformation, see\n[Actions on Google Webhook\nFormat](https://developers.google.com/actions/dialogflow/webhook)\n\u003cpre\u003e{\n \"google\": {\n \"expectUserResponse\": true,\n \"richResponse\": {\n \"items\": [\n {\n \"simpleResponse\": {\n \"textToSpeech\": \"this is a simple response\"\n }\n }\n ]\n }\n }\n}\u003c/pre\u003e", + "type": "object" + }, + "source": { + "description": "Optional. This value is passed directly to `QueryResult.webhook_source`.", + "type": "string" } }, - "id": "GoogleCloudDialogflowV2beta1WebhookResponse", - "description": "The response message for a webhook call.", - "type": "object" + "id": "GoogleCloudDialogflowV2beta1WebhookResponse" }, "GoogleCloudDialogflowV2IntentMessageSelectItemInfo": { + "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" } - }, - "key": { - "description": "Required. A unique key that will be sent back to the agent if this\nresponse is given.", - "type": "string" } }, - "id": "GoogleCloudDialogflowV2IntentMessageSelectItemInfo", - "description": "Additional info about the select item for when it is triggered in a\ndialog.", - "type": "object" + "id": "GoogleCloudDialogflowV2IntentMessageSelectItemInfo" }, "GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction": { - "description": "Opens the given URI.", - "type": "object", "properties": { "uri": { "description": "Required. The HTTP or HTTPS scheme URI.", "type": "string" } }, - "id": "GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction" + "id": "GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction", + "description": "Opens the given URI.", + "type": "object" }, "GoogleCloudDialogflowV2RestoreAgentRequest": { "description": "The request message for Agents.RestoreAgent.", @@ -2912,12 +1884,12 @@ "type": "object", "properties": { "queryResult": { - "description": "The results of the conversational query or event processing.", - "$ref": "GoogleCloudDialogflowV2QueryResult" + "$ref": "GoogleCloudDialogflowV2QueryResult", + "description": "The results of the conversational query or event processing." }, "webhookStatus": { - "$ref": "GoogleRpcStatus", - "description": "Specifies the status of the webhook request. `webhook_status`\nis never populated in webhook requests." + "description": "Specifies the status of the webhook request. `webhook_status`\nis never populated in webhook requests.", + "$ref": "GoogleRpcStatus" }, "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.", @@ -2927,7 +1899,6 @@ "id": "GoogleCloudDialogflowV2DetectIntentResponse" }, "GoogleCloudDialogflowV2IntentMessageQuickReplies": { - "id": "GoogleCloudDialogflowV2IntentMessageQuickReplies", "description": "The quick replies response message.", "type": "object", "properties": { @@ -2942,7 +1913,8 @@ "type": "string" } } - } + }, + "id": "GoogleCloudDialogflowV2IntentMessageQuickReplies" }, "GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse": { "description": "The response message for EntityTypes.BatchUpdateEntityTypes.", @@ -2959,6 +1931,7 @@ "id": "GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse" }, "GoogleCloudDialogflowV2beta1EntityType": { + "description": "Represents an entity type.\nEntity types serve as a tool for extracting parameter values from natural\nlanguage queries.", "type": "object", "properties": { "name": { @@ -2970,46 +1943,49 @@ "type": "string" }, "kind": { + "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" ], "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)." - ] + "type": "string" }, "autoExpansionMode": { - "type": "string", - "enumDescriptions": [ - "Auto expansion disabled for the entity.", - "Allows an agent to recognize values that have not been explicitly\nlisted in the entity." - ], "enum": [ "AUTO_EXPANSION_MODE_UNSPECIFIED", "AUTO_EXPANSION_MODE_DEFAULT" ], - "description": "Optional. Indicates whether the entity type can be automatically\nexpanded." + "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." + ] }, "entities": { + "description": "Optional. The collection of entities associated with the entity type.", "type": "array", "items": { "$ref": "GoogleCloudDialogflowV2beta1EntityTypeEntity" - }, - "description": "Optional. The collection of entities associated with the entity type." + } } }, - "id": "GoogleCloudDialogflowV2beta1EntityType", - "description": "Represents an entity type.\nEntity types serve as a tool for extracting parameter values from natural\nlanguage queries." + "id": "GoogleCloudDialogflowV2beta1EntityType" }, "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse": { "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" @@ -3017,27 +1993,12 @@ "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" - }, - "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" } }, "id": "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse" }, "GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest": { - "description": "The request message for EntityTypes.BatchUpdateEntityTypes.", - "type": "object", "properties": { - "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": { - "description": "Optional. The mask to control which fields get updated.", - "format": "google-fieldmask", - "type": "string" - }, "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" @@ -3045,62 +2006,43 @@ "entityTypeBatchInline": { "$ref": "GoogleCloudDialogflowV2EntityTypeBatch", "description": "The collection of entity type to update or create." + }, + "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" } }, - "id": "GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest" + "id": "GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest", + "description": "The request message for EntityTypes.BatchUpdateEntityTypes.", + "type": "object" }, "GoogleCloudDialogflowV2beta1QueryResult": { - "id": "GoogleCloudDialogflowV2beta1QueryResult", - "description": "Represents the result of conversational query or event processing.", - "type": "object", "properties": { - "parameters": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "The collection of extracted parameters.", - "type": "object" - }, - "intentDetectionConfidence": { - "type": "number", - "description": "The intent detection confidence. Values range from 0.0\n(completely uncertain) to 1.0 (completely certain).", - "format": "float" - }, - "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\nThis field is not guaranteed to be accurate or set. In particular this\nfield isn't set for StreamingDetectIntent since the streaming endpoint has\nseparate confidence estimates per portion of the audio in\nStreamingRecognitionResult.", - "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.", - "type": "object" - }, - "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`." + "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": "GoogleCloudDialogflowV2beta1Context" + } }, "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.", + "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`." + }, + "fulfillmentMessages": { + "description": "The collection of rich messages to present to the user.", "type": "array", "items": { - "$ref": "GoogleCloudDialogflowV2beta1Context" + "$ref": "GoogleCloudDialogflowV2beta1IntentMessage" } }, "webhookPayload": { @@ -3111,13 +2053,6 @@ "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": "GoogleCloudDialogflowV2beta1IntentMessage" - } - }, "action": { "description": "The action name from the matched intent.", "type": "string" @@ -3129,8 +2064,45 @@ "fulfillmentText": { "description": "The text to be pronounced to the user or shown on the screen.", "type": "string" + }, + "parameters": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "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" + }, + "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\nThis field is not guaranteed to be accurate or set. In particular this\nfield isn't set for StreamingDetectIntent since the streaming endpoint has\nseparate confidence estimates per portion of the audio in\nStreamingRecognitionResult.", + "format": "float", + "type": "number" + }, + "diagnosticInfo": { + "description": "The free-form diagnostic info. For example, this field\ncould contain webhook call latency.", + "type": "object", + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + } } - } + }, + "id": "GoogleCloudDialogflowV2beta1QueryResult", + "description": "Represents the result of conversational query or event processing.", + "type": "object" }, "GoogleCloudDialogflowV2ExportAgentRequest": { "description": "The request message for Agents.ExportAgent.", @@ -3144,47 +2116,29 @@ "id": "GoogleCloudDialogflowV2ExportAgentRequest" }, "GoogleCloudDialogflowV2TextInput": { - "id": "GoogleCloudDialogflowV2TextInput", "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" - } - } - }, - "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem": { - "description": "An item in the carousel.", - "type": "object", - "properties": { - "title": { - "type": "string", - "description": "Required. Title of the carousel item." - }, - "image": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageImage", - "description": "Optional. The image to display." - }, - "description": { - "type": "string", - "description": "Optional. The body text of the card." }, - "info": { - "description": "Required. Additional info about the option item.", - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo" + "text": { + "description": "Required. The UTF-8 encoded natural language text to be processed.\nText length must not exceed 256 bytes.", + "type": "string" } }, - "id": "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem" + "id": "GoogleCloudDialogflowV2TextInput" }, "GoogleCloudDialogflowV2Context": { "description": "Represents a context.", "type": "object", "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" @@ -3196,24 +2150,37 @@ }, "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" - }, - "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": "GoogleCloudDialogflowV2Context" }, - "GoogleCloudDialogflowV2BatchUpdateEntitiesRequest": { + "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem": { + "description": "An item in the carousel.", + "type": "object", "properties": { - "entities": { - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2EntityTypeEntity" - }, - "description": "Required. The collection of new entities to replace the existing entities." + "description": { + "description": "Optional. The body text of the card.", + "type": "string" + }, + "info": { + "description": "Required. Additional info about the option item.", + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo" + }, + "title": { + "description": "Required. Title of the carousel item.", + "type": "string" }, + "image": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageImage", + "description": "Optional. The image to display." + } + }, + "id": "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem" + }, + "GoogleCloudDialogflowV2BatchUpdateEntitiesRequest": { + "description": "The response 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" @@ -3222,51 +2189,43 @@ "description": "Optional. The mask to control which fields get updated.", "format": "google-fieldmask", "type": "string" + }, + "entities": { + "description": "Required. The collection of new entities to replace the existing entities.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2EntityTypeEntity" + } } }, - "id": "GoogleCloudDialogflowV2BatchUpdateEntitiesRequest", - "description": "The response message for EntityTypes.BatchCreateEntities.", - "type": "object" + "id": "GoogleCloudDialogflowV2BatchUpdateEntitiesRequest" }, "GoogleCloudDialogflowV2BatchUpdateIntentsResponse": { - "id": "GoogleCloudDialogflowV2BatchUpdateIntentsResponse", "description": "The response message for Intents.BatchUpdateIntents.", "type": "object", "properties": { "intents": { + "description": "The collection of updated or created intents.", "type": "array", "items": { "$ref": "GoogleCloudDialogflowV2Intent" - }, - "description": "The collection of updated or created intents." + } } - } + }, + "id": "GoogleCloudDialogflowV2BatchUpdateIntentsResponse" }, "GoogleCloudDialogflowV2Agent": { "description": "Represents a conversational agent.", "type": "object", "properties": { - "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" - }, - "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.", + "displayName": { + "description": "Required. The name of this agent.", "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" - }, "parent": { "description": "Required. The project of this agent.\nFormat: `projects/\u003cProject ID\u003e`.", "type": "string" @@ -3299,11 +2258,25 @@ "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" + }, + "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" } }, "id": "GoogleCloudDialogflowV2Agent" }, "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction": { + "description": "Opens the given URI.", "type": "object", "properties": { "uri": { @@ -3311,10 +2284,10 @@ "type": "string" } }, - "id": "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction", - "description": "Opens the given URI." + "id": "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction" }, "GoogleCloudDialogflowV2IntentMessage": { + "description": "Corresponds to the `Response` field in the Dialogflow console.", "type": "object", "properties": { "carouselSelect": { @@ -3322,30 +2295,32 @@ "description": "The carousel card response for Actions on Google." }, "linkOutSuggestion": { - "$ref": "GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion", - "description": "The link out suggestion chip for Actions on Google." + "description": "The link out suggestion chip for Actions on Google.", + "$ref": "GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion" }, "simpleResponses": { - "$ref": "GoogleCloudDialogflowV2IntentMessageSimpleResponses", - "description": "The voice and text-only responses for Actions on Google." + "description": "The voice and text-only responses for Actions on Google.", + "$ref": "GoogleCloudDialogflowV2IntentMessageSimpleResponses" }, "image": { "$ref": "GoogleCloudDialogflowV2IntentMessageImage", "description": "The image response." }, "payload": { - "description": "Returns a response containing a custom, platform-specific payload.\nSee the Intent.Message.Platform type for a description of the\nstructure that may be required for your platform.", - "type": "object", "additionalProperties": { "description": "Properties of the object.", "type": "any" - } + }, + "description": "Returns a response containing a custom, platform-specific payload.\nSee the Intent.Message.Platform type for a description of the\nstructure that may be required for your platform.", + "type": "object" }, "text": { - "description": "The text response.", - "$ref": "GoogleCloudDialogflowV2IntentMessageText" + "$ref": "GoogleCloudDialogflowV2IntentMessageText", + "description": "The text response." }, "platform": { + "description": "Optional. The platform that this message is intended for.", + "type": "string", "enumDescriptions": [ "Not specified.", "Facebook.", @@ -3367,21 +2342,19 @@ "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": "GoogleCloudDialogflowV2IntentMessageSuggestions" + "$ref": "GoogleCloudDialogflowV2IntentMessageSuggestions", + "description": "The suggestion chips for Actions on Google." }, "listSelect": { - "$ref": "GoogleCloudDialogflowV2IntentMessageListSelect", - "description": "The list card response for Actions on Google." + "description": "The list card response for Actions on Google.", + "$ref": "GoogleCloudDialogflowV2IntentMessageListSelect" }, "quickReplies": { - "$ref": "GoogleCloudDialogflowV2IntentMessageQuickReplies", - "description": "The quick replies response." + "description": "The quick replies response.", + "$ref": "GoogleCloudDialogflowV2IntentMessageQuickReplies" }, "card": { "$ref": "GoogleCloudDialogflowV2IntentMessageCard", @@ -3392,8 +2365,7 @@ "$ref": "GoogleCloudDialogflowV2IntentMessageBasicCard" } }, - "id": "GoogleCloudDialogflowV2IntentMessage", - "description": "Corresponds to the `Response` field in the Dialogflow console." + "id": "GoogleCloudDialogflowV2IntentMessage" }, "GoogleCloudDialogflowV2IntentMessageBasicCard": { "description": "The basic card message. Useful for displaying information.", @@ -3404,8 +2376,8 @@ "type": "string" }, "image": { - "$ref": "GoogleCloudDialogflowV2IntentMessageImage", - "description": "Optional. The image for the card." + "description": "Optional. The image for the card.", + "$ref": "GoogleCloudDialogflowV2IntentMessageImage" }, "formattedText": { "description": "Required, unless image is present. The body text of the card.", @@ -3429,24 +2401,49 @@ "description": "The response message for SessionEntityTypes.ListSessionEntityTypes.", "type": "object", "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.", "type": "array", "items": { "$ref": "GoogleCloudDialogflowV2SessionEntityType" } - }, - "nextPageToken": { - "type": "string", - "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list." } }, "id": "GoogleCloudDialogflowV2ListSessionEntityTypesResponse" }, + "GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse": { + "description": "The response message for EntityTypes.BatchUpdateEntityTypes.", + "type": "object", + "properties": { + "entityTypes": { + "description": "The collection of updated or created entity types.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1EntityType" + } + } + }, + "id": "GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse" + }, "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.", "type": "object", "properties": { + "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" + } + }, + "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", @@ -3460,8 +2457,21 @@ } }, "defaultResponsePlatforms": { + "enumDescriptions": [ + "Not specified.", + "Facebook.", + "Slack.", + "Telegram.", + "Kik.", + "Skype.", + "Line.", + "Viber.", + "Actions on Google.\nWhen using Actions on Google, you can choose one of the specific\nIntent.Message types that mention support for Actions on Google,\nor you can use the advanced Intent.Message.payload field.\nThe payload field provides access to AoG features not available in the\nspecific message types.\nIf using the Intent.Message.payload field, it should have a structure\nsimilar to the JSON message shown here. For more information, see\n[Actions on Google Webhook\nFormat](https://developers.google.com/actions/dialogflow/webhook)\n\u003cpre\u003e{\n \"expectUserResponse\": true,\n \"isSsml\": false,\n \"noInputPrompts\": [],\n \"richResponse\": {\n \"items\": [\n {\n \"simpleResponse\": {\n \"displayText\": \"hi\",\n \"textToSpeech\": \"hello\"\n }\n }\n ],\n \"suggestions\": [\n {\n \"title\": \"Say this\"\n },\n {\n \"title\": \"or this\"\n }\n ]\n },\n \"systemIntent\": {\n \"data\": {\n \"@type\": \"type.googleapis.com/google.actions.v2.OptionValueSpec\",\n \"listSelect\": {\n \"items\": [\n {\n \"optionInfo\": {\n \"key\": \"key1\",\n \"synonyms\": [\n \"key one\"\n ]\n },\n \"title\": \"must not be empty, but unique\"\n },\n {\n \"optionInfo\": {\n \"key\": \"key2\",\n \"synonyms\": [\n \"key two\"\n ]\n },\n \"title\": \"must not be empty, but unique\"\n }\n ]\n }\n },\n \"intent\": \"actions.intent.OPTION\"\n }\n}\u003c/pre\u003e" + ], + "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": { + "type": "string", "enum": [ "PLATFORM_UNSPECIFIED", "FACEBOOK", @@ -3472,25 +2482,8 @@ "LINE", "VIBER", "ACTIONS_ON_GOOGLE" - ], - "type": "string" - }, - "enumDescriptions": [ - "Not specified.", - "Facebook.", - "Slack.", - "Telegram.", - "Kik.", - "Skype.", - "Line.", - "Viber.", - "Actions on Google.\nWhen using Actions on Google, you can choose one of the specific\nIntent.Message types that mention support for Actions on Google,\nor you can use the advanced Intent.Message.payload field.\nThe payload field provides access to AoG features not available in the\nspecific message types.\nIf using the Intent.Message.payload field, it should have a structure\nsimilar to the JSON message shown here. For more information, see\n[Actions on Google Webhook\nFormat](https://developers.google.com/actions/dialogflow/webhook)\n\u003cpre\u003e{\n \"expectUserResponse\": true,\n \"isSsml\": false,\n \"noInputPrompts\": [],\n \"richResponse\": {\n \"items\": [\n {\n \"simpleResponse\": {\n \"displayText\": \"hi\",\n \"textToSpeech\": \"hello\"\n }\n }\n ],\n \"suggestions\": [\n {\n \"title\": \"Say this\"\n },\n {\n \"title\": \"or this\"\n }\n ]\n },\n \"systemIntent\": {\n \"data\": {\n \"@type\": \"type.googleapis.com/google.actions.v2.OptionValueSpec\",\n \"listSelect\": {\n \"items\": [\n {\n \"optionInfo\": {\n \"key\": \"key1\",\n \"synonyms\": [\n \"key one\"\n ]\n },\n \"title\": \"must not be empty, but unique\"\n },\n {\n \"optionInfo\": {\n \"key\": \"key2\",\n \"synonyms\": [\n \"key two\"\n ]\n },\n \"title\": \"must not be empty, but unique\"\n }\n ]\n }\n },\n \"intent\": \"actions.intent.OPTION\"\n }\n}\u003c/pre\u003e" - ], - "description": "Optional. The list of platforms for which the first response will be\ntaken from among the messages assigned to the DEFAULT_PLATFORM." - }, - "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`.", @@ -3500,30 +2493,34 @@ "description": "Optional. The collection of rich messages corresponding to the\n`Response` field in the Dialogflow console.", "type": "array", "items": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessage" - } - }, - "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", - "items": { - "type": "string" + "$ref": "GoogleCloudDialogflowV2beta1IntentMessage" } }, + "action": { + "description": "Optional. The name of the action associated with the intent.", + "type": "string" + }, "webhookState": { - "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", "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" ] }, + "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", + "items": { + "type": "string" + } + }, "followupIntentInfo": { "description": "Optional. Collection of information about all followup intents that have\nname of this intent as a root_name.", "type": "array", @@ -3531,14 +2528,14 @@ "$ref": "GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo" } }, + "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" + }, "displayName": { "description": "Required. The name of this intent.", "type": "string" }, - "rootFollowupIntentName": { - "type": "string", - "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`." - }, "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" @@ -3551,17 +2548,6 @@ "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" }, - "parameters": { - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2beta1IntentParameter" - }, - "description": "Optional. The collection of parameters associated with the intent." - }, - "resetContexts": { - "description": "Optional. Indicates whether to delete all contexts in the current\nsession when this intent is matched.", - "type": "boolean" - }, "trainingPhrases": { "description": "Optional. The collection of examples/templates that the agent is\ntrained on.", "type": "array", @@ -3569,36 +2555,21 @@ "$ref": "GoogleCloudDialogflowV2beta1IntentTrainingPhrase" } }, - "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" + "resetContexts": { + "description": "Optional. Indicates whether to delete all contexts in the current\nsession when this intent is matched.", + "type": "boolean" }, - "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.", + "parameters": { + "description": "Optional. The collection of parameters associated with the intent.", "type": "array", "items": { - "type": "string" + "$ref": "GoogleCloudDialogflowV2beta1IntentParameter" } } }, "id": "GoogleCloudDialogflowV2beta1Intent" }, - "GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse": { - "id": "GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse", - "description": "The response message for EntityTypes.BatchUpdateEntityTypes.", - "type": "object", - "properties": { - "entityTypes": { - "description": "The collection of updated or created entity types.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2beta1EntityType" - } - } - } - }, "GoogleCloudDialogflowV2IntentMessageSuggestion": { - "id": "GoogleCloudDialogflowV2IntentMessageSuggestion", "description": "The suggestion chip message that the user can tap to quickly post a reply\nto the conversation.", "type": "object", "properties": { @@ -3606,20 +2577,13 @@ "description": "Required. The text shown the in the suggestion chip.", "type": "string" } - } + }, + "id": "GoogleCloudDialogflowV2IntentMessageSuggestion" }, "GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart": { "description": "Represents a part of a training phrase.", "type": "object", "properties": { - "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" - }, "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" @@ -3627,6 +2591,14 @@ "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" } }, "id": "GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart" @@ -3635,272 +2607,1300 @@ "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": { - "type": "string", - "description": "Required. The unique identifier of the event." + "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" - }, - "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" - } - }, - "id": "GoogleCloudDialogflowV2beta1EventInput" - }, - "GoogleCloudDialogflowV2beta1IntentMessageListSelectItem": { - "id": "GoogleCloudDialogflowV2beta1IntentMessageListSelectItem", - "description": "An item in the list.", - "type": "object", - "properties": { - "title": { - "description": "Required. The title of the list item.", - "type": "string" - }, - "image": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageImage", - "description": "Optional. The image to display." - }, - "description": { - "description": "Optional. The main text describing the item.", - "type": "string" - }, - "info": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo", - "description": "Required. Additional information about this option." - } - } - }, - "GoogleCloudDialogflowV2InputAudioConfig": { - "id": "GoogleCloudDialogflowV2InputAudioConfig", - "description": "Instructs the speech recognizer how to process the audio content.", - "type": "object", - "properties": { - "sampleRateHertz": { - "description": "Required. Sample rate (in Hertz) of the audio content sent in the query.\nRefer to\n[Cloud Speech API\ndocumentation](https://cloud.google.com/speech-to-text/docs/basics) for\nmore details.", - "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\n[Cloud Speech API\ndocumentation](https://cloud.google.com/speech-to-text/docs/basics#phrase-hints)\nfor more details.", - "type": "array", - "items": { - "type": "string" + "description": "Optional. The collection of parameters associated with the event.", + "type": "object" + } + }, + "id": "GoogleCloudDialogflowV2beta1EventInput" + } + }, + "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": { + "response": { + "$ref": "GoogleCloudDialogflowV2Agent" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "parameters": { + "parent": { + "pattern": "^projects/[^/]+$", + "location": "path", + "description": "Required. The project that the agent to fetch is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/projects/{projectsId}/agent", + "path": "v2/{+parent}/agent", + "id": "dialogflow.projects.getAgent", + "description": "Retrieves the specified agent." + } + }, + "resources": { + "agent": { + "methods": { + "export": { + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "parameters": { + "parent": { + "location": "path", + "description": "Required. The project that the agent to export is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/projects/{projectsId}/agent:export", + "path": "v2/{+parent}/agent:export", + "id": "dialogflow.projects.agent.export", + "description": "Exports the specified agent to a ZIP file.\n\nOperation \u003cresponse: ExportAgentResponse,\n metadata: google.protobuf.Struct\u003e", + "request": { + "$ref": "GoogleCloudDialogflowV2ExportAgentRequest" + } + }, + "restore": { + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "parameters": { + "parent": { + "pattern": "^projects/[^/]+$", + "location": "path", + "description": "Required. The project that the agent to restore is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/projects/{projectsId}/agent:restore", + "path": "v2/{+parent}/agent:restore", + "id": "dialogflow.projects.agent.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", + "request": { + "$ref": "GoogleCloudDialogflowV2RestoreAgentRequest" + } + }, + "import": { + "path": "v2/{+parent}/agent:import", + "id": "dialogflow.projects.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\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", + "request": { + "$ref": "GoogleCloudDialogflowV2ImportAgentRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "parameters": { + "parent": { + "pattern": "^projects/[^/]+$", + "location": "path", + "description": "Required. The project that the agent to import is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/projects/{projectsId}/agent:import" + }, + "search": { + "httpMethod": "GET", + "response": { + "$ref": "GoogleCloudDialogflowV2SearchAgentsResponse" + }, + "parameterOrder": [ + "parent" + ], + "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": { + "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" + ], + "flatPath": "v2/projects/{projectsId}/agent:search", + "id": "dialogflow.projects.agent.search", + "path": "v2/{+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)." + }, + "train": { + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "parameters": { + "parent": { + "location": "path", + "description": "Required. The project that the agent to train is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/projects/{projectsId}/agent:train", + "path": "v2/{+parent}/agent:train", + "id": "dialogflow.projects.agent.train", + "description": "Trains the specified agent.\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", + "request": { + "$ref": "GoogleCloudDialogflowV2TrainAgentRequest" + } + } + }, + "resources": { + "entityTypes": { + "methods": { + "patch": { + "httpMethod": "PATCH", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "GoogleCloudDialogflowV2EntityType" + }, + "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": { + "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/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/projects/{projectsId}/agent/entityTypes/{entityTypesId}", + "id": "dialogflow.projects.agent.entityTypes.patch", + "path": "v2/{+name}", + "description": "Updates the specified entity type.", + "request": { + "$ref": "GoogleCloudDialogflowV2EntityType" + } + }, + "get": { + "path": "v2/{+name}", + "id": "dialogflow.projects.agent.entityTypes.get", + "description": "Retrieves the specified entity type.", + "response": { + "$ref": "GoogleCloudDialogflowV2EntityType" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "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.", + "type": "string", + "location": "query" + }, + "name": { + "location": "path", + "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/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/projects/{projectsId}/agent/entityTypes/{entityTypesId}" + }, + "batchUpdate": { + "description": "Updates/Creates multiple entity types in the specified agent.\n\nOperation \u003cresponse: BatchUpdateEntityTypesResponse,\n metadata: google.protobuf.Struct\u003e", + "request": { + "$ref": "GoogleCloudDialogflowV2BatchUpdateEntityTypesRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "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$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/projects/{projectsId}/agent/entityTypes:batchUpdate", + "path": "v2/{+parent}/entityTypes:batchUpdate", + "id": "dialogflow.projects.agent.entityTypes.batchUpdate" + }, + "delete": { + "flatPath": "v2/projects/{projectsId}/agent/entityTypes/{entityTypesId}", + "path": "v2/{+name}", + "id": "dialogflow.projects.agent.entityTypes.delete", + "description": "Deletes the specified entity type.", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "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" + } + } + }, + "list": { + "flatPath": "v2/projects/{projectsId}/agent/entityTypes", + "path": "v2/{+parent}/entityTypes", + "id": "dialogflow.projects.agent.entityTypes.list", + "description": "Returns the list of all entity types in the specified agent.", + "response": { + "$ref": "GoogleCloudDialogflowV2ListEntityTypesResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "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.", + "type": "string", + "location": "query" + }, + "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" + }, + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "batchDelete": { + "description": "Deletes entity types in the specified agent.\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", + "request": { + "$ref": "GoogleCloudDialogflowV2BatchDeleteEntityTypesRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/projects/{projectsId}/agent/entityTypes:batchDelete", + "id": "dialogflow.projects.agent.entityTypes.batchDelete", + "path": "v2/{+parent}/entityTypes:batchDelete" + }, + "create": { + "response": { + "$ref": "GoogleCloudDialogflowV2EntityType" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "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" + }, + "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$" + } + }, + "flatPath": "v2/projects/{projectsId}/agent/entityTypes", + "path": "v2/{+parent}/entityTypes", + "id": "dialogflow.projects.agent.entityTypes.create", + "request": { + "$ref": "GoogleCloudDialogflowV2EntityType" + }, + "description": "Creates an entity type in the specified agent." + } + }, + "resources": { + "entities": { + "methods": { + "batchUpdate": { + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "parameters": { + "parent": { + "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`.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/projects/{projectsId}/agent/entityTypes/{entityTypesId}/entities:batchUpdate", + "path": "v2/{+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": "GoogleCloudDialogflowV2BatchUpdateEntitiesRequest" + } + }, + "batchDelete": { + "path": "v2/{+parent}/entities:batchDelete", + "id": "dialogflow.projects.agent.entityTypes.entities.batchDelete", + "description": "Deletes entities in the specified entity type.\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", + "request": { + "$ref": "GoogleCloudDialogflowV2BatchDeleteEntitiesRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "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": "v2/projects/{projectsId}/agent/entityTypes/{entityTypesId}/entities:batchDelete" + }, + "batchCreate": { + "path": "v2/{+parent}/entities:batchCreate", + "id": "dialogflow.projects.agent.entityTypes.entities.batchCreate", + "request": { + "$ref": "GoogleCloudDialogflowV2BatchCreateEntitiesRequest" + }, + "description": "Creates multiple new entities in the specified entity type (extends the\nexisting collection of entries).\n\nOperation \u003cresponse: google.protobuf.Empty\u003e", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "v2/projects/{projectsId}/agent/entityTypes/{entityTypesId}/entities:batchCreate" + } + } + } + } + }, + "intents": { + "methods": { + "get": { + "description": "Retrieves the specified intent.", + "httpMethod": "GET", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "GoogleCloudDialogflowV2Intent" + }, + "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": { + "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 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", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/projects/{projectsId}/agent/intents/{intentsId}", + "id": "dialogflow.projects.agent.intents.get", + "path": "v2/{+name}" + }, + "patch": { + "httpMethod": "PATCH", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "GoogleCloudDialogflowV2Intent" + }, + "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": { + "location": "query", + "enum": [ + "INTENT_VIEW_UNSPECIFIED", + "INTENT_VIEW_FULL" + ], + "description": "Optional. The resource view to apply to the returned intent.", + "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.", + "type": "string", + "location": "query" + }, + "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": "v2/projects/{projectsId}/agent/intents/{intentsId}", + "id": "dialogflow.projects.agent.intents.patch", + "path": "v2/{+name}", + "description": "Updates the specified intent.", + "request": { + "$ref": "GoogleCloudDialogflowV2Intent" + } + }, + "batchUpdate": { + "description": "Updates/Creates multiple intents in the specified agent.\n\nOperation \u003cresponse: BatchUpdateIntentsResponse\u003e", + "request": { + "$ref": "GoogleCloudDialogflowV2BatchUpdateIntentsRequest" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "parameters": { + "parent": { + "pattern": "^projects/[^/]+/agent$", + "location": "path", + "description": "Required. The name of the agent to update or create intents in.\nFormat: `projects/\u003cProject ID\u003e/agent`.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/projects/{projectsId}/agent/intents:batchUpdate", + "path": "v2/{+parent}/intents:batchUpdate", + "id": "dialogflow.projects.agent.intents.batchUpdate" + }, + "delete": { + "description": "Deletes the specified intent.", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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": "v2/projects/{projectsId}/agent/intents/{intentsId}", + "path": "v2/{+name}", + "id": "dialogflow.projects.agent.intents.delete" + }, + "list": { + "description": "Returns the list of all intents in the specified agent.", + "response": { + "$ref": "GoogleCloudDialogflowV2ListIntentsResponse" + }, + "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": { + "description": "Required. The agent to list all intents from.\nFormat: `projects/\u003cProject ID\u003e/agent`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/agent$", + "location": "path" + } + }, + "flatPath": "v2/projects/{projectsId}/agent/intents", + "path": "v2/{+parent}/intents", + "id": "dialogflow.projects.agent.intents.list" + }, + "create": { + "response": { + "$ref": "GoogleCloudDialogflowV2Intent" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "intentView": { + "description": "Optional. The resource view to apply to the returned intent.", + "type": "string", + "location": "query", + "enum": [ + "INTENT_VIEW_UNSPECIFIED", + "INTENT_VIEW_FULL" + ] + }, + "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": { + "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.", + "type": "string" + } + }, + "flatPath": "v2/projects/{projectsId}/agent/intents", + "path": "v2/{+parent}/intents", + "id": "dialogflow.projects.agent.intents.create", + "request": { + "$ref": "GoogleCloudDialogflowV2Intent" + }, + "description": "Creates an intent in the specified agent." + }, + "batchDelete": { + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "parameters": { + "parent": { + "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", + "pattern": "^projects/[^/]+/agent$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/projects/{projectsId}/agent/intents:batchDelete", + "path": "v2/{+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": "GoogleCloudDialogflowV2BatchDeleteIntentsRequest" + } + } + } + }, + "sessions": { + "methods": { + "deleteContexts": { + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "parent": { + "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", + "location": "path", + "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" + } + }, + "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/contexts", + "path": "v2/{+parent}/contexts", + "id": "dialogflow.projects.agent.sessions.deleteContexts", + "description": "Deletes all active contexts in the specified session." + }, + "detectIntent": { + "id": "dialogflow.projects.agent.sessions.detectIntent", + "path": "v2/{+session}: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.", + "request": { + "$ref": "GoogleCloudDialogflowV2DetectIntentRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "session" + ], + "response": { + "$ref": "GoogleCloudDialogflowV2DetectIntentResponse" + }, + "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.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}:detectIntent" + } + }, + "resources": { + "entityTypes": { + "methods": { + "list": { + "description": "Returns the list of all session entity types in the specified session.", + "response": { + "$ref": "GoogleCloudDialogflowV2ListSessionEntityTypesResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "parameters": { + "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" + }, + "parent": { + "description": "Required. The session to list all session entity types from.\nFormat: `projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", + "location": "path" + }, + "pageToken": { + "location": "query", + "description": "Optional. The next_page_token value returned from a previous list request.", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes", + "path": "v2/{+parent}/entityTypes", + "id": "dialogflow.projects.agent.sessions.entityTypes.list" + }, + "get": { + "id": "dialogflow.projects.agent.sessions.entityTypes.get", + "path": "v2/{+name}", + "description": "Retrieves the specified session entity type.", + "httpMethod": "GET", + "response": { + "$ref": "GoogleCloudDialogflowV2SessionEntityType" + }, + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "pattern": "^projects/[^/]+/agent/sessions/[^/]+/entityTypes/[^/]+$", + "location": "path", + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes/{entityTypesId}" + }, + "patch": { + "description": "Updates the specified session entity type.", + "request": { + "$ref": "GoogleCloudDialogflowV2SessionEntityType" + }, + "httpMethod": "PATCH", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "GoogleCloudDialogflowV2SessionEntityType" + }, + "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`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+/entityTypes/[^/]+$", + "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": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes/{entityTypesId}", + "id": "dialogflow.projects.agent.sessions.entityTypes.patch", + "path": "v2/{+name}" + }, + "create": { + "id": "dialogflow.projects.agent.sessions.entityTypes.create", + "path": "v2/{+parent}/entityTypes", + "description": "Creates a session entity type.", + "request": { + "$ref": "GoogleCloudDialogflowV2SessionEntityType" + }, + "httpMethod": "POST", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "GoogleCloudDialogflowV2SessionEntityType" + }, + "parameters": { + "parent": { + "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", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes" + }, + "delete": { + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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" + } + }, + "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes/{entityTypesId}", + "path": "v2/{+name}", + "id": "dialogflow.projects.agent.sessions.entityTypes.delete", + "description": "Deletes the specified session entity type." + } + } + }, + "contexts": { + "methods": { + "list": { + "description": "Returns the list of all contexts in the specified session.", + "httpMethod": "GET", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "GoogleCloudDialogflowV2ListContextsResponse" + }, + "parameters": { + "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" + }, + "parent": { + "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/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/contexts", + "id": "dialogflow.projects.agent.sessions.contexts.list", + "path": "v2/{+parent}/contexts" + }, + "get": { + "response": { + "$ref": "GoogleCloudDialogflowV2Context" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "pattern": "^projects/[^/]+/agent/sessions/[^/]+/contexts/[^/]+$", + "location": "path", + "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" + } + }, + "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/contexts/{contextsId}", + "path": "v2/{+name}", + "id": "dialogflow.projects.agent.sessions.contexts.get", + "description": "Retrieves the specified context." + }, + "patch": { + "request": { + "$ref": "GoogleCloudDialogflowV2Context" + }, + "description": "Updates the specified context.", + "response": { + "$ref": "GoogleCloudDialogflowV2Context" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "PATCH", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "updateMask": { + "description": "Optional. The mask to control which fields get updated.", + "format": "google-fieldmask", + "type": "string", + "location": "query" + }, + "name": { + "location": "path", + "description": "Required. The unique identifier 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/[^/]+$" + } + }, + "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/contexts/{contextsId}", + "path": "v2/{+name}", + "id": "dialogflow.projects.agent.sessions.contexts.patch" + }, + "create": { + "request": { + "$ref": "GoogleCloudDialogflowV2Context" + }, + "description": "Creates a context.", + "response": { + "$ref": "GoogleCloudDialogflowV2Context" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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" + } + }, + "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/contexts", + "path": "v2/{+parent}/contexts", + "id": "dialogflow.projects.agent.sessions.contexts.create" + }, + "delete": { + "description": "Deletes the specified context.", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "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`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+/contexts/[^/]+$" + } + }, + "flatPath": "v2/projects/{projectsId}/agent/sessions/{sessionsId}/contexts/{contextsId}", + "path": "v2/{+name}", + "id": "dialogflow.projects.agent.sessions.contexts.delete" + } + } + } + } + } } }, - "audioEncoding": { - "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" - ], - "description": "Required. Audio encoding of the audio content to process." + "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.", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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": "^projects/[^/]+/operations/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2/projects/{projectsId}/operations/{operationsId}", + "path": "v2/{+name}", + "id": "dialogflow.projects.operations.get" + } + } } } + } + }, + "parameters": { + "oauth_token": { + "location": "query", + "description": "OAuth 2.0 token for the current user.", + "type": "string" }, - "GoogleCloudDialogflowV2IntentTrainingPhrasePart": { - "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": { - "type": "boolean", - "description": "Optional. Indicates whether the text was manually annotated by the\ndeveloper." - } - }, - "id": "GoogleCloudDialogflowV2IntentTrainingPhrasePart", - "description": "Represents a part of a training phrase.", - "type": "object" + "bearer_token": { + "description": "OAuth bearer token.", + "type": "string", + "location": "query" }, - "GoogleCloudDialogflowV2BatchUpdateIntentsRequest": { - "id": "GoogleCloudDialogflowV2BatchUpdateIntentsRequest", - "description": "The request message for Intents.BatchUpdateIntents.", - "type": "object", - "properties": { - "intentView": { - "description": "Optional. The resource view to apply to the returned intent.", - "type": "string", - "enumDescriptions": [ - "Training phrases field is not populated in the response.", - "All fields are populated." - ], - "enum": [ - "INTENT_VIEW_UNSPECIFIED", - "INTENT_VIEW_FULL" - ] - }, - "intentBatchInline": { - "$ref": "GoogleCloudDialogflowV2IntentBatch", - "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" - }, - "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" - } - } + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "type": "string", + "location": "query" }, - "GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata": { - "description": "Metadata in google::longrunning::Operation for Knowledge operations.", - "type": "object", - "properties": { - "state": { - "enum": [ - "STATE_UNSPECIFIED", - "PENDING", - "RUNNING", - "DONE" - ], - "description": "Required. The current state of this operation.", - "type": "string", - "enumDescriptions": [ - "State unspecified.", - "The operation has been created.", - "The operation is currently running.", - "The operation is done, either cancelled or completed." - ] - } - }, - "id": "GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata" + "prettyPrint": { + "description": "Returns response with indentations and line breaks.", + "type": "boolean", + "default": "true", + "location": "query" }, - "GoogleCloudDialogflowV2beta1IntentMessage": { - "description": "Corresponds to the `Response` field in the Dialogflow console.", - "type": "object", - "properties": { - "linkOutSuggestion": { - "description": "Displays a link out suggestion chip for Actions on Google.", - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion" - }, - "simpleResponses": { - "description": "Returns a voice or text-only response for Actions on Google.", - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses" - }, - "image": { - "description": "Displays an image.", - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageImage" - }, - "payload": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "Returns a response containing a custom, platform-specific payload.\nSee the Intent.Message.Platform type for a description of the\nstructure that may be required for your platform.", - "type": "object" - }, - "text": { - "description": "Returns a text response.", - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageText" - }, - "suggestions": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSuggestions", - "description": "Displays suggestion chips for Actions on Google." - }, - "platform": { - "description": "Optional. The platform that this message is intended for.", - "type": "string", - "enumDescriptions": [ - "Not specified.", - "Facebook.", - "Slack.", - "Telegram.", - "Kik.", - "Skype.", - "Line.", - "Viber.", - "Actions on Google.\nWhen using Actions on Google, you can choose one of the specific\nIntent.Message types that mention support for Actions on Google,\nor you can use the advanced Intent.Message.payload field.\nThe payload field provides access to AoG features not available in the\nspecific message types.\nIf using the Intent.Message.payload field, it should have a structure\nsimilar to the JSON message shown here. For more information, see\n[Actions on Google Webhook\nFormat](https://developers.google.com/actions/dialogflow/webhook)\n\u003cpre\u003e{\n \"expectUserResponse\": true,\n \"isSsml\": false,\n \"noInputPrompts\": [],\n \"richResponse\": {\n \"items\": [\n {\n \"simpleResponse\": {\n \"displayText\": \"hi\",\n \"textToSpeech\": \"hello\"\n }\n }\n ],\n \"suggestions\": [\n {\n \"title\": \"Say this\"\n },\n {\n \"title\": \"or this\"\n }\n ]\n },\n \"systemIntent\": {\n \"data\": {\n \"@type\": \"type.googleapis.com/google.actions.v2.OptionValueSpec\",\n \"listSelect\": {\n \"items\": [\n {\n \"optionInfo\": {\n \"key\": \"key1\",\n \"synonyms\": [\n \"key one\"\n ]\n },\n \"title\": \"must not be empty, but unique\"\n },\n {\n \"optionInfo\": {\n \"key\": \"key2\",\n \"synonyms\": [\n \"key two\"\n ]\n },\n \"title\": \"must not be empty, but unique\"\n }\n ]\n }\n },\n \"intent\": \"actions.intent.OPTION\"\n }\n}\u003c/pre\u003e" - ], - "enum": [ - "PLATFORM_UNSPECIFIED", - "FACEBOOK", - "SLACK", - "TELEGRAM", - "KIK", - "SKYPE", - "LINE", - "VIBER", - "ACTIONS_ON_GOOGLE" - ] - }, - "listSelect": { - "description": "Displays a list card for Actions on Google.", - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageListSelect" - }, - "quickReplies": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageQuickReplies", - "description": "Displays quick replies." - }, - "card": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageCard", - "description": "Displays a card." - }, - "basicCard": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageBasicCard", - "description": "Displays a basic card for Actions on Google." - }, - "carouselSelect": { - "description": "Displays a carousel card for Actions on Google.", - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect" - } - }, - "id": "GoogleCloudDialogflowV2beta1IntentMessage" + "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": { + "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": { + "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": { + "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" } }, - "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" - } - } - } - } + "version": "v2", + "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": "" } diff --git a/DiscoveryJson/dialogflow_v2beta1.json b/DiscoveryJson/dialogflow_v2beta1.json index 04a404dcf7..c9146ea20f 100644 --- a/DiscoveryJson/dialogflow_v2beta1.json +++ b/DiscoveryJson/dialogflow_v2beta1.json @@ -1,3654 +1,160 @@ { - "schemas": { - "GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo": { - "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": "GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo" - }, - "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`.", - "type": "object", - "properties": { - "simpleResponses": { - "description": "Required. The list of simple responses.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse" - } - } - }, - "id": "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses" - }, - "GoogleCloudDialogflowV2beta1TextInput": { - "description": "Represents the natural language text to be processed.", - "type": "object", - "properties": { - "text": { - "type": "string", - "description": "Required. The UTF-8 encoded natural language text to be processed.\nText length must not exceed 256 bytes." - }, - "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" - } - }, - "id": "GoogleCloudDialogflowV2beta1TextInput" - }, - "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect": { - "description": "The card for presenting a carousel of options to select from.", - "type": "object", - "properties": { - "items": { - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem" + "ownerName": "Google", + "resources": { + "projects": { + "resources": { + "agent": { + "methods": { + "train": { + "request": { + "$ref": "GoogleCloudDialogflowV2beta1TrainAgentRequest" + }, + "description": "Trains the specified agent.\n\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "parent": { + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$", + "location": "path", + "description": "Required. The project that the agent to train is associated with.\nFormat: `projects/\u003cProject ID\u003e`." + } + }, + "flatPath": "v2beta1/projects/{projectsId}/agent:train", + "path": "v2beta1/{+parent}/agent:train", + "id": "dialogflow.projects.agent.train" + }, + "export": { + "request": { + "$ref": "GoogleCloudDialogflowV2beta1ExportAgentRequest" + }, + "description": "Exports the specified agent to a ZIP file.\n\n\nOperation \u003cresponse: ExportAgentResponse,\n metadata: google.protobuf.Struct\u003e", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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" + } + }, + "flatPath": "v2beta1/projects/{projectsId}/agent:export", + "path": "v2beta1/{+parent}/agent:export", + "id": "dialogflow.projects.agent.export" + }, + "restore": { + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "parent": { + "description": "Required. The project that the agent to restore is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2beta1/projects/{projectsId}/agent:restore", + "path": "v2beta1/{+parent}/agent:restore", + "id": "dialogflow.projects.agent.restore", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1RestoreAgentRequest" + }, + "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": { + "httpMethod": "POST", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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/[^/]+$" + } + }, + "flatPath": "v2beta1/projects/{projectsId}/agent:import", + "id": "dialogflow.projects.agent.import", + "path": "v2beta1/{+parent}/agent:import", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1ImportAgentRequest" + }, + "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" + }, + "search": { + "response": { + "$ref": "GoogleCloudDialogflowV2beta1SearchAgentsResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "parent": { + "description": "Required. The project to list agents from.\nFormat: `projects/\u003cProject ID or '-'\u003e`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$", + "location": "path" + }, + "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" + } + }, + "flatPath": "v2beta1/projects/{projectsId}/agent:search", + "path": "v2beta1/{+parent}/agent:search", + "id": "dialogflow.projects.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)." + } }, - "description": "Required. Carousel items." - } - }, - "id": "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect" - }, - "GoogleCloudDialogflowV2beta1BatchDeleteEntitiesRequest": { - "description": "The request message for EntityTypes.BatchDeleteEntities.", - "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" - }, - "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": "GoogleCloudDialogflowV2beta1BatchDeleteEntitiesRequest" - }, - "GoogleCloudDialogflowV2beta1EntityTypeBatch": { - "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": "GoogleCloudDialogflowV2beta1EntityType" - } - } - }, - "id": "GoogleCloudDialogflowV2beta1EntityTypeBatch" - }, - "GoogleCloudDialogflowV2beta1BatchUpdateEntitiesRequest": { - "id": "GoogleCloudDialogflowV2beta1BatchUpdateEntitiesRequest", - "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": "GoogleCloudDialogflowV2beta1EntityTypeEntity" - } - }, - "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": { - "type": "string", - "description": "Optional. The mask to control which fields get updated.", - "format": "google-fieldmask" - } - } - }, - "GoogleCloudDialogflowV2beta1IntentMessageCard": { - "description": "The card response message.", - "type": "object", - "properties": { - "buttons": { - "description": "Optional. The collection of card buttons.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageCardButton" - } - }, - "subtitle": { - "description": "Optional. The subtitle of the card.", - "type": "string" - }, - "imageUri": { - "type": "string", - "description": "Optional. The public URI to an image file for the card." - }, - "title": { - "description": "Optional. The title of the card.", - "type": "string" - } - }, - "id": "GoogleCloudDialogflowV2beta1IntentMessageCard" - }, - "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?”`.", - "type": "object", - "properties": { - "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": { - "description": "Properties of the object.", - "type": "any" - } - }, - "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" - } - }, - "id": "GoogleCloudDialogflowV2EventInput" - }, - "GoogleCloudDialogflowV2beta1IntentMessageSuggestion": { - "description": "The suggestion chip message that the user can tap to quickly post a reply\nto the conversation.", - "type": "object", - "properties": { - "title": { - "description": "Required. The text shown the in the suggestion chip.", - "type": "string" - } - }, - "id": "GoogleCloudDialogflowV2beta1IntentMessageSuggestion" - }, - "GoogleCloudDialogflowV2beta1InputAudioConfig": { - "description": "Instructs the speech recognizer how to process the audio content.", - "type": "object", - "properties": { - "sampleRateHertz": { - "description": "Required. Sample rate (in Hertz) of the audio content sent in the query.\nRefer to\n[Cloud Speech API\ndocumentation](https://cloud.google.com/speech-to-text/docs/basics) for\nmore details.", - "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": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional. The collection of phrase hints which are used to boost accuracy\nof speech recognition.\nRefer to\n[Cloud Speech API\ndocumentation](https://cloud.google.com/speech-to-text/docs/basics#phrase-hints)\nfor more details." - }, - "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": "GoogleCloudDialogflowV2beta1InputAudioConfig" - }, - "GoogleCloudDialogflowV2IntentMessageSuggestions": { - "description": "The collection of suggestions.", - "type": "object", - "properties": { - "suggestions": { - "description": "Required. The list of suggested replies.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2IntentMessageSuggestion" - } - } - }, - "id": "GoogleCloudDialogflowV2IntentMessageSuggestions" - }, - "GoogleCloudDialogflowV2beta1IntentTrainingPhrase": { - "description": "Represents an example or template that the agent is trained on.", - "type": "object", - "properties": { - "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.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart" - } - }, - "name": { - "description": "Required. The unique identifier of this training phrase.", - "type": "string" - }, - "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": { - "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." - ] - } - }, - "id": "GoogleCloudDialogflowV2beta1IntentTrainingPhrase" - }, - "GoogleCloudDialogflowV2IntentMessageSimpleResponses": { - "id": "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`.", - "type": "object", - "properties": { - "simpleResponses": { - "description": "Required. The list of simple responses.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2IntentMessageSimpleResponse" - } - } - } - }, - "GoogleCloudDialogflowV2IntentMessageImage": { - "description": "The image response message.", - "type": "object", - "properties": { - "imageUri": { - "description": "Optional. The public URI to an image file.", - "type": "string" - }, - "accessibilityText": { - "type": "string", - "description": "Optional. A text description of the image to be used for accessibility,\ne.g., screen readers." - } - }, - "id": "GoogleCloudDialogflowV2IntentMessageImage" - }, - "GoogleCloudDialogflowV2IntentMessageText": { - "description": "The text response message.", - "type": "object", - "properties": { - "text": { - "description": "Optional. The collection of the agent's responses.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "GoogleCloudDialogflowV2IntentMessageText" - }, - "GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion": { - "properties": { - "uri": { - "description": "Required. The URI of the app or site to open when the user taps the\nsuggestion chip.", - "type": "string" - }, - "destinationName": { - "description": "Required. The name of the app or site this chip is linking to.", - "type": "string" - } - }, - "id": "GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion", - "description": "The suggestion chip message that allows the user to jump out to the app\nor website associated with this agent.", - "type": "object" - }, - "GoogleCloudDialogflowV2EntityTypeEntity": { - "description": "Optional. Represents an entity.", - "type": "object", - "properties": { - "value": { - "type": "string", - "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)." - }, - "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": "GoogleCloudDialogflowV2EntityTypeEntity" - }, - "GoogleCloudDialogflowV2beta1IntentMessageText": { - "description": "The text response message.", - "type": "object", - "properties": { - "text": { - "description": "Optional. The collection of the agent's responses.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "GoogleCloudDialogflowV2beta1IntentMessageText" - }, - "GoogleCloudDialogflowV2QueryResult": { - "description": "Represents the result of conversational query or event processing.", - "type": "object", - "properties": { - "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\nThis field is not guaranteed to be accurate or set. In particular this\nfield isn't set for StreamingDetectIntent since the streaming endpoint has\nseparate confidence estimates per portion of the audio in\nStreamingRecognitionResult.", - "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": { - "description": "The free-form diagnostic info. For example, this field\ncould contain webhook call latency.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - } - }, - "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`." - }, - "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": "GoogleCloudDialogflowV2Context" - } - }, - "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": "GoogleCloudDialogflowV2IntentMessage" - } - }, - "action": { - "description": "The action name from the matched intent.", - "type": "string" - }, - "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" - }, - "fulfillmentText": { - "description": "The text to be pronounced to the user or shown on the screen.", - "type": "string" - }, - "parameters": { - "description": "The collection of extracted parameters.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - } - } - }, - "id": "GoogleCloudDialogflowV2QueryResult" - }, - "GoogleCloudDialogflowV2IntentMessageCarouselSelect": { - "id": "GoogleCloudDialogflowV2IntentMessageCarouselSelect", - "description": "The card for presenting a carousel of options to select from.", - "type": "object", - "properties": { - "items": { - "description": "Required. Carousel items.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2IntentMessageCarouselSelectItem" - } - } - } - }, - "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", - "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" - } - }, - "id": "GoogleTypeLatLng" - }, - "GoogleCloudDialogflowV2beta1IntentMessageSuggestions": { - "description": "The collection of suggestions.", - "type": "object", - "properties": { - "suggestions": { - "description": "Required. The list of suggested replies.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSuggestion" - } - } - }, - "id": "GoogleCloudDialogflowV2beta1IntentMessageSuggestions" - }, - "GoogleCloudDialogflowV2IntentFollowupIntentInfo": { - "description": "Represents a single followup intent in the chain.", - "type": "object", - "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" - } - }, - "id": "GoogleCloudDialogflowV2IntentFollowupIntentInfo" - }, - "GoogleCloudDialogflowV2beta1IntentMessageQuickReplies": { - "description": "The quick replies response message.", - "type": "object", - "properties": { - "quickReplies": { - "description": "Optional. The collection of quick replies.", - "type": "array", - "items": { - "type": "string" - } - }, - "title": { - "description": "Optional. The title of the collection of quick replies.", - "type": "string" - } - }, - "id": "GoogleCloudDialogflowV2beta1IntentMessageQuickReplies" - }, - "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": { - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" - }, - "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." - } - }, - "id": "GoogleCloudDialogflowV2beta1ListSessionEntityTypesResponse", - "description": "The response message for SessionEntityTypes.ListSessionEntityTypes.", - "type": "object" - }, - "GoogleCloudDialogflowV2EntityType": { - "description": "Represents an entity type.\nEntity types serve as a tool for extracting parameter values from natural\nlanguage queries.", - "type": "object", - "properties": { - "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" - }, - "displayName": { - "description": "Required. The name of the entity.", - "type": "string" - }, - "kind": { - "enum": [ - "KIND_UNSPECIFIED", - "KIND_MAP", - "KIND_LIST" - ], - "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)." - ] - }, - "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." - ] - }, - "entities": { - "description": "Optional. The collection of entities associated with the entity type.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2EntityTypeEntity" - } - } - }, - "id": "GoogleCloudDialogflowV2EntityType" - }, - "GoogleCloudDialogflowV2WebhookRequest": { - "id": "GoogleCloudDialogflowV2WebhookRequest", - "description": "The request message for a webhook call.", - "type": "object", - "properties": { - "queryResult": { - "$ref": "GoogleCloudDialogflowV2QueryResult", - "description": "The result of the conversational query or event processing. Contains the\nsame value as `[Streaming]DetectIntentResponse.query_result`." - }, - "originalDetectIntentRequest": { - "description": "Optional. The contents of the original request that was passed to\n`[Streaming]DetectIntent` call.", - "$ref": "GoogleCloudDialogflowV2OriginalDetectIntentRequest" - }, - "responseId": { - "type": "string", - "description": "The unique identifier of the response. Contains the same value as\n`[Streaming]DetectIntentResponse.response_id`." - }, - "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" - } - } - }, - "GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo": { - "description": "Represents a single followup intent in the chain.", - "type": "object", - "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" - } - }, - "id": "GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo" - }, - "GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesRequest": { - "description": "The request message for EntityTypes.BatchUpdateEntityTypes.", - "type": "object", - "properties": { - "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" - }, - "entityTypeBatchInline": { - "description": "The collection of entity type to update or create.", - "$ref": "GoogleCloudDialogflowV2beta1EntityTypeBatch" - }, - "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" - } - }, - "id": "GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesRequest" - }, - "GoogleCloudDialogflowV2beta1DetectIntentRequest": { - "description": "The request to detect user's intent.", - "type": "object", - "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." - } - }, - "id": "GoogleCloudDialogflowV2beta1DetectIntentRequest" - }, - "GoogleCloudDialogflowV2ExportAgentResponse": { - "description": "The response message for Agents.ExportAgent.", - "type": "object", - "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" - } - }, - "id": "GoogleCloudDialogflowV2ExportAgentResponse" - }, - "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" - } - }, - "id": "GoogleCloudDialogflowV2beta1ImportAgentRequest", - "description": "The request message for Agents.ImportAgent.", - "type": "object" - }, - "GoogleCloudDialogflowV2beta1EntityTypeEntity": { - "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": { - "description": "Required. A collection of synonyms. For `KIND_LIST` entity types this\nmust contain exactly one synonym equal to `value`.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "GoogleCloudDialogflowV2beta1EntityTypeEntity" - }, - "GoogleCloudDialogflowV2beta1BatchUpdateIntentsRequest": { - "description": "The request message for Intents.BatchUpdateIntents.", - "type": "object", - "properties": { - "intentBatchUri": { - "type": "string", - "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://\"." - }, - "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": { - "description": "The collection of intents to update or create.", - "$ref": "GoogleCloudDialogflowV2beta1IntentBatch" - }, - "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": "GoogleCloudDialogflowV2beta1BatchUpdateIntentsRequest" - }, - "GoogleCloudDialogflowV2IntentMessageCardButton": { - "description": "Optional. Contains information about a button.", - "type": "object", - "properties": { - "text": { - "description": "Optional. The text to show on the button.", - "type": "string" - }, - "postback": { - "description": "Optional. The text to send back to the Dialogflow API or a URI to\nopen.", - "type": "string" - } - }, - "id": "GoogleCloudDialogflowV2IntentMessageCardButton" - }, - "GoogleCloudDialogflowV2WebhookResponse": { - "id": "GoogleCloudDialogflowV2WebhookResponse", - "description": "The response message for a webhook call.", - "type": "object", - "properties": { - "source": { - "description": "Optional. This value is passed directly to `QueryResult.webhook_source`.", - "type": "string" - }, - "followupEventInput": { - "$ref": "GoogleCloudDialogflowV2EventInput", - "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": "GoogleCloudDialogflowV2Context" - } - }, - "fulfillmentText": { - "description": "Optional. The text to be shown on the screen. This value is passed directly\nto `QueryResult.fulfillment_text`.", - "type": "string" - }, - "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": "GoogleCloudDialogflowV2IntentMessage" - } - }, - "payload": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "Optional. This value is passed directly to `QueryResult.webhook_payload`.\nSee the related `fulfillment_messages[i].payload field`, which may be used\nas an alternative to this field.\n\nThis field can be used for Actions on Google responses.\nIt should have a structure similar to the JSON message shown here. For more\ninformation, see\n[Actions on Google Webhook\nFormat](https://developers.google.com/actions/dialogflow/webhook)\n\u003cpre\u003e{\n \"google\": {\n \"expectUserResponse\": true,\n \"richResponse\": {\n \"items\": [\n {\n \"simpleResponse\": {\n \"textToSpeech\": \"this is a simple response\"\n }\n }\n ]\n }\n }\n}\u003c/pre\u003e" - } - } - }, - "GoogleCloudDialogflowV2beta1ExportAgentResponse": { - "description": "The response message for Agents.ExportAgent.", - "type": "object", - "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": "GoogleCloudDialogflowV2beta1ExportAgentResponse" - }, - "GoogleCloudDialogflowV2OriginalDetectIntentRequest": { - "description": "Represents the contents of the original request that was passed to\nthe `[Streaming]DetectIntent` call.", - "type": "object", - "properties": { - "payload": { - "description": "Optional. This field is set to the value of `QueryParameters.payload` field\npassed in the request.", - "type": "object", - "additionalProperties": { - "type": "any", - "description": "Properties of the object." - } - }, - "source": { - "description": "The source of this request, e.g., `google`, `facebook`, `slack`. It is set\nby Dialogflow-owned servers.", - "type": "string" - } - }, - "id": "GoogleCloudDialogflowV2OriginalDetectIntentRequest" - }, - "GoogleLongrunningOperation": { - "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": { - "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": "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" - }, - "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" - }, - "GoogleCloudDialogflowV2beta1IntentMessageImage": { - "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": "GoogleCloudDialogflowV2beta1IntentMessageImage", - "description": "The image response message.", - "type": "object" - }, - "GoogleCloudDialogflowV2beta1SearchAgentsResponse": { - "properties": { - "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.", - "type": "string" - }, - "agents": { - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2beta1Agent" - }, - "description": "The list of agents. There will be a maximum number of items returned based\non the page_size field in the request." - } - }, - "id": "GoogleCloudDialogflowV2beta1SearchAgentsResponse", - "description": "The response message for Agents.SearchAgents.", - "type": "object" - }, - "GoogleCloudDialogflowV2IntentMessageSimpleResponse": { - "description": "The simple response message containing speech or text.", - "type": "object", - "properties": { - "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" - }, - "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" - } - }, - "id": "GoogleCloudDialogflowV2IntentMessageSimpleResponse" - }, - "GoogleCloudDialogflowV2IntentMessageCarouselSelectItem": { - "description": "An item in the carousel.", - "type": "object", - "properties": { - "title": { - "type": "string", - "description": "Required. Title of the carousel item." - }, - "image": { - "$ref": "GoogleCloudDialogflowV2IntentMessageImage", - "description": "Optional. The image to display." - }, - "description": { - "description": "Optional. The body text of the card.", - "type": "string" - }, - "info": { - "description": "Required. Additional info about the option item.", - "$ref": "GoogleCloudDialogflowV2IntentMessageSelectItemInfo" - } - }, - "id": "GoogleCloudDialogflowV2IntentMessageCarouselSelectItem" - }, - "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton": { - "description": "The button object that appears at the bottom of a card.", - "type": "object", - "properties": { - "title": { - "description": "Required. The title of the button.", - "type": "string" - }, - "openUriAction": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction", - "description": "Required. Action to take when a user taps on the button." - } - }, - "id": "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton" - }, - "GoogleCloudDialogflowV2beta1Agent": { - "type": "object", - "properties": { - "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" - }, - "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" - }, - "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": { - "description": "Optional. Determines how intents are detected from user queries.", - "type": "string", - "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" - ] - }, - "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": { - "description": "Optional. Determines whether this agent should log conversation queries.", - "type": "boolean" - }, - "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" - } - }, - "id": "GoogleCloudDialogflowV2beta1Agent", - "description": "Represents a conversational agent." - }, - "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.", - "type": "object", - "properties": { - "audioConfig": { - "description": "Instructs the speech recognizer how to process the speech audio.", - "$ref": "GoogleCloudDialogflowV2beta1InputAudioConfig" - }, - "event": { - "$ref": "GoogleCloudDialogflowV2beta1EventInput", - "description": "The event to be processed." - }, - "text": { - "$ref": "GoogleCloudDialogflowV2beta1TextInput", - "description": "The natural language text to be processed." - } - }, - "id": "GoogleCloudDialogflowV2beta1QueryInput" - }, - "GoogleCloudDialogflowV2IntentTrainingPhrase": { - "description": "Represents an example or template that the agent is trained on.", - "type": "object", - "properties": { - "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.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2IntentTrainingPhrasePart" - } - }, - "name": { - "description": "Required. The unique identifier of this training phrase.", - "type": "string" - }, - "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.", - "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." - ], - "enum": [ - "TYPE_UNSPECIFIED", - "EXAMPLE", - "TEMPLATE" - ] - } - }, - "id": "GoogleCloudDialogflowV2IntentTrainingPhrase" - }, - "GoogleCloudDialogflowV2beta1BatchCreateEntitiesRequest": { - "type": "object", - "properties": { - "entities": { - "description": "Required. The collection of entities to create.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2beta1EntityTypeEntity" - } - }, - "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" - } - }, - "id": "GoogleCloudDialogflowV2beta1BatchCreateEntitiesRequest", - "description": "The request message for EntityTypes.BatchCreateEntities." - }, - "GoogleCloudDialogflowV2beta1RestoreAgentRequest": { - "description": "The request message for Agents.RestoreAgent.", - "type": "object", - "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" - } - }, - "id": "GoogleCloudDialogflowV2beta1RestoreAgentRequest" - }, - "GoogleCloudDialogflowV2beta1DetectIntentResponse": { - "type": "object", - "properties": { - "responseId": { - "type": "string", - "description": "The unique identifier of the response. It can be used to\nlocate a response in the training example set or for reporting issues." - }, - "queryResult": { - "$ref": "GoogleCloudDialogflowV2beta1QueryResult", - "description": "The results of the conversational query or event processing." - }, - "webhookStatus": { - "$ref": "GoogleRpcStatus", - "description": "Specifies the status of the webhook request. `webhook_status`\nis never populated in webhook requests." - } - }, - "id": "GoogleCloudDialogflowV2beta1DetectIntentResponse", - "description": "The message returned from the DetectIntent method." - }, - "GoogleCloudDialogflowV2beta1WebhookRequest": { - "description": "The request message for a webhook call.", - "type": "object", - "properties": { - "queryResult": { - "description": "The result of the conversational query or event processing. Contains the\nsame value as `[Streaming]DetectIntentResponse.query_result`.", - "$ref": "GoogleCloudDialogflowV2beta1QueryResult" - }, - "originalDetectIntentRequest": { - "$ref": "GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest", - "description": "Optional. The contents of the original request that was passed to\n`[Streaming]DetectIntent` call." - }, - "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" - } - }, - "id": "GoogleCloudDialogflowV2beta1WebhookRequest" - }, - "GoogleCloudDialogflowV2IntentMessageListSelect": { - "properties": { - "title": { - "description": "Optional. The overall title of the list.", - "type": "string" - }, - "items": { - "description": "Required. List items.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2IntentMessageListSelectItem" - } - } - }, - "id": "GoogleCloudDialogflowV2IntentMessageListSelect", - "description": "The card for presenting a list of options to select from.", - "type": "object" - }, - "GoogleCloudDialogflowV2beta1IntentMessageCardButton": { - "description": "Optional. Contains information about a button.", - "type": "object", - "properties": { - "text": { - "type": "string", - "description": "Optional. The text to show on the button." - }, - "postback": { - "description": "Optional. The text to send back to the Dialogflow API or a URI to\nopen.", - "type": "string" - } - }, - "id": "GoogleCloudDialogflowV2beta1IntentMessageCardButton" - }, - "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" - }, - "GoogleCloudDialogflowV2IntentMessageListSelectItem": { - "description": "An item in the list.", - "type": "object", - "properties": { - "title": { - "description": "Required. The title of the list item.", - "type": "string" - }, - "image": { - "$ref": "GoogleCloudDialogflowV2IntentMessageImage", - "description": "Optional. The image to display." - }, - "description": { - "description": "Optional. The main text describing the item.", - "type": "string" - }, - "info": { - "$ref": "GoogleCloudDialogflowV2IntentMessageSelectItemInfo", - "description": "Required. Additional information about this option." - } - }, - "id": "GoogleCloudDialogflowV2IntentMessageListSelectItem" - }, - "GoogleCloudDialogflowV2beta1BatchDeleteIntentsRequest": { - "id": "GoogleCloudDialogflowV2beta1BatchDeleteIntentsRequest", - "description": "The request message for Intents.BatchDeleteIntents.", - "type": "object", - "properties": { - "intents": { - "description": "Required. The collection of intents to delete. Only intent `name` must be\nfilled in.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2beta1Intent" - } - } - } - }, - "GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest": { - "description": "Represents the contents of the original request that was passed to\nthe `[Streaming]DetectIntent` call.", - "type": "object", - "properties": { - "payload": { - "description": "Optional. This field is set to the value of `QueryParameters.payload` field\npassed in the request.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - } - }, - "source": { - "description": "The source of this request, e.g., `google`, `facebook`, `slack`. It is set\nby Dialogflow-owned servers.", - "type": "string" - } - }, - "id": "GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest" - }, - "GoogleCloudDialogflowV2beta1WebhookResponse": { - "description": "The response message for a webhook call.", - "type": "object", - "properties": { - "source": { - "description": "Optional. This value is passed directly to `QueryResult.webhook_source`.", - "type": "string" - }, - "followupEventInput": { - "$ref": "GoogleCloudDialogflowV2beta1EventInput", - "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": "GoogleCloudDialogflowV2beta1Context" - } - }, - "fulfillmentText": { - "description": "Optional. The text to be shown on the screen. This value is passed directly\nto `QueryResult.fulfillment_text`.", - "type": "string" - }, - "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": "GoogleCloudDialogflowV2beta1IntentMessage" - } - }, - "payload": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "Optional. This value is passed directly to `QueryResult.webhook_payload`.\nSee the related `fulfillment_messages[i].payload field`, which may be used\nas an alternative to this field.\n\nThis field can be used for Actions on Google responses.\nIt should have a structure similar to the JSON message shown here. For more\ninformation, see\n[Actions on Google Webhook\nFormat](https://developers.google.com/actions/dialogflow/webhook)\n\u003cpre\u003e{\n \"google\": {\n \"expectUserResponse\": true,\n \"richResponse\": {\n \"items\": [\n {\n \"simpleResponse\": {\n \"textToSpeech\": \"this is a simple response\"\n }\n }\n ]\n }\n }\n}\u003c/pre\u003e", - "type": "object" - } - }, - "id": "GoogleCloudDialogflowV2beta1WebhookResponse" - }, - "GoogleCloudDialogflowV2IntentMessageSelectItemInfo": { - "id": "GoogleCloudDialogflowV2IntentMessageSelectItemInfo", - "description": "Additional info about the select item for when it is triggered in a\ndialog.", - "type": "object", - "properties": { - "synonyms": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Optional. A list of synonyms that can also be used to trigger this\nitem in dialog." - }, - "key": { - "type": "string", - "description": "Required. A unique key that will be sent back to the agent if this\nresponse is given." - } - } - }, - "GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction": { - "description": "Opens the given URI.", - "type": "object", - "properties": { - "uri": { - "description": "Required. The HTTP or HTTPS scheme URI.", - "type": "string" - } - }, - "id": "GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction" - }, - "GoogleCloudDialogflowV2IntentMessageQuickReplies": { - "description": "The quick replies response message.", - "type": "object", - "properties": { - "title": { - "type": "string", - "description": "Optional. The title of the collection of quick replies." - }, - "quickReplies": { - "description": "Optional. The collection of quick replies.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "GoogleCloudDialogflowV2IntentMessageQuickReplies" - }, - "GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse": { - "id": "GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse", - "description": "The response message for EntityTypes.BatchUpdateEntityTypes.", - "type": "object", - "properties": { - "entityTypes": { - "description": "The collection of updated or created entity types.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2EntityType" - } - } - } - }, - "GoogleCloudDialogflowV2beta1QueryParameters": { - "description": "Represents the parameters of the conversational query.", - "type": "object", - "properties": { - "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" - }, - "geoLocation": { - "description": "Optional. The geo location of this conversational query.", - "$ref": "GoogleTypeLatLng" - }, - "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": "GoogleCloudDialogflowV2beta1Context" - } - }, - "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" - }, - "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": "GoogleCloudDialogflowV2beta1SessionEntityType" - } - } - }, - "id": "GoogleCloudDialogflowV2beta1QueryParameters" - }, - "GoogleCloudDialogflowV2beta1EntityType": { - "description": "Represents an entity type.\nEntity types serve as a tool for extracting parameter values from natural\nlanguage queries.", - "type": "object", - "properties": { - "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" - }, - "displayName": { - "description": "Required. The name of the entity.", - "type": "string" - }, - "kind": { - "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" - ], - "description": "Required. Indicates the kind of entity type." - }, - "autoExpansionMode": { - "enumDescriptions": [ - "Auto expansion disabled for the entity.", - "Allows an agent to recognize values that have not been explicitly\nlisted in the entity." - ], - "enum": [ - "AUTO_EXPANSION_MODE_UNSPECIFIED", - "AUTO_EXPANSION_MODE_DEFAULT" - ], - "description": "Optional. Indicates whether the entity type can be automatically\nexpanded.", - "type": "string" - }, - "entities": { - "description": "Optional. The collection of entities associated with the entity type.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2beta1EntityTypeEntity" - } - } - }, - "id": "GoogleCloudDialogflowV2beta1EntityType" - }, - "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse": { - "properties": { - "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" - }, - "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" - } - }, - "id": "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse", - "description": "The simple response message containing speech or text.", - "type": "object" - }, - "GoogleCloudDialogflowV2beta1SessionEntityType": { - "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`, 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" - }, - "entityOverrideMode": { - "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", - "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." - ] - }, - "entities": { - "description": "Required. The collection of entities associated with this session entity\ntype.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2beta1EntityTypeEntity" - } - } - }, - "id": "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.", - "type": "object" - }, - "GoogleCloudDialogflowV2beta1QueryResult": { - "description": "Represents the result of conversational query or event processing.", - "type": "object", - "properties": { - "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" - }, - "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\nThis field is not guaranteed to be accurate or set. In particular this\nfield isn't set for StreamingDetectIntent since the streaming endpoint has\nseparate confidence estimates per portion of the audio in\nStreamingRecognitionResult.", - "format": "float", - "type": "number" - }, - "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" - }, - "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": "GoogleCloudDialogflowV2beta1Context" - } - }, - "languageCode": { - "type": "string", - "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." - }, - "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`." - }, - "fulfillmentMessages": { - "description": "The collection of rich messages to present to the user.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessage" - } - }, - "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" - }, - "action": { - "type": "string", - "description": "The action name from the matched intent." - }, - "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" - }, - "fulfillmentText": { - "description": "The text to be pronounced to the user or shown on the screen.", - "type": "string" - }, - "parameters": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "The collection of extracted parameters.", - "type": "object" - } - }, - "id": "GoogleCloudDialogflowV2beta1QueryResult" - }, - "GoogleCloudDialogflowV2beta1TrainAgentRequest": { - "properties": {}, - "id": "GoogleCloudDialogflowV2beta1TrainAgentRequest", - "description": "The request message for Agents.TrainAgent.", - "type": "object" - }, - "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem": { - "description": "An item in the carousel.", - "type": "object", - "properties": { - "description": { - "description": "Optional. The body text of the card.", - "type": "string" - }, - "info": { - "description": "Required. Additional info about the option item.", - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo" - }, - "title": { - "description": "Required. Title of the carousel item.", - "type": "string" - }, - "image": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageImage", - "description": "Optional. The image to display." - } - }, - "id": "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem" - }, - "GoogleCloudDialogflowV2Context": { - "description": "Represents a context.", - "type": "object", - "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": { - "type": "string", - "description": "Required. The unique identifier of the context. Format:\n`projects/\u003cProject ID\u003e/agent/sessions/\u003cSession ID\u003e/contexts/\u003cContext ID\u003e`." - }, - "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" - } - }, - "id": "GoogleCloudDialogflowV2Context" - }, - "GoogleCloudDialogflowV2beta1ListContextsResponse": { - "description": "The response message for Contexts.ListContexts.", - "type": "object", - "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": "GoogleCloudDialogflowV2beta1Context" - } - } - }, - "id": "GoogleCloudDialogflowV2beta1ListContextsResponse" - }, - "GoogleCloudDialogflowV2beta1ListEntityTypesResponse": { - "description": "The response message for EntityTypes.ListEntityTypes.", - "type": "object", - "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.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2beta1EntityType" - } - }, - "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.", - "type": "string" - } - }, - "id": "GoogleCloudDialogflowV2beta1ListEntityTypesResponse" - }, - "GoogleCloudDialogflowV2beta1ListIntentsResponse": { - "type": "object", - "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", - "items": { - "$ref": "GoogleCloudDialogflowV2beta1Intent" - } - }, - "nextPageToken": { - "type": "string", - "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list." - } - }, - "id": "GoogleCloudDialogflowV2beta1ListIntentsResponse", - "description": "The response message for Intents.ListIntents." - }, - "GoogleCloudDialogflowV2beta1BatchDeleteEntityTypesRequest": { - "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": "GoogleCloudDialogflowV2beta1BatchDeleteEntityTypesRequest" - }, - "GoogleCloudDialogflowV2BatchUpdateIntentsResponse": { - "type": "object", - "properties": { - "intents": { - "description": "The collection of updated or created intents.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2Intent" - } - } - }, - "id": "GoogleCloudDialogflowV2BatchUpdateIntentsResponse", - "description": "The response message for Intents.BatchUpdateIntents." - }, - "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction": { - "description": "Opens the given URI.", - "type": "object", - "properties": { - "uri": { - "description": "Required. The HTTP or HTTPS scheme URI.", - "type": "string" - } - }, - "id": "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction" - }, - "GoogleCloudDialogflowV2IntentMessage": { - "description": "Corresponds to the `Response` field in the Dialogflow console.", - "type": "object", - "properties": { - "listSelect": { - "description": "The list card response for Actions on Google.", - "$ref": "GoogleCloudDialogflowV2IntentMessageListSelect" - }, - "quickReplies": { - "$ref": "GoogleCloudDialogflowV2IntentMessageQuickReplies", - "description": "The quick replies response." - }, - "card": { - "description": "The card response.", - "$ref": "GoogleCloudDialogflowV2IntentMessageCard" - }, - "basicCard": { - "$ref": "GoogleCloudDialogflowV2IntentMessageBasicCard", - "description": "The basic card response for Actions on Google." - }, - "carouselSelect": { - "$ref": "GoogleCloudDialogflowV2IntentMessageCarouselSelect", - "description": "The carousel card response for Actions on Google." - }, - "linkOutSuggestion": { - "$ref": "GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion", - "description": "The link out suggestion chip for Actions on Google." - }, - "simpleResponses": { - "$ref": "GoogleCloudDialogflowV2IntentMessageSimpleResponses", - "description": "The voice and text-only responses for Actions on Google." - }, - "image": { - "$ref": "GoogleCloudDialogflowV2IntentMessageImage", - "description": "The image response." - }, - "payload": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "Returns a response containing a custom, platform-specific payload.\nSee the Intent.Message.Platform type for a description of the\nstructure that may be required for your platform.", - "type": "object" - }, - "text": { - "description": "The text response.", - "$ref": "GoogleCloudDialogflowV2IntentMessageText" - }, - "platform": { - "description": "Optional. The platform that this message is intended for.", - "type": "string", - "enumDescriptions": [ - "Not specified.", - "Facebook.", - "Slack.", - "Telegram.", - "Kik.", - "Skype.", - "Line.", - "Viber.", - "Actions on Google.\nWhen using Actions on Google, you can choose one of the specific\nIntent.Message types that mention support for Actions on Google,\nor you can use the advanced Intent.Message.payload field.\nThe payload field provides access to AoG features not available in the\nspecific message types.\nIf using the Intent.Message.payload field, it should have a structure\nsimilar to the JSON message shown here. For more information, see\n[Actions on Google Webhook\nFormat](https://developers.google.com/actions/dialogflow/webhook)\n\u003cpre\u003e{\n \"expectUserResponse\": true,\n \"isSsml\": false,\n \"noInputPrompts\": [],\n \"richResponse\": {\n \"items\": [\n {\n \"simpleResponse\": {\n \"displayText\": \"hi\",\n \"textToSpeech\": \"hello\"\n }\n }\n ],\n \"suggestions\": [\n {\n \"title\": \"Say this\"\n },\n {\n \"title\": \"or this\"\n }\n ]\n },\n \"systemIntent\": {\n \"data\": {\n \"@type\": \"type.googleapis.com/google.actions.v2.OptionValueSpec\",\n \"listSelect\": {\n \"items\": [\n {\n \"optionInfo\": {\n \"key\": \"key1\",\n \"synonyms\": [\n \"key one\"\n ]\n },\n \"title\": \"must not be empty, but unique\"\n },\n {\n \"optionInfo\": {\n \"key\": \"key2\",\n \"synonyms\": [\n \"key two\"\n ]\n },\n \"title\": \"must not be empty, but unique\"\n }\n ]\n }\n },\n \"intent\": \"actions.intent.OPTION\"\n }\n}\u003c/pre\u003e" - ], - "enum": [ - "PLATFORM_UNSPECIFIED", - "FACEBOOK", - "SLACK", - "TELEGRAM", - "KIK", - "SKYPE", - "LINE", - "VIBER", - "ACTIONS_ON_GOOGLE" - ] - }, - "suggestions": { - "description": "The suggestion chips for Actions on Google.", - "$ref": "GoogleCloudDialogflowV2IntentMessageSuggestions" - } - }, - "id": "GoogleCloudDialogflowV2IntentMessage" - }, - "GoogleCloudDialogflowV2IntentMessageBasicCard": { - "description": "The basic card message. Useful for displaying information.", - "type": "object", - "properties": { - "title": { - "description": "Optional. The title of the card.", - "type": "string" - }, - "image": { - "description": "Optional. The image for the card.", - "$ref": "GoogleCloudDialogflowV2IntentMessageImage" - }, - "formattedText": { - "type": "string", - "description": "Required, unless image is present. The body text of the card." - }, - "buttons": { - "description": "Optional. The collection of card buttons.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2IntentMessageBasicCardButton" - } - }, - "subtitle": { - "description": "Optional. The subtitle of the card.", - "type": "string" - } - }, - "id": "GoogleCloudDialogflowV2IntentMessageBasicCard" - }, - "GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse": { - "description": "The response message for EntityTypes.BatchUpdateEntityTypes.", - "type": "object", - "properties": { - "entityTypes": { - "description": "The collection of updated or created entity types.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2beta1EntityType" - } - } - }, - "id": "GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse" - }, - "GoogleCloudDialogflowV2beta1Intent": { - "properties": { - "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" - } - }, - "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" - }, - "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": "GoogleCloudDialogflowV2beta1Context" - } - }, - "defaultResponsePlatforms": { - "enumDescriptions": [ - "Not specified.", - "Facebook.", - "Slack.", - "Telegram.", - "Kik.", - "Skype.", - "Line.", - "Viber.", - "Actions on Google.\nWhen using Actions on Google, you can choose one of the specific\nIntent.Message types that mention support for Actions on Google,\nor you can use the advanced Intent.Message.payload field.\nThe payload field provides access to AoG features not available in the\nspecific message types.\nIf using the Intent.Message.payload field, it should have a structure\nsimilar to the JSON message shown here. For more information, see\n[Actions on Google Webhook\nFormat](https://developers.google.com/actions/dialogflow/webhook)\n\u003cpre\u003e{\n \"expectUserResponse\": true,\n \"isSsml\": false,\n \"noInputPrompts\": [],\n \"richResponse\": {\n \"items\": [\n {\n \"simpleResponse\": {\n \"displayText\": \"hi\",\n \"textToSpeech\": \"hello\"\n }\n }\n ],\n \"suggestions\": [\n {\n \"title\": \"Say this\"\n },\n {\n \"title\": \"or this\"\n }\n ]\n },\n \"systemIntent\": {\n \"data\": {\n \"@type\": \"type.googleapis.com/google.actions.v2.OptionValueSpec\",\n \"listSelect\": {\n \"items\": [\n {\n \"optionInfo\": {\n \"key\": \"key1\",\n \"synonyms\": [\n \"key one\"\n ]\n },\n \"title\": \"must not be empty, but unique\"\n },\n {\n \"optionInfo\": {\n \"key\": \"key2\",\n \"synonyms\": [\n \"key two\"\n ]\n },\n \"title\": \"must not be empty, but unique\"\n }\n ]\n }\n },\n \"intent\": \"actions.intent.OPTION\"\n }\n}\u003c/pre\u003e" - ], - "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", - "FACEBOOK", - "SLACK", - "TELEGRAM", - "KIK", - "SKYPE", - "LINE", - "VIBER", - "ACTIONS_ON_GOOGLE" - ], - "type": "string" - } - }, - "messages": { - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessage" - }, - "description": "Optional. The collection of rich messages corresponding to the\n`Response` field in the Dialogflow console." - }, - "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" - }, - "action": { - "description": "Optional. The name of the action associated with the intent.", - "type": "string" - }, - "webhookState": { - "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", - "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." - ] - }, - "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", - "items": { - "type": "string" - } - }, - "followupIntentInfo": { - "description": "Optional. Collection of information about all followup intents that have\nname of this intent as a root_name.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo" - } - }, - "displayName": { - "description": "Required. The name of this intent.", - "type": "string" - }, - "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" - }, - "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" - }, - "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.\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" - }, - "trainingPhrases": { - "description": "Optional. The collection of examples/templates that the agent is\ntrained on.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2beta1IntentTrainingPhrase" - } - }, - "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", - "items": { - "$ref": "GoogleCloudDialogflowV2beta1IntentParameter" - } - } - }, - "id": "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.", - "type": "object" - }, - "GoogleCloudDialogflowV2IntentMessageSuggestion": { - "description": "The suggestion chip message that the user can tap to quickly post a reply\nto the conversation.", - "type": "object", - "properties": { - "title": { - "description": "Required. The text shown the in the suggestion chip.", - "type": "string" - } - }, - "id": "GoogleCloudDialogflowV2IntentMessageSuggestion" - }, - "GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart": { - "properties": { - "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" - }, - "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" - } - }, - "id": "GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart", - "description": "Represents a part of a training phrase.", - "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?”`.", - "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": { - "description": "Properties of the object.", - "type": "any" - } - } - }, - "id": "GoogleCloudDialogflowV2beta1EventInput" - }, - "GoogleCloudDialogflowV2beta1IntentMessageListSelectItem": { - "description": "An item in the list.", - "type": "object", - "properties": { - "title": { - "description": "Required. The title of the list item.", - "type": "string" - }, - "image": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageImage", - "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": "GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo" - } - }, - "id": "GoogleCloudDialogflowV2beta1IntentMessageListSelectItem" - }, - "GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata": { - "description": "Metadata in google::longrunning::Operation for Knowledge operations.", - "type": "object", - "properties": { - "state": { - "description": "Required. The current state of this operation.", - "type": "string", - "enumDescriptions": [ - "State unspecified.", - "The operation has been created.", - "The operation is currently running.", - "The operation is done, either cancelled or completed." - ], - "enum": [ - "STATE_UNSPECIFIED", - "PENDING", - "RUNNING", - "DONE" - ] - } - }, - "id": "GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata" - }, - "GoogleCloudDialogflowV2IntentTrainingPhrasePart": { - "description": "Represents a part of a training phrase.", - "type": "object", - "properties": { - "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" - }, - "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" - } - }, - "id": "GoogleCloudDialogflowV2IntentTrainingPhrasePart" - }, - "GoogleCloudDialogflowV2beta1IntentMessage": { - "type": "object", - "properties": { - "image": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageImage", - "description": "Displays an image." - }, - "payload": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "Returns a response containing a custom, platform-specific payload.\nSee the Intent.Message.Platform type for a description of the\nstructure that may be required for your platform.", - "type": "object" - }, - "text": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageText", - "description": "Returns a text response." - }, - "platform": { - "enumDescriptions": [ - "Not specified.", - "Facebook.", - "Slack.", - "Telegram.", - "Kik.", - "Skype.", - "Line.", - "Viber.", - "Actions on Google.\nWhen using Actions on Google, you can choose one of the specific\nIntent.Message types that mention support for Actions on Google,\nor you can use the advanced Intent.Message.payload field.\nThe payload field provides access to AoG features not available in the\nspecific message types.\nIf using the Intent.Message.payload field, it should have a structure\nsimilar to the JSON message shown here. For more information, see\n[Actions on Google Webhook\nFormat](https://developers.google.com/actions/dialogflow/webhook)\n\u003cpre\u003e{\n \"expectUserResponse\": true,\n \"isSsml\": false,\n \"noInputPrompts\": [],\n \"richResponse\": {\n \"items\": [\n {\n \"simpleResponse\": {\n \"displayText\": \"hi\",\n \"textToSpeech\": \"hello\"\n }\n }\n ],\n \"suggestions\": [\n {\n \"title\": \"Say this\"\n },\n {\n \"title\": \"or this\"\n }\n ]\n },\n \"systemIntent\": {\n \"data\": {\n \"@type\": \"type.googleapis.com/google.actions.v2.OptionValueSpec\",\n \"listSelect\": {\n \"items\": [\n {\n \"optionInfo\": {\n \"key\": \"key1\",\n \"synonyms\": [\n \"key one\"\n ]\n },\n \"title\": \"must not be empty, but unique\"\n },\n {\n \"optionInfo\": {\n \"key\": \"key2\",\n \"synonyms\": [\n \"key two\"\n ]\n },\n \"title\": \"must not be empty, but unique\"\n }\n ]\n }\n },\n \"intent\": \"actions.intent.OPTION\"\n }\n}\u003c/pre\u003e" - ], - "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": "Displays suggestion chips for Actions on Google.", - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSuggestions" - }, - "listSelect": { - "description": "Displays a list card for Actions on Google.", - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageListSelect" - }, - "quickReplies": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageQuickReplies", - "description": "Displays quick replies." - }, - "card": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageCard", - "description": "Displays a card." - }, - "basicCard": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageBasicCard", - "description": "Displays a basic card for Actions on Google." - }, - "carouselSelect": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect", - "description": "Displays a carousel card for Actions on Google." - }, - "linkOutSuggestion": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion", - "description": "Displays a link out suggestion chip for Actions on Google." - }, - "simpleResponses": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses", - "description": "Returns a voice or text-only response for Actions on Google." - } - }, - "id": "GoogleCloudDialogflowV2beta1IntentMessage", - "description": "Corresponds to the `Response` field in the Dialogflow console." - }, - "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.", - "type": "object", - "properties": { - "followupIntentInfo": { - "description": "Optional. Collection of information about all followup intents that have\nname of this intent as a root_name.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2IntentFollowupIntentInfo" - } - }, - "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" - }, - "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" - }, - "isFallback": { - "type": "boolean", - "description": "Optional. Indicates whether this is a fallback intent." - }, - "trainingPhrases": { - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2IntentTrainingPhrase" - }, - "description": "Optional. The collection of examples/templates that the agent is\ntrained on." - }, - "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", - "items": { - "$ref": "GoogleCloudDialogflowV2IntentParameter" - } - }, - "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" - }, - "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": "GoogleCloudDialogflowV2Context" - } - }, - "defaultResponsePlatforms": { - "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", - "FACEBOOK", - "SLACK", - "TELEGRAM", - "KIK", - "SKYPE", - "LINE", - "VIBER", - "ACTIONS_ON_GOOGLE" - ], - "type": "string" - }, - "enumDescriptions": [ - "Not specified.", - "Facebook.", - "Slack.", - "Telegram.", - "Kik.", - "Skype.", - "Line.", - "Viber.", - "Actions on Google.\nWhen using Actions on Google, you can choose one of the specific\nIntent.Message types that mention support for Actions on Google,\nor you can use the advanced Intent.Message.payload field.\nThe payload field provides access to AoG features not available in the\nspecific message types.\nIf using the Intent.Message.payload field, it should have a structure\nsimilar to the JSON message shown here. For more information, see\n[Actions on Google Webhook\nFormat](https://developers.google.com/actions/dialogflow/webhook)\n\u003cpre\u003e{\n \"expectUserResponse\": true,\n \"isSsml\": false,\n \"noInputPrompts\": [],\n \"richResponse\": {\n \"items\": [\n {\n \"simpleResponse\": {\n \"displayText\": \"hi\",\n \"textToSpeech\": \"hello\"\n }\n }\n ],\n \"suggestions\": [\n {\n \"title\": \"Say this\"\n },\n {\n \"title\": \"or this\"\n }\n ]\n },\n \"systemIntent\": {\n \"data\": {\n \"@type\": \"type.googleapis.com/google.actions.v2.OptionValueSpec\",\n \"listSelect\": {\n \"items\": [\n {\n \"optionInfo\": {\n \"key\": \"key1\",\n \"synonyms\": [\n \"key one\"\n ]\n },\n \"title\": \"must not be empty, but unique\"\n },\n {\n \"optionInfo\": {\n \"key\": \"key2\",\n \"synonyms\": [\n \"key two\"\n ]\n },\n \"title\": \"must not be empty, but unique\"\n }\n ]\n }\n },\n \"intent\": \"actions.intent.OPTION\"\n }\n}\u003c/pre\u003e" - ] - }, - "action": { - "description": "Optional. The name of the action associated with the intent.", - "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`.", - "type": "string" - }, - "messages": { - "description": "Optional. The collection of rich messages corresponding to the\n`Response` field in the Dialogflow console.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2IntentMessage" - } - }, - "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", - "items": { - "type": "string" - } - }, - "webhookState": { - "description": "Required. Indicates whether webhooks are enabled for the intent.", - "type": "string", - "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" - ] - } - }, - "id": "GoogleCloudDialogflowV2Intent" - }, - "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" - } - }, - "id": "GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion", - "description": "The suggestion chip message that allows the user to jump out to the app\nor website associated with this agent.", - "type": "object" - }, - "GoogleCloudDialogflowV2beta1IntentParameter": { - "description": "Represents intent parameters.", - "type": "object", - "properties": { - "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" - }, - "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" - } - }, - "mandatory": { - "description": "Optional. Indicates whether the parameter is required. That is,\nwhether the intent cannot be completed without collecting the parameter\nvalue.", - "type": "boolean" - }, - "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" - }, - "name": { - "description": "The unique identifier of this parameter.", - "type": "string" - }, - "isList": { - "description": "Optional. Indicates whether the parameter represents a list of values.", - "type": "boolean" - }, - "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": "GoogleCloudDialogflowV2beta1IntentParameter" - }, - "GoogleCloudDialogflowV2IntentParameter": { - "description": "Represents intent parameters.", - "type": "object", - "properties": { - "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" - }, - "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" - }, - "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": { - "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" - }, - "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": { - "type": "string", - "description": "The unique identifier of this parameter." - }, - "isList": { - "description": "Optional. Indicates whether the parameter represents a list of values.", - "type": "boolean" - } - }, - "id": "GoogleCloudDialogflowV2IntentParameter" - }, - "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": { - "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": "GoogleRpcStatus" - }, - "GoogleCloudDialogflowV2beta1IntentMessageBasicCard": { - "description": "The basic card message. Useful for displaying information.", - "type": "object", - "properties": { - "title": { - "description": "Optional. The title of the card.", - "type": "string" - }, - "image": { - "description": "Optional. The image for the card.", - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageImage" - }, - "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": "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton" - } - }, - "subtitle": { - "description": "Optional. The subtitle of the card.", - "type": "string" - } - }, - "id": "GoogleCloudDialogflowV2beta1IntentMessageBasicCard" - }, - "GoogleCloudDialogflowV2IntentMessageCard": { - "description": "The card response message.", - "type": "object", - "properties": { - "title": { - "type": "string", - "description": "Optional. The title of the card." - }, - "buttons": { - "description": "Optional. The collection of card buttons.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2IntentMessageCardButton" - } - }, - "subtitle": { - "description": "Optional. The subtitle of the card.", - "type": "string" - }, - "imageUri": { - "description": "Optional. The public URI to an image file for the card.", - "type": "string" - } - }, - "id": "GoogleCloudDialogflowV2IntentMessageCard" - }, - "GoogleCloudDialogflowV2beta1ExportAgentRequest": { - "description": "The request message for Agents.ExportAgent.", - "type": "object", - "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" - } - }, - "id": "GoogleCloudDialogflowV2beta1ExportAgentRequest" - }, - "GoogleCloudDialogflowV2beta1IntentMessageListSelect": { - "id": "GoogleCloudDialogflowV2beta1IntentMessageListSelect", - "description": "The card for presenting a list of options to select from.", - "type": "object", - "properties": { - "title": { - "description": "Optional. The overall title of the list.", - "type": "string" - }, - "items": { - "description": "Required. List items.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2beta1IntentMessageListSelectItem" - } - } - } - }, - "GoogleCloudDialogflowV2IntentMessageBasicCardButton": { - "description": "The button object that appears at the bottom of a card.", - "type": "object", - "properties": { - "title": { - "description": "Required. The title of the button.", - "type": "string" - }, - "openUriAction": { - "description": "Required. Action to take when a user taps on the button.", - "$ref": "GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction" - } - }, - "id": "GoogleCloudDialogflowV2IntentMessageBasicCardButton" - }, - "GoogleCloudDialogflowV2beta1IntentBatch": { - "description": "This message is a wrapper around a collection of intents.", - "type": "object", - "properties": { - "intents": { - "description": "A collection of intents.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2beta1Intent" - } - } - }, - "id": "GoogleCloudDialogflowV2beta1IntentBatch" - }, - "GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse": { - "id": "GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse", - "description": "The response message for Intents.BatchUpdateIntents.", - "type": "object", - "properties": { - "intents": { - "description": "The collection of updated or created intents.", - "type": "array", - "items": { - "$ref": "GoogleCloudDialogflowV2beta1Intent" - } - } - } - }, - "GoogleCloudDialogflowV2beta1Context": { - "description": "Represents a context.", - "type": "object", - "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`,\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": { - "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": "GoogleCloudDialogflowV2beta1Context" - } - }, - "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": "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": { - "flatPath": "v2beta1/projects/{projectsId}/agent", - "path": "v2beta1/{+parent}/agent", - "id": "dialogflow.projects.getAgent", - "description": "Retrieves the specified agent.", - "response": { - "$ref": "GoogleCloudDialogflowV2beta1Agent" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "description": "Required. The project that the agent to fetch is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - } - } - }, - "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.", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "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" - ], - "flatPath": "v2beta1/projects/{projectsId}/operations/{operationsId}", - "path": "v2beta1/{+name}", - "id": "dialogflow.projects.operations.get" - } - } - }, - "agent": { - "resources": { - "sessions": { - "resources": { - "entityTypes": { - "methods": { - "create": { - "id": "dialogflow.projects.agent.sessions.entityTypes.create", - "path": "v2beta1/{+parent}/entityTypes", - "description": "Creates a session entity type.", - "request": { - "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" - }, - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" - }, - "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.", - "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}/entityTypes" - }, - "delete": { - "description": "Deletes the specified session entity type.", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/sessions/[^/]+/entityTypes/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes/{entityTypesId}", - "path": "v2beta1/{+name}", - "id": "dialogflow.projects.agent.sessions.entityTypes.delete" - }, - "list": { - "path": "v2beta1/{+parent}/entityTypes", - "id": "dialogflow.projects.agent.sessions.entityTypes.list", - "description": "Returns the list of all session entity types in the specified session.", - "response": { - "$ref": "GoogleCloudDialogflowV2beta1ListSessionEntityTypesResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "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.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", - "location": "path" - }, - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes" - }, - "get": { - "description": "Retrieves the specified session entity type.", - "response": { - "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/agent/sessions/[^/]+/entityTypes/[^/]+$", - "location": "path", - "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.", - "required": true, - "type": "string" - } - }, - "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes/{entityTypesId}", - "path": "v2beta1/{+name}", - "id": "dialogflow.projects.agent.sessions.entityTypes.get" - }, - "patch": { - "request": { - "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" - }, - "description": "Updates the specified session entity type.", - "response": { - "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "location": "path", - "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.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/sessions/[^/]+/entityTypes/[^/]+$" - }, - "updateMask": { - "location": "query", - "description": "Optional. The mask to control which fields get updated.", - "format": "google-fieldmask", - "type": "string" - } - }, - "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes/{entityTypesId}", - "path": "v2beta1/{+name}", - "id": "dialogflow.projects.agent.sessions.entityTypes.patch" - } - } - }, - "contexts": { - "methods": { - "create": { - "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/contexts", - "path": "v2beta1/{+parent}/contexts", - "id": "dialogflow.projects.agent.sessions.contexts.create", - "description": "Creates a context.", - "request": { - "$ref": "GoogleCloudDialogflowV2beta1Context" - }, - "response": { - "$ref": "GoogleCloudDialogflowV2beta1Context" - }, - "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` 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.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "delete": { - "path": "v2beta1/{+name}", - "id": "dialogflow.projects.agent.sessions.contexts.delete", - "description": "Deletes the specified context.", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "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.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/sessions/[^/]+/contexts/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/contexts/{contextsId}" - }, - "list": { - "response": { - "$ref": "GoogleCloudDialogflowV2beta1ListContextsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "location": "path", - "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.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/sessions/[^/]+$" - }, - "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/sessions/{sessionsId}/contexts", - "path": "v2beta1/{+parent}/contexts", - "id": "dialogflow.projects.agent.sessions.contexts.list", - "description": "Returns the list of all contexts in the specified session." - }, - "get": { - "response": { - "$ref": "GoogleCloudDialogflowV2beta1Context" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "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`\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.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/sessions/[^/]+/contexts/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/contexts/{contextsId}", - "path": "v2beta1/{+name}", - "id": "dialogflow.projects.agent.sessions.contexts.get", - "description": "Retrieves the specified context." - }, - "patch": { - "request": { - "$ref": "GoogleCloudDialogflowV2beta1Context" - }, - "description": "Updates the specified context.", - "response": { - "$ref": "GoogleCloudDialogflowV2beta1Context" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "updateMask": { - "location": "query", - "description": "Optional. The mask to control which fields get updated.", - "format": "google-fieldmask", - "type": "string" - }, - "name": { - "location": "path", - "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.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/sessions/[^/]+/contexts/[^/]+$" - } - }, - "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/contexts/{contextsId}", - "path": "v2beta1/{+name}", - "id": "dialogflow.projects.agent.sessions.contexts.patch" - } - } - } - }, - "methods": { - "deleteContexts": { - "id": "dialogflow.projects.agent.sessions.deleteContexts", - "path": "v2beta1/{+parent}/contexts", - "description": "Deletes all active contexts in the specified session.", - "httpMethod": "DELETE", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "parameterOrder": [ - "parent" - ], - "parameters": { - "parent": { - "location": "path", - "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.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/sessions/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/contexts" - }, - "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.", - "request": { - "$ref": "GoogleCloudDialogflowV2beta1DetectIntentRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "session" - ], - "response": { - "$ref": "GoogleCloudDialogflowV2beta1DetectIntentResponse" - }, - "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.", - "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}:detectIntent", - "id": "dialogflow.projects.agent.sessions.detectIntent", - "path": "v2beta1/{+session}:detectIntent" - } - } - }, - "entityTypes": { - "methods": { - "batchUpdate": { - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "parameters": { - "parent": { - "pattern": "^projects/[^/]+/agent$", - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes:batchUpdate", - "id": "dialogflow.projects.agent.entityTypes.batchUpdate", - "path": "v2beta1/{+parent}/entityTypes:batchUpdate", - "description": "Updates/Creates multiple entity types in the specified agent.\n\nOperation \u003cresponse: BatchUpdateEntityTypesResponse,\n metadata: google.protobuf.Struct\u003e", - "request": { - "$ref": "GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesRequest" - } - }, - "delete": { - "httpMethod": "DELETE", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "parameterOrder": [ - "name" - ], - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes/{entityTypesId}", - "id": "dialogflow.projects.agent.entityTypes.delete", - "path": "v2beta1/{+name}", - "description": "Deletes the specified entity type." - }, - "list": { - "description": "Returns the list of all entity types in the specified agent.", - "response": { - "$ref": "GoogleCloudDialogflowV2beta1ListEntityTypesResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "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.", - "type": "string", - "location": "query" - }, - "pageToken": { - "description": "Optional. The next_page_token value returned from a previous list request.", - "type": "string", - "location": "query" - }, - "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" - }, - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes", - "path": "v2beta1/{+parent}/entityTypes", - "id": "dialogflow.projects.agent.entityTypes.list" - }, - "batchDelete": { - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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" - } - }, - "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes:batchDelete", - "path": "v2beta1/{+parent}/entityTypes:batchDelete", - "id": "dialogflow.projects.agent.entityTypes.batchDelete", - "request": { - "$ref": "GoogleCloudDialogflowV2beta1BatchDeleteEntityTypesRequest" - }, - "description": "Deletes entity types in the specified agent.\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e" - }, - "create": { - "id": "dialogflow.projects.agent.entityTypes.create", - "path": "v2beta1/{+parent}/entityTypes", - "description": "Creates an entity type in the specified agent.", - "request": { - "$ref": "GoogleCloudDialogflowV2beta1EntityType" - }, - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GoogleCloudDialogflowV2beta1EntityType" - }, - "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": { - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes" - }, - "patch": { - "request": { - "$ref": "GoogleCloudDialogflowV2beta1EntityType" - }, - "description": "Updates the specified entity type.", - "response": { - "$ref": "GoogleCloudDialogflowV2beta1EntityType" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", - "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" - }, - "languageCode": { - "type": "string", - "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." - }, - "updateMask": { - "location": "query", - "description": "Optional. The mask to control which fields get updated.", - "format": "google-fieldmask", - "type": "string" - } - }, - "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes/{entityTypesId}", - "path": "v2beta1/{+name}", - "id": "dialogflow.projects.agent.entityTypes.patch" - }, - "get": { - "response": { - "$ref": "GoogleCloudDialogflowV2beta1EntityType" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "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.", - "type": "string", - "location": "query" - }, - "name": { - "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", - "location": "path", - "description": "Required. The name of the entity type.\nFormat: `projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntityType ID\u003e`.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes/{entityTypesId}", - "path": "v2beta1/{+name}", - "id": "dialogflow.projects.agent.entityTypes.get", - "description": "Retrieves the specified entity type." - } - }, - "resources": { - "entities": { - "methods": { - "batchUpdate": { - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes/{entityTypesId}/entities:batchUpdate", - "id": "dialogflow.projects.agent.entityTypes.entities.batchUpdate", - "path": "v2beta1/{+parent}/entities:batchUpdate", - "request": { - "$ref": "GoogleCloudDialogflowV2beta1BatchUpdateEntitiesRequest" - }, - "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" - }, - "batchDelete": { - "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes/{entityTypesId}/entities:batchDelete", - "path": "v2beta1/{+parent}/entities:batchDelete", - "id": "dialogflow.projects.agent.entityTypes.entities.batchDelete", - "request": { - "$ref": "GoogleCloudDialogflowV2beta1BatchDeleteEntitiesRequest" - }, - "description": "Deletes entities in the specified entity type.\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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" - } - } - }, - "batchCreate": { - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "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`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/entityTypes/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes/{entityTypesId}/entities:batchCreate", - "path": "v2beta1/{+parent}/entities:batchCreate", - "id": "dialogflow.projects.agent.entityTypes.entities.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": "GoogleCloudDialogflowV2beta1BatchCreateEntitiesRequest" - } - } - } - } - } - }, - "intents": { - "methods": { - "get": { - "flatPath": "v2beta1/projects/{projectsId}/agent/intents/{intentsId}", - "path": "v2beta1/{+name}", - "id": "dialogflow.projects.agent.intents.get", - "description": "Retrieves the specified intent.", - "response": { - "$ref": "GoogleCloudDialogflowV2beta1Intent" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "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" - }, - "name": { - "pattern": "^projects/[^/]+/agent/intents/[^/]+$", - "location": "path", - "description": "Required. The name of the intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", - "required": true, - "type": "string" - } - } - }, - "patch": { - "path": "v2beta1/{+name}", - "id": "dialogflow.projects.agent.intents.patch", - "description": "Updates the specified intent.", - "request": { - "$ref": "GoogleCloudDialogflowV2beta1Intent" - }, - "response": { - "$ref": "GoogleCloudDialogflowV2beta1Intent" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "parameters": { - "name": { - "location": "path", - "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/[^/]+$" - }, - "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 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" - }, - "updateMask": { - "location": "query", - "description": "Optional. The mask to control which fields get updated.", - "format": "google-fieldmask", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent/intents/{intentsId}" - }, - "batchUpdate": { - "description": "Updates/Creates multiple intents in the specified agent.\n\nOperation \u003cresponse: BatchUpdateIntentsResponse\u003e", - "request": { - "$ref": "GoogleCloudDialogflowV2beta1BatchUpdateIntentsRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent/intents:batchUpdate", - "id": "dialogflow.projects.agent.intents.batchUpdate", - "path": "v2beta1/{+parent}/intents:batchUpdate" - }, - "delete": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "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/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2beta1/projects/{projectsId}/agent/intents/{intentsId}", - "path": "v2beta1/{+name}", - "id": "dialogflow.projects.agent.intents.delete", - "description": "Deletes the specified intent.", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE" - }, - "list": { - "description": "Returns the list of all intents in the specified agent.", - "response": { - "$ref": "GoogleCloudDialogflowV2beta1ListIntentsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "intentView": { - "type": "string", - "location": "query", - "enum": [ - "INTENT_VIEW_UNSPECIFIED", - "INTENT_VIEW_FULL" - ], - "description": "Optional. The resource view to apply to the returned intent." - }, - "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" - }, - "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.", - "type": "string", - "location": "query" - }, - "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/intents", - "path": "v2beta1/{+parent}/intents", - "id": "dialogflow.projects.agent.intents.list" - }, - "batchDelete": { - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "parameters": { - "parent": { - "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", - "pattern": "^projects/[^/]+/agent$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent/intents:batchDelete", - "id": "dialogflow.projects.agent.intents.batchDelete", - "path": "v2beta1/{+parent}/intents:batchDelete", - "description": "Deletes intents in the specified agent.\n\nOperation \u003cresponse: google.protobuf.Empty\u003e", - "request": { - "$ref": "GoogleCloudDialogflowV2beta1BatchDeleteIntentsRequest" - } - }, - "create": { - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GoogleCloudDialogflowV2beta1Intent" - }, - "parameters": { - "intentView": { - "description": "Optional. The resource view to apply to the returned intent.", - "type": "string", - "location": "query", - "enum": [ - "INTENT_VIEW_UNSPECIFIED", - "INTENT_VIEW_FULL" - ] - }, - "parent": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent$", - "location": "path", - "description": "Required. The agent to create a intent for.\nFormat: `projects/\u003cProject ID\u003e/agent`." - }, - "languageCode": { - "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.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent/intents", - "id": "dialogflow.projects.agent.intents.create", - "path": "v2beta1/{+parent}/intents", - "description": "Creates an intent in the specified agent.", - "request": { - "$ref": "GoogleCloudDialogflowV2beta1Intent" - } - } - } - }, + "resources": { "environments": { "resources": { "users": { @@ -3656,18 +162,13 @@ "sessions": { "methods": { "deleteContexts": { - "id": "dialogflow.projects.agent.environments.users.sessions.deleteContexts", - "path": "v2beta1/{+parent}/contexts", "description": "Deletes all active contexts in the specified session.", "httpMethod": "DELETE", - "parameterOrder": [ - "parent" - ], "response": { "$ref": "GoogleProtobufEmpty" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "parameterOrder": [ + "parent" ], "parameters": { "parent": { @@ -3678,66 +179,47 @@ "location": "path" } }, - "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/contexts" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/contexts", + "id": "dialogflow.projects.agent.environments.users.sessions.deleteContexts", + "path": "v2beta1/{+parent}/contexts" }, "detectIntent": { - "response": { - "$ref": "GoogleCloudDialogflowV2beta1DetectIntentResponse" + "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}:detectIntent", + "id": "dialogflow.projects.agent.environments.users.sessions.detectIntent", + "path": "v2beta1/{+session}:detectIntent", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1DetectIntentRequest" }, + "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.", + "httpMethod": "POST", "parameterOrder": [ "session" ], - "httpMethod": "POST", + "response": { + "$ref": "GoogleCloudDialogflowV2beta1DetectIntentResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { "session": { - "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`, 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.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+$" + "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+$", + "location": "path" } - }, - "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}:detectIntent", - "path": "v2beta1/{+session}:detectIntent", - "id": "dialogflow.projects.agent.environments.users.sessions.detectIntent", - "request": { - "$ref": "GoogleCloudDialogflowV2beta1DetectIntentRequest" - }, - "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." + } } }, "resources": { "contexts": { "methods": { - "delete": { - "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/contexts/{contextsId}", - "path": "v2beta1/{+name}", - "id": "dialogflow.projects.agent.environments.users.sessions.contexts.delete", - "description": "Deletes the specified context.", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/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`\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.", - "required": true, - "type": "string" - } - } - }, "list": { + "description": "Returns the list of all contexts in the specified session.", "httpMethod": "GET", "parameterOrder": [ "parent" @@ -3750,11 +232,11 @@ ], "parameters": { "parent": { + "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+$", + "location": "path", "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.", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+$", - "location": "path" + "type": "string" }, "pageToken": { "location": "query", @@ -3762,18 +244,21 @@ "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" + "location": "query", + "description": "Optional. The maximum number of items to return in a single page. By\ndefault 100 and at most 1000.", + "format": "int32" } }, "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/contexts", "id": "dialogflow.projects.agent.environments.users.sessions.contexts.list", - "path": "v2beta1/{+parent}/contexts", - "description": "Returns the list of all contexts in the specified session." + "path": "v2beta1/{+parent}/contexts" }, "get": { + "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/contexts/{contextsId}", + "path": "v2beta1/{+name}", + "id": "dialogflow.projects.agent.environments.users.sessions.contexts.get", + "description": "Retrieves the specified context.", "response": { "$ref": "GoogleCloudDialogflowV2beta1Context" }, @@ -3786,19 +271,21 @@ ], "parameters": { "name": { + "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+/contexts/[^/]+$", "location": "path", "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.", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+/contexts/[^/]+$" + "type": "string" } - }, - "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/contexts/{contextsId}", - "path": "v2beta1/{+name}", - "id": "dialogflow.projects.agent.environments.users.sessions.contexts.get", - "description": "Retrieves the specified context." + } }, "patch": { + "path": "v2beta1/{+name}", + "id": "dialogflow.projects.agent.environments.users.sessions.contexts.patch", + "description": "Updates the specified context.", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1Context" + }, "response": { "$ref": "GoogleCloudDialogflowV2beta1Context" }, @@ -3806,47 +293,37 @@ "name" ], "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { "updateMask": { - "type": "string", "location": "query", "description": "Optional. The mask to control which fields get updated.", - "format": "google-fieldmask" + "format": "google-fieldmask", + "type": "string" }, "name": { - "location": "path", - "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.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+/contexts/[^/]+$" + "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+/contexts/[^/]+$", + "location": "path", + "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." } }, - "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/contexts/{contextsId}", - "path": "v2beta1/{+name}", - "id": "dialogflow.projects.agent.environments.users.sessions.contexts.patch", - "request": { - "$ref": "GoogleCloudDialogflowV2beta1Context" - }, - "description": "Updates the specified context." + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/contexts/{contextsId}" }, "create": { - "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/contexts", - "id": "dialogflow.projects.agent.environments.users.sessions.contexts.create", - "path": "v2beta1/{+parent}/contexts", - "description": "Creates a context.", - "request": { + "response": { "$ref": "GoogleCloudDialogflowV2beta1Context" }, - "httpMethod": "POST", "parameterOrder": [ "parent" ], - "response": { - "$ref": "GoogleCloudDialogflowV2beta1Context" - }, + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "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.", @@ -3856,14 +333,14 @@ "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - }, - "entityTypes": { - "methods": { + "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/contexts", + "path": "v2beta1/{+parent}/contexts", + "id": "dialogflow.projects.agent.environments.users.sessions.contexts.create", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1Context" + }, + "description": "Creates a context." + }, "delete": { "response": { "$ref": "GoogleProtobufEmpty" @@ -3877,17 +354,46 @@ ], "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.", + "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.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+/entityTypes/[^/]+$", + "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+/contexts/[^/]+$", "location": "path" } }, + "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/contexts/{contextsId}", + "path": "v2beta1/{+name}", + "id": "dialogflow.projects.agent.environments.users.sessions.contexts.delete", + "description": "Deletes the specified context." + } + } + }, + "entityTypes": { + "methods": { + "delete": { + "description": "Deletes the specified session entity type.", + "httpMethod": "DELETE", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "parameters": { + "name": { + "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+/entityTypes/[^/]+$", + "location": "path", + "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.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/entityTypes/{entityTypesId}", - "path": "v2beta1/{+name}", "id": "dialogflow.projects.agent.environments.users.sessions.entityTypes.delete", - "description": "Deletes the specified session entity type." + "path": "v2beta1/{+name}" }, "list": { "description": "Returns the list of all session entity types in the specified session.", @@ -3898,18 +404,21 @@ "parent" ], "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "parent": { + "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+$", "location": "path", "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.", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+$" + "type": "string" }, "pageToken": { + "location": "query", "description": "Optional. The next_page_token value returned from a previous list request.", - "type": "string", - "location": "query" + "type": "string" }, "pageSize": { "location": "query", @@ -3918,9 +427,6 @@ "type": "integer" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/entityTypes", "path": "v2beta1/{+parent}/entityTypes", "id": "dialogflow.projects.agent.environments.users.sessions.entityTypes.list" @@ -3933,58 +439,65 @@ "name" ], "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "name": { + "required": true, + "type": "string", "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+/entityTypes/[^/]+$", "location": "path", - "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.", - "required": true, - "type": "string" + "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." } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/entityTypes/{entityTypesId}", "path": "v2beta1/{+name}", "id": "dialogflow.projects.agent.environments.users.sessions.entityTypes.get", "description": "Retrieves the specified session entity type." }, "patch": { - "flatPath": "v2beta1/projects/{projectsId}/agent/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/entityTypes/{entityTypesId}", - "path": "v2beta1/{+name}", - "id": "dialogflow.projects.agent.environments.users.sessions.entityTypes.patch", - "description": "Updates the specified session entity type.", - "request": { - "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" - }, - "response": { - "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" - }, + "httpMethod": "PATCH", "parameterOrder": [ "name" ], - "httpMethod": "PATCH", + "response": { + "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" + }, "parameters": { - "updateMask": { - "location": "query", - "description": "Optional. The mask to control which fields get updated.", - "format": "google-fieldmask", - "type": "string" - }, "name": { - "location": "path", "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.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+/entityTypes/[^/]+$" + "pattern": "^projects/[^/]+/agent/environments/[^/]+/users/[^/]+/sessions/[^/]+/entityTypes/[^/]+$", + "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/environments/{environmentsId}/users/{usersId}/sessions/{sessionsId}/entityTypes/{entityTypesId}", + "id": "dialogflow.projects.agent.environments.users.sessions.entityTypes.patch", + "path": "v2beta1/{+name}", + "description": "Updates the specified session entity type.", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" + } }, "create": { + "response": { + "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", "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.", @@ -4003,14 +516,7 @@ "description": "Creates a session entity type.", "request": { "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" - }, - "response": { - "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST" + } } } } @@ -4019,259 +525,3753 @@ } } } + }, + "sessions": { + "methods": { + "deleteContexts": { + "description": "Deletes all active contexts in the specified session.", + "httpMethod": "DELETE", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "parameters": { + "parent": { + "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", + "location": "path", + "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.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/contexts", + "id": "dialogflow.projects.agent.sessions.deleteContexts", + "path": "v2beta1/{+parent}/contexts" + }, + "detectIntent": { + "httpMethod": "POST", + "parameterOrder": [ + "session" + ], + "response": { + "$ref": "GoogleCloudDialogflowV2beta1DetectIntentResponse" + }, + "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.", + "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}:detectIntent", + "id": "dialogflow.projects.agent.sessions.detectIntent", + "path": "v2beta1/{+session}: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.", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1DetectIntentRequest" + } + } + }, + "resources": { + "entityTypes": { + "methods": { + "delete": { + "httpMethod": "DELETE", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "parameters": { + "name": { + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+/entityTypes/[^/]+$", + "location": "path", + "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." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes/{entityTypesId}", + "id": "dialogflow.projects.agent.sessions.entityTypes.delete", + "path": "v2beta1/{+name}", + "description": "Deletes the specified session entity type." + }, + "list": { + "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.", + "response": { + "$ref": "GoogleCloudDialogflowV2beta1ListSessionEntityTypesResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "parameters": { + "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" + }, + "parent": { + "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` 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.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "path": "v2beta1/{+name}", + "id": "dialogflow.projects.agent.sessions.entityTypes.get", + "description": "Retrieves the specified session entity type.", + "response": { + "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+/entityTypes/[^/]+$", + "location": "path", + "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." + } + }, + "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes/{entityTypesId}" + }, + "patch": { + "description": "Updates the specified session entity type.", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" + }, + "httpMethod": "PATCH", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" + }, + "parameters": { + "updateMask": { + "location": "query", + "description": "Optional. The mask to control which fields get updated.", + "format": "google-fieldmask", + "type": "string" + }, + "name": { + "location": "path", + "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.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+/entityTypes/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes/{entityTypesId}", + "id": "dialogflow.projects.agent.sessions.entityTypes.patch", + "path": "v2beta1/{+name}" + }, + "create": { + "request": { + "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" + }, + "description": "Creates a session entity type.", + "response": { + "$ref": "GoogleCloudDialogflowV2beta1SessionEntityType" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "parent": { + "location": "path", + "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.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+$" + } + }, + "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/entityTypes", + "path": "v2beta1/{+parent}/entityTypes", + "id": "dialogflow.projects.agent.sessions.entityTypes.create" + } + } + }, + "contexts": { + "methods": { + "delete": { + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+/contexts/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/contexts/{contextsId}", + "path": "v2beta1/{+name}", + "id": "dialogflow.projects.agent.sessions.contexts.delete", + "description": "Deletes the specified context." + }, + "list": { + "response": { + "$ref": "GoogleCloudDialogflowV2beta1ListContextsResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "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" + }, + "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.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/contexts", + "path": "v2beta1/{+parent}/contexts", + "id": "dialogflow.projects.agent.sessions.contexts.list", + "description": "Returns the list of all contexts in the specified session." + }, + "get": { + "response": { + "$ref": "GoogleCloudDialogflowV2beta1Context" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "pattern": "^projects/[^/]+/agent/sessions/[^/]+/contexts/[^/]+$", + "location": "path", + "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.", + "required": true, + "type": "string" + } + }, + "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/contexts/{contextsId}", + "path": "v2beta1/{+name}", + "id": "dialogflow.projects.agent.sessions.contexts.get", + "description": "Retrieves the specified context." + }, + "patch": { + "response": { + "$ref": "GoogleCloudDialogflowV2beta1Context" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "PATCH", + "parameters": { + "updateMask": { + "type": "string", + "location": "query", + "description": "Optional. The mask to control which fields get updated.", + "format": "google-fieldmask" + }, + "name": { + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+/contexts/[^/]+$", + "location": "path", + "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." + } + }, + "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", + "description": "Updates the specified context.", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1Context" + } + }, + "create": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "parent": { + "location": "path", + "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.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/agent/sessions/[^/]+$" + } + }, + "flatPath": "v2beta1/projects/{projectsId}/agent/sessions/{sessionsId}/contexts", + "path": "v2beta1/{+parent}/contexts", + "id": "dialogflow.projects.agent.sessions.contexts.create", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1Context" + }, + "description": "Creates a context.", + "response": { + "$ref": "GoogleCloudDialogflowV2beta1Context" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST" + } + } + } + } + }, + "entityTypes": { + "methods": { + "batchDelete": { + "request": { + "$ref": "GoogleCloudDialogflowV2beta1BatchDeleteEntityTypesRequest" + }, + "description": "Deletes entity types in the specified agent.\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "parent": { + "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", + "pattern": "^projects/[^/]+/agent$" + } + }, + "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes:batchDelete", + "path": "v2beta1/{+parent}/entityTypes:batchDelete", + "id": "dialogflow.projects.agent.entityTypes.batchDelete" + }, + "create": { + "description": "Creates an entity type in the specified agent.", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1EntityType" + }, + "httpMethod": "POST", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "GoogleCloudDialogflowV2beta1EntityType" + }, + "parameters": { + "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" + }, + "parent": { + "pattern": "^projects/[^/]+/agent$", + "location": "path", + "description": "Required. The agent to create a entity type for.\nFormat: `projects/\u003cProject ID\u003e/agent`.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes", + "id": "dialogflow.projects.agent.entityTypes.create", + "path": "v2beta1/{+parent}/entityTypes" + }, + "patch": { + "httpMethod": "PATCH", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "GoogleCloudDialogflowV2beta1EntityType" + }, + "parameters": { + "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/[^/]+$" + }, + "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": { + "location": "query", + "description": "Optional. The mask to control which fields get updated.", + "format": "google-fieldmask", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes/{entityTypesId}", + "id": "dialogflow.projects.agent.entityTypes.patch", + "path": "v2beta1/{+name}", + "description": "Updates the specified entity type.", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1EntityType" + } + }, + "get": { + "httpMethod": "GET", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "GoogleCloudDialogflowV2beta1EntityType" + }, + "parameters": { + "languageCode": { + "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.", + "type": "string" + }, + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes/{entityTypesId}", + "id": "dialogflow.projects.agent.entityTypes.get", + "path": "v2beta1/{+name}", + "description": "Retrieves the specified entity type." + }, + "batchUpdate": { + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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 entity types in.\nFormat: `projects/\u003cProject ID\u003e/agent`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/agent$", + "location": "path" + } + }, + "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes:batchUpdate", + "path": "v2beta1/{+parent}/entityTypes:batchUpdate", + "id": "dialogflow.projects.agent.entityTypes.batchUpdate", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesRequest" + }, + "description": "Updates/Creates multiple entity types in the specified agent.\n\nOperation \u003cresponse: BatchUpdateEntityTypesResponse,\n metadata: google.protobuf.Struct\u003e" + }, + "delete": { + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "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." + }, + "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": "GoogleCloudDialogflowV2beta1ListEntityTypesResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "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" + }, + "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": { + "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.", + "type": "string", + "location": "query" + }, + "pageToken": { + "location": "query", + "description": "Optional. The next_page_token value returned from a previous list request.", + "type": "string" + } + } + } + }, + "resources": { + "entities": { + "methods": { + "batchUpdate": { + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "parent": { + "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`.", + "required": true, + "type": "string" + } + }, + "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes/{entityTypesId}/entities:batchUpdate", + "path": "v2beta1/{+parent}/entities:batchUpdate", + "id": "dialogflow.projects.agent.entityTypes.entities.batchUpdate", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1BatchUpdateEntitiesRequest" + }, + "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" + }, + "batchDelete": { + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "parameters": { + "parent": { + "required": true, + "type": "string", + "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`." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes/{entityTypesId}/entities:batchDelete", + "path": "v2beta1/{+parent}/entities:batchDelete", + "id": "dialogflow.projects.agent.entityTypes.entities.batchDelete", + "description": "Deletes entities in the specified entity type.\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1BatchDeleteEntitiesRequest" + } + }, + "batchCreate": { + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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 create entities in. Format:\n`projects/\u003cProject ID\u003e/agent/entityTypes/\u003cEntity Type ID\u003e`." + } + }, + "flatPath": "v2beta1/projects/{projectsId}/agent/entityTypes/{entityTypesId}/entities:batchCreate", + "path": "v2beta1/{+parent}/entities:batchCreate", + "id": "dialogflow.projects.agent.entityTypes.entities.batchCreate", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1BatchCreateEntitiesRequest" + }, + "description": "Creates multiple new entities in the specified entity type (extends the\nexisting collection of entries).\n\nOperation \u003cresponse: google.protobuf.Empty\u003e" + } + } + } + } + }, + "intents": { + "methods": { + "patch": { + "httpMethod": "PATCH", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "GoogleCloudDialogflowV2beta1Intent" + }, + "parameters": { + "name": { + "location": "path", + "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/[^/]+$" + }, + "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 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" + }, + "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/intents/{intentsId}", + "id": "dialogflow.projects.agent.intents.patch", + "path": "v2beta1/{+name}", + "description": "Updates the specified intent.", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1Intent" + } + }, + "get": { + "description": "Retrieves the specified intent.", + "response": { + "$ref": "GoogleCloudDialogflowV2beta1Intent" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "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.", + "type": "string", + "location": "query" + }, + "name": { + "pattern": "^projects/[^/]+/agent/intents/[^/]+$", + "location": "path", + "description": "Required. The name of the intent.\nFormat: `projects/\u003cProject ID\u003e/agent/intents/\u003cIntent ID\u003e`.", + "required": true, + "type": "string" + }, + "intentView": { + "description": "Optional. The resource view to apply to the returned intent.", + "type": "string", + "location": "query", + "enum": [ + "INTENT_VIEW_UNSPECIFIED", + "INTENT_VIEW_FULL" + ] + } + }, + "flatPath": "v2beta1/projects/{projectsId}/agent/intents/{intentsId}", + "path": "v2beta1/{+name}", + "id": "dialogflow.projects.agent.intents.get" + }, + "batchUpdate": { + "request": { + "$ref": "GoogleCloudDialogflowV2beta1BatchUpdateIntentsRequest" + }, + "description": "Updates/Creates multiple intents in the specified agent.\n\nOperation \u003cresponse: BatchUpdateIntentsResponse\u003e", + "httpMethod": "POST", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "parent": { + "location": "path", + "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$" + } + }, + "flatPath": "v2beta1/projects/{projectsId}/agent/intents:batchUpdate", + "id": "dialogflow.projects.agent.intents.batchUpdate", + "path": "v2beta1/{+parent}/intents:batchUpdate" + }, + "delete": { + "description": "Deletes the specified intent.", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "parameters": { + "name": { + "pattern": "^projects/[^/]+/agent/intents/[^/]+$", + "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" + } + }, + "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": { + "description": "Returns the list of all intents in the specified agent.", + "response": { + "$ref": "GoogleCloudDialogflowV2beta1ListIntentsResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "parent": { + "description": "Required. The agent to list all intents from.\nFormat: `projects/\u003cProject ID\u003e/agent`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/agent$", + "location": "path" + }, + "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.", + "type": "string", + "location": "query" + }, + "pageToken": { + "type": "string", + "location": "query", + "description": "Optional. The next_page_token value returned from a previous list request." + }, + "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": { + "enum": [ + "INTENT_VIEW_UNSPECIFIED", + "INTENT_VIEW_FULL" + ], + "description": "Optional. The resource view to apply to the returned intent.", + "type": "string", + "location": "query" + } + }, + "flatPath": "v2beta1/projects/{projectsId}/agent/intents", + "path": "v2beta1/{+parent}/intents", + "id": "dialogflow.projects.agent.intents.list" + }, + "batchDelete": { + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "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" + } + }, + "flatPath": "v2beta1/projects/{projectsId}/agent/intents:batchDelete", + "path": "v2beta1/{+parent}/intents:batchDelete", + "id": "dialogflow.projects.agent.intents.batchDelete", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1BatchDeleteIntentsRequest" + }, + "description": "Deletes intents in the specified agent.\n\nOperation \u003cresponse: google.protobuf.Empty\u003e" + }, + "create": { + "response": { + "$ref": "GoogleCloudDialogflowV2beta1Intent" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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": { + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/agent$", + "location": "path", + "description": "Required. The agent to create a intent for.\nFormat: `projects/\u003cProject ID\u003e/agent`." + }, + "languageCode": { + "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.", + "type": "string" + } + }, + "flatPath": "v2beta1/projects/{projectsId}/agent/intents", + "path": "v2beta1/{+parent}/intents", + "id": "dialogflow.projects.agent.intents.create", + "request": { + "$ref": "GoogleCloudDialogflowV2beta1Intent" + }, + "description": "Creates an intent in the specified agent." + } + } + } + } + }, + "operations": { + "methods": { + "get": { + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "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}", + "path": "v2beta1/{+name}", + "id": "dialogflow.projects.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." + } + } + } + }, + "methods": { + "getAgent": { + "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/[^/]+$" } }, - "methods": { - "train": { - "parameters": { - "parent": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "Required. The project that the agent to train is associated with.\nFormat: `projects/\u003cProject ID\u003e`." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2beta1/projects/{projectsId}/agent:train", - "path": "v2beta1/{+parent}/agent:train", - "id": "dialogflow.projects.agent.train", - "description": "Trains the specified agent.\n\n\nOperation \u003cresponse: google.protobuf.Empty,\n metadata: google.protobuf.Struct\u003e", - "request": { - "$ref": "GoogleCloudDialogflowV2beta1TrainAgentRequest" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST" - }, - "export": { - "request": { - "$ref": "GoogleCloudDialogflowV2beta1ExportAgentRequest" - }, - "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": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "location": "path", - "description": "Required. The project that the agent to export is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - } - }, - "flatPath": "v2beta1/projects/{projectsId}/agent:export", - "id": "dialogflow.projects.agent.export", - "path": "v2beta1/{+parent}/agent:export" - }, - "restore": { - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "parameters": { - "parent": { - "description": "Required. The project that the agent to restore 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:restore", - "id": "dialogflow.projects.agent.restore", - "path": "v2beta1/{+parent}/agent: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", - "request": { - "$ref": "GoogleCloudDialogflowV2beta1RestoreAgentRequest" - } - }, - "import": { - "request": { - "$ref": "GoogleCloudDialogflowV2beta1ImportAgentRequest" - }, - "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", - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "description": "Required. The project that the agent to import is associated with.\nFormat: `projects/\u003cProject ID\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2beta1/projects/{projectsId}/agent:import", - "path": "v2beta1/{+parent}/agent:import", - "id": "dialogflow.projects.agent.import" - }, - "search": { - "path": "v2beta1/{+parent}/agent:search", - "id": "dialogflow.projects.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).", - "response": { - "$ref": "GoogleCloudDialogflowV2beta1SearchAgentsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "description": "Required. The project to list agents from.\nFormat: `projects/\u003cProject ID or '-'\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - }, - "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" - } - }, - "flatPath": "v2beta1/projects/{projectsId}/agent:search" - } + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2beta1/projects/{projectsId}/agent", + "id": "dialogflow.projects.getAgent", + "path": "v2beta1/{+parent}/agent", + "description": "Retrieves the specified agent.", + "httpMethod": "GET", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "GoogleCloudDialogflowV2beta1Agent" + } + } + } + } + }, + "parameters": { + "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": { + "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": { + "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": { + "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." + } + }, + "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": "20180504", + "id": "dialogflow:v2beta1", + "documentationLink": "https://cloud.google.com/dialogflow-enterprise/", + "discoveryVersion": "v1", + "version_module": true, + "schemas": { + "GoogleLongrunningOperation": { + "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": { + "$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" + } + }, + "id": "GoogleLongrunningOperation", + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call." + }, + "GoogleCloudDialogflowV2beta1IntentMessageImage": { + "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": "GoogleCloudDialogflowV2beta1IntentMessageImage" + }, + "GoogleCloudDialogflowV2beta1SearchAgentsResponse": { + "description": "The response message for Agents.SearchAgents.", + "type": "object", + "properties": { + "nextPageToken": { + "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.", + "type": "string" + }, + "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": "GoogleCloudDialogflowV2beta1Agent" + } + } + }, + "id": "GoogleCloudDialogflowV2beta1SearchAgentsResponse" + }, + "GoogleCloudDialogflowV2IntentMessageCarouselSelectItem": { + "description": "An item in the carousel.", + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Optional. The body text of the card." + }, + "info": { + "$ref": "GoogleCloudDialogflowV2IntentMessageSelectItemInfo", + "description": "Required. Additional info about the option item." + }, + "title": { + "description": "Required. Title of the carousel item.", + "type": "string" + }, + "image": { + "$ref": "GoogleCloudDialogflowV2IntentMessageImage", + "description": "Optional. The image to display." + } + }, + "id": "GoogleCloudDialogflowV2IntentMessageCarouselSelectItem" + }, + "GoogleCloudDialogflowV2IntentMessageSimpleResponse": { + "description": "The simple response message containing speech or text.", + "type": "object", + "properties": { + "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" + }, + "ssml": { + "type": "string", + "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." + }, + "displayText": { + "type": "string", + "description": "Optional. The text to display." + } + }, + "id": "GoogleCloudDialogflowV2IntentMessageSimpleResponse" + }, + "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton": { + "id": "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton", + "description": "The button object that appears at the bottom of a card.", + "type": "object", + "properties": { + "title": { + "description": "Required. The title of the button.", + "type": "string" + }, + "openUriAction": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction", + "description": "Required. Action to take when a user taps on the button." + } + } + }, + "GoogleCloudDialogflowV2beta1Agent": { + "type": "object", + "properties": { + "displayName": { + "description": "Required. The name of this agent.", + "type": "string" + }, + "description": { + "type": "string", + "description": "Optional. The description of this agent.\nThe maximum length is 500 characters. If exceeded, the request is rejected." + }, + "parent": { + "description": "Required. The project of this agent.\nFormat: `projects/\u003cProject ID\u003e`.", + "type": "string" + }, + "matchMode": { + "enum": [ + "MATCH_MODE_UNSPECIFIED", + "MATCH_MODE_HYBRID", + "MATCH_MODE_ML_ONLY" + ], + "description": "Optional. Determines how intents are detected from user queries.", + "type": "string", + "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." + ] + }, + "enableLogging": { + "description": "Optional. Determines whether this agent should log conversation queries.", + "type": "boolean" + }, + "supportedLanguageCodes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Optional. The list of all languages supported by this agent (except for the\n`default_language_code`)." + }, + "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" + }, + "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": "GoogleCloudDialogflowV2beta1Agent", + "description": "Represents a conversational agent." + }, + "GoogleCloudDialogflowV2beta1QueryInput": { + "type": "object", + "properties": { + "event": { + "$ref": "GoogleCloudDialogflowV2beta1EventInput", + "description": "The event to be processed." + }, + "text": { + "description": "The natural language text to be processed.", + "$ref": "GoogleCloudDialogflowV2beta1TextInput" + }, + "audioConfig": { + "description": "Instructs the speech recognizer how to process the speech audio.", + "$ref": "GoogleCloudDialogflowV2beta1InputAudioConfig" + } + }, + "id": "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." + }, + "GoogleCloudDialogflowV2IntentTrainingPhrase": { + "description": "Represents an example or template that the agent is trained on.", + "type": "object", + "properties": { + "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.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentTrainingPhrasePart" + } + }, + "name": { + "description": "Required. The unique identifier of this training phrase.", + "type": "string" + }, + "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": { + "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." + ], + "enum": [ + "TYPE_UNSPECIFIED", + "EXAMPLE", + "TEMPLATE" + ], + "description": "Required. The type of the training phrase.", + "type": "string" + } + }, + "id": "GoogleCloudDialogflowV2IntentTrainingPhrase" + }, + "GoogleCloudDialogflowV2beta1BatchCreateEntitiesRequest": { + "description": "The request message for EntityTypes.BatchCreateEntities.", + "type": "object", + "properties": { + "entities": { + "description": "Required. The collection of entities to create.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1EntityTypeEntity" + } + }, + "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" + } + }, + "id": "GoogleCloudDialogflowV2beta1BatchCreateEntitiesRequest" + }, + "GoogleCloudDialogflowV2beta1RestoreAgentRequest": { + "id": "GoogleCloudDialogflowV2beta1RestoreAgentRequest", + "description": "The request message for Agents.RestoreAgent.", + "type": "object", + "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" + } + } + }, + "GoogleCloudDialogflowV2beta1DetectIntentResponse": { + "properties": { + "webhookStatus": { + "$ref": "GoogleRpcStatus", + "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" + }, + "queryResult": { + "description": "The results of the conversational query or event processing.", + "$ref": "GoogleCloudDialogflowV2beta1QueryResult" + } + }, + "id": "GoogleCloudDialogflowV2beta1DetectIntentResponse", + "description": "The message returned from the DetectIntent method.", + "type": "object" + }, + "GoogleCloudDialogflowV2beta1WebhookRequest": { + "description": "The request message for a webhook call.", + "type": "object", + "properties": { + "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" + }, + "queryResult": { + "description": "The result of the conversational query or event processing. Contains the\nsame value as `[Streaming]DetectIntentResponse.query_result`.", + "$ref": "GoogleCloudDialogflowV2beta1QueryResult" + }, + "originalDetectIntentRequest": { + "description": "Optional. The contents of the original request that was passed to\n`[Streaming]DetectIntent` call.", + "$ref": "GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest" + } + }, + "id": "GoogleCloudDialogflowV2beta1WebhookRequest" + }, + "GoogleCloudDialogflowV2IntentMessageListSelect": { + "description": "The card for presenting a list of options to select from.", + "type": "object", + "properties": { + "title": { + "type": "string", + "description": "Optional. The overall title of the list." + }, + "items": { + "description": "Required. List items.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentMessageListSelectItem" + } + } + }, + "id": "GoogleCloudDialogflowV2IntentMessageListSelect" + }, + "GoogleCloudDialogflowV2beta1IntentMessageCardButton": { + "description": "Optional. Contains information about a button.", + "type": "object", + "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" + } + }, + "id": "GoogleCloudDialogflowV2beta1IntentMessageCardButton" + }, + "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" + }, + "GoogleCloudDialogflowV2IntentMessageListSelectItem": { + "properties": { + "title": { + "description": "Required. The title of the list item.", + "type": "string" + }, + "image": { + "description": "Optional. The image to display.", + "$ref": "GoogleCloudDialogflowV2IntentMessageImage" + }, + "description": { + "description": "Optional. The main text describing the item.", + "type": "string" + }, + "info": { + "$ref": "GoogleCloudDialogflowV2IntentMessageSelectItemInfo", + "description": "Required. Additional information about this option." + } + }, + "id": "GoogleCloudDialogflowV2IntentMessageListSelectItem", + "description": "An item in the list.", + "type": "object" + }, + "GoogleCloudDialogflowV2beta1BatchDeleteIntentsRequest": { + "description": "The request message for Intents.BatchDeleteIntents.", + "type": "object", + "properties": { + "intents": { + "description": "Required. The collection of intents to delete. Only intent `name` must be\nfilled in.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1Intent" + } + } + }, + "id": "GoogleCloudDialogflowV2beta1BatchDeleteIntentsRequest" + }, + "GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest": { + "description": "Represents the contents of the original request that was passed to\nthe `[Streaming]DetectIntent` call.", + "type": "object", + "properties": { + "payload": { + "description": "Optional. This field is set to the value of `QueryParameters.payload` field\npassed in the request.", + "type": "object", + "additionalProperties": { + "type": "any", + "description": "Properties of the object." + } + }, + "source": { + "description": "The source of this request, e.g., `google`, `facebook`, `slack`. It is set\nby Dialogflow-owned servers.", + "type": "string" + } + }, + "id": "GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest" + }, + "GoogleCloudDialogflowV2beta1WebhookResponse": { + "description": "The response message for a webhook call.", + "type": "object", + "properties": { + "source": { + "type": "string", + "description": "Optional. This value is passed directly to `QueryResult.webhook_source`." + }, + "followupEventInput": { + "description": "Optional. Makes the platform immediately invoke another `DetectIntent` call\ninternally with the specified event as input.", + "$ref": "GoogleCloudDialogflowV2beta1EventInput" + }, + "outputContexts": { + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1Context" + }, + "description": "Optional. The collection of output contexts. This value is passed directly\nto `QueryResult.output_contexts`." + }, + "fulfillmentText": { + "description": "Optional. The text to be shown on the screen. This value is passed directly\nto `QueryResult.fulfillment_text`.", + "type": "string" + }, + "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": "GoogleCloudDialogflowV2beta1IntentMessage" + } + }, + "payload": { + "description": "Optional. This value is passed directly to `QueryResult.webhook_payload`.\nSee the related `fulfillment_messages[i].payload field`, which may be used\nas an alternative to this field.\n\nThis field can be used for Actions on Google responses.\nIt should have a structure similar to the JSON message shown here. For more\ninformation, see\n[Actions on Google Webhook\nFormat](https://developers.google.com/actions/dialogflow/webhook)\n\u003cpre\u003e{\n \"google\": {\n \"expectUserResponse\": true,\n \"richResponse\": {\n \"items\": [\n {\n \"simpleResponse\": {\n \"textToSpeech\": \"this is a simple response\"\n }\n }\n ]\n }\n }\n}\u003c/pre\u003e", + "type": "object", + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + } + } + }, + "id": "GoogleCloudDialogflowV2beta1WebhookResponse" + }, + "GoogleCloudDialogflowV2IntentMessageSelectItemInfo": { + "properties": { + "synonyms": { + "description": "Optional. A list of synonyms that can also be used to trigger this\nitem in dialog.", + "type": "array", + "items": { + "type": "string" + } + }, + "key": { + "description": "Required. A unique key that will be sent back to the agent if this\nresponse is given.", + "type": "string" + } + }, + "id": "GoogleCloudDialogflowV2IntentMessageSelectItemInfo", + "description": "Additional info about the select item for when it is triggered in a\ndialog.", + "type": "object" + }, + "GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction": { + "id": "GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction", + "description": "Opens the given URI.", + "type": "object", + "properties": { + "uri": { + "description": "Required. The HTTP or HTTPS scheme URI.", + "type": "string" + } + } + }, + "GoogleCloudDialogflowV2IntentMessageQuickReplies": { + "id": "GoogleCloudDialogflowV2IntentMessageQuickReplies", + "description": "The quick replies response message.", + "type": "object", + "properties": { + "quickReplies": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Optional. The collection of quick replies." + }, + "title": { + "description": "Optional. The title of the collection of quick replies.", + "type": "string" + } + } + }, + "GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse": { + "description": "The response message for EntityTypes.BatchUpdateEntityTypes.", + "type": "object", + "properties": { + "entityTypes": { + "description": "The collection of updated or created entity types.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2EntityType" + } + } + }, + "id": "GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse" + }, + "GoogleCloudDialogflowV2beta1EntityType": { + "description": "Represents an entity type.\nEntity types serve as a tool for extracting parameter values from natural\nlanguage queries.", + "type": "object", + "properties": { + "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" + }, + "displayName": { + "description": "Required. The name of the entity.", + "type": "string" + }, + "kind": { + "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" + ], + "description": "Required. Indicates the kind of entity type." + }, + "autoExpansionMode": { + "enumDescriptions": [ + "Auto expansion disabled for the entity.", + "Allows an agent to recognize values that have not been explicitly\nlisted in the entity." + ], + "enum": [ + "AUTO_EXPANSION_MODE_UNSPECIFIED", + "AUTO_EXPANSION_MODE_DEFAULT" + ], + "description": "Optional. Indicates whether the entity type can be automatically\nexpanded.", + "type": "string" + }, + "entities": { + "description": "Optional. The collection of entities associated with the entity type.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1EntityTypeEntity" + } + } + }, + "id": "GoogleCloudDialogflowV2beta1EntityType" + }, + "GoogleCloudDialogflowV2beta1QueryParameters": { + "description": "Represents the parameters of the conversational query.", + "type": "object", + "properties": { + "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" + }, + "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": "GoogleCloudDialogflowV2beta1SessionEntityType" + } + }, + "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" + }, + "geoLocation": { + "description": "Optional. The geo location of this conversational query.", + "$ref": "GoogleTypeLatLng" + }, + "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": "GoogleCloudDialogflowV2beta1Context" + } + } + }, + "id": "GoogleCloudDialogflowV2beta1QueryParameters" + }, + "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse": { + "properties": { + "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" + }, + "ssml": { + "type": "string", + "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." + }, + "displayText": { + "description": "Optional. The text to display.", + "type": "string" + } + }, + "id": "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse", + "description": "The simple response message containing speech or text.", + "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.", + "type": "object", + "properties": { + "name": { + "type": "string", + "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." + }, + "entityOverrideMode": { + "type": "string", + "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." + }, + "entities": { + "description": "Required. The collection of entities associated with this session entity\ntype.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1EntityTypeEntity" + } + } + }, + "id": "GoogleCloudDialogflowV2beta1SessionEntityType" + }, + "GoogleCloudDialogflowV2beta1QueryResult": { + "description": "Represents the result of conversational query or event processing.", + "type": "object", + "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" + }, + "fulfillmentText": { + "description": "The text to be pronounced to the user or shown on the screen.", + "type": "string" + }, + "parameters": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "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": { + "type": "boolean", + "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." + }, + "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\nThis field is not guaranteed to be accurate or set. In particular this\nfield isn't set for StreamingDetectIntent since the streaming endpoint has\nseparate confidence estimates per portion of the audio in\nStreamingRecognitionResult.", + "format": "float", + "type": "number" + }, + "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" + }, + "languageCode": { + "type": "string", + "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." + }, + "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`.", + "$ref": "GoogleCloudDialogflowV2beta1Intent" + }, + "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": "GoogleCloudDialogflowV2beta1Context" + } + }, + "fulfillmentMessages": { + "description": "The collection of rich messages to present to the user.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessage" + } + }, + "webhookPayload": { + "additionalProperties": { + "type": "any", + "description": "Properties of the object." + }, + "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" + }, + "action": { + "description": "The action name from the matched intent.", + "type": "string" + } + }, + "id": "GoogleCloudDialogflowV2beta1QueryResult" + }, + "GoogleCloudDialogflowV2beta1TrainAgentRequest": { + "description": "The request message for Agents.TrainAgent.", + "type": "object", + "properties": {}, + "id": "GoogleCloudDialogflowV2beta1TrainAgentRequest" + }, + "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem": { + "properties": { + "description": { + "description": "Optional. The body text of the card.", + "type": "string" + }, + "info": { + "description": "Required. Additional info about the option item.", + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo" + }, + "title": { + "description": "Required. Title of the carousel item.", + "type": "string" + }, + "image": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageImage", + "description": "Optional. The image to display." + } + }, + "id": "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem", + "description": "An item in the carousel.", + "type": "object" + }, + "GoogleCloudDialogflowV2Context": { + "id": "GoogleCloudDialogflowV2Context", + "description": "Represents a context.", + "type": "object", + "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": { + "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" + } + } + } + }, + "GoogleCloudDialogflowV2beta1ListContextsResponse": { + "description": "The response message for Contexts.ListContexts.", + "type": "object", + "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": "GoogleCloudDialogflowV2beta1Context" + } + } + }, + "id": "GoogleCloudDialogflowV2beta1ListContextsResponse" + }, + "GoogleCloudDialogflowV2beta1ListEntityTypesResponse": { + "description": "The response message for EntityTypes.ListEntityTypes.", + "type": "object", + "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.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1EntityType" + } + }, + "nextPageToken": { + "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.", + "type": "string" + } + }, + "id": "GoogleCloudDialogflowV2beta1ListEntityTypesResponse" + }, + "GoogleCloudDialogflowV2beta1ListIntentsResponse": { + "type": "object", + "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", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1Intent" + } + }, + "nextPageToken": { + "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.", + "type": "string" + } + }, + "id": "GoogleCloudDialogflowV2beta1ListIntentsResponse", + "description": "The response message for Intents.ListIntents." + }, + "GoogleCloudDialogflowV2beta1BatchDeleteEntityTypesRequest": { + "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": "GoogleCloudDialogflowV2beta1BatchDeleteEntityTypesRequest", + "description": "The request message for EntityTypes.BatchDeleteEntityTypes." + }, + "GoogleCloudDialogflowV2BatchUpdateIntentsResponse": { + "description": "The response message for Intents.BatchUpdateIntents.", + "type": "object", + "properties": { + "intents": { + "description": "The collection of updated or created intents.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2Intent" + } + } + }, + "id": "GoogleCloudDialogflowV2BatchUpdateIntentsResponse" + }, + "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction": { + "description": "Opens the given URI.", + "type": "object", + "properties": { + "uri": { + "description": "Required. The HTTP or HTTPS scheme URI.", + "type": "string" + } + }, + "id": "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction" + }, + "GoogleCloudDialogflowV2IntentMessage": { + "description": "Corresponds to the `Response` field in the Dialogflow console.", + "type": "object", + "properties": { + "carouselSelect": { + "$ref": "GoogleCloudDialogflowV2IntentMessageCarouselSelect", + "description": "The carousel card response for Actions on Google." + }, + "linkOutSuggestion": { + "description": "The link out suggestion chip for Actions on Google.", + "$ref": "GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion" + }, + "simpleResponses": { + "description": "The voice and text-only responses for Actions on Google.", + "$ref": "GoogleCloudDialogflowV2IntentMessageSimpleResponses" + }, + "image": { + "$ref": "GoogleCloudDialogflowV2IntentMessageImage", + "description": "The image response." + }, + "payload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Returns a response containing a custom, platform-specific payload.\nSee the Intent.Message.Platform type for a description of the\nstructure that may be required for your platform.", + "type": "object" + }, + "text": { + "$ref": "GoogleCloudDialogflowV2IntentMessageText", + "description": "The text response." + }, + "platform": { + "enumDescriptions": [ + "Not specified.", + "Facebook.", + "Slack.", + "Telegram.", + "Kik.", + "Skype.", + "Line.", + "Viber.", + "Actions on Google.\nWhen using Actions on Google, you can choose one of the specific\nIntent.Message types that mention support for Actions on Google,\nor you can use the advanced Intent.Message.payload field.\nThe payload field provides access to AoG features not available in the\nspecific message types.\nIf using the Intent.Message.payload field, it should have a structure\nsimilar to the JSON message shown here. For more information, see\n[Actions on Google Webhook\nFormat](https://developers.google.com/actions/dialogflow/webhook)\n\u003cpre\u003e{\n \"expectUserResponse\": true,\n \"isSsml\": false,\n \"noInputPrompts\": [],\n \"richResponse\": {\n \"items\": [\n {\n \"simpleResponse\": {\n \"displayText\": \"hi\",\n \"textToSpeech\": \"hello\"\n }\n }\n ],\n \"suggestions\": [\n {\n \"title\": \"Say this\"\n },\n {\n \"title\": \"or this\"\n }\n ]\n },\n \"systemIntent\": {\n \"data\": {\n \"@type\": \"type.googleapis.com/google.actions.v2.OptionValueSpec\",\n \"listSelect\": {\n \"items\": [\n {\n \"optionInfo\": {\n \"key\": \"key1\",\n \"synonyms\": [\n \"key one\"\n ]\n },\n \"title\": \"must not be empty, but unique\"\n },\n {\n \"optionInfo\": {\n \"key\": \"key2\",\n \"synonyms\": [\n \"key two\"\n ]\n },\n \"title\": \"must not be empty, but unique\"\n }\n ]\n }\n },\n \"intent\": \"actions.intent.OPTION\"\n }\n}\u003c/pre\u003e" + ], + "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": { + "$ref": "GoogleCloudDialogflowV2IntentMessageSuggestions", + "description": "The suggestion chips for Actions on Google." + }, + "listSelect": { + "$ref": "GoogleCloudDialogflowV2IntentMessageListSelect", + "description": "The list card response for Actions on Google." + }, + "quickReplies": { + "description": "The quick replies response.", + "$ref": "GoogleCloudDialogflowV2IntentMessageQuickReplies" + }, + "card": { + "description": "The card response.", + "$ref": "GoogleCloudDialogflowV2IntentMessageCard" + }, + "basicCard": { + "$ref": "GoogleCloudDialogflowV2IntentMessageBasicCard", + "description": "The basic card response for Actions on Google." + } + }, + "id": "GoogleCloudDialogflowV2IntentMessage" + }, + "GoogleCloudDialogflowV2IntentMessageBasicCard": { + "type": "object", + "properties": { + "title": { + "description": "Optional. The title of the card.", + "type": "string" + }, + "image": { + "description": "Optional. The image for the card.", + "$ref": "GoogleCloudDialogflowV2IntentMessageImage" + }, + "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": "GoogleCloudDialogflowV2IntentMessageBasicCardButton" + } + }, + "subtitle": { + "description": "Optional. The subtitle of the card.", + "type": "string" + } + }, + "id": "GoogleCloudDialogflowV2IntentMessageBasicCard", + "description": "The basic card message. Useful for displaying information." + }, + "GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse": { + "description": "The response message for EntityTypes.BatchUpdateEntityTypes.", + "type": "object", + "properties": { + "entityTypes": { + "description": "The collection of updated or created entity types.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1EntityType" + } + } + }, + "id": "GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse" + }, + "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.", + "type": "object", + "properties": { + "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" + } + }, + "parentFollowupIntentName": { + "type": "string", + "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`." + }, + "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": "GoogleCloudDialogflowV2beta1Context" + } + }, + "defaultResponsePlatforms": { + "type": "array", + "items": { + "enum": [ + "PLATFORM_UNSPECIFIED", + "FACEBOOK", + "SLACK", + "TELEGRAM", + "KIK", + "SKYPE", + "LINE", + "VIBER", + "ACTIONS_ON_GOOGLE" + ], + "type": "string" + }, + "enumDescriptions": [ + "Not specified.", + "Facebook.", + "Slack.", + "Telegram.", + "Kik.", + "Skype.", + "Line.", + "Viber.", + "Actions on Google.\nWhen using Actions on Google, you can choose one of the specific\nIntent.Message types that mention support for Actions on Google,\nor you can use the advanced Intent.Message.payload field.\nThe payload field provides access to AoG features not available in the\nspecific message types.\nIf using the Intent.Message.payload field, it should have a structure\nsimilar to the JSON message shown here. For more information, see\n[Actions on Google Webhook\nFormat](https://developers.google.com/actions/dialogflow/webhook)\n\u003cpre\u003e{\n \"expectUserResponse\": true,\n \"isSsml\": false,\n \"noInputPrompts\": [],\n \"richResponse\": {\n \"items\": [\n {\n \"simpleResponse\": {\n \"displayText\": \"hi\",\n \"textToSpeech\": \"hello\"\n }\n }\n ],\n \"suggestions\": [\n {\n \"title\": \"Say this\"\n },\n {\n \"title\": \"or this\"\n }\n ]\n },\n \"systemIntent\": {\n \"data\": {\n \"@type\": \"type.googleapis.com/google.actions.v2.OptionValueSpec\",\n \"listSelect\": {\n \"items\": [\n {\n \"optionInfo\": {\n \"key\": \"key1\",\n \"synonyms\": [\n \"key one\"\n ]\n },\n \"title\": \"must not be empty, but unique\"\n },\n {\n \"optionInfo\": {\n \"key\": \"key2\",\n \"synonyms\": [\n \"key two\"\n ]\n },\n \"title\": \"must not be empty, but unique\"\n }\n ]\n }\n },\n \"intent\": \"actions.intent.OPTION\"\n }\n}\u003c/pre\u003e" + ], + "description": "Optional. The list of platforms for which the first response will be\ntaken from among the messages assigned to the DEFAULT_PLATFORM." + }, + "action": { + "description": "Optional. The name of the action associated with the intent.", + "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`.", + "type": "string" + }, + "messages": { + "description": "Optional. The collection of rich messages corresponding to the\n`Response` field in the Dialogflow console.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessage" + } + }, + "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" + }, + "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", + "items": { + "type": "string" + } + }, + "followupIntentInfo": { + "description": "Optional. Collection of information about all followup intents that have\nname of this intent as a root_name.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo" + } + }, + "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" + }, + "displayName": { + "description": "Required. The name of this intent.", + "type": "string" + }, + "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" + }, + "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.\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" + }, + "trainingPhrases": { + "description": "Optional. The collection of examples/templates that the agent is\ntrained on.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentTrainingPhrase" + } + }, + "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", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentParameter" + } + } + }, + "id": "GoogleCloudDialogflowV2beta1Intent" + }, + "GoogleCloudDialogflowV2IntentMessageSuggestion": { + "description": "The suggestion chip message that the user can tap to quickly post a reply\nto the conversation.", + "type": "object", + "properties": { + "title": { + "description": "Required. The text shown the in the suggestion chip.", + "type": "string" + } + }, + "id": "GoogleCloudDialogflowV2IntentMessageSuggestion" + }, + "GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart": { + "description": "Represents a part of a training phrase.", + "type": "object", + "properties": { + "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" + }, + "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" + } + }, + "id": "GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart" + }, + "GoogleCloudDialogflowV2beta1EventInput": { + "properties": { + "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" + }, + "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" + } + }, + "id": "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?”`.", + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageListSelectItem": { + "description": "An item in the list.", + "type": "object", + "properties": { + "title": { + "description": "Required. The title of the list item.", + "type": "string" + }, + "image": { + "description": "Optional. The image to display.", + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageImage" + }, + "description": { + "description": "Optional. The main text describing the item.", + "type": "string" + }, + "info": { + "description": "Required. Additional information about this option.", + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo" + } + }, + "id": "GoogleCloudDialogflowV2beta1IntentMessageListSelectItem" + }, + "GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata": { + "description": "Metadata in google::longrunning::Operation for Knowledge operations.", + "type": "object", + "properties": { + "state": { + "enum": [ + "STATE_UNSPECIFIED", + "PENDING", + "RUNNING", + "DONE" + ], + "description": "Required. The current state of this operation.", + "type": "string", + "enumDescriptions": [ + "State unspecified.", + "The operation has been created.", + "The operation is currently running.", + "The operation is done, either cancelled or completed." + ] + } + }, + "id": "GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata" + }, + "GoogleCloudDialogflowV2IntentTrainingPhrasePart": { + "id": "GoogleCloudDialogflowV2IntentTrainingPhrasePart", + "description": "Represents a part of a training phrase.", + "type": "object", + "properties": { + "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" + }, + "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" + } + } + }, + "GoogleCloudDialogflowV2beta1IntentMessage": { + "id": "GoogleCloudDialogflowV2beta1IntentMessage", + "description": "Corresponds to the `Response` field in the Dialogflow console.", + "type": "object", + "properties": { + "image": { + "description": "Displays an image.", + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageImage" + }, + "payload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Returns a response containing a custom, platform-specific payload.\nSee the Intent.Message.Platform type for a description of the\nstructure that may be required for your platform.", + "type": "object" + }, + "text": { + "description": "Returns a text response.", + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageText" + }, + "suggestions": { + "description": "Displays suggestion chips for Actions on Google.", + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSuggestions" + }, + "platform": { + "description": "Optional. The platform that this message is intended for.", + "type": "string", + "enumDescriptions": [ + "Not specified.", + "Facebook.", + "Slack.", + "Telegram.", + "Kik.", + "Skype.", + "Line.", + "Viber.", + "Actions on Google.\nWhen using Actions on Google, you can choose one of the specific\nIntent.Message types that mention support for Actions on Google,\nor you can use the advanced Intent.Message.payload field.\nThe payload field provides access to AoG features not available in the\nspecific message types.\nIf using the Intent.Message.payload field, it should have a structure\nsimilar to the JSON message shown here. For more information, see\n[Actions on Google Webhook\nFormat](https://developers.google.com/actions/dialogflow/webhook)\n\u003cpre\u003e{\n \"expectUserResponse\": true,\n \"isSsml\": false,\n \"noInputPrompts\": [],\n \"richResponse\": {\n \"items\": [\n {\n \"simpleResponse\": {\n \"displayText\": \"hi\",\n \"textToSpeech\": \"hello\"\n }\n }\n ],\n \"suggestions\": [\n {\n \"title\": \"Say this\"\n },\n {\n \"title\": \"or this\"\n }\n ]\n },\n \"systemIntent\": {\n \"data\": {\n \"@type\": \"type.googleapis.com/google.actions.v2.OptionValueSpec\",\n \"listSelect\": {\n \"items\": [\n {\n \"optionInfo\": {\n \"key\": \"key1\",\n \"synonyms\": [\n \"key one\"\n ]\n },\n \"title\": \"must not be empty, but unique\"\n },\n {\n \"optionInfo\": {\n \"key\": \"key2\",\n \"synonyms\": [\n \"key two\"\n ]\n },\n \"title\": \"must not be empty, but unique\"\n }\n ]\n }\n },\n \"intent\": \"actions.intent.OPTION\"\n }\n}\u003c/pre\u003e" + ], + "enum": [ + "PLATFORM_UNSPECIFIED", + "FACEBOOK", + "SLACK", + "TELEGRAM", + "KIK", + "SKYPE", + "LINE", + "VIBER", + "ACTIONS_ON_GOOGLE" + ] + }, + "listSelect": { + "description": "Displays a list card for Actions on Google.", + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageListSelect" + }, + "quickReplies": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageQuickReplies", + "description": "Displays quick replies." + }, + "card": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageCard", + "description": "Displays a card." + }, + "basicCard": { + "description": "Displays a basic card for Actions on Google.", + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageBasicCard" + }, + "carouselSelect": { + "description": "Displays a carousel card for Actions on Google.", + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect" + }, + "linkOutSuggestion": { + "description": "Displays a link out suggestion chip for Actions on Google.", + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion" + }, + "simpleResponses": { + "description": "Returns a voice or text-only response for Actions on Google.", + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses" + } + } + }, + "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.", + "type": "object", + "properties": { + "defaultResponsePlatforms": { + "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", + "FACEBOOK", + "SLACK", + "TELEGRAM", + "KIK", + "SKYPE", + "LINE", + "VIBER", + "ACTIONS_ON_GOOGLE" + ], + "type": "string" + }, + "enumDescriptions": [ + "Not specified.", + "Facebook.", + "Slack.", + "Telegram.", + "Kik.", + "Skype.", + "Line.", + "Viber.", + "Actions on Google.\nWhen using Actions on Google, you can choose one of the specific\nIntent.Message types that mention support for Actions on Google,\nor you can use the advanced Intent.Message.payload field.\nThe payload field provides access to AoG features not available in the\nspecific message types.\nIf using the Intent.Message.payload field, it should have a structure\nsimilar to the JSON message shown here. For more information, see\n[Actions on Google Webhook\nFormat](https://developers.google.com/actions/dialogflow/webhook)\n\u003cpre\u003e{\n \"expectUserResponse\": true,\n \"isSsml\": false,\n \"noInputPrompts\": [],\n \"richResponse\": {\n \"items\": [\n {\n \"simpleResponse\": {\n \"displayText\": \"hi\",\n \"textToSpeech\": \"hello\"\n }\n }\n ],\n \"suggestions\": [\n {\n \"title\": \"Say this\"\n },\n {\n \"title\": \"or this\"\n }\n ]\n },\n \"systemIntent\": {\n \"data\": {\n \"@type\": \"type.googleapis.com/google.actions.v2.OptionValueSpec\",\n \"listSelect\": {\n \"items\": [\n {\n \"optionInfo\": {\n \"key\": \"key1\",\n \"synonyms\": [\n \"key one\"\n ]\n },\n \"title\": \"must not be empty, but unique\"\n },\n {\n \"optionInfo\": {\n \"key\": \"key2\",\n \"synonyms\": [\n \"key two\"\n ]\n },\n \"title\": \"must not be empty, but unique\"\n }\n ]\n }\n },\n \"intent\": \"actions.intent.OPTION\"\n }\n}\u003c/pre\u003e" + ] + }, + "messages": { + "description": "Optional. The collection of rich messages corresponding to the\n`Response` field in the Dialogflow console.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentMessage" + } + }, + "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" + }, + "action": { + "description": "Optional. The name of the action associated with the intent.", + "type": "string" + }, + "webhookState": { + "type": "string", + "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." + }, + "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", + "items": { + "type": "string" + } + }, + "followupIntentInfo": { + "description": "Optional. Collection of information about all followup intents that have\nname of this intent as a root_name.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentFollowupIntentInfo" + } + }, + "displayName": { + "description": "Required. The name of this intent.", + "type": "string" + }, + "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" + }, + "mlDisabled": { + "type": "boolean", + "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." + }, + "isFallback": { + "description": "Optional. Indicates whether this is a fallback intent.", + "type": "boolean" + }, + "trainingPhrases": { + "description": "Optional. The collection of examples/templates that the agent is\ntrained on.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentTrainingPhrase" + } + }, + "resetContexts": { + "description": "Optional. Indicates whether to delete all contexts in the current\nsession when this intent is matched.", + "type": "boolean" + }, + "parameters": { + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentParameter" + }, + "description": "Optional. The collection of parameters associated with the intent." + }, + "events": { + "type": "array", + "items": { + "type": "string" + }, + "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." + }, + "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" + }, + "outputContexts": { + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2Context" + }, + "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`." + } + }, + "id": "GoogleCloudDialogflowV2Intent" + }, + "GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion": { + "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": "GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion", + "description": "The suggestion chip message that allows the user to jump out to the app\nor website associated with this agent." + }, + "GoogleCloudDialogflowV2beta1IntentParameter": { + "description": "Represents intent parameters.", + "type": "object", + "properties": { + "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" + }, + "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" + }, + "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" + } + }, + "mandatory": { + "description": "Optional. Indicates whether the parameter is required. That is,\nwhether the intent cannot be completed without collecting the parameter\nvalue.", + "type": "boolean" + }, + "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" + }, + "name": { + "description": "The unique identifier of this parameter.", + "type": "string" + }, + "isList": { + "type": "boolean", + "description": "Optional. Indicates whether the parameter represents a list of values." + } + }, + "id": "GoogleCloudDialogflowV2beta1IntentParameter" + }, + "GoogleCloudDialogflowV2IntentParameter": { + "id": "GoogleCloudDialogflowV2IntentParameter", + "description": "Represents intent parameters.", + "type": "object", + "properties": { + "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" + }, + "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": { + "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" + }, + "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": { + "type": "string", + "description": "The unique identifier of this parameter." + }, + "isList": { + "type": "boolean", + "description": "Optional. Indicates whether the parameter represents a list of values." + }, + "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" + } + } + }, + "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" + }, + "GoogleCloudDialogflowV2beta1IntentMessageBasicCard": { + "type": "object", + "properties": { + "title": { + "description": "Optional. The title of the card.", + "type": "string" + }, + "image": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageImage", + "description": "Optional. The image for the card." + }, + "formattedText": { + "description": "Required, unless image is present. The body text of the card.", + "type": "string" + }, + "buttons": { + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton" + }, + "description": "Optional. The collection of card buttons." + }, + "subtitle": { + "description": "Optional. The subtitle of the card.", + "type": "string" + } + }, + "id": "GoogleCloudDialogflowV2beta1IntentMessageBasicCard", + "description": "The basic card message. Useful for displaying information." + }, + "GoogleCloudDialogflowV2IntentMessageCard": { + "description": "The card response message.", + "type": "object", + "properties": { + "title": { + "description": "Optional. The title of the card.", + "type": "string" + }, + "buttons": { + "description": "Optional. The collection of card buttons.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentMessageCardButton" + } + }, + "subtitle": { + "description": "Optional. The subtitle of the card.", + "type": "string" + }, + "imageUri": { + "description": "Optional. The public URI to an image file for the card.", + "type": "string" + } + }, + "id": "GoogleCloudDialogflowV2IntentMessageCard" + }, + "GoogleCloudDialogflowV2beta1ExportAgentRequest": { + "type": "object", + "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" + } + }, + "id": "GoogleCloudDialogflowV2beta1ExportAgentRequest", + "description": "The request message for Agents.ExportAgent." + }, + "GoogleCloudDialogflowV2beta1IntentMessageListSelect": { + "description": "The card for presenting a list of options to select from.", + "type": "object", + "properties": { + "items": { + "description": "Required. List items.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageListSelectItem" + } + }, + "title": { + "description": "Optional. The overall title of the list.", + "type": "string" + } + }, + "id": "GoogleCloudDialogflowV2beta1IntentMessageListSelect" + }, + "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" + } + }, + "id": "GoogleCloudDialogflowV2IntentMessageBasicCardButton", + "description": "The button object that appears at the bottom of a card.", + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentBatch": { + "description": "This message is a wrapper around a collection of intents.", + "type": "object", + "properties": { + "intents": { + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1Intent" + }, + "description": "A collection of intents." + } + }, + "id": "GoogleCloudDialogflowV2beta1IntentBatch" + }, + "GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse": { + "description": "The response message for Intents.BatchUpdateIntents.", + "type": "object", + "properties": { + "intents": { + "description": "The collection of updated or created intents.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1Intent" + } + } + }, + "id": "GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse" + }, + "GoogleCloudDialogflowV2beta1Context": { + "id": "GoogleCloudDialogflowV2beta1Context", + "description": "Represents a context.", + "type": "object", + "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" + } + } + }, + "GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo": { + "type": "object", + "properties": { + "synonyms": { + "description": "Optional. A list of synonyms that can also be used to trigger this\nitem in dialog.", + "type": "array", + "items": { + "type": "string" + } + }, + "key": { + "description": "Required. A unique key that will be sent back to the agent if this\nresponse is given.", + "type": "string" + } + }, + "id": "GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo", + "description": "Additional info about the select item for when it is triggered in a\ndialog." + }, + "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`.", + "type": "object", + "properties": { + "simpleResponses": { + "description": "Required. The list of simple responses.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse" + } + } + }, + "id": "GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses" + }, + "GoogleCloudDialogflowV2beta1TextInput": { + "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" + } + }, + "id": "GoogleCloudDialogflowV2beta1TextInput", + "description": "Represents the natural language text to be processed." + }, + "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect": { + "id": "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect", + "description": "The card for presenting a carousel of options to select from.", + "type": "object", + "properties": { + "items": { + "description": "Required. Carousel items.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem" + } + } + } + }, + "GoogleCloudDialogflowV2beta1BatchDeleteEntitiesRequest": { + "description": "The request message for EntityTypes.BatchDeleteEntities.", + "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" + }, + "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": "GoogleCloudDialogflowV2beta1BatchDeleteEntitiesRequest" + }, + "GoogleCloudDialogflowV2beta1EntityTypeBatch": { + "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": "GoogleCloudDialogflowV2beta1EntityType" + } + } + }, + "id": "GoogleCloudDialogflowV2beta1EntityTypeBatch" + }, + "GoogleCloudDialogflowV2beta1BatchUpdateEntitiesRequest": { + "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": "GoogleCloudDialogflowV2beta1EntityTypeEntity" + } + }, + "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": "GoogleCloudDialogflowV2beta1BatchUpdateEntitiesRequest" + }, + "GoogleCloudDialogflowV2beta1IntentMessageCard": { + "description": "The card response message.", + "type": "object", + "properties": { + "title": { + "description": "Optional. The title of the card.", + "type": "string" + }, + "buttons": { + "description": "Optional. The collection of card buttons.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageCardButton" + } + }, + "subtitle": { + "description": "Optional. The subtitle of the card.", + "type": "string" + }, + "imageUri": { + "type": "string", + "description": "Optional. The public URI to an image file for the card." + } + }, + "id": "GoogleCloudDialogflowV2beta1IntentMessageCard" + }, + "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": { + "description": "Optional. The collection of parameters associated with the event.", + "type": "object", + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + } + } + }, + "id": "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?”`.", + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentMessageSuggestion": { + "description": "The suggestion chip message that the user can tap to quickly post a reply\nto the conversation.", + "type": "object", + "properties": { + "title": { + "type": "string", + "description": "Required. The text shown the in the suggestion chip." + } + }, + "id": "GoogleCloudDialogflowV2beta1IntentMessageSuggestion" + }, + "GoogleCloudDialogflowV2beta1InputAudioConfig": { + "description": "Instructs the speech recognizer how to process the audio content.", + "type": "object", + "properties": { + "audioEncoding": { + "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" + ], + "description": "Required. Audio encoding of the audio content to process.", + "type": "string" + }, + "sampleRateHertz": { + "description": "Required. Sample rate (in Hertz) of the audio content sent in the query.\nRefer to\n[Cloud Speech API\ndocumentation](https://cloud.google.com/speech-to-text/docs/basics) for\nmore details.", + "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": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Optional. The collection of phrase hints which are used to boost accuracy\nof speech recognition.\nRefer to\n[Cloud Speech API\ndocumentation](https://cloud.google.com/speech-to-text/docs/basics#phrase-hints)\nfor more details." + } + }, + "id": "GoogleCloudDialogflowV2beta1InputAudioConfig" + }, + "GoogleCloudDialogflowV2beta1IntentTrainingPhrase": { + "description": "Represents an example or template that the agent is trained on.", + "type": "object", + "properties": { + "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.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart" + } + }, + "name": { + "description": "Required. The unique identifier of this training phrase.", + "type": "string" + }, + "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": { + "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." + ], + "enum": [ + "TYPE_UNSPECIFIED", + "EXAMPLE", + "TEMPLATE" + ], + "description": "Required. The type of the training phrase." + } + }, + "id": "GoogleCloudDialogflowV2beta1IntentTrainingPhrase" + }, + "GoogleCloudDialogflowV2IntentMessageSuggestions": { + "description": "The collection of suggestions.", + "type": "object", + "properties": { + "suggestions": { + "description": "Required. The list of suggested replies.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentMessageSuggestion" + } + } + }, + "id": "GoogleCloudDialogflowV2IntentMessageSuggestions" + }, + "GoogleCloudDialogflowV2IntentMessageImage": { + "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": "GoogleCloudDialogflowV2IntentMessageImage" + }, + "GoogleCloudDialogflowV2IntentMessageSimpleResponses": { + "id": "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`.", + "type": "object", + "properties": { + "simpleResponses": { + "description": "Required. The list of simple responses.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentMessageSimpleResponse" + } + } + } + }, + "GoogleCloudDialogflowV2IntentMessageText": { + "description": "The text response message.", + "type": "object", + "properties": { + "text": { + "description": "Optional. The collection of the agent's responses.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "id": "GoogleCloudDialogflowV2IntentMessageText" + }, + "GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion": { + "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": "GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion" + }, + "GoogleCloudDialogflowV2EntityTypeEntity": { + "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": { + "description": "Required. A collection of synonyms. For `KIND_LIST` entity types this\nmust contain exactly one synonym equal to `value`.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "id": "GoogleCloudDialogflowV2EntityTypeEntity" + }, + "GoogleCloudDialogflowV2beta1IntentMessageText": { + "description": "The text response message.", + "type": "object", + "properties": { + "text": { + "description": "Optional. The collection of the agent's responses.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "id": "GoogleCloudDialogflowV2beta1IntentMessageText" + }, + "GoogleCloudDialogflowV2QueryResult": { + "description": "Represents the result of conversational query or event processing.", + "type": "object", + "properties": { + "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": "GoogleCloudDialogflowV2IntentMessage" + } + }, + "action": { + "description": "The action name from the matched intent.", + "type": "string" + }, + "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" + }, + "fulfillmentText": { + "description": "The text to be pronounced to the user or shown on the screen.", + "type": "string" + }, + "parameters": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "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\nThis field is not guaranteed to be accurate or set. In particular this\nfield isn't set for StreamingDetectIntent since the streaming endpoint has\nseparate confidence estimates per portion of the audio in\nStreamingRecognitionResult.", + "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.", + "type": "object" + }, + "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": "GoogleCloudDialogflowV2Context" + } + }, + "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" + }, + "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`." + } + }, + "id": "GoogleCloudDialogflowV2QueryResult" + }, + "GoogleCloudDialogflowV2IntentMessageCarouselSelect": { + "type": "object", + "properties": { + "items": { + "description": "Required. Carousel items.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2IntentMessageCarouselSelectItem" } } + }, + "id": "GoogleCloudDialogflowV2IntentMessageCarouselSelect", + "description": "The card for presenting a carousel of options to select from." + }, + "GoogleTypeLatLng": { + "id": "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", + "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" + } } - } - }, - "parameters": { - "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" + "GoogleCloudDialogflowV2IntentFollowupIntentInfo": { + "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": "GoogleCloudDialogflowV2IntentFollowupIntentInfo", + "description": "Represents a single followup intent in the chain.", + "type": "object" }, - "upload_protocol": { - "type": "string", - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")." + "GoogleCloudDialogflowV2beta1IntentMessageSuggestions": { + "description": "The collection of suggestions.", + "type": "object", + "properties": { + "suggestions": { + "description": "Required. The list of suggested replies.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2beta1IntentMessageSuggestion" + } + } + }, + "id": "GoogleCloudDialogflowV2beta1IntentMessageSuggestions" }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" + "GoogleCloudDialogflowV2EntityType": { + "description": "Represents an entity type.\nEntity types serve as a tool for extracting parameter values from natural\nlanguage queries.", + "type": "object", + "properties": { + "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" + }, + "displayName": { + "type": "string", + "description": "Required. The name of the entity." + }, + "kind": { + "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" + ], + "description": "Required. Indicates the kind of entity type." + }, + "autoExpansionMode": { + "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." + ], + "enum": [ + "AUTO_EXPANSION_MODE_UNSPECIFIED", + "AUTO_EXPANSION_MODE_DEFAULT" + ] + }, + "entities": { + "description": "Optional. The collection of entities associated with the entity type.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2EntityTypeEntity" + } + } + }, + "id": "GoogleCloudDialogflowV2EntityType" }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" + "GoogleCloudDialogflowV2beta1ListSessionEntityTypesResponse": { + "description": "The response message for SessionEntityTypes.ListSessionEntityTypes.", + "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": "GoogleCloudDialogflowV2beta1SessionEntityType" + } + }, + "nextPageToken": { + "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.", + "type": "string" + } + }, + "id": "GoogleCloudDialogflowV2beta1ListSessionEntityTypesResponse" + }, + "GoogleCloudDialogflowV2beta1IntentMessageQuickReplies": { + "id": "GoogleCloudDialogflowV2beta1IntentMessageQuickReplies", + "description": "The quick replies response message.", + "type": "object", + "properties": { + "quickReplies": { + "description": "Optional. The collection of quick replies.", + "type": "array", + "items": { + "type": "string" + } + }, + "title": { + "description": "Optional. The title of the collection of quick replies.", + "type": "string" + } + } + }, + "GoogleCloudDialogflowV2WebhookRequest": { + "properties": { + "queryResult": { + "$ref": "GoogleCloudDialogflowV2QueryResult", + "description": "The result of the conversational query or event processing. Contains the\nsame value as `[Streaming]DetectIntentResponse.query_result`." + }, + "originalDetectIntentRequest": { + "$ref": "GoogleCloudDialogflowV2OriginalDetectIntentRequest", + "description": "Optional. The contents of the original request that was passed to\n`[Streaming]DetectIntent` call." + }, + "responseId": { + "description": "The unique identifier of the response. Contains the same value as\n`[Streaming]DetectIntentResponse.response_id`.", + "type": "string" + }, + "session": { + "type": "string", + "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`." + } + }, + "id": "GoogleCloudDialogflowV2WebhookRequest", + "description": "The request message for a webhook call.", + "type": "object" + }, + "GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo": { + "description": "Represents a single followup intent in the chain.", + "type": "object", + "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" + } + }, + "id": "GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo" + }, + "GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesRequest": { + "description": "The request message for EntityTypes.BatchUpdateEntityTypes.", + "type": "object", + "properties": { + "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": { + "description": "Optional. The mask to control which fields get updated.", + "format": "google-fieldmask", + "type": "string" + }, + "entityTypeBatchUri": { + "type": "string", + "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://\"." + }, + "entityTypeBatchInline": { + "$ref": "GoogleCloudDialogflowV2beta1EntityTypeBatch", + "description": "The collection of entity type to update or create." + } + }, + "id": "GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesRequest" }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" + "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" + } + }, + "id": "GoogleCloudDialogflowV2ExportAgentResponse", + "description": "The response message for Agents.ExportAgent.", + "type": "object" }, - "$.xgafv": { - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format." + "GoogleCloudDialogflowV2beta1DetectIntentRequest": { + "description": "The request to detect user's intent.", + "type": "object", + "properties": { + "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.", + "$ref": "GoogleCloudDialogflowV2beta1QueryInput" + }, + "queryParams": { + "$ref": "GoogleCloudDialogflowV2beta1QueryParameters", + "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" + } + }, + "id": "GoogleCloudDialogflowV2beta1DetectIntentRequest" }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" + "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" + } + }, + "id": "GoogleCloudDialogflowV2beta1ImportAgentRequest", + "description": "The request message for Agents.ImportAgent.", + "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" + "GoogleCloudDialogflowV2beta1EntityTypeEntity": { + "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": { + "description": "Required. A collection of synonyms. For `KIND_LIST` entity types this\nmust contain exactly one synonym equal to `value`.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "id": "GoogleCloudDialogflowV2beta1EntityTypeEntity" }, - "access_token": { - "type": "string", - "location": "query", - "description": "OAuth access token." + "GoogleCloudDialogflowV2beta1BatchUpdateIntentsRequest": { + "description": "The request message for Intents.BatchUpdateIntents.", + "type": "object", + "properties": { + "intentBatchUri": { + "type": "string", + "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://\"." + }, + "intentView": { + "enum": [ + "INTENT_VIEW_UNSPECIFIED", + "INTENT_VIEW_FULL" + ], + "description": "Optional. The resource view to apply to the returned intent.", + "type": "string", + "enumDescriptions": [ + "Training phrases field is not populated in the response.", + "All fields are populated." + ] + }, + "intentBatchInline": { + "$ref": "GoogleCloudDialogflowV2beta1IntentBatch", + "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": "GoogleCloudDialogflowV2beta1BatchUpdateIntentsRequest" }, - "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" + "GoogleCloudDialogflowV2WebhookResponse": { + "description": "The response message for a webhook call.", + "type": "object", + "properties": { + "source": { + "description": "Optional. This value is passed directly to `QueryResult.webhook_source`.", + "type": "string" + }, + "followupEventInput": { + "description": "Optional. Makes the platform immediately invoke another `DetectIntent` call\ninternally with the specified event as input.", + "$ref": "GoogleCloudDialogflowV2EventInput" + }, + "outputContexts": { + "description": "Optional. The collection of output contexts. This value is passed directly\nto `QueryResult.output_contexts`.", + "type": "array", + "items": { + "$ref": "GoogleCloudDialogflowV2Context" + } + }, + "fulfillmentText": { + "description": "Optional. The text to be shown on the screen. This value is passed directly\nto `QueryResult.fulfillment_text`.", + "type": "string" + }, + "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": "GoogleCloudDialogflowV2IntentMessage" + } + }, + "payload": { + "additionalProperties": { + "type": "any", + "description": "Properties of the object." + }, + "description": "Optional. This value is passed directly to `QueryResult.webhook_payload`.\nSee the related `fulfillment_messages[i].payload field`, which may be used\nas an alternative to this field.\n\nThis field can be used for Actions on Google responses.\nIt should have a structure similar to the JSON message shown here. For more\ninformation, see\n[Actions on Google Webhook\nFormat](https://developers.google.com/actions/dialogflow/webhook)\n\u003cpre\u003e{\n \"google\": {\n \"expectUserResponse\": true,\n \"richResponse\": {\n \"items\": [\n {\n \"simpleResponse\": {\n \"textToSpeech\": \"this is a simple response\"\n }\n }\n ]\n }\n }\n}\u003c/pre\u003e", + "type": "object" + } + }, + "id": "GoogleCloudDialogflowV2WebhookResponse" }, - "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" + "GoogleCloudDialogflowV2IntentMessageCardButton": { + "type": "object", + "properties": { + "text": { + "description": "Optional. The text to show on the button.", + "type": "string" + }, + "postback": { + "type": "string", + "description": "Optional. The text to send back to the Dialogflow API or a URI to\nopen." + } + }, + "id": "GoogleCloudDialogflowV2IntentMessageCardButton", + "description": "Optional. Contains information about a button." }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" + "GoogleCloudDialogflowV2beta1ExportAgentResponse": { + "description": "The response message for Agents.ExportAgent.", + "type": "object", + "properties": { + "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" + }, + "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" + } + }, + "id": "GoogleCloudDialogflowV2beta1ExportAgentResponse" + }, + "GoogleCloudDialogflowV2OriginalDetectIntentRequest": { + "description": "Represents the contents of the original request that was passed to\nthe `[Streaming]DetectIntent` call.", + "type": "object", + "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.", + "type": "string" + } + }, + "id": "GoogleCloudDialogflowV2OriginalDetectIntentRequest" } }, - "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": "", - "id": "dialogflow:v2beta1", - "documentationLink": "https://cloud.google.com/dialogflow-enterprise/", - "revision": "20180504", - "discoveryVersion": "v1", - "version_module": true + "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" } diff --git a/DiscoveryJson/digitalassetlinks_v1.json b/DiscoveryJson/digitalassetlinks_v1.json index a684d0c8f2..87213c290d 100644 --- a/DiscoveryJson/digitalassetlinks_v1.json +++ b/DiscoveryJson/digitalassetlinks_v1.json @@ -6,6 +6,9 @@ "statements": { "methods": { "list": { + "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.", "response": { "$ref": "ListResponse" @@ -13,39 +16,33 @@ "parameterOrder": [], "httpMethod": "GET", "parameters": { - "source.androidApp.certificate.sha256Fingerprint": { + "source.web.site": { "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).", + "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" }, - "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`.", + "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", "type": "string", "location": "query" }, - "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", + "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" }, - "source.androidApp.packageName": { + "relation": { "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", + "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" + } } } }, "assetlinks": { "methods": { "check": { - "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).", "response": { "$ref": "CheckResponse" @@ -54,9 +51,9 @@ "httpMethod": "GET", "parameters": { "target.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" + "type": "string", + "location": "query" }, "source.web.site": { "location": "query", @@ -64,14 +61,14 @@ "type": "string" }, "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", - "location": "query" + "type": "string" }, "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" + "type": "string", + "location": "query" }, "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).", @@ -79,31 +76,34 @@ "location": "query" }, "relation": { + "location": "query", "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" + "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", "type": "string", "location": "query" } - } + }, + "flatPath": "v1/assetlinks:check", + "path": "v1/assetlinks:check", + "id": "digitalassetlinks.assetlinks.check" } } } }, "parameters": { "upload_protocol": { + "location": "query", "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" + "type": "string" }, "prettyPrint": { - "location": "query", "description": "Returns response with indentations and line breaks.", "type": "boolean", - "default": "true" + "default": "true", + "location": "query" }, "uploadType": { "location": "query", @@ -111,9 +111,9 @@ "type": "string" }, "fields": { + "location": "query", "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" + "type": "string" }, "$.xgafv": { "enumDescriptions": [ @@ -129,11 +129,17 @@ "type": "string" }, "callback": { - "location": "query", "description": "JSONP", - "type": "string" + "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": [ @@ -141,13 +147,7 @@ "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" + "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.", @@ -155,25 +155,25 @@ "location": "query" }, "access_token": { + "location": "query", "description": "OAuth access token.", - "type": "string", - "location": "query" + "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" + "type": "string", + "location": "query" }, "pp": { + "location": "query", "description": "Pretty-print response.", "type": "boolean", - "default": "true", - "location": "query" + "default": "true" }, "oauth_token": { + "location": "query", "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" + "type": "string" }, "bearer_token": { "location": "query", @@ -182,25 +182,83 @@ } }, "schemas": { + "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": { + "description": "Every statement has a target asset.\nREQUIRED", + "$ref": "Asset" + }, + "source": { + "$ref": "Asset", + "description": "Every statement has a source asset.\nREQUIRED" + }, + "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" + } + }, + "id": "Statement" + }, + "AndroidAppAsset": { + "properties": { + "certificate": { + "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", + "$ref": "CertificateInfo" + }, + "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", + "description": "Describes an android app asset.", + "type": "object" + }, + "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" + }, "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", "properties": { "web": { - "$ref": "WebAsset", - "description": "Set if this is a web asset." + "description": "Set if this is a web asset.", + "$ref": "WebAsset" }, "androidApp": { - "description": "Set if this is an Android App asset.", - "$ref": "AndroidAppAsset" + "$ref": "AndroidAppAsset", + "description": "Set if this is an Android App asset." } }, - "id": "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" }, "CheckResponse": { "description": "Response message for the CheckAssetLinks call.", "type": "object", "properties": { + "linked": { + "description": "Set to true if the assets specified in the request are linked by the\nrelation specified in the request.", + "type": "boolean" + }, + "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": { "description": "Error codes that describe the result of the Check operation.", "type": "array", @@ -233,33 +291,20 @@ "A secure asset includes an insecure asset (security downgrade).", "Too many includes (maybe a loop)." ] - }, - "linked": { - "description": "Set to true if the assets specified in the request are linked by the\nrelation specified in the request.", - "type": "boolean" - }, - "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" } }, "id": "CheckResponse" }, "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" } }, - "id": "WebAsset" + "id": "WebAsset", + "description": "Describes a web asset.", + "type": "object" }, "ListResponse": { "properties": { @@ -273,19 +318,6 @@ "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": { @@ -303,7 +335,20 @@ "ERROR_CODE_SECURE_ASSET_INCLUDES_INSECURE", "ERROR_CODE_FETCH_BUDGET_EXHAUSTED" ] - } + }, + "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)." + ] }, "statements": { "description": "A list of all the matching statements that have been found.", @@ -316,56 +361,11 @@ "id": "ListResponse", "description": "Response message for the List call.", "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).", - "type": "object", - "properties": { - "target": { - "description": "Every statement has a target asset.\nREQUIRED", - "$ref": "Asset" - }, - "source": { - "$ref": "Asset", - "description": "Every statement has a source asset.\nREQUIRED" - }, - "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" - } - }, - "id": "Statement" - }, - "AndroidAppAsset": { - "description": "Describes an android app asset.", - "type": "object", - "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": { - "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", - "$ref": "CertificateInfo" - } - }, - "id": "AndroidAppAsset" - }, - "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" - } - }, - "id": "CertificateInfo", - "description": "Describes an X509 certificate.", - "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" + "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", diff --git a/DiscoveryJson/dlp_v2.json b/DiscoveryJson/dlp_v2.json index a98f2a7b8f..da80b1fc0b 100644 --- a/DiscoveryJson/dlp_v2.json +++ b/DiscoveryJson/dlp_v2.json @@ -1,2375 +1,2680 @@ { - "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" - }, - "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": { - "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" - } - }, - "version": "v2", - "baseUrl": "https://dlp.googleapis.com/", - "servicePath": "", - "description": "Provides methods for detection, risk analysis, and de-identification of privacy-sensitive fragments in text, images, and Google Cloud Platform storage repositories.", - "kind": "discovery#restDescription", - "basePath": "", - "documentationLink": "https://cloud.google.com/dlp/docs/", - "id": "dlp:v2", - "revision": "20180501", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "GooglePrivacyDlpV2ImageRedactionConfig": { - "type": "object", - "properties": { - "redactAllText": { - "description": "If true, all text found in the image, regardless whether it matches an\ninfo_type, is redacted.", - "type": "boolean" - }, - "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": "GooglePrivacyDlpV2InfoType" - }, - "redactionColor": { - "$ref": "GooglePrivacyDlpV2Color", - "description": "The color to use when redacting content from an image. If not specified,\nthe default is black." - } - }, - "id": "GooglePrivacyDlpV2ImageRedactionConfig", - "description": "Configuration for determining how redaction of images should occur." - }, - "GooglePrivacyDlpV2PublishSummaryToCscc": { - "properties": {}, - "id": "GooglePrivacyDlpV2PublishSummaryToCscc", - "description": "Publish the result summary of a DlpJob to the Cloud Security\nCommand Center (CSCC Alpha).\nThis action is only available for projects which are parts of\nan organization and whitelisted for the alpha Cloud Security Command\nCenter.\nThe action will publish count of finding instances and their info types.\nThe summary of findings will be persisted in CSCC and are governed by CSCC\nservice-specific policy, see https://cloud.google.com/terms/service-terms\nOnly a single instance of this action can be specified.\nCompatible with: Inspect", - "type": "object" - }, - "GooglePrivacyDlpV2RecordTransformations": { - "properties": { - "fieldTransformations": { - "description": "Transform the record by applying various field transformations.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2FieldTransformation" - } - }, - "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": "GooglePrivacyDlpV2RecordSuppression" - } - } - }, - "id": "GooglePrivacyDlpV2RecordTransformations", - "description": "A type of transformation that is applied over structured data such as a\ntable.", - "type": "object" - }, - "GooglePrivacyDlpV2KmsWrappedCryptoKey": { - "type": "object", - "properties": { - "wrappedKey": { - "description": "The wrapped data crypto key. [required]", - "format": "byte", - "type": "string" - }, - "cryptoKeyName": { - "description": "The resource name of the KMS CryptoKey to use for unwrapping. [required]", - "type": "string" - } - }, - "id": "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" - }, - "GooglePrivacyDlpV2DateTime": { - "description": "Message for a date time object.", - "type": "object", - "properties": { - "dayOfWeek": { - "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." - ], - "enum": [ - "DAY_OF_WEEK_UNSPECIFIED", - "MONDAY", - "TUESDAY", - "WEDNESDAY", - "THURSDAY", - "FRIDAY", - "SATURDAY", - "SUNDAY" + "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).", + "response": { + "$ref": "GooglePrivacyDlpV2ListInfoTypesResponse" + }, + "parameterOrder": [], + "httpMethod": "GET", + "parameters": { + "languageCode": { + "location": "query", + "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" + }, + "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" ], - "type": "string" - }, - "time": { - "$ref": "GoogleTypeTimeOfDay" - }, - "date": { - "description": "One or more of the following must be set. All fields are optional, but\nwhen set must be valid date or time values.", - "$ref": "GoogleTypeDate" - }, - "timeZone": { - "$ref": "GooglePrivacyDlpV2TimeZone" - } - }, - "id": "GooglePrivacyDlpV2DateTime" - }, - "GooglePrivacyDlpV2Result": { - "type": "object", - "properties": { - "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" - }, - "infoTypeStats": { - "description": "Statistics of how many instances of each info type were found during\ninspect job.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2InfoTypeStats" - } - } - }, - "id": "GooglePrivacyDlpV2Result" - }, - "GooglePrivacyDlpV2InfoTypeStats": { - "description": "Statistics regarding a specific InfoType.", - "type": "object", - "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." + "flatPath": "v2/infoTypes", + "path": "v2/infoTypes", + "id": "dlp.infoTypes.list" } - }, - "id": "GooglePrivacyDlpV2InfoTypeStats" + } }, - "GooglePrivacyDlpV2RedactImageResponse": { - "description": "Results of redacting an image.", - "type": "object", - "properties": { - "redactedImage": { - "type": "string", - "description": "The redacted image. The type will be the same as the original image.", - "format": "byte" - }, - "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." - } - }, - "id": "GooglePrivacyDlpV2RedactImageResponse" - }, - "GooglePrivacyDlpV2ContentLocation": { - "description": "Findings container location data.", - "type": "object", - "properties": { - "containerVersion": { - "description": "Findings container version, if available\n(\"generation\" for Google Cloud Storage).", - "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" - }, - "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" - }, - "recordLocation": { - "$ref": "GooglePrivacyDlpV2RecordLocation", - "description": "Location within a row or record of a database table." - }, - "imageLocation": { - "description": "Location within an image's pixels.", - "$ref": "GooglePrivacyDlpV2ImageLocation" - }, - "documentLocation": { - "description": "Location data for document files.", - "$ref": "GooglePrivacyDlpV2DocumentLocation" - } - }, - "id": "GooglePrivacyDlpV2ContentLocation" - }, - "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 '.", - "type": "object", - "properties": {}, - "id": "GooglePrivacyDlpV2RedactConfig" - }, - "GooglePrivacyDlpV2ListInfoTypesResponse": { - "description": "Response to the ListInfoTypes request.", - "type": "object", - "properties": { - "infoTypes": { - "description": "Set of sensitive infoTypes.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2InfoTypeDescription" - } - } - }, - "id": "GooglePrivacyDlpV2ListInfoTypesResponse" - }, - "GooglePrivacyDlpV2CloudStoragePath": { - "id": "GooglePrivacyDlpV2CloudStoragePath", - "description": "Message representing a path in Cloud Storage.", - "type": "object", - "properties": { - "path": { - "description": "A url representing a file or path (no wildcards) in Cloud Storage.\nExample: gs://[BUCKET_NAME]/dictionary.txt", - "type": "string" - } - } - }, - "GooglePrivacyDlpV2Schedule": { - "description": "Schedule for triggeredJobs.", - "type": "object", - "properties": { - "recurrencePeriodDuration": { - "type": "string", - "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" - } - }, - "id": "GooglePrivacyDlpV2Schedule" - }, - "GooglePrivacyDlpV2ListDeidentifyTemplatesResponse": { - "description": "Response message for ListDeidentifyTemplates.", - "type": "object", - "properties": { - "deidentifyTemplates": { - "description": "List of deidentify templates, up to page_size in\nListDeidentifyTemplatesRequest.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2DeidentifyTemplate" + "organizations": { + "resources": { + "inspectTemplates": { + "methods": { + "patch": { + "request": { + "$ref": "GooglePrivacyDlpV2UpdateInspectTemplateRequest" + }, + "description": "Updates the InspectTemplate.", + "response": { + "$ref": "GooglePrivacyDlpV2InspectTemplate" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "PATCH", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "pattern": "^organizations/[^/]+/inspectTemplates/[^/]+$", + "location": "path", + "description": "Resource name of organization and inspectTemplate to be updated, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", + "required": true, + "type": "string" + } + }, + "flatPath": "v2/organizations/{organizationsId}/inspectTemplates/{inspectTemplatesId}", + "path": "v2/{+name}", + "id": "dlp.organizations.inspectTemplates.patch" + }, + "get": { + "httpMethod": "GET", + "response": { + "$ref": "GooglePrivacyDlpV2InspectTemplate" + }, + "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.", + "required": true, + "type": "string", + "pattern": "^organizations/[^/]+/inspectTemplates/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/organizations/{organizationsId}/inspectTemplates/{inspectTemplatesId}", + "id": "dlp.organizations.inspectTemplates.get", + "path": "v2/{+name}", + "description": "Gets an InspectTemplate." + }, + "list": { + "response": { + "$ref": "GooglePrivacyDlpV2ListInspectTemplatesResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "parent": { + "pattern": "^organizations/[^/]+$", + "location": "path", + "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", + "required": true, + "type": "string" + }, + "pageToken": { + "location": "query", + "description": "Optional page token to continue retrieval. Comes from previous call\nto `ListInspectTemplates`.", + "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": "v2/organizations/{organizationsId}/inspectTemplates", + "path": "v2/{+parent}/inspectTemplates", + "id": "dlp.organizations.inspectTemplates.list", + "description": "Lists InspectTemplates." + }, + "create": { + "response": { + "$ref": "GooglePrivacyDlpV2InspectTemplate" + }, + "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 or\norganizations/my-org-id.", + "required": true, + "type": "string", + "pattern": "^organizations/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2/organizations/{organizationsId}/inspectTemplates", + "path": "v2/{+parent}/inspectTemplates", + "id": "dlp.organizations.inspectTemplates.create", + "request": { + "$ref": "GooglePrivacyDlpV2CreateInspectTemplateRequest" + }, + "description": "Creates an InspectTemplate for re-using frequently used configuration\nfor inspecting content, images, and storage." + }, + "delete": { + "path": "v2/{+name}", + "id": "dlp.organizations.inspectTemplates.delete", + "description": "Deletes an InspectTemplate.", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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.", + "required": true, + "type": "string", + "pattern": "^organizations/[^/]+/inspectTemplates/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2/organizations/{organizationsId}/inspectTemplates/{inspectTemplatesId}" + } } }, - "nextPageToken": { - "description": "If the next page is available then the next page token to be used\nin following ListDeidentifyTemplates request.", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2ListDeidentifyTemplatesResponse" - }, - "GooglePrivacyDlpV2CategoricalStatsHistogramBucket": { - "type": "object", - "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" - }, - "valueFrequencyUpperBound": { - "description": "Upper bound on the value frequency of the values in this bucket.", - "format": "int64", - "type": "string" - }, - "valueFrequencyLowerBound": { - "description": "Lower bound on the value frequency of the values in this bucket.", - "format": "int64", - "type": "string" - }, - "bucketValues": { - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2ValueFrequency" - }, - "description": "Sample of value frequencies in this bucket. The total number of\nvalues returned per bucket is capped at 20." - } - }, - "id": "GooglePrivacyDlpV2CategoricalStatsHistogramBucket" - }, - "GooglePrivacyDlpV2Row": { - "type": "object", - "properties": { - "values": { - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2Value" + "deidentifyTemplates": { + "methods": { + "delete": { + "flatPath": "v2/organizations/{organizationsId}/deidentifyTemplates/{deidentifyTemplatesId}", + "id": "dlp.organizations.deidentifyTemplates.delete", + "path": "v2/{+name}", + "description": "Deletes a DeidentifyTemplate.", + "httpMethod": "DELETE", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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.", + "required": true, + "type": "string", + "pattern": "^organizations/[^/]+/deidentifyTemplates/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "httpMethod": "PATCH", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "GooglePrivacyDlpV2DeidentifyTemplate" + }, + "parameters": { + "name": { + "pattern": "^organizations/[^/]+/deidentifyTemplates/[^/]+$", + "location": "path", + "description": "Resource name of organization and deidentify template to be updated, for\nexample `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/organizations/{organizationsId}/deidentifyTemplates/{deidentifyTemplatesId}", + "id": "dlp.organizations.deidentifyTemplates.patch", + "path": "v2/{+name}", + "description": "Updates the DeidentifyTemplate.", + "request": { + "$ref": "GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest" + } + }, + "get": { + "description": "Gets a DeidentifyTemplate.", + "response": { + "$ref": "GooglePrivacyDlpV2DeidentifyTemplate" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "pattern": "^organizations/[^/]+/deidentifyTemplates/[^/]+$", + "location": "path", + "description": "Resource name of the organization and deidentify template to be read, for\nexample `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", + "required": true, + "type": "string" + } + }, + "flatPath": "v2/organizations/{organizationsId}/deidentifyTemplates/{deidentifyTemplatesId}", + "path": "v2/{+name}", + "id": "dlp.organizations.deidentifyTemplates.get" + }, + "list": { + "response": { + "$ref": "GooglePrivacyDlpV2ListDeidentifyTemplatesResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "parameters": { + "pageToken": { + "description": "Optional page token to continue retrieval. Comes from previous call\nto `ListDeidentifyTemplates`.", + "type": "string", + "location": "query" + }, + "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" + }, + "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": "v2/organizations/{organizationsId}/deidentifyTemplates", + "path": "v2/{+parent}/deidentifyTemplates", + "id": "dlp.organizations.deidentifyTemplates.list", + "description": "Lists DeidentifyTemplates." + }, + "create": { + "path": "v2/{+parent}/deidentifyTemplates", + "id": "dlp.organizations.deidentifyTemplates.create", + "request": { + "$ref": "GooglePrivacyDlpV2CreateDeidentifyTemplateRequest" + }, + "description": "Creates a DeidentifyTemplate for re-using frequently used configuration\nfor de-identifying content, images, and storage.", + "response": { + "$ref": "GooglePrivacyDlpV2DeidentifyTemplate" + }, + "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 or\norganizations/my-org-id.", + "required": true, + "type": "string", + "pattern": "^organizations/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2/organizations/{organizationsId}/deidentifyTemplates" + } } } - }, - "id": "GooglePrivacyDlpV2Row" - }, - "GooglePrivacyDlpV2QuasiIdField": { - "id": "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.", - "type": "object", - "properties": { - "customTag": { - "type": "string" - }, - "field": { - "$ref": "GooglePrivacyDlpV2FieldId" - } } }, - "GooglePrivacyDlpV2DeidentifyTemplate": { - "properties": { - "deidentifyConfig": { - "$ref": "GooglePrivacyDlpV2DeidentifyConfig", - "description": "///////////// // The core content of the template // ///////////////" - }, - "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" - }, - "displayName": { - "description": "Display name (max 256 chars).", - "type": "string" - }, - "description": { - "type": "string", - "description": "Short description (max 256 chars)." - } - }, - "id": "GooglePrivacyDlpV2DeidentifyTemplate", - "description": "The DeidentifyTemplates contains instructions on how to deidentify content.", - "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.", - "type": "object", - "properties": { - "imageRedactionConfigs": { - "description": "The configuration for specifying what content to redact from images.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2ImageRedactionConfig" - } - }, - "byteItem": { - "description": "The content must be PNG, JPEG, SVG or BMP.", - "$ref": "GooglePrivacyDlpV2ByteContentItem" - }, - "inspectConfig": { - "$ref": "GooglePrivacyDlpV2InspectConfig", - "description": "Configuration for the inspector." - } - }, - "id": "GooglePrivacyDlpV2RedactImageRequest" - }, - "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`.", - "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": "GooglePrivacyDlpV2BigQueryTable" - }, - "GooglePrivacyDlpV2PrimitiveTransformation": { - "description": "A rule for transforming a value.", - "type": "object", - "properties": { - "replaceWithInfoTypeConfig": { - "$ref": "GooglePrivacyDlpV2ReplaceWithInfoTypeConfig" - }, - "cryptoHashConfig": { - "$ref": "GooglePrivacyDlpV2CryptoHashConfig" - }, - "cryptoReplaceFfxFpeConfig": { - "$ref": "GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig" - }, - "replaceConfig": { - "$ref": "GooglePrivacyDlpV2ReplaceValueConfig" - }, - "timePartConfig": { - "$ref": "GooglePrivacyDlpV2TimePartConfig" - }, - "fixedSizeBucketingConfig": { - "$ref": "GooglePrivacyDlpV2FixedSizeBucketingConfig" - }, - "dateShiftConfig": { - "$ref": "GooglePrivacyDlpV2DateShiftConfig" - }, - "characterMaskConfig": { - "$ref": "GooglePrivacyDlpV2CharacterMaskConfig" - }, - "redactConfig": { - "$ref": "GooglePrivacyDlpV2RedactConfig" - }, - "bucketingConfig": { - "$ref": "GooglePrivacyDlpV2BucketingConfig" - } - }, - "id": "GooglePrivacyDlpV2PrimitiveTransformation" - }, - "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." - }, - "infoTypeTransformations": { - "description": "Treat the contents of the field as free text, and selectively\ntransform content that matches an `InfoType`.", - "$ref": "GooglePrivacyDlpV2InfoTypeTransformations" - }, - "fields": { - "description": "Input field(s) to apply the transformation to. [required]", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2FieldId" + "projects": { + "resources": { + "deidentifyTemplates": { + "methods": { + "delete": { + "httpMethod": "DELETE", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "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.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/deidentifyTemplates/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/projects/{projectsId}/deidentifyTemplates/{deidentifyTemplatesId}", + "id": "dlp.projects.deidentifyTemplates.delete", + "path": "v2/{+name}", + "description": "Deletes a DeidentifyTemplate." + }, + "patch": { + "response": { + "$ref": "GooglePrivacyDlpV2DeidentifyTemplate" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "PATCH", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "location": "path", + "description": "Resource name of organization and deidentify template to be updated, for\nexample `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/deidentifyTemplates/[^/]+$" + } + }, + "flatPath": "v2/projects/{projectsId}/deidentifyTemplates/{deidentifyTemplatesId}", + "path": "v2/{+name}", + "id": "dlp.projects.deidentifyTemplates.patch", + "request": { + "$ref": "GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest" + }, + "description": "Updates the DeidentifyTemplate." + }, + "get": { + "description": "Gets a DeidentifyTemplate.", + "response": { + "$ref": "GooglePrivacyDlpV2DeidentifyTemplate" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "parameters": { + "name": { + "location": "path", + "description": "Resource name of the organization and deidentify template to be read, for\nexample `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/deidentifyTemplates/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/projects/{projectsId}/deidentifyTemplates/{deidentifyTemplatesId}", + "path": "v2/{+name}", + "id": "dlp.projects.deidentifyTemplates.get" + }, + "list": { + "httpMethod": "GET", + "response": { + "$ref": "GooglePrivacyDlpV2ListDeidentifyTemplatesResponse" + }, + "parameterOrder": [ + "parent" + ], + "parameters": { + "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" + }, + "parent": { + "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/projects/{projectsId}/deidentifyTemplates", + "id": "dlp.projects.deidentifyTemplates.list", + "path": "v2/{+parent}/deidentifyTemplates", + "description": "Lists DeidentifyTemplates." + }, + "create": { + "path": "v2/{+parent}/deidentifyTemplates", + "id": "dlp.projects.deidentifyTemplates.create", + "description": "Creates a DeidentifyTemplate for re-using frequently used configuration\nfor de-identifying content, images, and storage.", + "request": { + "$ref": "GooglePrivacyDlpV2CreateDeidentifyTemplateRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2DeidentifyTemplate" + }, + "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": "^projects/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/projects/{projectsId}/deidentifyTemplates" + } } }, - "primitiveTransformation": { - "$ref": "GooglePrivacyDlpV2PrimitiveTransformation", - "description": "Apply the transformation to the entire field." - } - }, - "id": "GooglePrivacyDlpV2FieldTransformation", - "description": "The transformation to apply to the field.", - "type": "object" - }, - "GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails": { - "description": "Result of a risk analysis operation request.", - "type": "object", - "properties": { - "kAnonymityResult": { - "$ref": "GooglePrivacyDlpV2KAnonymityResult" - }, - "kMapEstimationResult": { - "$ref": "GooglePrivacyDlpV2KMapEstimationResult" - }, - "lDiversityResult": { - "$ref": "GooglePrivacyDlpV2LDiversityResult" - }, - "requestedSourceTable": { - "description": "Input dataset to compute metrics over.", - "$ref": "GooglePrivacyDlpV2BigQueryTable" - }, - "categoricalStatsResult": { - "$ref": "GooglePrivacyDlpV2CategoricalStatsResult" - }, - "requestedPrivacyMetric": { - "description": "Privacy metric to compute.", - "$ref": "GooglePrivacyDlpV2PrivacyMetric" + "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)", + "request": { + "$ref": "GooglePrivacyDlpV2RedactImageRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2RedactImageResponse" + }, + "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": "v2/projects/{projectsId}/image:redact", + "path": "v2/{+parent}/image:redact", + "id": "dlp.projects.image.redact" + } + } }, - "numericalStatsResult": { - "$ref": "GooglePrivacyDlpV2NumericalStatsResult" - } - }, - "id": "GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails" - }, - "GooglePrivacyDlpV2InspectResult": { - "id": "GooglePrivacyDlpV2InspectResult", - "description": "All the findings for a single scanned item.", - "type": "object", - "properties": { - "findingsTruncated": { - "type": "boolean", - "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." - }, - "findings": { - "description": "List of findings for an item.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2Finding" + "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.", + "request": { + "$ref": "GooglePrivacyDlpV2CancelDlpJobRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "parameters": { + "name": { + "pattern": "^projects/[^/]+/dlpJobs/[^/]+$", + "location": "path", + "description": "The name of the DlpJob resource to be cancelled.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/projects/{projectsId}/dlpJobs/{dlpJobsId}:cancel", + "id": "dlp.projects.dlpJobs.cancel", + "path": "v2/{+name}:cancel" + }, + "delete": { + "httpMethod": "DELETE", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "parameterOrder": [ + "name" + ], + "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" + ], + "flatPath": "v2/projects/{projectsId}/dlpJobs/{dlpJobsId}", + "id": "dlp.projects.dlpJobs.delete", + "path": "v2/{+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." + }, + "list": { + "flatPath": "v2/projects/{projectsId}/dlpJobs", + "id": "dlp.projects.dlpJobs.list", + "path": "v2/{+parent}/dlpJobs", + "description": "Lists DlpJobs that match the specified filter in the request.", + "httpMethod": "GET", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "GooglePrivacyDlpV2ListDlpJobsResponse" + }, + "parameters": { + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "type": { + "location": "query", + "enum": [ + "DLP_JOB_TYPE_UNSPECIFIED", + "INSPECT_JOB", + "RISK_ANALYSIS_JOB" + ], + "description": "The type of job. Defaults to `DlpJobType.INSPECT`", + "type": "string" + }, + "parent": { + "location": "path", + "description": "The parent resource name, for example projects/my-project-id.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$" + }, + "filter": { + "location": "query", + "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.", + "type": "string" + }, + "pageToken": { + "location": "query", + "description": "The standard list page token.", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the latest state of a long-running DlpJob.", + "response": { + "$ref": "GooglePrivacyDlpV2DlpJob" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "pattern": "^projects/[^/]+/dlpJobs/[^/]+$", + "location": "path", + "description": "The name of the DlpJob resource.", + "required": true, + "type": "string" + } + }, + "flatPath": "v2/projects/{projectsId}/dlpJobs/{dlpJobsId}", + "path": "v2/{+name}", + "id": "dlp.projects.dlpJobs.get" + }, + "create": { + "response": { + "$ref": "GooglePrivacyDlpV2DlpJob" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "parent": { + "location": "path", + "description": "The parent resource name, for example projects/my-project-id.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$" + } + }, + "flatPath": "v2/projects/{projectsId}/dlpJobs", + "path": "v2/{+parent}/dlpJobs", + "id": "dlp.projects.dlpJobs.create", + "request": { + "$ref": "GooglePrivacyDlpV2CreateDlpJobRequest" + }, + "description": "Creates a new job to inspect storage or calculate risk metrics.\n[How-to guide](/dlp/docs/compute-risk-analysis)." + } } - } - } - }, - "GooglePrivacyDlpV2Dictionary": { - "id": "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.", - "type": "object", - "properties": { - "wordList": { - "$ref": "GooglePrivacyDlpV2WordList", - "description": "List of words or phrases to search for." - }, - "cloudStoragePath": { - "description": "Newline-delimited file of words in Cloud Storage. Only a single file\nis accepted.", - "$ref": "GooglePrivacyDlpV2CloudStoragePath" - } - } - }, - "GoogleProtobufEmpty": { - "type": "object", - "properties": {}, - "id": "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 `{}`." - }, - "GooglePrivacyDlpV2TimePartConfig": { - "description": "For use with `Date`, `Timestamp`, and `TimeOfDay`, extract or preserve a\nportion of the value.", - "type": "object", - "properties": { - "partToExtract": { - "type": "string", - "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" - ] - } - }, - "id": "GooglePrivacyDlpV2TimePartConfig" - }, - "GooglePrivacyDlpV2Proximity": { - "description": "Message for specifying a window around a finding to apply a detection\nrule.", - "type": "object", - "properties": { - "windowBefore": { - "description": "Number of characters before the finding to consider.", - "format": "int32", - "type": "integer" - }, - "windowAfter": { - "description": "Number of characters after the finding to consider.", - "format": "int32", - "type": "integer" - } - }, - "id": "GooglePrivacyDlpV2Proximity" - }, - "GooglePrivacyDlpV2Condition": { - "properties": { - "field": { - "$ref": "GooglePrivacyDlpV2FieldId", - "description": "Field within the record this condition is evaluated against. [required]" - }, - "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]", - "type": "string" - }, - "value": { - "$ref": "GooglePrivacyDlpV2Value", - "description": "Value to compare against. [Required, except for `EXISTS` tests.]" - } - }, - "id": "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.", - "type": "object" - }, - "GooglePrivacyDlpV2LikelihoodAdjustment": { - "type": "object", - "properties": { - "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" - }, - "fixedLikelihood": { - "enum": [ - "LIKELIHOOD_UNSPECIFIED", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Set the likelihood of a finding to a fixed value.", - "type": "string", - "enumDescriptions": [ - "Default value; information with all likelihoods is included.", - "Few matching elements.", - "", - "Some matching elements.", - "", - "Many matching elements." - ] - } - }, - "id": "GooglePrivacyDlpV2LikelihoodAdjustment", - "description": "Message for specifying an adjustment to the likelihood of a finding as\npart of a detection rule." - }, - "GooglePrivacyDlpV2Action": { - "type": "object", - "properties": { - "publishSummaryToCscc": { - "$ref": "GooglePrivacyDlpV2PublishSummaryToCscc", - "description": "Publish summary to Cloud Security Command Center (Alpha)." }, - "saveFindings": { - "$ref": "GooglePrivacyDlpV2SaveFindings", - "description": "Save resulting findings in a provided location." - }, - "pubSub": { - "description": "Publish a notification to a pubsub topic.", - "$ref": "GooglePrivacyDlpV2PublishToPubSub" - } - }, - "id": "GooglePrivacyDlpV2Action", - "description": "A task to execute on the completion of a job." - }, - "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.", - "type": "object", - "properties": { - "transformations": { - "description": "Transformation for each infoType. Cannot specify more than one\nfor a given infoType. [required]", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2InfoTypeTransformation" + "inspectTemplates": { + "methods": { + "delete": { + "description": "Deletes an InspectTemplate.", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/inspectTemplates/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2/projects/{projectsId}/inspectTemplates/{inspectTemplatesId}", + "path": "v2/{+name}", + "id": "dlp.projects.inspectTemplates.delete" + }, + "patch": { + "description": "Updates the InspectTemplate.", + "request": { + "$ref": "GooglePrivacyDlpV2UpdateInspectTemplateRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2InspectTemplate" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "PATCH", + "parameters": { + "name": { + "location": "path", + "description": "Resource name of organization and inspectTemplate to be updated, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/inspectTemplates/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/projects/{projectsId}/inspectTemplates/{inspectTemplatesId}", + "path": "v2/{+name}", + "id": "dlp.projects.inspectTemplates.patch" + }, + "get": { + "flatPath": "v2/projects/{projectsId}/inspectTemplates/{inspectTemplatesId}", + "path": "v2/{+name}", + "id": "dlp.projects.inspectTemplates.get", + "description": "Gets an InspectTemplate.", + "response": { + "$ref": "GooglePrivacyDlpV2InspectTemplate" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "parameters": { + "name": { + "pattern": "^projects/[^/]+/inspectTemplates/[^/]+$", + "location": "path", + "description": "Resource name of the organization and inspectTemplate to be read, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists InspectTemplates.", + "httpMethod": "GET", + "response": { + "$ref": "GooglePrivacyDlpV2ListInspectTemplatesResponse" + }, + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageToken": { + "location": "query", + "description": "Optional page token to continue retrieval. Comes from previous call\nto `ListInspectTemplates`.", + "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" + }, + "parent": { + "description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/projects/{projectsId}/inspectTemplates", + "id": "dlp.projects.inspectTemplates.list", + "path": "v2/{+parent}/inspectTemplates" + }, + "create": { + "id": "dlp.projects.inspectTemplates.create", + "path": "v2/{+parent}/inspectTemplates", + "description": "Creates an InspectTemplate for re-using frequently used configuration\nfor inspecting content, images, and storage.", + "request": { + "$ref": "GooglePrivacyDlpV2CreateInspectTemplateRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "GooglePrivacyDlpV2InspectTemplate" + }, + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/projects/{projectsId}/inspectTemplates" + } } - } - }, - "id": "GooglePrivacyDlpV2InfoTypeTransformations" - }, - "GooglePrivacyDlpV2RecordSuppression": { - "properties": { - "condition": { - "description": "A condition that when it evaluates to true will result in the record being\nevaluated to be suppressed from the transformed content.", - "$ref": "GooglePrivacyDlpV2RecordCondition" - } - }, - "id": "GooglePrivacyDlpV2RecordSuppression", - "description": "Configuration to suppress records whose suppression conditions evaluate to\ntrue.", - "type": "object" - }, - "GooglePrivacyDlpV2KAnonymityConfig": { - "description": "k-anonymity metric, used for analysis of reidentification risk.", - "type": "object", - "properties": { - "entityId": { - "$ref": "GooglePrivacyDlpV2EntityId", - "description": "Optional message indicating that multiple rows might be associated to a\nsingle individual. If the same entity_id is associated to multiple\nquasi-identifier tuples over distict rows, we consider the entire\ncollection of tuples as the composite quasi-identifier. This collection\nis a multiset: the order in which the different tuples appear in the\ndataset is ignored, but their frequency is taken into account.\n\nImportant note: a maximum of 1000 rows can be associated to a single\nentity ID. If more rows are associated with the same entity ID, some\nmight be ignored." }, - "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": "GooglePrivacyDlpV2FieldId" + "content": { + "methods": { + "deidentify": { + "request": { + "$ref": "GooglePrivacyDlpV2DeidentifyContentRequest" + }, + "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)", + "response": { + "$ref": "GooglePrivacyDlpV2DeidentifyContentResponse" + }, + "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": "v2/projects/{projectsId}/content:deidentify", + "path": "v2/{+parent}/content:deidentify", + "id": "dlp.projects.content.deidentify" + }, + "inspect": { + "path": "v2/{+parent}/content:inspect", + "id": "dlp.projects.content.inspect", + "request": { + "$ref": "GooglePrivacyDlpV2InspectContentRequest" + }, + "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)", + "response": { + "$ref": "GooglePrivacyDlpV2InspectContentResponse" + }, + "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": "v2/projects/{projectsId}/content:inspect" + }, + "reidentify": { + "description": "Re-identifies content that has been de-identified.", + "request": { + "$ref": "GooglePrivacyDlpV2ReidentifyContentRequest" + }, + "response": { + "$ref": "GooglePrivacyDlpV2ReidentifyContentResponse" + }, + "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": "v2/projects/{projectsId}/content:reidentify", + "path": "v2/{+parent}/content:reidentify", + "id": "dlp.projects.content.reidentify" + } + } + }, + "jobTriggers": { + "methods": { + "delete": { + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "parameters": { + "name": { + "description": "Resource name of the project and the triggeredJob, for example\n`projects/dlp-test-project/jobTriggers/53234423`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/jobTriggers/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/projects/{projectsId}/jobTriggers/{jobTriggersId}", + "path": "v2/{+name}", + "id": "dlp.projects.jobTriggers.delete", + "description": "Deletes a job trigger." + }, + "patch": { + "request": { + "$ref": "GooglePrivacyDlpV2UpdateJobTriggerRequest" + }, + "description": "Updates a job trigger.", + "response": { + "$ref": "GooglePrivacyDlpV2JobTrigger" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "PATCH", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "description": "Resource name of the project and the triggeredJob, for example\n`projects/dlp-test-project/jobTriggers/53234423`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/jobTriggers/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2/projects/{projectsId}/jobTriggers/{jobTriggersId}", + "path": "v2/{+name}", + "id": "dlp.projects.jobTriggers.patch" + }, + "get": { + "description": "Gets a job trigger.", + "response": { + "$ref": "GooglePrivacyDlpV2JobTrigger" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "description": "Resource name of the project and the triggeredJob, for example\n`projects/dlp-test-project/jobTriggers/53234423`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/jobTriggers/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2/projects/{projectsId}/jobTriggers/{jobTriggersId}", + "path": "v2/{+name}", + "id": "dlp.projects.jobTriggers.get" + }, + "list": { + "id": "dlp.projects.jobTriggers.list", + "path": "v2/{+parent}/jobTriggers", + "description": "Lists job triggers.", + "httpMethod": "GET", + "response": { + "$ref": "GooglePrivacyDlpV2ListJobTriggersResponse" + }, + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "location": "path", + "description": "The parent resource name, for example projects/my-project-id.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$" + }, + "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.", + "type": "string", + "location": "query" + }, + "orderBy": { + "location": "query", + "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.", + "type": "string" + }, + "pageSize": { + "description": "Optional size of the page, can be limited by a server.", + "format": "int32", + "type": "integer", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v2/projects/{projectsId}/jobTriggers" + }, + "create": { + "description": "Creates a job trigger to run DLP actions such as scanning storage for\nsensitive information on a set schedule.", + "request": { + "$ref": "GooglePrivacyDlpV2CreateJobTriggerRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "GooglePrivacyDlpV2JobTrigger" + }, + "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": "v2/projects/{projectsId}/jobTriggers", + "id": "dlp.projects.jobTriggers.create", + "path": "v2/{+parent}/jobTriggers" + } } } - }, - "id": "GooglePrivacyDlpV2KAnonymityConfig" + } + } + }, + "parameters": { + "upload_protocol": { + "location": "query", + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "type": "string" }, - "GooglePrivacyDlpV2BigQueryOptions": { - "description": "Options defining BigQuery table and row identifiers.", - "type": "object", - "properties": { - "tableReference": { - "$ref": "GooglePrivacyDlpV2BigQueryTable", - "description": "Complete BigQuery table reference." - }, - "rowsLimit": { - "description": "Max number of rows to scan. If the table has more rows than this value, the\nrest of the rows are omitted. If not set, or if set to 0, all rows will be\nscanned. Cannot be used in conjunction with TimespanConfig.", - "format": "int64", - "type": "string" - }, - "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": "GooglePrivacyDlpV2FieldId" - } - } - }, - "id": "GooglePrivacyDlpV2BigQueryOptions" + "prettyPrint": { + "location": "query", + "description": "Returns response with indentations and line breaks.", + "type": "boolean", + "default": "true" }, - "GooglePrivacyDlpV2FindingLimits": { - "type": "object", - "properties": { - "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" - }, - "maxFindingsPerInfoType": { - "description": "Configuration of findings limit given for specified infoTypes.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2InfoTypeLimit" - } - } - }, - "id": "GooglePrivacyDlpV2FindingLimits" + "uploadType": { + "location": "query", + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string" }, - "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", - "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" - }, - "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" - }, - "minutes": { - "description": "Minutes of hour of day. Must be from 0 to 59.", - "format": "int32", - "type": "integer" - } - }, - "id": "GoogleTypeTimeOfDay" + "fields": { + "location": "query", + "description": "Selector specifying which fields to include in a partial response.", + "type": "string" }, - "GooglePrivacyDlpV2Value": { - "type": "object", - "properties": { - "floatValue": { - "format": "double", - "type": "number" - }, - "timeValue": { - "$ref": "GoogleTypeTimeOfDay" - }, - "integerValue": { - "format": "int64", - "type": "string" - }, - "stringValue": { - "type": "string" - }, - "dateValue": { - "$ref": "GoogleTypeDate" - }, - "dayOfWeekValue": { - "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." - ], - "enum": [ - "DAY_OF_WEEK_UNSPECIFIED", - "MONDAY", - "TUESDAY", - "WEDNESDAY", - "THURSDAY", - "FRIDAY", - "SATURDAY", - "SUNDAY" - ], - "type": "string" - }, - "timestampValue": { - "format": "google-datetime", - "type": "string" - }, - "booleanValue": { - "type": "boolean" - } - }, - "id": "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." + "$.xgafv": { + "enum": [ + "1", + "2" + ], + "description": "V1 error format.", + "type": "string", + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query" }, - "GooglePrivacyDlpV2LDiversityEquivalenceClass": { - "description": "The set of columns' values that share the same ldiversity value.", - "type": "object", - "properties": { - "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": "GooglePrivacyDlpV2Value" - } - }, - "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": "GooglePrivacyDlpV2ValueFrequency" - } - }, - "equivalenceClassSize": { - "description": "Size of the k-anonymity equivalence class.", - "format": "int64", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2LDiversityEquivalenceClass" + "callback": { + "location": "query", + "description": "JSONP", + "type": "string" }, - "GooglePrivacyDlpV2InfoTypeLimit": { - "description": "Max findings configuration per infoType, per content item or long\nrunning DlpJob.", - "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\nare found but not specified in another InfoTypeLimit.", - "$ref": "GooglePrivacyDlpV2InfoType" - }, - "maxFindings": { - "description": "Max findings limit for the given infoType.", - "format": "int32", - "type": "integer" - } - }, - "id": "GooglePrivacyDlpV2InfoTypeLimit" + "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" }, - "GooglePrivacyDlpV2InspectTemplate": { + "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" + }, + "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": "v2", + "baseUrl": "https://dlp.googleapis.com/", + "kind": "discovery#restDescription", + "description": "Provides methods for detection, risk analysis, and de-identification of privacy-sensitive fragments in text, images, and Google Cloud Platform storage repositories.", + "servicePath": "", + "basePath": "", + "id": "dlp:v2", + "documentationLink": "https://cloud.google.com/dlp/docs/", + "revision": "20180507", + "discoveryVersion": "v1", + "version_module": true, + "schemas": { + "GooglePrivacyDlpV2BoundingBox": { + "description": "Bounding box encompassing detected text within an image.", "type": "object", "properties": { - "displayName": { - "description": "Display name (max 256 chars).", - "type": "string" - }, - "description": { - "description": "Short description (max 256 chars).", - "type": "string" - }, - "createTime": { - "description": "The creation timestamp of a inspectTemplate, output only field.", - "format": "google-datetime", - "type": "string" + "width": { + "description": "Width of the bounding box in pixels.", + "format": "int32", + "type": "integer" }, - "updateTime": { - "description": "The last update timestamp of a inspectTemplate, output only field.", - "format": "google-datetime", - "type": "string" + "height": { + "description": "Height of the bounding box in pixels.", + "format": "int32", + "type": "integer" }, - "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" + "top": { + "description": "Top coordinate of the bounding box. (0,0) is upper left.", + "format": "int32", + "type": "integer" }, - "inspectConfig": { - "description": "The core content of the template. Configuration of the scanning process.", - "$ref": "GooglePrivacyDlpV2InspectConfig" + "left": { + "description": "Left coordinate of the bounding box. (0,0) is upper left.", + "format": "int32", + "type": "integer" } }, - "id": "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": "GooglePrivacyDlpV2BoundingBox" }, - "GooglePrivacyDlpV2NumericalStatsResult": { + "GooglePrivacyDlpV2RecordKey": { "properties": { - "minValue": { - "$ref": "GooglePrivacyDlpV2Value", - "description": "Minimum value appearing in the column." - }, - "maxValue": { - "$ref": "GooglePrivacyDlpV2Value", - "description": "Maximum value appearing in the column." + "bigQueryKey": { + "$ref": "GooglePrivacyDlpV2BigQueryKey" }, - "quantileValues": { - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2Value" - }, - "description": "List of 99 values that partition the set of field values into 100 equal\nsized buckets." + "datastoreKey": { + "$ref": "GooglePrivacyDlpV2DatastoreKey" } }, - "id": "GooglePrivacyDlpV2NumericalStatsResult", - "description": "Result of the numerical stats computation.", + "id": "GooglePrivacyDlpV2RecordKey", + "description": "Message for a unique key indicating a record that contains a finding.", "type": "object" }, - "GooglePrivacyDlpV2Location": { - "description": "Specifies the location of the finding.", + "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.", "type": "object", "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." + "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" }, - "contentLocations": { - "description": "List of nested objects pointing to the precise location of the finding\nwithin the file or record.", + "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": "GooglePrivacyDlpV2ContentLocation" + "$ref": "GooglePrivacyDlpV2CharsToIgnore" } }, - "codepointRange": { - "description": "Unicode character offsets delimiting the finding.\nThese are relative to the finding's containing element.\nProvided when the content is text.", - "$ref": "GooglePrivacyDlpV2Range" + "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" + }, + "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": "GooglePrivacyDlpV2Location" + "id": "GooglePrivacyDlpV2CharacterMaskConfig" }, - "GooglePrivacyDlpV2CustomInfoType": { - "type": "object", + "GooglePrivacyDlpV2SummaryResult": { "properties": { - "infoType": { - "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.", - "$ref": "GooglePrivacyDlpV2InfoType" - }, - "dictionary": { - "$ref": "GooglePrivacyDlpV2Dictionary", - "description": "Dictionary-based custom info type." - }, - "regex": { - "description": "Regex-based custom info type.", - "$ref": "GooglePrivacyDlpV2Regex" - }, - "surrogateType": { - "$ref": "GooglePrivacyDlpV2SurrogateType", - "description": "Surrogate info type." - }, - "likelihood": { + "code": { "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" + "TRANSFORMATION_RESULT_CODE_UNSPECIFIED", + "SUCCESS", + "ERROR" ], - "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.", "type": "string" }, - "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.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2DetectionRule" - } + "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" } }, - "id": "GooglePrivacyDlpV2CustomInfoType", - "description": "Custom information type provided by the user. Used to find domain-specific\nsensitive information configurable to the data in question." + "id": "GooglePrivacyDlpV2SummaryResult", + "description": "A collection that informs the user the number of times a particular\n`TransformationResultCode` and error details occurred.", + "type": "object" }, - "GooglePrivacyDlpV2DeidentifyConfig": { + "GooglePrivacyDlpV2Bucket": { + "description": "Bucket is represented as a range, along with replacement values.", "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": "GooglePrivacyDlpV2RecordTransformations" + "min": { + "$ref": "GooglePrivacyDlpV2Value", + "description": "Lower bound of the range, inclusive. Type should be the same as max if\nused." }, - "infoTypeTransformations": { - "$ref": "GooglePrivacyDlpV2InfoTypeTransformations", - "description": "Treat the dataset as free-form text and apply the same free text\ntransformation everywhere." + "max": { + "$ref": "GooglePrivacyDlpV2Value", + "description": "Upper bound of the range, exclusive; type must match min." + }, + "replacementValue": { + "$ref": "GooglePrivacyDlpV2Value", + "description": "Replacement value for this bucket. If not provided\nthe default behavior will be to hyphenate the min-max range." } }, - "id": "GooglePrivacyDlpV2DeidentifyConfig", - "description": "The configuration that controls how the data will change." + "id": "GooglePrivacyDlpV2Bucket" }, - "GooglePrivacyDlpV2Trigger": { + "GooglePrivacyDlpV2ReidentifyContentRequest": { + "description": "Request to re-identify an item.", "type": "object", "properties": { - "schedule": { - "$ref": "GooglePrivacyDlpV2Schedule", - "description": "Create a job on a repeating basis based on the elapse of time." + "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" + }, + "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" + }, + "reidentifyConfig": { + "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`", + "$ref": "GooglePrivacyDlpV2DeidentifyConfig" + }, + "item": { + "description": "The item to re-identify. Will be treated as text.", + "$ref": "GooglePrivacyDlpV2ContentItem" } }, - "id": "GooglePrivacyDlpV2Trigger", - "description": "What event needs to occur for a new job to be started." + "id": "GooglePrivacyDlpV2ReidentifyContentRequest" }, - "GooglePrivacyDlpV2Range": { + "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.", "type": "object", "properties": { - "start": { - "description": "Index of the first character of the range (inclusive).", - "format": "int64", - "type": "string" + "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": "GooglePrivacyDlpV2PathElement" + } }, - "end": { - "description": "Index of the last character of the range (exclusive).", + "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." + } + }, + "id": "GooglePrivacyDlpV2Key" + }, + "GooglePrivacyDlpV2TableLocation": { + "properties": { + "rowIndex": { + "description": "The zero-based index of the row where the finding is located.", "format": "int64", "type": "string" } }, - "id": "GooglePrivacyDlpV2Range", - "description": "Generic half-open interval [start, end)" + "id": "GooglePrivacyDlpV2TableLocation", + "description": "Location of a finding within a table.", + "type": "object" }, - "GooglePrivacyDlpV2CategoricalStatsConfig": { + "GooglePrivacyDlpV2Conditions": { "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." + "conditions": { + "type": "array", + "items": { + "$ref": "GooglePrivacyDlpV2Condition" + } } }, - "id": "GooglePrivacyDlpV2CategoricalStatsConfig", - "description": "Compute numerical stats over an individual column, including\nnumber of distinct values and value count distribution.", + "id": "GooglePrivacyDlpV2Conditions", + "description": "A collection of conditions.", "type": "object" }, - "GooglePrivacyDlpV2BigQueryKey": { + "GooglePrivacyDlpV2TransformationSummary": { + "description": "Summary of a single tranformation.\nOnly one of 'transformation', 'field_transformation', or 'record_suppress'\nwill be set.", + "type": "object", "properties": { - "tableReference": { - "$ref": "GooglePrivacyDlpV2BigQueryTable", - "description": "Complete BigQuery table reference." - }, - "rowNumber": { - "description": "Absolute number of the row from the beginning of the table at the time\nof scanning.", + "transformedBytes": { + "description": "Total size in bytes that were transformed in some way.", "format": "int64", "type": "string" + }, + "recordSuppress": { + "$ref": "GooglePrivacyDlpV2RecordSuppression", + "description": "The specific suppression option these stats apply to." + }, + "infoType": { + "$ref": "GooglePrivacyDlpV2InfoType", + "description": "Set if the transformation was limited to a specific info_type." + }, + "transformation": { + "$ref": "GooglePrivacyDlpV2PrimitiveTransformation", + "description": "The specific transformation these stats apply to." + }, + "results": { + "type": "array", + "items": { + "$ref": "GooglePrivacyDlpV2SummaryResult" + } + }, + "field": { + "description": "Set if the transformation was limited to a specific FieldId.", + "$ref": "GooglePrivacyDlpV2FieldId" + }, + "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": "GooglePrivacyDlpV2FieldTransformation" + } } }, - "id": "GooglePrivacyDlpV2BigQueryKey", - "description": "Row key for identifying a record in BigQuery table.", - "type": "object" + "id": "GooglePrivacyDlpV2TransformationSummary" }, - "GooglePrivacyDlpV2PartitionId": { + "GooglePrivacyDlpV2ListInspectTemplatesResponse": { + "description": "Response message for ListInspectTemplates.", "type": "object", "properties": { - "projectId": { - "description": "The ID of the project to which the entities belong.", + "nextPageToken": { + "description": "If the next page is available then the next page token to be used\nin following ListInspectTemplates request.", "type": "string" }, - "namespaceId": { - "description": "If not empty, the ID of the namespace to which the entities belong.", - "type": "string" + "inspectTemplates": { + "description": "List of inspectTemplates, up to page_size in ListInspectTemplatesRequest.", + "type": "array", + "items": { + "$ref": "GooglePrivacyDlpV2InspectTemplate" + } } }, - "id": "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": "GooglePrivacyDlpV2ListInspectTemplatesResponse" }, - "GooglePrivacyDlpV2CharsToIgnore": { - "description": "Characters to skip when doing deidentification of a value. These will be left\nalone and skipped.", + "GooglePrivacyDlpV2CreateInspectTemplateRequest": { + "description": "Request message for CreateInspectTemplate.", "type": "object", "properties": { - "charactersToSkip": { + "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" }, - "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": [ - "COMMON_CHARS_TO_IGNORE_UNSPECIFIED", - "NUMERIC", - "ALPHA_UPPER_CASE", - "ALPHA_LOWER_CASE", - "PUNCTUATION", - "WHITESPACE" - ] + "inspectTemplate": { + "$ref": "GooglePrivacyDlpV2InspectTemplate", + "description": "The InspectTemplate to create." } }, - "id": "GooglePrivacyDlpV2CharsToIgnore" + "id": "GooglePrivacyDlpV2CreateInspectTemplateRequest" }, - "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.", - "type": "object", + "GooglePrivacyDlpV2DetectionRule": { "properties": { - "buckets": { - "description": "Set of buckets. Ranges must be non-overlapping.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2Bucket" - } + "hotwordRule": { + "description": "Hotword-based detection rule.", + "$ref": "GooglePrivacyDlpV2HotwordRule" } }, - "id": "GooglePrivacyDlpV2BucketingConfig" + "id": "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.", + "type": "object" }, - "GooglePrivacyDlpV2TransientCryptoKey": { - "description": "Use this to have a random data crypto key generated.\nIt will be discarded after the request finishes.", + "GooglePrivacyDlpV2InspectContentResponse": { + "description": "Results of inspecting an item.", "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" + "result": { + "$ref": "GooglePrivacyDlpV2InspectResult", + "description": "The findings." } }, - "id": "GooglePrivacyDlpV2TransientCryptoKey" - }, - "GooglePrivacyDlpV2CancelDlpJobRequest": { - "description": "The request message for canceling a DLP job.", - "type": "object", - "properties": {}, - "id": "GooglePrivacyDlpV2CancelDlpJobRequest" + "id": "GooglePrivacyDlpV2InspectContentResponse" }, - "GooglePrivacyDlpV2KindExpression": { - "description": "A representation of a Datastore kind.", + "GooglePrivacyDlpV2FileSet": { + "description": "Set of files to scan.", "type": "object", "properties": { - "name": { - "description": "The name of the kind.", + "url": { + "description": "The url, in the format `gs://\u003cbucket\u003e/\u003cpath\u003e`. Trailing wildcard in the\npath is allowed.", "type": "string" } }, - "id": "GooglePrivacyDlpV2KindExpression" + "id": "GooglePrivacyDlpV2FileSet" }, - "GooglePrivacyDlpV2ListDlpJobsResponse": { - "description": "The response message for listing DLP jobs.", + "GooglePrivacyDlpV2LDiversityResult": { + "description": "Result of the l-diversity computation.", "type": "object", "properties": { - "jobs": { - "description": "A list of DlpJobs that matches the specified filter in the request.", + "sensitiveValueFrequencyHistogramBuckets": { + "description": "Histogram of l-diversity equivalence class sensitive value frequencies.", "type": "array", "items": { - "$ref": "GooglePrivacyDlpV2DlpJob" + "$ref": "GooglePrivacyDlpV2LDiversityHistogramBucket" } - }, - "nextPageToken": { - "type": "string", - "description": "The standard List next-page token." } }, - "id": "GooglePrivacyDlpV2ListDlpJobsResponse" + "id": "GooglePrivacyDlpV2LDiversityResult" }, - "GooglePrivacyDlpV2ByteContentItem": { - "description": "Container for bytes to inspect or redact.", - "type": "object", + "GooglePrivacyDlpV2SaveFindings": { "properties": { - "type": { + "outputConfig": { + "$ref": "GooglePrivacyDlpV2OutputStorageConfig" + } + }, + "id": "GooglePrivacyDlpV2SaveFindings", + "description": "If set, the detailed findings will be persisted to the specified\nOutputStorageConfig. Only a single instance of this action can be\nspecified.\nCompatible with: Inspect", + "type": "object" + }, + "GooglePrivacyDlpV2OutputStorageConfig": { + "properties": { + "outputSchema": { "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." ], "enum": [ - "BYTES_TYPE_UNSPECIFIED", - "IMAGE", - "IMAGE_JPEG", - "IMAGE_BMP", - "IMAGE_PNG", - "IMAGE_SVG", - "TEXT_UTF8" + "OUTPUT_SCHEMA_UNSPECIFIED", + "BASIC_COLUMNS", + "GCS_COLUMNS", + "DATASTORE_COLUMNS", + "BIG_QUERY_COLUMNS", + "ALL_COLUMNS" ], - "description": "The type of data stored in the bytes string. Default will be TEXT_UTF8.", - "type": "string" - }, - "data": { - "description": "Content data to inspect or redact.", - "format": "byte", + "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.", "type": "string" - } - }, - "id": "GooglePrivacyDlpV2ByteContentItem" - }, - "GooglePrivacyDlpV2PrivacyMetric": { - "properties": { - "lDiversityConfig": { - "$ref": "GooglePrivacyDlpV2LDiversityConfig" - }, - "numericalStatsConfig": { - "$ref": "GooglePrivacyDlpV2NumericalStatsConfig" - }, - "kAnonymityConfig": { - "$ref": "GooglePrivacyDlpV2KAnonymityConfig" - }, - "categoricalStatsConfig": { - "$ref": "GooglePrivacyDlpV2CategoricalStatsConfig" }, - "kMapEstimationConfig": { - "$ref": "GooglePrivacyDlpV2KMapEstimationConfig" + "table": { + "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.", + "$ref": "GooglePrivacyDlpV2BigQueryTable" } }, - "id": "GooglePrivacyDlpV2PrivacyMetric", - "description": "Privacy metric to compute for reidentification risk analysis.", + "id": "GooglePrivacyDlpV2OutputStorageConfig", + "description": "Cloud repository for storing output.", "type": "object" }, - "GooglePrivacyDlpV2WordList": { - "id": "GooglePrivacyDlpV2WordList", - "description": "Message defining a list of words or phrases to search for in the data.", + "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`.", "type": "object", - "properties": { - "words": { - "type": "array", - "items": { - "type": "string" - }, - "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]" - } - } + "properties": {}, + "id": "GooglePrivacyDlpV2SurrogateType" }, - "GooglePrivacyDlpV2KMapEstimationResult": { - "id": "GooglePrivacyDlpV2KMapEstimationResult", - "description": "Result of the reidentifiability analysis. Note that these results are an\nestimation, not exact values.", + "GooglePrivacyDlpV2StorageConfig": { + "description": "Shared message indicating Cloud storage type.", "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": "GooglePrivacyDlpV2KMapEstimationHistogramBucket" - } - } - } - }, - "GooglePrivacyDlpV2JobTrigger": { - "properties": { - "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.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2Trigger" - } - }, - "lastRunTime": { - "description": "The timestamp of the last time this trigger executed, output only field.", - "format": "google-datetime", - "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.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2Error" - } - }, - "displayName": { - "type": "string", - "description": "Display name (max 100 chars)" - }, - "description": { - "description": "User provided description (max 256 chars)", - "type": "string" - }, - "createTime": { - "description": "The creation timestamp of a triggeredJob, output only field.", - "format": "google-datetime", - "type": "string" - }, - "inspectJob": { - "$ref": "GooglePrivacyDlpV2InspectJobConfig" - }, - "status": { - "enumDescriptions": [ - "", - "Trigger is healthy.", - "Trigger is temporarily paused.", - "Trigger is cancelled and can not be resumed." - ], - "enum": [ - "STATUS_UNSPECIFIED", - "HEALTHY", - "PAUSED", - "CANCELLED" - ], - "description": "A status for this trigger. [required]", - "type": "string" - }, - "updateTime": { - "description": "The last update timestamp of a triggeredJob, output only field.", - "format": "google-datetime", - "type": "string" + "cloudStorageOptions": { + "description": "Google Cloud Storage options specification.", + "$ref": "GooglePrivacyDlpV2CloudStorageOptions" }, - "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" + "datastoreOptions": { + "description": "Google Cloud Datastore options specification.", + "$ref": "GooglePrivacyDlpV2DatastoreOptions" + }, + "timespanConfig": { + "$ref": "GooglePrivacyDlpV2TimespanConfig" + }, + "bigQueryOptions": { + "$ref": "GooglePrivacyDlpV2BigQueryOptions", + "description": "BigQuery options specification." } }, - "id": "GooglePrivacyDlpV2JobTrigger", - "description": "Contains a configuration to make dlp api calls on a repeating basis.", - "type": "object" + "id": "GooglePrivacyDlpV2StorageConfig" }, - "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.\nA column with a semantic tag attached.", + "GooglePrivacyDlpV2Error": { + "description": "Details information about an error encountered during job execution or\nthe results of an unsuccessful activation of the JobTrigger.\nOutput only field.", "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": "GooglePrivacyDlpV2AuxiliaryTable" - } + "details": { + "$ref": "GoogleRpcStatus" }, - "quasiIds": { - "description": "Fields considered to be quasi-identifiers. No two columns can have the\nsame tag. [required]", + "timestamps": { + "description": "The times the error occurred.", "type": "array", "items": { - "$ref": "GooglePrivacyDlpV2TaggedField" + "format": "google-datetime", + "type": "string" } - }, - "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": "GooglePrivacyDlpV2KMapEstimationConfig" + "id": "GooglePrivacyDlpV2Error" }, - "GooglePrivacyDlpV2KAnonymityHistogramBucket": { - "id": "GooglePrivacyDlpV2KAnonymityHistogramBucket", - "type": "object", + "GooglePrivacyDlpV2UnwrappedCryptoKey": { "properties": { - "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", + "key": { + "description": "The AES 128/192/256 bit key. [required]", + "format": "byte", "type": "string" + } + }, + "id": "GooglePrivacyDlpV2UnwrappedCryptoKey", + "description": "Using raw keys is prone to security risks due to accidentally\nleaking the key. Choose another type of key if possible.", + "type": "object" + }, + "GooglePrivacyDlpV2Table": { + "properties": { + "headers": { + "type": "array", + "items": { + "$ref": "GooglePrivacyDlpV2FieldId" + } }, - "bucketSize": { - "type": "string", - "description": "Total number of equivalence classes in this bucket.", - "format": "int64" - }, - "bucketValueCount": { - "type": "string", - "description": "Total number of distinct equivalence classes in this bucket.", - "format": "int64" - }, - "bucketValues": { - "description": "Sample of equivalence classes in this bucket. The total number of\nclasses returned per bucket is capped at 20.", + "rows": { "type": "array", "items": { - "$ref": "GooglePrivacyDlpV2KAnonymityEquivalenceClass" + "$ref": "GooglePrivacyDlpV2Row" } } - } + }, + "id": "GooglePrivacyDlpV2Table", + "description": "Structured content to inspect. Up to 50,000 `Value`s per request allowed.", + "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.", + "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.", "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" + "cryptoKey": { + "description": "The key used by the hash function.", + "$ref": "GooglePrivacyDlpV2CryptoKey" } }, - "id": "GooglePrivacyDlpV2PathElement" + "id": "GooglePrivacyDlpV2CryptoHashConfig" }, - "GooglePrivacyDlpV2DeidentifyContentRequest": { - "description": "Request to de-identify a list of items.", + "GooglePrivacyDlpV2UpdateJobTriggerRequest": { + "description": "Request message for UpdateJobTrigger.", "type": "object", "properties": { - "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": { - "description": "The item to de-identify. Will be treated as text.", - "$ref": "GooglePrivacyDlpV2ContentItem" - }, - "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.", + "updateMask": { + "description": "Mask to control which fields get updated.", + "format": "google-fieldmask", "type": "string" }, - "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." + "jobTrigger": { + "$ref": "GooglePrivacyDlpV2JobTrigger", + "description": "New JobTrigger value." } }, - "id": "GooglePrivacyDlpV2DeidentifyContentRequest" + "id": "GooglePrivacyDlpV2UpdateJobTriggerRequest" }, - "GooglePrivacyDlpV2ListJobTriggersResponse": { - "description": "Response message for ListJobTriggers.", - "type": "object", + "GooglePrivacyDlpV2PublishToPubSub": { "properties": { - "nextPageToken": { - "description": "If the next page is available then the next page token to be used\nin following ListJobTriggers request.", + "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" - }, - "jobTriggers": { - "description": "List of triggeredJobs, up to page_size in ListJobTriggersRequest.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2JobTrigger" - } } }, - "id": "GooglePrivacyDlpV2ListJobTriggersResponse" + "id": "GooglePrivacyDlpV2PublishToPubSub", + "description": "Publish the results of a DlpJob to a pub sub channel.\nCompatible with: Inspect, Risk", + "type": "object" }, - "GooglePrivacyDlpV2DatastoreKey": { - "description": "Record key for a finding in Cloud Datastore.", - "type": "object", + "GooglePrivacyDlpV2QuoteInfo": { "properties": { - "entityKey": { - "description": "Datastore entity key.", - "$ref": "GooglePrivacyDlpV2Key" + "dateTime": { + "$ref": "GooglePrivacyDlpV2DateTime" } }, - "id": "GooglePrivacyDlpV2DatastoreKey" + "id": "GooglePrivacyDlpV2QuoteInfo", + "description": "Message for infoType-dependent details parsed from quote.", + "type": "object" }, - "GooglePrivacyDlpV2Finding": { - "description": "Represents a piece of potentially sensitive content.", + "GooglePrivacyDlpV2DlpJob": { + "description": "Combines all of the information about a DLP job.", "type": "object", "properties": { - "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." - }, - "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.", + "jobTriggerName": { + "description": "If created by a job trigger, the resource name of the trigger that\ninstantiated the job.", "type": "string" }, - "location": { - "$ref": "GooglePrivacyDlpV2Location", - "description": "Where the content was found." - }, - "infoType": { - "$ref": "GooglePrivacyDlpV2InfoType", - "description": "The type of content that might have been found.\nProvided if requested by the `InspectConfig`." - }, "createTime": { - "description": "Timestamp when finding was detected.", + "description": "Time when the job was created.", "format": "google-datetime", "type": "string" }, - "likelihood": { + "state": { + "description": "State of a job.", + "type": "string", "enumDescriptions": [ - "Default value; information with all likelihoods is included.", - "Few matching elements.", "", - "Some matching elements.", + "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": { + "$ref": "GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails", + "description": "Results from analyzing risk of a data source." + }, + "name": { + "description": "The server-assigned name.", + "type": "string" + }, + "type": { + "enumDescriptions": [ "", - "Many matching elements." + "The job inspected Google Cloud for sensitive data.", + "The job executed a Risk Analysis computation." ], "enum": [ - "LIKELIHOOD_UNSPECIFIED", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" + "DLP_JOB_TYPE_UNSPECIFIED", + "INSPECT_JOB", + "RISK_ANALYSIS_JOB" ], - "description": "Estimate of how likely it is that the `info_type` is correct.", + "description": "The type of job.", + "type": "string" + }, + "endTime": { + "description": "Time when the job finished.", + "format": "google-datetime", "type": "string" + }, + "errors": { + "description": "A stream of errors encountered running the job.", + "type": "array", + "items": { + "$ref": "GooglePrivacyDlpV2Error" + } + }, + "startTime": { + "description": "Time when the job started.", + "format": "google-datetime", + "type": "string" + }, + "inspectDetails": { + "$ref": "GooglePrivacyDlpV2InspectDataSourceDetails", + "description": "Results from inspecting a data source." } }, - "id": "GooglePrivacyDlpV2Finding" + "id": "GooglePrivacyDlpV2DlpJob" }, - "GooglePrivacyDlpV2CreateDlpJobRequest": { - "description": "Request message for CreateDlpJobRequest. Used to initiate long running\njobs such as calculating risk metrics or inspecting Google Cloud\nStorage.", + "GooglePrivacyDlpV2ImageRedactionConfig": { + "description": "Configuration for determining how redaction of images should occur.", "type": "object", "properties": { - "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" + "redactAllText": { + "description": "If true, all text found in the image, regardless whether it matches an\ninfo_type, is redacted.", + "type": "boolean" }, - "riskJob": { - "$ref": "GooglePrivacyDlpV2RiskAnalysisJobConfig" + "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": "GooglePrivacyDlpV2InfoType" }, - "inspectJob": { - "$ref": "GooglePrivacyDlpV2InspectJobConfig" + "redactionColor": { + "$ref": "GooglePrivacyDlpV2Color", + "description": "The color to use when redacting content from an image. If not specified,\nthe default is black." } }, - "id": "GooglePrivacyDlpV2CreateDlpJobRequest" + "id": "GooglePrivacyDlpV2ImageRedactionConfig" }, - "GooglePrivacyDlpV2RecordLocation": { + "GooglePrivacyDlpV2PublishSummaryToCscc": { + "description": "Publish the result summary of a DlpJob to the Cloud Security\nCommand Center (CSCC Alpha).\nThis action is only available for projects which are parts of\nan organization and whitelisted for the alpha Cloud Security Command\nCenter.\nThe action will publish count of finding instances and their info types.\nThe summary of findings will be persisted in CSCC and are governed by CSCC\nservice-specific policy, see https://cloud.google.com/terms/service-terms\nOnly a single instance of this action can be specified.\nCompatible with: Inspect", + "type": "object", + "properties": {}, + "id": "GooglePrivacyDlpV2PublishSummaryToCscc" + }, + "GooglePrivacyDlpV2RecordTransformations": { "properties": { - "tableLocation": { - "$ref": "GooglePrivacyDlpV2TableLocation", - "description": "Location within a `ContentItem.Table`." - }, - "recordKey": { - "$ref": "GooglePrivacyDlpV2RecordKey", - "description": "Key of the finding." + "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": "GooglePrivacyDlpV2RecordSuppression" + } }, - "fieldId": { - "$ref": "GooglePrivacyDlpV2FieldId", - "description": "Field id of the field containing the finding." + "fieldTransformations": { + "description": "Transform the record by applying various field transformations.", + "type": "array", + "items": { + "$ref": "GooglePrivacyDlpV2FieldTransformation" + } } }, - "id": "GooglePrivacyDlpV2RecordLocation", - "description": "Location of a finding within a row or record.", + "id": "GooglePrivacyDlpV2RecordTransformations", + "description": "A type of transformation that is applied over structured data such as a\ntable.", "type": "object" }, - "GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest": { - "id": "GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest", - "description": "Request message for UpdateDeidentifyTemplate.", + "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", "type": "object", "properties": { - "updateMask": { - "description": "Mask to control which fields get updated.", - "format": "google-fieldmask", + "wrappedKey": { + "description": "The wrapped data crypto key. [required]", + "format": "byte", "type": "string" }, - "deidentifyTemplate": { - "$ref": "GooglePrivacyDlpV2DeidentifyTemplate", - "description": "New DeidentifyTemplate value." + "cryptoKeyName": { + "description": "The resource name of the KMS CryptoKey to use for unwrapping. [required]", + "type": "string" } - } + }, + "id": "GooglePrivacyDlpV2KmsWrappedCryptoKey" }, - "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`.", + "GooglePrivacyDlpV2DateTime": { + "description": "Message for a date time object.", "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" + "dayOfWeek": { + "type": "string", + "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." + ], + "enum": [ + "DAY_OF_WEEK_UNSPECIFIED", + "MONDAY", + "TUESDAY", + "WEDNESDAY", + "THURSDAY", + "FRIDAY", + "SATURDAY", + "SUNDAY" + ] }, - "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" + "time": { + "$ref": "GoogleTypeTimeOfDay" }, - "month": { - "description": "Month of year. Must be from 1 to 12, or 0 if specifying a date without a\nmonth.", - "format": "int32", - "type": "integer" - } - }, - "id": "GoogleTypeDate" - }, - "GooglePrivacyDlpV2InspectDataSourceDetails": { - "description": "The results of an inspect DataSource job.", - "type": "object", - "properties": { - "result": { - "$ref": "GooglePrivacyDlpV2Result", - "description": "A summary of the outcome of this inspect job." + "date": { + "description": "One or more of the following must be set. All fields are optional, but\nwhen set must be valid date or time values.", + "$ref": "GoogleTypeDate" }, - "requestedOptions": { - "$ref": "GooglePrivacyDlpV2RequestedOptions", - "description": "The configuration used for this job." + "timeZone": { + "$ref": "GooglePrivacyDlpV2TimeZone" } }, - "id": "GooglePrivacyDlpV2InspectDataSourceDetails" + "id": "GooglePrivacyDlpV2DateTime" }, - "GooglePrivacyDlpV2DatastoreOptions": { + "GooglePrivacyDlpV2Result": { "properties": { - "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." + "processedBytes": { + "description": "Total size in bytes that were processed.", + "format": "int64", + "type": "string" }, - "kind": { - "$ref": "GooglePrivacyDlpV2KindExpression", - "description": "The kind to process." + "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": "GooglePrivacyDlpV2InfoTypeStats" + } } }, - "id": "GooglePrivacyDlpV2DatastoreOptions", - "description": "Options defining a data set within Google Cloud Datastore.", + "id": "GooglePrivacyDlpV2Result", "type": "object" }, - "GooglePrivacyDlpV2DocumentLocation": { - "description": "Location of a finding within a document.", + "GooglePrivacyDlpV2InfoTypeStats": { + "description": "Statistics regarding a specific InfoType.", "type": "object", "properties": { - "fileOffset": { - "description": "Offset of the line, from the beginning of the file, where the finding\nis located.", + "infoType": { + "description": "The type of finding this stat is for.", + "$ref": "GooglePrivacyDlpV2InfoType" + }, + "count": { + "description": "Number of findings for this infoType.", "format": "int64", "type": "string" } }, - "id": "GooglePrivacyDlpV2DocumentLocation" + "id": "GooglePrivacyDlpV2InfoTypeStats" }, - "GooglePrivacyDlpV2AuxiliaryTable": { - "type": "object", + "GooglePrivacyDlpV2RedactImageResponse": { "properties": { - "table": { - "$ref": "GooglePrivacyDlpV2BigQueryTable", - "description": "Auxiliary table location. [required]" - }, - "quasiIds": { - "description": "Quasi-identifier columns. [required]", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2QuasiIdField" - } + "redactedImage": { + "description": "The redacted image. The type will be the same as the original image.", + "format": "byte", + "type": "string" }, - "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]" + "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" } }, - "id": "GooglePrivacyDlpV2AuxiliaryTable" + "id": "GooglePrivacyDlpV2RedactImageResponse", + "description": "Results of redacting an image.", + "type": "object" }, - "GooglePrivacyDlpV2CreateDeidentifyTemplateRequest": { + "GooglePrivacyDlpV2ContentLocation": { + "description": "Findings container location data.", + "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.", + "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" }, - "deidentifyTemplate": { - "description": "The DeidentifyTemplate to create.", - "$ref": "GooglePrivacyDlpV2DeidentifyTemplate" + "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" + }, + "recordLocation": { + "$ref": "GooglePrivacyDlpV2RecordLocation", + "description": "Location within a row or record of a database table." + }, + "imageLocation": { + "description": "Location within an image's pixels.", + "$ref": "GooglePrivacyDlpV2ImageLocation" + }, + "documentLocation": { + "$ref": "GooglePrivacyDlpV2DocumentLocation", + "description": "Location data for document files." + }, + "containerVersion": { + "description": "Findings container version, if available\n(\"generation\" for Google Cloud Storage).", + "type": "string" } }, - "id": "GooglePrivacyDlpV2CreateDeidentifyTemplateRequest", - "description": "Request message for CreateDeidentifyTemplate.", - "type": "object" + "id": "GooglePrivacyDlpV2ContentLocation" }, - "GooglePrivacyDlpV2FixedSizeBucketingConfig": { + "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 '.", + "type": "object", + "properties": {}, + "id": "GooglePrivacyDlpV2RedactConfig" + }, + "GooglePrivacyDlpV2ListInfoTypesResponse": { "properties": { - "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]." - }, - "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]." - }, - "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" + "infoTypes": { + "description": "Set of sensitive infoTypes.", + "type": "array", + "items": { + "$ref": "GooglePrivacyDlpV2InfoTypeDescription" + } } }, - "id": "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": "GooglePrivacyDlpV2ListInfoTypesResponse", + "description": "Response to the ListInfoTypes request.", "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.", + "GooglePrivacyDlpV2CloudStoragePath": { + "description": "Message representing a single file or path in Cloud Storage.", "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.", + "path": { + "description": "A url representing a file or path (no wildcards) in Cloud Storage.\nExample: gs://[BUCKET_NAME]/dictionary.txt", + "type": "string" + } + }, + "id": "GooglePrivacyDlpV2CloudStoragePath" + }, + "GooglePrivacyDlpV2Schedule": { + "description": "Schedule for triggeredJobs.", + "type": "object", + "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" - }, - "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": "GoogleRpcStatus" + "id": "GooglePrivacyDlpV2Schedule" }, - "GooglePrivacyDlpV2Color": { - "description": "Represents a color in the RGB color space.", + "GooglePrivacyDlpV2ListDeidentifyTemplatesResponse": { + "description": "Response message for ListDeidentifyTemplates.", "type": "object", "properties": { - "red": { - "type": "number", - "description": "The amount of red in the color as a value in the interval [0, 1].", - "format": "float" - }, - "green": { - "description": "The amount of green in the color as a value in the interval [0, 1].", - "format": "float", - "type": "number" + "nextPageToken": { + "description": "If the next page is available then the next page token to be used\nin following ListDeidentifyTemplates request.", + "type": "string" }, - "blue": { - "description": "The amount of blue in the color as a value in the interval [0, 1].", - "format": "float", - "type": "number" + "deidentifyTemplates": { + "description": "List of deidentify templates, up to page_size in\nListDeidentifyTemplatesRequest.", + "type": "array", + "items": { + "$ref": "GooglePrivacyDlpV2DeidentifyTemplate" + } } }, - "id": "GooglePrivacyDlpV2Color" + "id": "GooglePrivacyDlpV2ListDeidentifyTemplatesResponse" }, - "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.", - "type": "object", + "GooglePrivacyDlpV2CategoricalStatsHistogramBucket": { "properties": { + "valueFrequencyLowerBound": { + "description": "Lower bound on the value frequency of the 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.", + "description": "Sample of value frequencies in this bucket. The total number of\nvalues returned per bucket is capped at 20.", "type": "array", "items": { - "$ref": "GooglePrivacyDlpV2KMapEstimationQuasiIdValues" + "$ref": "GooglePrivacyDlpV2ValueFrequency" } }, - "minAnonymity": { - "description": "Always positive.", - "format": "int64", - "type": "string" - }, - "maxAnonymity": { - "description": "Always greater than or equal to min_anonymity.", + "bucketSize": { + "description": "Total number of values in this bucket.", "format": "int64", "type": "string" }, - "bucketSize": { - "description": "Number of records within these anonymity bounds.", + "bucketValueCount": { + "description": "Total number of distinct values in this bucket.", "format": "int64", "type": "string" }, - "bucketValueCount": { - "description": "Total number of distinct quasi-identifier tuple values in this bucket.", + "valueFrequencyUpperBound": { + "description": "Upper bound on the value frequency of the values in this bucket.", "format": "int64", "type": "string" } }, - "id": "GooglePrivacyDlpV2KMapEstimationHistogramBucket" - }, - "GooglePrivacyDlpV2RecordCondition": { - "description": "A condition for determining whether a transformation should be applied to\na field.", - "type": "object", - "properties": { - "expressions": { - "description": "An expression.", - "$ref": "GooglePrivacyDlpV2Expressions" - } - }, - "id": "GooglePrivacyDlpV2RecordCondition" + "id": "GooglePrivacyDlpV2CategoricalStatsHistogramBucket", + "type": "object" }, - "GooglePrivacyDlpV2TransformationOverview": { - "description": "Overview of the modifications that occurred.", + "GooglePrivacyDlpV2Row": { "type": "object", "properties": { - "transformedBytes": { - "type": "string", - "description": "Total size in bytes that were transformed in some way.", - "format": "int64" - }, - "transformationSummaries": { - "description": "Transformations applied to the dataset.", + "values": { "type": "array", "items": { - "$ref": "GooglePrivacyDlpV2TransformationSummary" + "$ref": "GooglePrivacyDlpV2Value" } } }, - "id": "GooglePrivacyDlpV2TransformationOverview" + "id": "GooglePrivacyDlpV2Row" }, - "GooglePrivacyDlpV2InfoType": { - "description": "Type of information detected by the API.", - "type": "object", + "GooglePrivacyDlpV2QuasiIdField": { "properties": { - "name": { - "type": "string", - "description": "Name of the information type." + "field": { + "$ref": "GooglePrivacyDlpV2FieldId" + }, + "customTag": { + "type": "string" } }, - "id": "GooglePrivacyDlpV2InfoType" + "id": "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.", + "type": "object" }, - "GooglePrivacyDlpV2TaggedField": { + "GooglePrivacyDlpV2DeidentifyTemplate": { + "description": "The DeidentifyTemplates contains instructions on how to deidentify content.", "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" + "deidentifyConfig": { + "$ref": "GooglePrivacyDlpV2DeidentifyConfig", + "description": "///////////// // The core content of the template // ///////////////" }, - "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." + "createTime": { + "description": "The creation timestamp of a inspectTemplate, output only field.", + "format": "google-datetime", + "type": "string" }, - "inferred": { - "$ref": "GoogleProtobufEmpty", - "description": "If no semantic tag is indicated, we infer the statistical model from\nthe distribution of values in the input data" + "updateTime": { + "description": "The last update timestamp of a inspectTemplate, output only field.", + "format": "google-datetime", + "type": "string" }, - "field": { - "description": "Identifies the column. [required]", - "$ref": "GooglePrivacyDlpV2FieldId" - } - }, - "id": "GooglePrivacyDlpV2TaggedField" - }, - "GooglePrivacyDlpV2FieldId": { - "description": "General identifier of a data field in a storage service.", - "type": "object", - "properties": { "name": { - "description": "Name describing the field.", + "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" + }, + "displayName": { + "description": "Display name (max 256 chars).", + "type": "string" + }, + "description": { + "description": "Short description (max 256 chars).", "type": "string" } }, - "id": "GooglePrivacyDlpV2FieldId" + "id": "GooglePrivacyDlpV2DeidentifyTemplate" }, - "GooglePrivacyDlpV2RiskAnalysisJobConfig": { - "description": "Configuration for a risk analysis job.", + "GooglePrivacyDlpV2RedactImageRequest": { + "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": { - "privacyMetric": { - "description": "Privacy metric to compute.", - "$ref": "GooglePrivacyDlpV2PrivacyMetric" + "inspectConfig": { + "description": "Configuration for the inspector.", + "$ref": "GooglePrivacyDlpV2InspectConfig" }, - "actions": { - "description": "Actions to execute at the completion of the job. Are executed in the order\nprovided.", + "imageRedactionConfigs": { + "description": "The configuration for specifying what content to redact from images.", "type": "array", "items": { - "$ref": "GooglePrivacyDlpV2Action" + "$ref": "GooglePrivacyDlpV2ImageRedactionConfig" } }, - "sourceTable": { - "$ref": "GooglePrivacyDlpV2BigQueryTable", - "description": "Input dataset to compute metrics over." + "byteItem": { + "description": "The content must be PNG, JPEG, SVG or BMP.", + "$ref": "GooglePrivacyDlpV2ByteContentItem" } }, - "id": "GooglePrivacyDlpV2RiskAnalysisJobConfig" - }, - "GooglePrivacyDlpV2ReplaceWithInfoTypeConfig": { - "properties": {}, - "id": "GooglePrivacyDlpV2ReplaceWithInfoTypeConfig", - "description": "Replace each matching finding with the name of the info_type.", - "type": "object" + "id": "GooglePrivacyDlpV2RedactImageRequest" }, - "GooglePrivacyDlpV2ReplaceValueConfig": { - "description": "Replace each input value with a given `Value`.", + "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`.", "type": "object", "properties": { - "newValue": { - "$ref": "GooglePrivacyDlpV2Value", - "description": "Value to replace it with." + "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": "GooglePrivacyDlpV2ReplaceValueConfig" + "id": "GooglePrivacyDlpV2BigQueryTable" }, - "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.", + "GooglePrivacyDlpV2PrimitiveTransformation": { + "description": "A rule for transforming a value.", "type": "object", "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.", - "type": "string" + "timePartConfig": { + "$ref": "GooglePrivacyDlpV2TimePartConfig" }, - "cryptoKey": { - "description": "The key used by the encryption algorithm. [required]", - "$ref": "GooglePrivacyDlpV2CryptoKey" + "fixedSizeBucketingConfig": { + "$ref": "GooglePrivacyDlpV2FixedSizeBucketingConfig" }, - "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": "GooglePrivacyDlpV2FieldId" + "dateShiftConfig": { + "$ref": "GooglePrivacyDlpV2DateShiftConfig" }, - "surrogateInfoType": { - "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", - "$ref": "GooglePrivacyDlpV2InfoType" + "characterMaskConfig": { + "$ref": "GooglePrivacyDlpV2CharacterMaskConfig" }, - "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" - ] + "redactConfig": { + "$ref": "GooglePrivacyDlpV2RedactConfig" }, - "radix": { - "description": "The native way to select the alphabet. Must be in the range [2, 62].", - "format": "int32", - "type": "integer" - } - }, - "id": "GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig" - }, - "GooglePrivacyDlpV2TimeZone": { - "type": "object", - "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" + "bucketingConfig": { + "$ref": "GooglePrivacyDlpV2BucketingConfig" + }, + "replaceWithInfoTypeConfig": { + "$ref": "GooglePrivacyDlpV2ReplaceWithInfoTypeConfig" + }, + "cryptoHashConfig": { + "$ref": "GooglePrivacyDlpV2CryptoHashConfig" + }, + "cryptoReplaceFfxFpeConfig": { + "$ref": "GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig" + }, + "replaceConfig": { + "$ref": "GooglePrivacyDlpV2ReplaceValueConfig" } }, - "id": "GooglePrivacyDlpV2TimeZone" + "id": "GooglePrivacyDlpV2PrimitiveTransformation" }, - "GooglePrivacyDlpV2KAnonymityResult": { + "GooglePrivacyDlpV2FieldTransformation": { + "description": "The transformation to apply to the field.", "type": "object", "properties": { - "equivalenceClassHistogramBuckets": { - "description": "Histogram of k-anonymity equivalence classes.", + "infoTypeTransformations": { + "description": "Treat the contents of the field as free text, and selectively\ntransform content that matches an `InfoType`.", + "$ref": "GooglePrivacyDlpV2InfoTypeTransformations" + }, + "fields": { + "description": "Input field(s) to apply the transformation to. [required]", "type": "array", "items": { - "$ref": "GooglePrivacyDlpV2KAnonymityHistogramBucket" + "$ref": "GooglePrivacyDlpV2FieldId" } + }, + "primitiveTransformation": { + "$ref": "GooglePrivacyDlpV2PrimitiveTransformation", + "description": "Apply the transformation to the entire field." + }, + "condition": { + "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.", + "$ref": "GooglePrivacyDlpV2RecordCondition" } }, - "id": "GooglePrivacyDlpV2KAnonymityResult", - "description": "Result of the k-anonymity computation." + "id": "GooglePrivacyDlpV2FieldTransformation" }, - "GooglePrivacyDlpV2CryptoKey": { + "GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails": { + "description": "Result of a risk analysis operation request.", "type": "object", "properties": { - "unwrapped": { - "$ref": "GooglePrivacyDlpV2UnwrappedCryptoKey" + "kMapEstimationResult": { + "$ref": "GooglePrivacyDlpV2KMapEstimationResult" }, - "transient": { - "$ref": "GooglePrivacyDlpV2TransientCryptoKey" + "lDiversityResult": { + "$ref": "GooglePrivacyDlpV2LDiversityResult" }, - "kmsWrapped": { - "$ref": "GooglePrivacyDlpV2KmsWrappedCryptoKey" + "requestedSourceTable": { + "description": "Input dataset to compute metrics over.", + "$ref": "GooglePrivacyDlpV2BigQueryTable" + }, + "categoricalStatsResult": { + "$ref": "GooglePrivacyDlpV2CategoricalStatsResult" + }, + "requestedPrivacyMetric": { + "$ref": "GooglePrivacyDlpV2PrivacyMetric", + "description": "Privacy metric to compute." + }, + "numericalStatsResult": { + "$ref": "GooglePrivacyDlpV2NumericalStatsResult" + }, + "kAnonymityResult": { + "$ref": "GooglePrivacyDlpV2KAnonymityResult" } }, - "id": "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": "GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails" }, - "GooglePrivacyDlpV2TimespanConfig": { + "GooglePrivacyDlpV2InspectResult": { "properties": { - "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." - }, - "endTime": { - "description": "Exclude files newer than this value.\nIf set to zero, no upper time limit is applied.", - "format": "google-datetime", - "type": "string" - }, - "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.", + "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" }, - "startTime": { - "description": "Exclude files older than this value.", - "format": "google-datetime", - "type": "string" + "findings": { + "description": "List of findings for an item.", + "type": "array", + "items": { + "$ref": "GooglePrivacyDlpV2Finding" + } } }, - "id": "GooglePrivacyDlpV2TimespanConfig", - "description": "Configuration of the timespan of the items to include in scanning.\nCurrently only supported when inspecting Google Cloud Storage and BigQuery.", + "id": "GooglePrivacyDlpV2InspectResult", + "description": "All the findings for a single scanned item.", "type": "object" }, - "GooglePrivacyDlpV2RequestedOptions": { - "type": "object", + "GooglePrivacyDlpV2Dictionary": { "properties": { - "snapshotInspectTemplate": { - "description": "If run with an InspectTemplate, a snapshot of its state at the time of\nthis run.", - "$ref": "GooglePrivacyDlpV2InspectTemplate" + "wordList": { + "description": "List of words or phrases to search for.", + "$ref": "GooglePrivacyDlpV2WordList" }, - "jobConfig": { - "$ref": "GooglePrivacyDlpV2InspectJobConfig" + "cloudStoragePath": { + "description": "Newline-delimited file of words in Cloud Storage. Only a single file\nis accepted.", + "$ref": "GooglePrivacyDlpV2CloudStoragePath" } }, - "id": "GooglePrivacyDlpV2RequestedOptions" + "id": "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.", + "type": "object" }, - "GooglePrivacyDlpV2EntityId": { - "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 a\npatient identifier, or for financial records it might be an account\nidentifier. This message is used when generalizations or analysis must take\ninto account that multiple rows correspond to the same entity.", + "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": { - "field": { - "description": "Composite key indicating which field contains the entity identifier.", - "$ref": "GooglePrivacyDlpV2FieldId" - } - }, - "id": "GooglePrivacyDlpV2EntityId" + "properties": {}, + "id": "GoogleProtobufEmpty" }, - "GooglePrivacyDlpV2InspectContentRequest": { - "description": "Request to search for potentially sensitive info in a ContentItem.", + "GooglePrivacyDlpV2TimePartConfig": { + "description": "For use with `Date`, `Timestamp`, and `TimeOfDay`, extract or preserve a\nportion of the value.", "type": "object", "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." + "partToExtract": { + "type": "string", + "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" + ] } }, - "id": "GooglePrivacyDlpV2InspectContentRequest" + "id": "GooglePrivacyDlpV2TimePartConfig" }, - "GooglePrivacyDlpV2HotwordRule": { - "description": "Detection rule that adjusts the likelihood of findings within a certain\nproximity of hotwords.", + "GooglePrivacyDlpV2Proximity": { + "description": "Message for specifying a window around a finding to apply a detection\nrule.", "type": "object", "properties": { - "proximity": { - "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.", - "$ref": "GooglePrivacyDlpV2Proximity" - }, - "likelihoodAdjustment": { - "$ref": "GooglePrivacyDlpV2LikelihoodAdjustment", - "description": "Likelihood adjustment to apply to all matching findings." + "windowBefore": { + "description": "Number of characters before the finding to consider.", + "format": "int32", + "type": "integer" }, - "hotwordRegex": { - "$ref": "GooglePrivacyDlpV2Regex", - "description": "Regex pattern defining what qualifies as a hotword." + "windowAfter": { + "description": "Number of characters after the finding to consider.", + "format": "int32", + "type": "integer" } }, - "id": "GooglePrivacyDlpV2HotwordRule" + "id": "GooglePrivacyDlpV2Proximity" }, - "GooglePrivacyDlpV2Regex": { - "description": "Message defining a custom regular expression.", - "type": "object", + "GooglePrivacyDlpV2Condition": { "properties": { - "pattern": { - "description": "Pattern defining the regular expression.", + "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]", "type": "string" + }, + "value": { + "description": "Value to compare against. [Required, except for `EXISTS` tests.]", + "$ref": "GooglePrivacyDlpV2Value" + }, + "field": { + "description": "Field within the record this condition is evaluated against. [required]", + "$ref": "GooglePrivacyDlpV2FieldId" } }, - "id": "GooglePrivacyDlpV2Regex" + "id": "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.", + "type": "object" }, - "GooglePrivacyDlpV2DeidentifyContentResponse": { - "id": "GooglePrivacyDlpV2DeidentifyContentResponse", - "description": "Results of de-identifying a ContentItem.", - "type": "object", + "GooglePrivacyDlpV2LikelihoodAdjustment": { "properties": { - "overview": { - "$ref": "GooglePrivacyDlpV2TransformationOverview", - "description": "An overview of the changes that were made on the `item`." + "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" }, - "item": { - "$ref": "GooglePrivacyDlpV2ContentItem", - "description": "The de-identified item." - } - } - }, - "GooglePrivacyDlpV2Expressions": { - "description": "An expression, consisting or an operator and conditions.", - "type": "object", - "properties": { - "logicalOperator": { - "type": "string", + "fixedLikelihood": { "enumDescriptions": [ + "Default value; information with all likelihoods is included.", + "Few matching elements.", "", - "" + "Some matching elements.", + "", + "Many matching elements." ], "enum": [ - "LOGICAL_OPERATOR_UNSPECIFIED", - "AND" + "LIKELIHOOD_UNSPECIFIED", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" ], - "description": "The operator to apply to the result of conditions. Default and currently\nonly supported value is `AND`." + "description": "Set the likelihood of a finding to a fixed value.", + "type": "string" + } + }, + "id": "GooglePrivacyDlpV2LikelihoodAdjustment", + "description": "Message for specifying an adjustment to the likelihood of a finding as\npart of a detection rule.", + "type": "object" + }, + "GooglePrivacyDlpV2Action": { + "description": "A task to execute on the completion of a job.", + "type": "object", + "properties": { + "saveFindings": { + "$ref": "GooglePrivacyDlpV2SaveFindings", + "description": "Save resulting findings in a provided location." }, - "conditions": { - "$ref": "GooglePrivacyDlpV2Conditions" + "pubSub": { + "$ref": "GooglePrivacyDlpV2PublishToPubSub", + "description": "Publish a notification to a pubsub topic." + }, + "publishSummaryToCscc": { + "description": "Publish summary to Cloud Security Command Center (Alpha).", + "$ref": "GooglePrivacyDlpV2PublishSummaryToCscc" } }, - "id": "GooglePrivacyDlpV2Expressions" + "id": "GooglePrivacyDlpV2Action" }, - "GooglePrivacyDlpV2CategoricalStatsResult": { + "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.", + "type": "object", "properties": { - "valueFrequencyHistogramBuckets": { - "description": "Histogram of value frequencies in the column.", + "transformations": { + "description": "Transformation for each infoType. Cannot specify more than one\nfor a given infoType. [required]", "type": "array", "items": { - "$ref": "GooglePrivacyDlpV2CategoricalStatsHistogramBucket" + "$ref": "GooglePrivacyDlpV2InfoTypeTransformation" } } }, - "id": "GooglePrivacyDlpV2CategoricalStatsResult", - "description": "Result of the categorical stats computation.", - "type": "object" + "id": "GooglePrivacyDlpV2InfoTypeTransformations" }, - "GooglePrivacyDlpV2InfoTypeDescription": { - "description": "InfoType description.", + "GooglePrivacyDlpV2RecordSuppression": { + "description": "Configuration to suppress records whose suppression conditions evaluate to\ntrue.", "type": "object", "properties": { - "name": { - "description": "Internal name of the infoType.", - "type": "string" - }, - "displayName": { - "description": "Human readable form of the infoType name.", - "type": "string" + "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." + } + }, + "id": "GooglePrivacyDlpV2RecordSuppression" + }, + "GooglePrivacyDlpV2KAnonymityConfig": { + "description": "k-anonymity metric, used for analysis of reidentification risk.", + "type": "object", + "properties": { + "entityId": { + "$ref": "GooglePrivacyDlpV2EntityId", + "description": "Optional message indicating that multiple rows might be associated to a\nsingle individual. If the same entity_id is associated to multiple\nquasi-identifier tuples over distict rows, we consider the entire\ncollection of tuples as the composite quasi-identifier. This collection\nis a multiset: the order in which the different tuples appear in the\ndataset is ignored, but their frequency is taken into account.\n\nImportant note: a maximum of 1000 rows can be associated to a single\nentity ID. If more rows are associated with the same entity ID, some\nmight be ignored." }, - "supportedBy": { - "description": "Which parts of the API supports this InfoType.", + "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": { - "enum": [ - "ENUM_TYPE_UNSPECIFIED", - "INSPECT", - "RISK_ANALYSIS" - ], - "type": "string" - }, - "enumDescriptions": [ - "", - "Supported by the inspect operations.", - "Supported by the risk analysis operations." - ] + "$ref": "GooglePrivacyDlpV2FieldId" + } } }, - "id": "GooglePrivacyDlpV2InfoTypeDescription" + "id": "GooglePrivacyDlpV2KAnonymityConfig" }, - "GooglePrivacyDlpV2UpdateInspectTemplateRequest": { - "description": "Request message for UpdateInspectTemplate.", + "GooglePrivacyDlpV2BigQueryOptions": { + "description": "Options defining BigQuery table and row identifiers.", "type": "object", "properties": { - "updateMask": { - "description": "Mask to control which fields get updated.", - "format": "google-fieldmask", - "type": "string" + "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": "GooglePrivacyDlpV2FieldId" + } }, - "inspectTemplate": { - "$ref": "GooglePrivacyDlpV2InspectTemplate", - "description": "New InspectTemplate value." + "tableReference": { + "description": "Complete BigQuery table reference.", + "$ref": "GooglePrivacyDlpV2BigQueryTable" + }, + "rowsLimit": { + "description": "Max number of rows to scan. If the table has more rows than this value, the\nrest of the rows are omitted. If not set, or if set to 0, all rows will be\nscanned. Cannot be used in conjunction with TimespanConfig.", + "format": "int64", + "type": "string" } }, - "id": "GooglePrivacyDlpV2UpdateInspectTemplateRequest" + "id": "GooglePrivacyDlpV2BigQueryOptions" }, - "GooglePrivacyDlpV2InspectJobConfig": { + "GooglePrivacyDlpV2FindingLimits": { "type": "object", "properties": { - "actions": { - "description": "Actions to execute at the completion of the job. Are executed in the order\nprovided.", + "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" + }, + "maxFindingsPerInfoType": { + "description": "Configuration of findings limit given for specified infoTypes.", "type": "array", "items": { - "$ref": "GooglePrivacyDlpV2Action" + "$ref": "GooglePrivacyDlpV2InfoTypeLimit" } + } + }, + "id": "GooglePrivacyDlpV2FindingLimits" + }, + "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" }, - "inspectConfig": { - "$ref": "GooglePrivacyDlpV2InspectConfig", - "description": "How and what to scan for." + "nanos": { + "description": "Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.", + "format": "int32", + "type": "integer" }, - "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" + "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" }, - "storageConfig": { - "description": "The data to scan.", - "$ref": "GooglePrivacyDlpV2StorageConfig" + "minutes": { + "description": "Minutes of hour of day. Must be from 0 to 59.", + "format": "int32", + "type": "integer" } }, - "id": "GooglePrivacyDlpV2InspectJobConfig" + "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" }, - "GooglePrivacyDlpV2LDiversityHistogramBucket": { + "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.", "type": "object", "properties": { - "sensitiveValueFrequencyLowerBound": { - "description": "Lower bound on the sensitive value frequencies of the equivalence\nclasses in this bucket.", + "timeValue": { + "$ref": "GoogleTypeTimeOfDay" + }, + "integerValue": { "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.", + "stringValue": { + "type": "string" + }, + "dateValue": { + "$ref": "GoogleTypeDate" + }, + "dayOfWeekValue": { + "type": "string", + "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." + ], + "enum": [ + "DAY_OF_WEEK_UNSPECIFIED", + "MONDAY", + "TUESDAY", + "WEDNESDAY", + "THURSDAY", + "FRIDAY", + "SATURDAY", + "SUNDAY" + ] + }, + "timestampValue": { + "format": "google-datetime", + "type": "string" + }, + "booleanValue": { + "type": "boolean" + }, + "floatValue": { + "format": "double", + "type": "number" + } + }, + "id": "GooglePrivacyDlpV2Value" + }, + "GooglePrivacyDlpV2LDiversityEquivalenceClass": { + "description": "The set of columns' values that share the same ldiversity value.", + "type": "object", + "properties": { + "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": "GooglePrivacyDlpV2LDiversityEquivalenceClass" + "$ref": "GooglePrivacyDlpV2Value" } }, - "bucketSize": { - "description": "Total number of equivalence classes in this bucket.", + "numDistinctSensitiveValues": { + "description": "Number of distinct sensitive values in this equivalence class.", "format": "int64", "type": "string" }, - "bucketValueCount": { - "description": "Total number of distinct equivalence classes in this bucket.", - "format": "int64", - "type": "string" + "topSensitiveValues": { + "description": "Estimated frequencies of top sensitive values.", + "type": "array", + "items": { + "$ref": "GooglePrivacyDlpV2ValueFrequency" + } }, - "sensitiveValueFrequencyUpperBound": { - "description": "Upper bound on the sensitive value frequencies of the equivalence\nclasses in this bucket.", + "equivalenceClassSize": { + "description": "Size of the k-anonymity equivalence class.", "format": "int64", "type": "string" } }, - "id": "GooglePrivacyDlpV2LDiversityHistogramBucket" + "id": "GooglePrivacyDlpV2LDiversityEquivalenceClass" }, - "GooglePrivacyDlpV2CreateJobTriggerRequest": { + "GooglePrivacyDlpV2InfoTypeLimit": { + "description": "Max findings configuration per infoType, per content item or long\nrunning DlpJob.", "type": "object", "properties": { - "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.", + "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": "GooglePrivacyDlpV2InfoType" + }, + "maxFindings": { + "description": "Max findings limit for the given infoType.", + "format": "int32", + "type": "integer" + } + }, + "id": "GooglePrivacyDlpV2InfoTypeLimit" + }, + "GooglePrivacyDlpV2InspectTemplate": { + "properties": { + "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/inspectTemplates/TEMPLATE_ID` OR\n`organizations/ORGANIZATION_ID/inspectTemplates/TEMPLATE_ID`", + "type": "string" + }, + "inspectConfig": { + "$ref": "GooglePrivacyDlpV2InspectConfig", + "description": "The core content of the template. Configuration of the scanning process." + }, + "displayName": { + "description": "Display name (max 256 chars).", + "type": "string" + }, + "description": { + "description": "Short description (max 256 chars).", + "type": "string" + }, + "createTime": { + "description": "The creation timestamp of a inspectTemplate, output only field.", + "format": "google-datetime", "type": "string" - }, - "jobTrigger": { - "$ref": "GooglePrivacyDlpV2JobTrigger", - "description": "The JobTrigger to create." } }, - "id": "GooglePrivacyDlpV2CreateJobTriggerRequest", - "description": "Request message for CreateJobTrigger." + "id": "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.", + "type": "object" }, - "GooglePrivacyDlpV2InspectConfig": { - "description": "Configuration description of the scanning process.\nWhen used with redactContent only info_types and min_likelihood are currently\nused.", + "GooglePrivacyDlpV2NumericalStatsResult": { + "description": "Result of the numerical stats computation.", "type": "object", "properties": { - "infoTypes": { - "description": "Restricts what info_types to look for. The values must correspond to\nInfoType values returned by ListInfoTypes or found in documentation.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2InfoType" - } + "minValue": { + "description": "Minimum value appearing in the column.", + "$ref": "GooglePrivacyDlpV2Value" }, - "includeQuote": { - "description": "When true, a contextual quote from the data that triggered a finding is\nincluded in the response; see Finding.quote.", - "type": "boolean" + "maxValue": { + "description": "Maximum value appearing in the column.", + "$ref": "GooglePrivacyDlpV2Value" }, - "customInfoTypes": { - "description": "Custom infoTypes provided by the user.", + "quantileValues": { + "description": "List of 99 values that partition the set of field values into 100 equal\nsized buckets.", "type": "array", "items": { - "$ref": "GooglePrivacyDlpV2CustomInfoType" + "$ref": "GooglePrivacyDlpV2Value" } + } + }, + "id": "GooglePrivacyDlpV2NumericalStatsResult" + }, + "GooglePrivacyDlpV2Location": { + "description": "Specifies the location of the finding.", + "type": "object", + "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." }, - "contentOptions": { - "description": "List of options defining data content to scan.\nIf empty, text, images, and other content will be included.", + "contentLocations": { + "description": "List of nested objects pointing to the precise location of the finding\nwithin the file or record.", "type": "array", "items": { - "type": "string", - "enum": [ - "CONTENT_UNSPECIFIED", - "CONTENT_TEXT", - "CONTENT_IMAGE" - ] - }, - "enumDescriptions": [ - "Includes entire content of a file or a data stream.", - "Text content within the data, excluding any metadata.", - "Images found in the data." - ] + "$ref": "GooglePrivacyDlpV2ContentLocation" + } }, - "limits": { - "$ref": "GooglePrivacyDlpV2FindingLimits" + "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." + } + }, + "id": "GooglePrivacyDlpV2Location" + }, + "GooglePrivacyDlpV2CustomInfoType": { + "properties": { + "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." }, - "excludeInfoTypes": { - "description": "When true, excludes type information of the findings.", - "type": "boolean" + "dictionary": { + "description": "Dictionary-based custom info type.", + "$ref": "GooglePrivacyDlpV2Dictionary" }, - "minLikelihood": { + "regex": { + "description": "Regex-based custom info type.", + "$ref": "GooglePrivacyDlpV2Regex" + }, + "surrogateType": { + "description": "Surrogate info type.", + "$ref": "GooglePrivacyDlpV2SurrogateType" + }, + "likelihood": { + "enumDescriptions": [ + "Default value; information with all likelihoods is included.", + "Few matching elements.", + "", + "Some matching elements.", + "", + "Many matching elements." + ], "enum": [ "LIKELIHOOD_UNSPECIFIED", "VERY_UNLIKELY", @@ -2378,1853 +2683,1548 @@ "LIKELY", "VERY_LIKELY" ], - "description": "Only returns findings equal or above this threshold. The default is\nPOSSIBLE.", - "type": "string", - "enumDescriptions": [ - "Default value; information with all likelihoods is included.", - "Few matching elements.", - "", - "Some matching elements.", - "", - "Many matching elements." - ] - } - }, - "id": "GooglePrivacyDlpV2InspectConfig" - }, - "GooglePrivacyDlpV2LDiversityConfig": { - "description": "l-diversity metric, used for analysis of reidentification risk.", - "type": "object", - "properties": { - "sensitiveAttribute": { - "$ref": "GooglePrivacyDlpV2FieldId", - "description": "Sensitive field for computing the l-value." + "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.", + "type": "string" }, - "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.", + "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.", "type": "array", "items": { - "$ref": "GooglePrivacyDlpV2FieldId" + "$ref": "GooglePrivacyDlpV2DetectionRule" } } }, - "id": "GooglePrivacyDlpV2LDiversityConfig" + "id": "GooglePrivacyDlpV2CustomInfoType", + "description": "Custom information type provided by the user. Used to find domain-specific\nsensitive information configurable to the data in question.", + "type": "object" }, - "GooglePrivacyDlpV2KAnonymityEquivalenceClass": { - "description": "The set of columns' values that share the same ldiversity value", + "GooglePrivacyDlpV2DeidentifyConfig": { + "description": "The configuration that controls how the data will change.", "type": "object", "properties": { - "equivalenceClassSize": { - "description": "Size of the equivalence class, for example number of rows with the\nabove set of values.", - "format": "int64", - "type": "string" + "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." }, - "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": "GooglePrivacyDlpV2Value" - } + "infoTypeTransformations": { + "$ref": "GooglePrivacyDlpV2InfoTypeTransformations", + "description": "Treat the dataset as free-form text and apply the same free text\ntransformation everywhere." } }, - "id": "GooglePrivacyDlpV2KAnonymityEquivalenceClass" + "id": "GooglePrivacyDlpV2DeidentifyConfig" }, - "GooglePrivacyDlpV2NumericalStatsConfig": { - "description": "Compute numerical stats over an individual column, including\nmin, max, and quantiles.", - "type": "object", + "GooglePrivacyDlpV2Trigger": { "properties": { - "field": { - "$ref": "GooglePrivacyDlpV2FieldId", - "description": "Field to compute numerical stats on. Supported types are\ninteger, float, date, datetime, timestamp, time." + "schedule": { + "description": "Create a job on a repeating basis based on the elapse of time.", + "$ref": "GooglePrivacyDlpV2Schedule" } }, - "id": "GooglePrivacyDlpV2NumericalStatsConfig" + "id": "GooglePrivacyDlpV2Trigger", + "description": "What event needs to occur for a new job to be started.", + "type": "object" }, - "GooglePrivacyDlpV2CloudStorageOptions": { - "description": "Options defining a file or a set of files (path ending with *) within\na Google Cloud Storage bucket.", + "GooglePrivacyDlpV2Range": { + "description": "Generic half-open interval [start, end)", "type": "object", "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.", + "start": { + "description": "Index of the first character of the range (inclusive).", "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.", - "type": "array", - "items": { - "type": "string", - "enum": [ - "FILE_TYPE_UNSPECIFIED", - "BINARY_FILE", - "TEXT_FILE" - ] - }, - "enumDescriptions": [ - "Includes all files.", - "Includes all file extensions not covered by text file types.", - "Included file extensions:\n asc, brf, c, cc, cpp, csv, cxx, c++, cs, css, dart, eml, go, h, hh, hpp,\n hxx, h++, hs, html, htm, shtml, shtm, xhtml, lhs, ini, java, js, json,\n ocaml, md, mkd, markdown, m, ml, mli, pl, pm, php, phtml, pht, py, pyw,\n rb, rbw, rs, rc, scala, sh, sql, tex, txt, text, tsv, vcard, vcs, wml,\n xml, xsl, xsd, yml, yaml." - ] + "end": { + "description": "Index of the last character of the range (exclusive).", + "format": "int64", + "type": "string" } }, - "id": "GooglePrivacyDlpV2CloudStorageOptions" + "id": "GooglePrivacyDlpV2Range" }, - "GooglePrivacyDlpV2DateShiftConfig": { - "description": "Shifts dates by random number of days, with option to be consistent for the\nsame context.", + "GooglePrivacyDlpV2CategoricalStatsConfig": { + "description": "Compute numerical stats over an individual column, including\nnumber of distinct values and value count distribution.", "type": "object", "properties": { - "lowerBoundDays": { - "description": "For example, -5 means shift date to at most 5 days back in the past.\n[Required]", - "format": "int32", - "type": "integer" - }, - "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." - }, - "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" - }, - "context": { + "field": { "$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." - } - }, - "id": "GooglePrivacyDlpV2DateShiftConfig" - }, - "GooglePrivacyDlpV2ReidentifyContentResponse": { - "properties": { - "overview": { - "description": "An overview of the changes that were made to the `item`.", - "$ref": "GooglePrivacyDlpV2TransformationOverview" - }, - "item": { - "description": "The re-identified item.", - "$ref": "GooglePrivacyDlpV2ContentItem" + "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": "GooglePrivacyDlpV2ReidentifyContentResponse", - "description": "Results of re-identifying a item.", - "type": "object" + "id": "GooglePrivacyDlpV2CategoricalStatsConfig" }, - "GooglePrivacyDlpV2ValueFrequency": { - "description": "A value of a field, including its frequency.", + "GooglePrivacyDlpV2BigQueryKey": { + "description": "Row key for identifying a record in BigQuery table.", "type": "object", "properties": { - "count": { - "description": "How many times the value is contained in the field.", + "tableReference": { + "description": "Complete BigQuery table reference.", + "$ref": "GooglePrivacyDlpV2BigQueryTable" + }, + "rowNumber": { + "description": "Absolute number of the row from the beginning of the table at the time\nof scanning.", "format": "int64", "type": "string" - }, - "value": { - "$ref": "GooglePrivacyDlpV2Value", - "description": "A value contained in the field in question." - } - }, - "id": "GooglePrivacyDlpV2ValueFrequency" - }, - "GooglePrivacyDlpV2InfoTypeTransformation": { - "properties": { - "primitiveTransformation": { - "$ref": "GooglePrivacyDlpV2PrimitiveTransformation", - "description": "Primitive transformation to apply to the infoType. [required]" - }, - "infoTypes": { - "description": "InfoTypes to apply the transformation to. Empty list will match all\navailable infoTypes for this transformation.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2InfoType" - } } }, - "id": "GooglePrivacyDlpV2InfoTypeTransformation", - "description": "A transformation to apply to text that is identified as a specific\ninfo_type.", - "type": "object" + "id": "GooglePrivacyDlpV2BigQueryKey" }, - "GooglePrivacyDlpV2KMapEstimationQuasiIdValues": { - "description": "A tuple of values for the quasi-identifier columns.", - "type": "object", + "GooglePrivacyDlpV2PartitionId": { "properties": { - "quasiIdsValues": { - "description": "The quasi-identifier values.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2Value" - } + "namespaceId": { + "description": "If not empty, the ID of the namespace to which the entities belong.", + "type": "string" }, - "estimatedAnonymity": { - "description": "The estimated anonymity for these quasi-identifier values.", - "format": "int64", + "projectId": { + "description": "The ID of the project to which the entities belong.", "type": "string" } }, - "id": "GooglePrivacyDlpV2KMapEstimationQuasiIdValues" + "id": "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.", + "type": "object" }, - "GooglePrivacyDlpV2ContentItem": { - "description": "Container structure for the content to inspect.", + "GooglePrivacyDlpV2CharsToIgnore": { + "description": "Characters to skip when doing deidentification of a value. These will be left\nalone and skipped.", "type": "object", "properties": { - "value": { - "description": "String data to inspect or redact.", + "charactersToSkip": { "type": "string" }, - "byteItem": { - "description": "Content data to inspect or redact. Replaces `type` and `data`.", - "$ref": "GooglePrivacyDlpV2ByteContentItem" - }, - "table": { - "$ref": "GooglePrivacyDlpV2Table", - "description": "Structured content for inspection." + "commonCharactersToIgnore": { + "enumDescriptions": [ + "", + "0-9", + "A-Z", + "a-z", + "US Punctuation, one of !\"#$%&'()*+,-./:;\u003c=\u003e?@[\\]^_`{|}~", + "Whitespace character, one of [ \\t\\n\\x0B\\f\\r]" + ], + "enum": [ + "COMMON_CHARS_TO_IGNORE_UNSPECIFIED", + "NUMERIC", + "ALPHA_UPPER_CASE", + "ALPHA_LOWER_CASE", + "PUNCTUATION", + "WHITESPACE" + ], + "type": "string" } }, - "id": "GooglePrivacyDlpV2ContentItem" + "id": "GooglePrivacyDlpV2CharsToIgnore" }, - "GooglePrivacyDlpV2ImageLocation": { - "description": "Location of the finding within an image.", + "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.", "type": "object", "properties": { - "boundingBoxes": { - "description": "Bounding boxes locating the pixels within the image containing the finding.", + "buckets": { + "description": "Set of buckets. Ranges must be non-overlapping.", "type": "array", "items": { - "$ref": "GooglePrivacyDlpV2BoundingBox" + "$ref": "GooglePrivacyDlpV2Bucket" } } }, - "id": "GooglePrivacyDlpV2ImageLocation" + "id": "GooglePrivacyDlpV2BucketingConfig" }, - "GooglePrivacyDlpV2BoundingBox": { - "description": "Bounding box encompassing detected text within an image.", - "type": "object", + "GooglePrivacyDlpV2TransientCryptoKey": { "properties": { - "height": { - "type": "integer", - "description": "Height of the bounding box in pixels.", - "format": "int32" - }, - "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" + "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": "GooglePrivacyDlpV2BoundingBox" + "id": "GooglePrivacyDlpV2TransientCryptoKey", + "description": "Use this to have a random data crypto key generated.\nIt will be discarded after the request finishes.", + "type": "object" }, - "GooglePrivacyDlpV2RecordKey": { - "description": "Message for a unique key indicating a record that contains a finding.", + "GooglePrivacyDlpV2CancelDlpJobRequest": { + "description": "The request message for canceling a DLP job.", + "type": "object", + "properties": {}, + "id": "GooglePrivacyDlpV2CancelDlpJobRequest" + }, + "GooglePrivacyDlpV2KindExpression": { + "description": "A representation of a Datastore kind.", "type": "object", "properties": { - "datastoreKey": { - "$ref": "GooglePrivacyDlpV2DatastoreKey" - }, - "bigQueryKey": { - "$ref": "GooglePrivacyDlpV2BigQueryKey" + "name": { + "description": "The name of the kind.", + "type": "string" } }, - "id": "GooglePrivacyDlpV2RecordKey" + "id": "GooglePrivacyDlpV2KindExpression" }, - "GooglePrivacyDlpV2CharacterMaskConfig": { - "id": "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.", + "GooglePrivacyDlpV2ListDlpJobsResponse": { + "description": "The response message for listing DLP jobs.", "type": "object", "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.", + "jobs": { + "description": "A list of DlpJobs that matches the specified filter in the request.", "type": "array", "items": { - "$ref": "GooglePrivacyDlpV2CharsToIgnore" + "$ref": "GooglePrivacyDlpV2DlpJob" } }, - "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.", + "nextPageToken": { + "description": "The standard List next-page token.", "type": "string" - }, - "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" } - } + }, + "id": "GooglePrivacyDlpV2ListDlpJobsResponse" }, - "GooglePrivacyDlpV2SummaryResult": { - "type": "object", + "GooglePrivacyDlpV2ByteContentItem": { "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", + "data": { + "description": "Content data to inspect or redact.", + "format": "byte", "type": "string" }, - "code": { + "type": { "enumDescriptions": [ + "", + "", + "", + "", "", "", "" ], "enum": [ - "TRANSFORMATION_RESULT_CODE_UNSPECIFIED", - "SUCCESS", - "ERROR" + "BYTES_TYPE_UNSPECIFIED", + "IMAGE", + "IMAGE_JPEG", + "IMAGE_BMP", + "IMAGE_PNG", + "IMAGE_SVG", + "TEXT_UTF8" ], + "description": "The type of data stored in the bytes string. Default will be TEXT_UTF8.", "type": "string" } }, - "id": "GooglePrivacyDlpV2SummaryResult", - "description": "A collection that informs the user the number of times a particular\n`TransformationResultCode` and error details occurred." + "id": "GooglePrivacyDlpV2ByteContentItem", + "description": "Container for bytes to inspect or redact.", + "type": "object" }, - "GooglePrivacyDlpV2Bucket": { - "id": "GooglePrivacyDlpV2Bucket", - "description": "Bucket is represented as a range, along with replacement values.", - "type": "object", + "GooglePrivacyDlpV2PrivacyMetric": { "properties": { - "min": { - "description": "Lower bound of the range, inclusive. Type should be the same as max if\nused.", - "$ref": "GooglePrivacyDlpV2Value" + "lDiversityConfig": { + "$ref": "GooglePrivacyDlpV2LDiversityConfig" }, - "max": { - "$ref": "GooglePrivacyDlpV2Value", - "description": "Upper bound of the range, exclusive; type must match min." + "numericalStatsConfig": { + "$ref": "GooglePrivacyDlpV2NumericalStatsConfig" }, - "replacementValue": { - "description": "Replacement value for this bucket. If not provided\nthe default behavior will be to hyphenate the min-max range.", - "$ref": "GooglePrivacyDlpV2Value" + "kAnonymityConfig": { + "$ref": "GooglePrivacyDlpV2KAnonymityConfig" + }, + "categoricalStatsConfig": { + "$ref": "GooglePrivacyDlpV2CategoricalStatsConfig" + }, + "kMapEstimationConfig": { + "$ref": "GooglePrivacyDlpV2KMapEstimationConfig" } - } + }, + "id": "GooglePrivacyDlpV2PrivacyMetric", + "description": "Privacy metric to compute for reidentification risk analysis.", + "type": "object" }, - "GooglePrivacyDlpV2ReidentifyContentRequest": { - "description": "Request to re-identify an item.", + "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]", + "type": "array", + "items": { + "type": "string" + } + } + }, + "id": "GooglePrivacyDlpV2WordList", + "description": "Message defining a list of words or phrases to search for in the data.", + "type": "object" + }, + "GooglePrivacyDlpV2KMapEstimationResult": { + "description": "Result of the reidentifiability analysis. Note that these results are an\nestimation, not exact values.", "type": "object", "properties": { - "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`" + "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": "GooglePrivacyDlpV2KMapEstimationHistogramBucket" + } + } + }, + "id": "GooglePrivacyDlpV2KMapEstimationResult" + }, + "GooglePrivacyDlpV2JobTrigger": { + "description": "Contains a configuration to make dlp api calls on a repeating basis.", + "type": "object", + "properties": { + "createTime": { + "description": "The creation timestamp of a triggeredJob, output only field.", + "format": "google-datetime", + "type": "string" }, - "item": { - "description": "The item to re-identify. Will be treated as text.", - "$ref": "GooglePrivacyDlpV2ContentItem" + "status": { + "enumDescriptions": [ + "", + "Trigger is healthy.", + "Trigger is temporarily paused.", + "Trigger is cancelled and can not be resumed." + ], + "enum": [ + "STATUS_UNSPECIFIED", + "HEALTHY", + "PAUSED", + "CANCELLED" + ], + "description": "A status for this trigger. [required]", + "type": "string" + }, + "inspectJob": { + "$ref": "GooglePrivacyDlpV2InspectJobConfig" + }, + "updateTime": { + "description": "The last update timestamp of a triggeredJob, 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" + }, + "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.", + "type": "array", + "items": { + "$ref": "GooglePrivacyDlpV2Trigger" + } + }, + "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.", + "type": "array", + "items": { + "$ref": "GooglePrivacyDlpV2Error" + } }, - "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.", + "lastRunTime": { + "description": "The timestamp of the last time this trigger executed, output only field.", + "format": "google-datetime", "type": "string" }, - "inspectConfig": { - "description": "Configuration for the inspector.", - "$ref": "GooglePrivacyDlpV2InspectConfig" + "description": { + "description": "User provided description (max 256 chars)", + "type": "string" }, - "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.", + "displayName": { + "description": "Display name (max 100 chars)", "type": "string" } }, - "id": "GooglePrivacyDlpV2ReidentifyContentRequest" + "id": "GooglePrivacyDlpV2JobTrigger" }, - "GooglePrivacyDlpV2Key": { - "id": "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.", + "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.\nA column with a semantic tag attached.", "type": "object", "properties": { - "path": { + "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": "GooglePrivacyDlpV2PathElement" - }, - "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." + "$ref": "GooglePrivacyDlpV2AuxiliaryTable" + } }, - "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." - } - } - }, - "GooglePrivacyDlpV2TableLocation": { - "type": "object", - "properties": { - "rowIndex": { - "description": "The zero-based index of the row where the finding is located.", - "format": "int64", - "type": "string" - } - }, - "id": "GooglePrivacyDlpV2TableLocation", - "description": "Location of a finding within a table." - }, - "GooglePrivacyDlpV2Conditions": { - "description": "A collection of conditions.", - "type": "object", - "properties": { - "conditions": { + "quasiIds": { + "description": "Fields considered to be quasi-identifiers. No two columns can have the\nsame tag. [required]", "type": "array", "items": { - "$ref": "GooglePrivacyDlpV2Condition" + "$ref": "GooglePrivacyDlpV2TaggedField" } } }, - "id": "GooglePrivacyDlpV2Conditions" + "id": "GooglePrivacyDlpV2KMapEstimationConfig" }, - "GooglePrivacyDlpV2TransformationSummary": { - "description": "Summary of a single tranformation.\nOnly one of 'transformation', 'field_transformation', or 'record_suppress'\nwill be set.", + "GooglePrivacyDlpV2KAnonymityHistogramBucket": { "type": "object", "properties": { - "transformedBytes": { - "description": "Total size in bytes that were transformed in some way.", + "equivalenceClassSizeLowerBound": { + "description": "Lower bound on the size of the equivalence classes in this bucket.", "format": "int64", "type": "string" }, - "recordSuppress": { - "description": "The specific suppression option these stats apply to.", - "$ref": "GooglePrivacyDlpV2RecordSuppression" - }, - "infoType": { - "$ref": "GooglePrivacyDlpV2InfoType", - "description": "Set if the transformation was limited to a specific info_type." - }, - "transformation": { - "description": "The specific transformation these stats apply to.", - "$ref": "GooglePrivacyDlpV2PrimitiveTransformation" + "equivalenceClassSizeUpperBound": { + "description": "Upper bound on the size of the equivalence classes in this bucket.", + "format": "int64", + "type": "string" }, - "results": { - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2SummaryResult" - } + "bucketSize": { + "description": "Total number of equivalence classes in this bucket.", + "format": "int64", + "type": "string" }, - "field": { - "description": "Set if the transformation was limited to a specific FieldId.", - "$ref": "GooglePrivacyDlpV2FieldId" + "bucketValueCount": { + "description": "Total number of distinct equivalence classes in this bucket.", + "format": "int64", + "type": "string" }, - "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.", + "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": "GooglePrivacyDlpV2FieldTransformation" + "$ref": "GooglePrivacyDlpV2KAnonymityEquivalenceClass" } } }, - "id": "GooglePrivacyDlpV2TransformationSummary" + "id": "GooglePrivacyDlpV2KAnonymityHistogramBucket" }, - "GooglePrivacyDlpV2ListInspectTemplatesResponse": { - "description": "Response message for ListInspectTemplates.", - "type": "object", + "GooglePrivacyDlpV2PathElement": { "properties": { - "nextPageToken": { - "description": "If the next page is available then the next page token to be used\nin following ListInspectTemplates request.", + "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" }, - "inspectTemplates": { - "description": "List of inspectTemplates, up to page_size in ListInspectTemplatesRequest.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2InspectTemplate" - } + "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" } }, - "id": "GooglePrivacyDlpV2ListInspectTemplatesResponse" + "id": "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.", + "type": "object" }, - "GooglePrivacyDlpV2CreateInspectTemplateRequest": { - "description": "Request message for CreateInspectTemplate.", + "GooglePrivacyDlpV2DeidentifyContentRequest": { + "description": "Request to de-identify a list of items.", "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.", + "item": { + "description": "The item to de-identify. Will be treated as text.", + "$ref": "GooglePrivacyDlpV2ContentItem" + }, + "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" }, - "inspectTemplate": { - "description": "The InspectTemplate to create.", - "$ref": "GooglePrivacyDlpV2InspectTemplate" + "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." + }, + "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" } }, - "id": "GooglePrivacyDlpV2CreateInspectTemplateRequest" + "id": "GooglePrivacyDlpV2DeidentifyContentRequest" }, - "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.", - "type": "object", + "GooglePrivacyDlpV2ListJobTriggersResponse": { "properties": { - "hotwordRule": { - "$ref": "GooglePrivacyDlpV2HotwordRule", - "description": "Hotword-based detection rule." + "jobTriggers": { + "description": "List of triggeredJobs, up to page_size in ListJobTriggersRequest.", + "type": "array", + "items": { + "$ref": "GooglePrivacyDlpV2JobTrigger" + } + }, + "nextPageToken": { + "description": "If the next page is available then the next page token to be used\nin following ListJobTriggers request.", + "type": "string" } }, - "id": "GooglePrivacyDlpV2DetectionRule" + "id": "GooglePrivacyDlpV2ListJobTriggersResponse", + "description": "Response message for ListJobTriggers.", + "type": "object" }, - "GooglePrivacyDlpV2InspectContentResponse": { - "description": "Results of inspecting an item.", + "GooglePrivacyDlpV2DatastoreKey": { + "description": "Record key for a finding in Cloud Datastore.", "type": "object", "properties": { - "result": { - "$ref": "GooglePrivacyDlpV2InspectResult", - "description": "The findings." + "entityKey": { + "$ref": "GooglePrivacyDlpV2Key", + "description": "Datastore entity key." } }, - "id": "GooglePrivacyDlpV2InspectContentResponse" + "id": "GooglePrivacyDlpV2DatastoreKey" }, - "GooglePrivacyDlpV2FileSet": { - "id": "GooglePrivacyDlpV2FileSet", - "description": "Set of files to scan.", + "GooglePrivacyDlpV2Finding": { + "description": "Represents a piece of potentially sensitive content.", "type": "object", "properties": { - "url": { - "description": "The url, in the format `gs://\u003cbucket\u003e/\u003cpath\u003e`. Trailing wildcard in the\npath is allowed.", + "infoType": { + "$ref": "GooglePrivacyDlpV2InfoType", + "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" + }, + "likelihood": { + "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": "Estimate of how likely it is that the `info_type` is correct.", + "type": "string" + }, + "location": { + "$ref": "GooglePrivacyDlpV2Location", + "description": "Where the content was found." + }, + "quoteInfo": { + "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.", + "$ref": "GooglePrivacyDlpV2QuoteInfo" + }, + "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": "GooglePrivacyDlpV2Finding" }, - "GooglePrivacyDlpV2LDiversityResult": { - "description": "Result of the l-diversity computation.", + "GooglePrivacyDlpV2CreateDlpJobRequest": { + "description": "Request message for CreateDlpJobRequest. Used to initiate long running\njobs such as calculating risk metrics or inspecting Google Cloud\nStorage.", "type": "object", "properties": { - "sensitiveValueFrequencyHistogramBuckets": { - "description": "Histogram of l-diversity equivalence class sensitive value frequencies.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2LDiversityHistogramBucket" - } + "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" + }, + "inspectJob": { + "$ref": "GooglePrivacyDlpV2InspectJobConfig" } }, - "id": "GooglePrivacyDlpV2LDiversityResult" + "id": "GooglePrivacyDlpV2CreateDlpJobRequest" }, - "GooglePrivacyDlpV2SaveFindings": { - "description": "If set, the detailed findings will be persisted to the specified\nOutputStorageConfig. Only a single instance of this action can be\nspecified.\nCompatible with: Inspect", + "GooglePrivacyDlpV2RecordLocation": { + "description": "Location of a finding within a row or record.", "type": "object", "properties": { - "outputConfig": { - "$ref": "GooglePrivacyDlpV2OutputStorageConfig" + "tableLocation": { + "$ref": "GooglePrivacyDlpV2TableLocation", + "description": "Location within a `ContentItem.Table`." + }, + "recordKey": { + "description": "Key of the finding.", + "$ref": "GooglePrivacyDlpV2RecordKey" + }, + "fieldId": { + "description": "Field id of the field containing the finding.", + "$ref": "GooglePrivacyDlpV2FieldId" } }, - "id": "GooglePrivacyDlpV2SaveFindings" + "id": "GooglePrivacyDlpV2RecordLocation" }, - "GooglePrivacyDlpV2OutputStorageConfig": { + "GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest": { + "description": "Request message for UpdateDeidentifyTemplate.", "type": "object", "properties": { - "outputSchema": { - "enum": [ - "OUTPUT_SCHEMA_UNSPECIFIED", - "BASIC_COLUMNS", - "GCS_COLUMNS", - "DATASTORE_COLUMNS", - "BIG_QUERY_COLUMNS", - "ALL_COLUMNS" - ], - "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.", - "type": "string", - "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." - ] + "updateMask": { + "description": "Mask to control which fields get updated.", + "format": "google-fieldmask", + "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." + "deidentifyTemplate": { + "$ref": "GooglePrivacyDlpV2DeidentifyTemplate", + "description": "New DeidentifyTemplate value." } }, - "id": "GooglePrivacyDlpV2OutputStorageConfig", - "description": "Cloud repository for storing output." - }, - "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`.", - "type": "object", - "properties": {}, - "id": "GooglePrivacyDlpV2SurrogateType" + "id": "GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest" }, - "GooglePrivacyDlpV2StorageConfig": { - "description": "Shared message indicating Cloud storage type.", + "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": { - "datastoreOptions": { - "$ref": "GooglePrivacyDlpV2DatastoreOptions", - "description": "Google Cloud Datastore options specification." + "year": { + "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", + "format": "int32", + "type": "integer" }, - "timespanConfig": { - "$ref": "GooglePrivacyDlpV2TimespanConfig" + "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" }, - "bigQueryOptions": { - "$ref": "GooglePrivacyDlpV2BigQueryOptions", - "description": "BigQuery options specification." + "month": { + "description": "Month of year. Must be from 1 to 12, or 0 if specifying a date without a\nmonth.", + "format": "int32", + "type": "integer" + } + }, + "id": "GoogleTypeDate" + }, + "GooglePrivacyDlpV2InspectDataSourceDetails": { + "properties": { + "result": { + "$ref": "GooglePrivacyDlpV2Result", + "description": "A summary of the outcome of this inspect job." }, - "cloudStorageOptions": { - "description": "Google Cloud Storage options specification.", - "$ref": "GooglePrivacyDlpV2CloudStorageOptions" + "requestedOptions": { + "$ref": "GooglePrivacyDlpV2RequestedOptions", + "description": "The configuration used for this job." } }, - "id": "GooglePrivacyDlpV2StorageConfig" + "id": "GooglePrivacyDlpV2InspectDataSourceDetails", + "description": "The results of an inspect DataSource job.", + "type": "object" }, - "GooglePrivacyDlpV2Error": { + "GooglePrivacyDlpV2DatastoreOptions": { "properties": { - "details": { - "$ref": "GoogleRpcStatus" + "kind": { + "description": "The kind to process.", + "$ref": "GooglePrivacyDlpV2KindExpression" }, - "timestamps": { - "description": "The times the error occurred.", - "type": "array", - "items": { - "format": "google-datetime", - "type": "string" - } + "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." } }, - "id": "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": "GooglePrivacyDlpV2DatastoreOptions", + "description": "Options defining a data set within Google Cloud Datastore.", "type": "object" }, - "GooglePrivacyDlpV2UnwrappedCryptoKey": { - "id": "GooglePrivacyDlpV2UnwrappedCryptoKey", - "description": "Using raw keys is prone to security risks due to accidentally\nleaking the key. Choose another type of key if possible.", + "GooglePrivacyDlpV2DocumentLocation": { + "description": "Location of a finding within a document.", "type": "object", "properties": { - "key": { - "description": "The AES 128/192/256 bit key. [required]", - "format": "byte", + "fileOffset": { + "description": "Offset of the line, from the beginning of the file, where the finding\nis located.", + "format": "int64", "type": "string" } - } + }, + "id": "GooglePrivacyDlpV2DocumentLocation" }, - "GooglePrivacyDlpV2Table": { - "description": "Structured content to inspect. Up to 50,000 `Value`s per request allowed.", + "GooglePrivacyDlpV2AuxiliaryTable": { "type": "object", "properties": { - "headers": { - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2FieldId" - } + "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]" }, - "rows": { + "table": { + "description": "Auxiliary table location. [required]", + "$ref": "GooglePrivacyDlpV2BigQueryTable" + }, + "quasiIds": { + "description": "Quasi-identifier columns. [required]", "type": "array", "items": { - "$ref": "GooglePrivacyDlpV2Row" + "$ref": "GooglePrivacyDlpV2QuasiIdField" } } }, - "id": "GooglePrivacyDlpV2Table" - }, - "GooglePrivacyDlpV2CryptoHashConfig": { - "id": "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.", - "type": "object", - "properties": { - "cryptoKey": { - "$ref": "GooglePrivacyDlpV2CryptoKey", - "description": "The key used by the hash function." - } - } + "id": "GooglePrivacyDlpV2AuxiliaryTable" }, - "GooglePrivacyDlpV2UpdateJobTriggerRequest": { - "description": "Request message for UpdateJobTrigger.", + "GooglePrivacyDlpV2CreateDeidentifyTemplateRequest": { + "description": "Request message for CreateDeidentifyTemplate.", "type": "object", "properties": { - "jobTrigger": { - "description": "New JobTrigger value.", - "$ref": "GooglePrivacyDlpV2JobTrigger" + "deidentifyTemplate": { + "$ref": "GooglePrivacyDlpV2DeidentifyTemplate", + "description": "The DeidentifyTemplate to create." }, - "updateMask": { - "description": "Mask to control which fields get updated.", - "format": "google-fieldmask", + "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" } }, - "id": "GooglePrivacyDlpV2UpdateJobTriggerRequest" + "id": "GooglePrivacyDlpV2CreateDeidentifyTemplateRequest" }, - "GooglePrivacyDlpV2PublishToPubSub": { - "id": "GooglePrivacyDlpV2PublishToPubSub", - "description": "Publish the results of a DlpJob to a pub sub channel.\nCompatible with: Inspect, Risk", + "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.", "type": "object", "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" + "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": "GooglePrivacyDlpV2Value" + }, + "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]." + }, + "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" } - } + }, + "id": "GooglePrivacyDlpV2FixedSizeBucketingConfig" }, - "GooglePrivacyDlpV2QuoteInfo": { - "description": "Message for infoType-dependent details parsed from quote.", + "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": { - "dateTime": { - "$ref": "GooglePrivacyDlpV2DateTime" + "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": "GooglePrivacyDlpV2QuoteInfo" + "id": "GoogleRpcStatus" }, - "GooglePrivacyDlpV2DlpJob": { - "description": "Combines all of the information about a DLP job.", + "GooglePrivacyDlpV2Color": { + "description": "Represents a color in the RGB color space.", "type": "object", "properties": { - "startTime": { - "description": "Time when the job started.", - "format": "google-datetime", - "type": "string" - }, - "inspectDetails": { - "$ref": "GooglePrivacyDlpV2InspectDataSourceDetails", - "description": "Results from inspecting a data source." - }, - "createTime": { - "description": "Time when the job was created.", - "format": "google-datetime", - "type": "string" - }, - "jobTriggerName": { - "description": "If created by a job trigger, the resource name of the trigger that\ninstantiated the job.", - "type": "string" + "red": { + "description": "The amount of red in the color as a value in the interval [0, 1].", + "format": "float", + "type": "number" }, - "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" - ] + "green": { + "description": "The amount of green in the color as a value in the interval [0, 1].", + "format": "float", + "type": "number" }, - "riskDetails": { - "description": "Results from analyzing risk of a data source.", - "$ref": "GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails" + "blue": { + "description": "The amount of blue in the color as a value in the interval [0, 1].", + "format": "float", + "type": "number" + } + }, + "id": "GooglePrivacyDlpV2Color" + }, + "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.", + "type": "object", + "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": "GooglePrivacyDlpV2KMapEstimationQuasiIdValues" + } }, - "name": { - "description": "The server-assigned name.", + "minAnonymity": { + "description": "Always positive.", + "format": "int64", "type": "string" }, - "type": { - "description": "The type of job.", - "type": "string", - "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" - ] + "maxAnonymity": { + "description": "Always greater than or equal to min_anonymity.", + "format": "int64", + "type": "string" }, - "endTime": { - "description": "Time when the job finished.", - "format": "google-datetime", + "bucketSize": { + "description": "Number of records within these anonymity bounds.", + "format": "int64", "type": "string" }, - "errors": { - "description": "A stream of errors encountered running the job.", - "type": "array", - "items": { - "$ref": "GooglePrivacyDlpV2Error" - } + "bucketValueCount": { + "description": "Total number of distinct quasi-identifier tuple values in this bucket.", + "format": "int64", + "type": "string" } }, - "id": "GooglePrivacyDlpV2DlpJob" - } - }, - "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": "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": "Cloud Data Loss Prevention (DLP) API", - "ownerName": "Google", - "resources": { - "projects": { - "resources": { - "deidentifyTemplates": { - "methods": { - "create": { - "request": { - "$ref": "GooglePrivacyDlpV2CreateDeidentifyTemplateRequest" - }, - "description": "Creates a DeidentifyTemplate for re-using frequently used configuration\nfor de-identifying content, images, and storage.", - "response": { - "$ref": "GooglePrivacyDlpV2DeidentifyTemplate" - }, - "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 or\norganizations/my-org-id.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2/projects/{projectsId}/deidentifyTemplates", - "path": "v2/{+parent}/deidentifyTemplates", - "id": "dlp.projects.deidentifyTemplates.create" - }, - "delete": { - "flatPath": "v2/projects/{projectsId}/deidentifyTemplates/{deidentifyTemplatesId}", - "path": "v2/{+name}", - "id": "dlp.projects.deidentifyTemplates.delete", - "description": "Deletes a DeidentifyTemplate.", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "location": "path", - "description": "Resource name of the organization and deidentify template to be deleted,\nfor example `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/deidentifyTemplates/[^/]+$" - } - } - }, - "patch": { - "description": "Updates the DeidentifyTemplate.", - "request": { - "$ref": "GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest" - }, - "response": { - "$ref": "GooglePrivacyDlpV2DeidentifyTemplate" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "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.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/deidentifyTemplates/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/deidentifyTemplates/{deidentifyTemplatesId}", - "path": "v2/{+name}", - "id": "dlp.projects.deidentifyTemplates.patch" - }, - "get": { - "description": "Gets a DeidentifyTemplate.", - "response": { - "$ref": "GooglePrivacyDlpV2DeidentifyTemplate" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "pattern": "^projects/[^/]+/deidentifyTemplates/[^/]+$", - "location": "path", - "description": "Resource name of the organization and deidentify template to be read, for\nexample `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/deidentifyTemplates/{deidentifyTemplatesId}", - "path": "v2/{+name}", - "id": "dlp.projects.deidentifyTemplates.get" - }, - "list": { - "response": { - "$ref": "GooglePrivacyDlpV2ListDeidentifyTemplatesResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "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" - }, - "pageToken": { - "description": "Optional page token to continue retrieval. Comes from previous call\nto `ListDeidentifyTemplates`.", - "type": "string", - "location": "query" - }, - "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" - ], - "flatPath": "v2/projects/{projectsId}/deidentifyTemplates", - "path": "v2/{+parent}/deidentifyTemplates", - "id": "dlp.projects.deidentifyTemplates.list", - "description": "Lists DeidentifyTemplates." - } - } - }, - "image": { - "methods": { - "redact": { - "id": "dlp.projects.image.redact", - "path": "v2/{+parent}/image: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)", - "request": { - "$ref": "GooglePrivacyDlpV2RedactImageRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GooglePrivacyDlpV2RedactImageResponse" - }, - "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": "v2/projects/{projectsId}/image:redact" - } + "id": "GooglePrivacyDlpV2KMapEstimationHistogramBucket" + }, + "GooglePrivacyDlpV2RecordCondition": { + "description": "A condition for determining whether a transformation should be applied to\na field.", + "type": "object", + "properties": { + "expressions": { + "$ref": "GooglePrivacyDlpV2Expressions", + "description": "An expression." + } + }, + "id": "GooglePrivacyDlpV2RecordCondition" + }, + "GooglePrivacyDlpV2TransformationOverview": { + "properties": { + "transformationSummaries": { + "description": "Transformations applied to the dataset.", + "type": "array", + "items": { + "$ref": "GooglePrivacyDlpV2TransformationSummary" } }, - "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.", - "request": { - "$ref": "GooglePrivacyDlpV2CancelDlpJobRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "parameters": { - "name": { - "description": "The name of the DlpJob resource to be cancelled.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/dlpJobs/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/dlpJobs/{dlpJobsId}:cancel", - "id": "dlp.projects.dlpJobs.cancel", - "path": "v2/{+name}:cancel" - }, - "delete": { - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "description": "The name of the DlpJob resource to be deleted.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/dlpJobs/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/dlpJobs/{dlpJobsId}", - "path": "v2/{+name}", - "id": "dlp.projects.dlpJobs.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." - }, - "list": { - "flatPath": "v2/projects/{projectsId}/dlpJobs", - "id": "dlp.projects.dlpJobs.list", - "path": "v2/{+parent}/dlpJobs", - "description": "Lists DlpJobs that match the specified filter in the request.", - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GooglePrivacyDlpV2ListDlpJobsResponse" - }, - "parameters": { - "pageToken": { - "location": "query", - "description": "The standard list page token.", - "type": "string" - }, - "pageSize": { - "type": "integer", - "location": "query", - "description": "The standard list page size.", - "format": "int32" - }, - "type": { - "description": "The type of job. Defaults to `DlpJobType.INSPECT`", - "type": "string", - "location": "query", - "enum": [ - "DLP_JOB_TYPE_UNSPECIFIED", - "INSPECT_JOB", - "RISK_ANALYSIS_JOB" - ] - }, - "parent": { - "description": "The parent resource name, for example projects/my-project-id.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - }, - "filter": { - "location": "query", - "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.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "description": "Gets the latest state of a long-running DlpJob.", - "response": { - "$ref": "GooglePrivacyDlpV2DlpJob" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/dlpJobs/[^/]+$", - "location": "path", - "description": "The name of the DlpJob resource.", - "required": true, - "type": "string" - } - }, - "flatPath": "v2/projects/{projectsId}/dlpJobs/{dlpJobsId}", - "path": "v2/{+name}", - "id": "dlp.projects.dlpJobs.get" - }, - "create": { - "path": "v2/{+parent}/dlpJobs", - "id": "dlp.projects.dlpJobs.create", - "description": "Creates a new job to inspect storage or calculate risk metrics.\n[How-to guide](/dlp/docs/compute-risk-analysis).", - "request": { - "$ref": "GooglePrivacyDlpV2CreateDlpJobRequest" - }, - "response": { - "$ref": "GooglePrivacyDlpV2DlpJob" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "location": "path", - "description": "The parent resource name, for example projects/my-project-id.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/dlpJobs" - } + "transformedBytes": { + "description": "Total size in bytes that were transformed in some way.", + "format": "int64", + "type": "string" + } + }, + "id": "GooglePrivacyDlpV2TransformationOverview", + "description": "Overview of the modifications that occurred.", + "type": "object" + }, + "GooglePrivacyDlpV2InfoType": { + "description": "Type of information detected by the API.", + "type": "object", + "properties": { + "name": { + "description": "Name of the information type.", + "type": "string" + } + }, + "id": "GooglePrivacyDlpV2InfoType" + }, + "GooglePrivacyDlpV2TaggedField": { + "type": "object", + "properties": { + "field": { + "description": "Identifies the column. [required]", + "$ref": "GooglePrivacyDlpV2FieldId" + }, + "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": { + "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.", + "$ref": "GooglePrivacyDlpV2InfoType" + }, + "inferred": { + "$ref": "GoogleProtobufEmpty", + "description": "If no semantic tag is indicated, we infer the statistical model from\nthe distribution of values in the input data" + } + }, + "id": "GooglePrivacyDlpV2TaggedField" + }, + "GooglePrivacyDlpV2FieldId": { + "description": "General identifier of a data field in a storage service.", + "type": "object", + "properties": { + "name": { + "description": "Name describing the field.", + "type": "string" + } + }, + "id": "GooglePrivacyDlpV2FieldId" + }, + "GooglePrivacyDlpV2RiskAnalysisJobConfig": { + "description": "Configuration for a risk analysis job.", + "type": "object", + "properties": { + "sourceTable": { + "description": "Input dataset to compute metrics over.", + "$ref": "GooglePrivacyDlpV2BigQueryTable" + }, + "privacyMetric": { + "description": "Privacy metric to compute.", + "$ref": "GooglePrivacyDlpV2PrivacyMetric" + }, + "actions": { + "description": "Actions to execute at the completion of the job. Are executed in the order\nprovided.", + "type": "array", + "items": { + "$ref": "GooglePrivacyDlpV2Action" + } + } + }, + "id": "GooglePrivacyDlpV2RiskAnalysisJobConfig" + }, + "GooglePrivacyDlpV2ReplaceWithInfoTypeConfig": { + "description": "Replace each matching finding with the name of the info_type.", + "type": "object", + "properties": {}, + "id": "GooglePrivacyDlpV2ReplaceWithInfoTypeConfig" + }, + "GooglePrivacyDlpV2ReplaceValueConfig": { + "description": "Replace each input value with a given `Value`.", + "type": "object", + "properties": { + "newValue": { + "description": "Value to replace it with.", + "$ref": "GooglePrivacyDlpV2Value" + } + }, + "id": "GooglePrivacyDlpV2ReplaceValueConfig" + }, + "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.", + "type": "object", + "properties": { + "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" + }, + "commonAlphabet": { + "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" + ], + "type": "string" + }, + "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": "GooglePrivacyDlpV2CryptoKey" + }, + "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" + } + }, + "id": "GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig" + }, + "GooglePrivacyDlpV2TimeZone": { + "type": "object", + "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" + } + }, + "id": "GooglePrivacyDlpV2TimeZone" + }, + "GooglePrivacyDlpV2KAnonymityResult": { + "description": "Result of the k-anonymity computation.", + "type": "object", + "properties": { + "equivalenceClassHistogramBuckets": { + "description": "Histogram of k-anonymity equivalence classes.", + "type": "array", + "items": { + "$ref": "GooglePrivacyDlpV2KAnonymityHistogramBucket" } + } + }, + "id": "GooglePrivacyDlpV2KAnonymityResult" + }, + "GooglePrivacyDlpV2CryptoKey": { + "properties": { + "unwrapped": { + "$ref": "GooglePrivacyDlpV2UnwrappedCryptoKey" }, - "inspectTemplates": { - "methods": { - "patch": { - "description": "Updates the InspectTemplate.", - "request": { - "$ref": "GooglePrivacyDlpV2UpdateInspectTemplateRequest" - }, - "response": { - "$ref": "GooglePrivacyDlpV2InspectTemplate" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "parameters": { - "name": { - "location": "path", - "description": "Resource name of organization and inspectTemplate to be updated, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/inspectTemplates/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/inspectTemplates/{inspectTemplatesId}", - "path": "v2/{+name}", - "id": "dlp.projects.inspectTemplates.patch" - }, - "get": { - "flatPath": "v2/projects/{projectsId}/inspectTemplates/{inspectTemplatesId}", - "path": "v2/{+name}", - "id": "dlp.projects.inspectTemplates.get", - "description": "Gets an InspectTemplate.", - "response": { - "$ref": "GooglePrivacyDlpV2InspectTemplate" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "location": "path", - "description": "Resource name of the organization and inspectTemplate to be read, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/inspectTemplates/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "list": { - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GooglePrivacyDlpV2ListInspectTemplatesResponse" - }, - "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" - }, - "pageToken": { - "location": "query", - "description": "Optional page token to continue retrieval. Comes from previous call\nto `ListInspectTemplates`.", - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/inspectTemplates", - "id": "dlp.projects.inspectTemplates.list", - "path": "v2/{+parent}/inspectTemplates", - "description": "Lists InspectTemplates." - }, - "create": { - "response": { - "$ref": "GooglePrivacyDlpV2InspectTemplate" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/inspectTemplates", - "path": "v2/{+parent}/inspectTemplates", - "id": "dlp.projects.inspectTemplates.create", - "description": "Creates an InspectTemplate for re-using frequently used configuration\nfor inspecting content, images, and storage.", - "request": { - "$ref": "GooglePrivacyDlpV2CreateInspectTemplateRequest" - } - }, - "delete": { - "description": "Deletes an InspectTemplate.", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "location": "path", - "description": "Resource name of the organization and inspectTemplate to be deleted, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/inspectTemplates/[^/]+$" - } - }, - "flatPath": "v2/projects/{projectsId}/inspectTemplates/{inspectTemplatesId}", - "path": "v2/{+name}", - "id": "dlp.projects.inspectTemplates.delete" - } + "transient": { + "$ref": "GooglePrivacyDlpV2TransientCryptoKey" + }, + "kmsWrapped": { + "$ref": "GooglePrivacyDlpV2KmsWrappedCryptoKey" + } + }, + "id": "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.", + "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.", + "type": "object", + "properties": { + "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." + }, + "endTime": { + "description": "Exclude files newer than this value.\nIf set to zero, no upper time limit is applied.", + "format": "google-datetime", + "type": "string" + }, + "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" + }, + "startTime": { + "description": "Exclude files older than this value.", + "format": "google-datetime", + "type": "string" + } + }, + "id": "GooglePrivacyDlpV2TimespanConfig" + }, + "GooglePrivacyDlpV2RequestedOptions": { + "type": "object", + "properties": { + "snapshotInspectTemplate": { + "$ref": "GooglePrivacyDlpV2InspectTemplate", + "description": "If run with an InspectTemplate, a snapshot of its state at the time of\nthis run." + }, + "jobConfig": { + "$ref": "GooglePrivacyDlpV2InspectJobConfig" + } + }, + "id": "GooglePrivacyDlpV2RequestedOptions" + }, + "GooglePrivacyDlpV2EntityId": { + "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 a\npatient identifier, or for financial records it might be an account\nidentifier. This message is used when generalizations or analysis must take\ninto account that multiple rows correspond to the same entity.", + "type": "object", + "properties": { + "field": { + "description": "Composite key indicating which field contains the entity identifier.", + "$ref": "GooglePrivacyDlpV2FieldId" + } + }, + "id": "GooglePrivacyDlpV2EntityId" + }, + "GooglePrivacyDlpV2InspectContentRequest": { + "description": "Request to search for potentially sensitive info in a ContentItem.", + "type": "object", + "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." + } + }, + "id": "GooglePrivacyDlpV2InspectContentRequest" + }, + "GooglePrivacyDlpV2HotwordRule": { + "properties": { + "hotwordRegex": { + "description": "Regex pattern defining what qualifies as a hotword.", + "$ref": "GooglePrivacyDlpV2Regex" + }, + "proximity": { + "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.", + "$ref": "GooglePrivacyDlpV2Proximity" + }, + "likelihoodAdjustment": { + "description": "Likelihood adjustment to apply to all matching findings.", + "$ref": "GooglePrivacyDlpV2LikelihoodAdjustment" + } + }, + "id": "GooglePrivacyDlpV2HotwordRule", + "description": "Detection rule that adjusts the likelihood of findings within a certain\nproximity of hotwords.", + "type": "object" + }, + "GooglePrivacyDlpV2Regex": { + "description": "Message defining a custom regular expression.", + "type": "object", + "properties": { + "pattern": { + "description": "Pattern defining the regular expression.", + "type": "string" + } + }, + "id": "GooglePrivacyDlpV2Regex" + }, + "GooglePrivacyDlpV2DeidentifyContentResponse": { + "description": "Results of de-identifying a ContentItem.", + "type": "object", + "properties": { + "item": { + "$ref": "GooglePrivacyDlpV2ContentItem", + "description": "The de-identified item." + }, + "overview": { + "description": "An overview of the changes that were made on the `item`.", + "$ref": "GooglePrivacyDlpV2TransformationOverview" + } + }, + "id": "GooglePrivacyDlpV2DeidentifyContentResponse" + }, + "GooglePrivacyDlpV2Expressions": { + "description": "An expression, consisting or an operator and conditions.", + "type": "object", + "properties": { + "logicalOperator": { + "enumDescriptions": [ + "", + "" + ], + "enum": [ + "LOGICAL_OPERATOR_UNSPECIFIED", + "AND" + ], + "description": "The operator to apply to the result of conditions. Default and currently\nonly supported value is `AND`.", + "type": "string" + }, + "conditions": { + "$ref": "GooglePrivacyDlpV2Conditions" + } + }, + "id": "GooglePrivacyDlpV2Expressions" + }, + "GooglePrivacyDlpV2CategoricalStatsResult": { + "description": "Result of the categorical stats computation.", + "type": "object", + "properties": { + "valueFrequencyHistogramBuckets": { + "description": "Histogram of value frequencies in the column.", + "type": "array", + "items": { + "$ref": "GooglePrivacyDlpV2CategoricalStatsHistogramBucket" } + } + }, + "id": "GooglePrivacyDlpV2CategoricalStatsResult" + }, + "GooglePrivacyDlpV2InfoTypeDescription": { + "description": "InfoType description.", + "type": "object", + "properties": { + "name": { + "description": "Internal name of the infoType.", + "type": "string" }, - "content": { - "methods": { - "reidentify": { - "id": "dlp.projects.content.reidentify", - "path": "v2/{+parent}/content:reidentify", - "description": "Re-identifies content that has been de-identified.", - "request": { - "$ref": "GooglePrivacyDlpV2ReidentifyContentRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GooglePrivacyDlpV2ReidentifyContentResponse" - }, - "parameters": { - "parent": { - "location": "path", - "description": "The parent resource name.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/content:reidentify" - }, - "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": "GooglePrivacyDlpV2DeidentifyContentRequest" - }, - "response": { - "$ref": "GooglePrivacyDlpV2DeidentifyContentResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "location": "path", - "description": "The parent resource name, for example projects/my-project-id.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/content:deidentify", - "path": "v2/{+parent}/content:deidentify", - "id": "dlp.projects.content.deidentify" - }, - "inspect": { - "id": "dlp.projects.content.inspect", - "path": "v2/{+parent}/content: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": "GooglePrivacyDlpV2InspectContentRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GooglePrivacyDlpV2InspectContentResponse" - }, - "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": "v2/projects/{projectsId}/content:inspect" - } + "displayName": { + "description": "Human readable form of the infoType name.", + "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" + } + } + }, + "id": "GooglePrivacyDlpV2InfoTypeDescription" + }, + "GooglePrivacyDlpV2UpdateInspectTemplateRequest": { + "description": "Request message for UpdateInspectTemplate.", + "type": "object", + "properties": { + "inspectTemplate": { + "description": "New InspectTemplate value.", + "$ref": "GooglePrivacyDlpV2InspectTemplate" + }, + "updateMask": { + "description": "Mask to control which fields get updated.", + "format": "google-fieldmask", + "type": "string" + } + }, + "id": "GooglePrivacyDlpV2UpdateInspectTemplateRequest" + }, + "GooglePrivacyDlpV2InspectJobConfig": { + "type": "object", + "properties": { + "inspectConfig": { + "description": "How and what to scan for.", + "$ref": "GooglePrivacyDlpV2InspectConfig" + }, + "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": { + "description": "The data to scan.", + "$ref": "GooglePrivacyDlpV2StorageConfig" + }, + "actions": { + "description": "Actions to execute at the completion of the job. Are executed in the order\nprovided.", + "type": "array", + "items": { + "$ref": "GooglePrivacyDlpV2Action" + } + } + }, + "id": "GooglePrivacyDlpV2InspectJobConfig" + }, + "GooglePrivacyDlpV2LDiversityHistogramBucket": { + "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": "GooglePrivacyDlpV2LDiversityEquivalenceClass" } }, - "jobTriggers": { - "methods": { - "patch": { - "response": { - "$ref": "GooglePrivacyDlpV2JobTrigger" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "parameters": { - "name": { - "description": "Resource name of the project and the triggeredJob, for example\n`projects/dlp-test-project/jobTriggers/53234423`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/jobTriggers/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/jobTriggers/{jobTriggersId}", - "path": "v2/{+name}", - "id": "dlp.projects.jobTriggers.patch", - "description": "Updates a job trigger.", - "request": { - "$ref": "GooglePrivacyDlpV2UpdateJobTriggerRequest" - } - }, - "get": { - "path": "v2/{+name}", - "id": "dlp.projects.jobTriggers.get", - "description": "Gets a job trigger.", - "response": { - "$ref": "GooglePrivacyDlpV2JobTrigger" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "location": "path", - "description": "Resource name of the project and the triggeredJob, for example\n`projects/dlp-test-project/jobTriggers/53234423`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/jobTriggers/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/jobTriggers/{jobTriggersId}" - }, - "list": { - "description": "Lists job triggers.", - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GooglePrivacyDlpV2ListJobTriggersResponse" - }, - "parameters": { - "pageToken": { - "location": "query", - "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.", - "type": "string" - }, - "orderBy": { - "location": "query", - "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.", - "type": "string" - }, - "pageSize": { - "description": "Optional size of the page, can be limited by a server.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "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": "v2/projects/{projectsId}/jobTriggers", - "id": "dlp.projects.jobTriggers.list", - "path": "v2/{+parent}/jobTriggers" - }, - "create": { - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GooglePrivacyDlpV2JobTrigger" - }, - "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": "v2/projects/{projectsId}/jobTriggers", - "id": "dlp.projects.jobTriggers.create", - "path": "v2/{+parent}/jobTriggers", - "description": "Creates a job trigger to run DLP actions such as scanning storage for\nsensitive information on a set schedule.", - "request": { - "$ref": "GooglePrivacyDlpV2CreateJobTriggerRequest" - } - }, - "delete": { - "description": "Deletes a job trigger.", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "pattern": "^projects/[^/]+/jobTriggers/[^/]+$", - "location": "path", - "description": "Resource name of the project and the triggeredJob, for example\n`projects/dlp-test-project/jobTriggers/53234423`.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/projects/{projectsId}/jobTriggers/{jobTriggersId}", - "path": "v2/{+name}", - "id": "dlp.projects.jobTriggers.delete" - } + "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" + }, + "sensitiveValueFrequencyUpperBound": { + "description": "Upper bound on the sensitive value frequencies of the equivalence\nclasses in this bucket.", + "format": "int64", + "type": "string" + } + }, + "id": "GooglePrivacyDlpV2LDiversityHistogramBucket" + }, + "GooglePrivacyDlpV2CreateJobTriggerRequest": { + "description": "Request message for CreateJobTrigger.", + "type": "object", + "properties": { + "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" + }, + "jobTrigger": { + "$ref": "GooglePrivacyDlpV2JobTrigger", + "description": "The JobTrigger to create." + } + }, + "id": "GooglePrivacyDlpV2CreateJobTriggerRequest" + }, + "GooglePrivacyDlpV2InspectConfig": { + "description": "Configuration description of the scanning process.\nWhen used with redactContent only info_types and min_likelihood are currently\nused.", + "type": "object", + "properties": { + "infoTypes": { + "description": "Restricts what info_types to look for. The values must correspond to\nInfoType values returned by ListInfoTypes or found in documentation.", + "type": "array", + "items": { + "$ref": "GooglePrivacyDlpV2InfoType" + } + }, + "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": "GooglePrivacyDlpV2CustomInfoType" + } + }, + "contentOptions": { + "description": "List of options defining data content to scan.\nIf empty, text, images, and other content will be included.", + "type": "array", + "items": { + "enum": [ + "CONTENT_UNSPECIFIED", + "CONTENT_TEXT", + "CONTENT_IMAGE" + ], + "type": "string" + }, + "enumDescriptions": [ + "Includes entire content of a file or a data stream.", + "Text content within the data, excluding any metadata.", + "Images found in the data." + ] + }, + "limits": { + "$ref": "GooglePrivacyDlpV2FindingLimits" + }, + "excludeInfoTypes": { + "description": "When true, excludes type information of the findings.", + "type": "boolean" + }, + "minLikelihood": { + "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", + "enumDescriptions": [ + "Default value; information with all likelihoods is included.", + "Few matching elements.", + "", + "Some matching elements.", + "", + "Many matching elements." + ] + } + }, + "id": "GooglePrivacyDlpV2InspectConfig" + }, + "GooglePrivacyDlpV2LDiversityConfig": { + "properties": { + "sensitiveAttribute": { + "description": "Sensitive field for computing the l-value.", + "$ref": "GooglePrivacyDlpV2FieldId" + }, + "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": "GooglePrivacyDlpV2FieldId" } } - } + }, + "id": "GooglePrivacyDlpV2LDiversityConfig", + "description": "l-diversity metric, used for analysis of reidentification risk.", + "type": "object" }, - "infoTypes": { - "methods": { - "list": { - "flatPath": "v2/infoTypes", - "path": "v2/infoTypes", - "id": "dlp.infoTypes.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).", - "response": { - "$ref": "GooglePrivacyDlpV2ListInfoTypesResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "GooglePrivacyDlpV2KAnonymityEquivalenceClass": { + "description": "The set of columns' values that share the same ldiversity value", + "type": "object", + "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.", + "type": "array", + "items": { + "$ref": "GooglePrivacyDlpV2Value" + } + } + }, + "id": "GooglePrivacyDlpV2KAnonymityEquivalenceClass" + }, + "GooglePrivacyDlpV2NumericalStatsConfig": { + "description": "Compute numerical stats over an individual column, including\nmin, max, and quantiles.", + "type": "object", + "properties": { + "field": { + "description": "Field to compute numerical stats on. Supported types are\ninteger, float, date, datetime, timestamp, time.", + "$ref": "GooglePrivacyDlpV2FieldId" + } + }, + "id": "GooglePrivacyDlpV2NumericalStatsConfig" + }, + "GooglePrivacyDlpV2CloudStorageOptions": { + "description": "Options defining a file or a set of files (path ending with *) within\na Google Cloud Storage bucket.", + "type": "object", + "properties": { + "fileSet": { + "$ref": "GooglePrivacyDlpV2FileSet" + }, + "fileTypes": { + "enumDescriptions": [ + "Includes all files.", + "Includes all file extensions not covered by text file types.", + "Included file extensions:\n asc, brf, c, cc, cpp, csv, cxx, c++, cs, css, dart, eml, go, h, hh, hpp,\n hxx, h++, hs, html, htm, shtml, shtm, xhtml, lhs, ini, java, js, json,\n ocaml, md, mkd, markdown, m, ml, mli, pl, pm, php, phtml, pht, py, pyw,\n rb, rbw, rs, rc, scala, sh, sql, tex, txt, text, tsv, vcard, vcs, wml,\n xml, xsl, xsd, yml, yaml." ], - "parameters": { - "languageCode": { - "location": "query", - "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" - }, - "filter": { - "location": "query", - "description": "Optional filter to only return infoTypes supported by certain parts of the\nAPI. Defaults to supported_by=INSPECT.", - "type": "string" - } + "description": "List of file type groups to include in the scan.\nIf empty, all files are scanned and available data format processors\nare applied.", + "type": "array", + "items": { + "enum": [ + "FILE_TYPE_UNSPECIFIED", + "BINARY_FILE", + "TEXT_FILE" + ], + "type": "string" } + }, + "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" } - } + }, + "id": "GooglePrivacyDlpV2CloudStorageOptions" }, - "organizations": { - "resources": { - "inspectTemplates": { - "methods": { - "patch": { - "response": { - "$ref": "GooglePrivacyDlpV2InspectTemplate" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "parameters": { - "name": { - "description": "Resource name of organization and inspectTemplate to be updated, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+/inspectTemplates/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/organizations/{organizationsId}/inspectTemplates/{inspectTemplatesId}", - "path": "v2/{+name}", - "id": "dlp.organizations.inspectTemplates.patch", - "description": "Updates the InspectTemplate.", - "request": { - "$ref": "GooglePrivacyDlpV2UpdateInspectTemplateRequest" - } - }, - "get": { - "description": "Gets an InspectTemplate.", - "response": { - "$ref": "GooglePrivacyDlpV2InspectTemplate" - }, - "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` or\nprojects/project-id/inspectTemplates/432452342." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/organizations/{organizationsId}/inspectTemplates/{inspectTemplatesId}", - "path": "v2/{+name}", - "id": "dlp.organizations.inspectTemplates.get" - }, - "list": { - "parameters": { - "pageToken": { - "location": "query", - "description": "Optional page token to continue retrieval. Comes from previous call\nto `ListInspectTemplates`.", - "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" - }, - "parent": { - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+$", - "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": "v2/organizations/{organizationsId}/inspectTemplates", - "path": "v2/{+parent}/inspectTemplates", - "id": "dlp.organizations.inspectTemplates.list", - "description": "Lists InspectTemplates.", - "response": { - "$ref": "GooglePrivacyDlpV2ListInspectTemplatesResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET" - }, - "create": { - "response": { - "$ref": "GooglePrivacyDlpV2InspectTemplate" - }, - "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" - ], - "flatPath": "v2/organizations/{organizationsId}/inspectTemplates", - "path": "v2/{+parent}/inspectTemplates", - "id": "dlp.organizations.inspectTemplates.create", - "description": "Creates an InspectTemplate for re-using frequently used configuration\nfor inspecting content, images, and storage.", - "request": { - "$ref": "GooglePrivacyDlpV2CreateInspectTemplateRequest" - } - }, - "delete": { - "description": "Deletes an InspectTemplate.", - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "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.", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+/inspectTemplates/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/organizations/{organizationsId}/inspectTemplates/{inspectTemplatesId}", - "path": "v2/{+name}", - "id": "dlp.organizations.inspectTemplates.delete" - } + "GooglePrivacyDlpV2DateShiftConfig": { + "description": "Shifts dates by random number of days, with option to be consistent for the\nsame context.", + "type": "object", + "properties": { + "cryptoKey": { + "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.", + "$ref": "GooglePrivacyDlpV2CryptoKey" + }, + "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" + }, + "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." + }, + "lowerBoundDays": { + "description": "For example, -5 means shift date to at most 5 days back in the past.\n[Required]", + "format": "int32", + "type": "integer" + } + }, + "id": "GooglePrivacyDlpV2DateShiftConfig" + }, + "GooglePrivacyDlpV2ReidentifyContentResponse": { + "description": "Results of re-identifying a item.", + "type": "object", + "properties": { + "overview": { + "$ref": "GooglePrivacyDlpV2TransformationOverview", + "description": "An overview of the changes that were made to the `item`." + }, + "item": { + "description": "The re-identified item.", + "$ref": "GooglePrivacyDlpV2ContentItem" + } + }, + "id": "GooglePrivacyDlpV2ReidentifyContentResponse" + }, + "GooglePrivacyDlpV2ValueFrequency": { + "description": "A value of a field, including its frequency.", + "type": "object", + "properties": { + "value": { + "description": "A value contained in the field in question.", + "$ref": "GooglePrivacyDlpV2Value" + }, + "count": { + "description": "How many times the value is contained in the field.", + "format": "int64", + "type": "string" + } + }, + "id": "GooglePrivacyDlpV2ValueFrequency" + }, + "GooglePrivacyDlpV2InfoTypeTransformation": { + "description": "A transformation to apply to text that is identified as a specific\ninfo_type.", + "type": "object", + "properties": { + "infoTypes": { + "description": "InfoTypes to apply the transformation to. Empty list will match all\navailable infoTypes for this transformation.", + "type": "array", + "items": { + "$ref": "GooglePrivacyDlpV2InfoType" } }, - "deidentifyTemplates": { - "methods": { - "patch": { - "description": "Updates the DeidentifyTemplate.", - "request": { - "$ref": "GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest" - }, - "response": { - "$ref": "GooglePrivacyDlpV2DeidentifyTemplate" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "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.", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+/deidentifyTemplates/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/organizations/{organizationsId}/deidentifyTemplates/{deidentifyTemplatesId}", - "path": "v2/{+name}", - "id": "dlp.organizations.deidentifyTemplates.patch" - }, - "get": { - "description": "Gets a DeidentifyTemplate.", - "response": { - "$ref": "GooglePrivacyDlpV2DeidentifyTemplate" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+/deidentifyTemplates/[^/]+$", - "location": "path", - "description": "Resource name of the organization and deidentify template to be read, for\nexample `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v2/organizations/{organizationsId}/deidentifyTemplates/{deidentifyTemplatesId}", - "path": "v2/{+name}", - "id": "dlp.organizations.deidentifyTemplates.get" - }, - "list": { - "description": "Lists DeidentifyTemplates.", - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GooglePrivacyDlpV2ListDeidentifyTemplatesResponse" - }, - "parameters": { - "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" - }, - "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" - ], - "flatPath": "v2/organizations/{organizationsId}/deidentifyTemplates", - "id": "dlp.organizations.deidentifyTemplates.list", - "path": "v2/{+parent}/deidentifyTemplates" - }, - "create": { - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GooglePrivacyDlpV2DeidentifyTemplate" - }, - "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": "v2/organizations/{organizationsId}/deidentifyTemplates", - "id": "dlp.organizations.deidentifyTemplates.create", - "path": "v2/{+parent}/deidentifyTemplates", - "description": "Creates a DeidentifyTemplate for re-using frequently used configuration\nfor de-identifying content, images, and storage.", - "request": { - "$ref": "GooglePrivacyDlpV2CreateDeidentifyTemplateRequest" - } - }, - "delete": { - "response": { - "$ref": "GoogleProtobufEmpty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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.", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+/deidentifyTemplates/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2/organizations/{organizationsId}/deidentifyTemplates/{deidentifyTemplatesId}", - "path": "v2/{+name}", - "id": "dlp.organizations.deidentifyTemplates.delete", - "description": "Deletes a DeidentifyTemplate." - } + "primitiveTransformation": { + "$ref": "GooglePrivacyDlpV2PrimitiveTransformation", + "description": "Primitive transformation to apply to the infoType. [required]" + } + }, + "id": "GooglePrivacyDlpV2InfoTypeTransformation" + }, + "GooglePrivacyDlpV2KMapEstimationQuasiIdValues": { + "description": "A tuple of values for the quasi-identifier columns.", + "type": "object", + "properties": { + "quasiIdsValues": { + "description": "The quasi-identifier values.", + "type": "array", + "items": { + "$ref": "GooglePrivacyDlpV2Value" + } + }, + "estimatedAnonymity": { + "description": "The estimated anonymity for these quasi-identifier values.", + "format": "int64", + "type": "string" + } + }, + "id": "GooglePrivacyDlpV2KMapEstimationQuasiIdValues" + }, + "GooglePrivacyDlpV2ContentItem": { + "properties": { + "value": { + "description": "String data to inspect or redact.", + "type": "string" + }, + "byteItem": { + "description": "Content data to inspect or redact. Replaces `type` and `data`.", + "$ref": "GooglePrivacyDlpV2ByteContentItem" + }, + "table": { + "$ref": "GooglePrivacyDlpV2Table", + "description": "Structured content for inspection." + } + }, + "id": "GooglePrivacyDlpV2ContentItem", + "description": "Container structure for the content to inspect.", + "type": "object" + }, + "GooglePrivacyDlpV2ImageLocation": { + "description": "Location of the finding within an image.", + "type": "object", + "properties": { + "boundingBoxes": { + "description": "Bounding boxes locating the pixels within the image containing the finding.", + "type": "array", + "items": { + "$ref": "GooglePrivacyDlpV2BoundingBox" } } + }, + "id": "GooglePrivacyDlpV2ImageLocation" + } + }, + "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": "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": "Cloud Data Loss Prevention (DLP) API", + "ownerName": "Google" } diff --git a/DiscoveryJson/drive_v2.json b/DiscoveryJson/drive_v2.json index 176859c7f6..64948534ef 100644 --- a/DiscoveryJson/drive_v2.json +++ b/DiscoveryJson/drive_v2.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/6-IRgbCU_bnxvSnmzlKfl1SbuaY\"", + "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/MoKCuk_viEMC_qTIzEwywcb2Sk8\"", "discoveryVersion": "v1", "id": "drive:v2", "name": "drive", "version": "v2", - "revision": "20180426", + "revision": "20180504", "title": "Drive API", "description": "Manages files in Drive including uploading, downloading, searching, detecting changes, and updating sharing permissions.", "ownerDomain": "google.com", diff --git a/DiscoveryJson/drive_v3.json b/DiscoveryJson/drive_v3.json index 2850ac17e0..04e309f6b5 100644 --- a/DiscoveryJson/drive_v3.json +++ b/DiscoveryJson/drive_v3.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/4v_o1NDk4Jwtge2-vSvOPvRNs-E\"", + "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/sZOqTpHoO9Pr036v3ngvLb69pT4\"", "discoveryVersion": "v1", "id": "drive:v3", "name": "drive", "version": "v3", - "revision": "20180426", + "revision": "20180504", "title": "Drive API", "description": "Manages files in Drive including uploading, downloading, searching, detecting changes, and updating sharing permissions.", "ownerDomain": "google.com", diff --git a/DiscoveryJson/firebasedynamiclinks_v1.json b/DiscoveryJson/firebasedynamiclinks_v1.json index 653c6e76bd..b1d66896e9 100644 --- a/DiscoveryJson/firebasedynamiclinks_v1.json +++ b/DiscoveryJson/firebasedynamiclinks_v1.json @@ -1,485 +1,15 @@ { - "ownerDomain": "google.com", - "name": "firebasedynamiclinks", - "batchPath": "batch", - "title": "Firebase Dynamic Links API", - "ownerName": "Google", - "resources": { - "shortLinks": { - "methods": { - "create": { - "path": "v1/shortLinks", - "id": "firebasedynamiclinks.shortLinks.create", - "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.", - "response": { - "$ref": "CreateShortDynamicLinkResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/firebase" - ], - "parameters": {}, - "flatPath": "v1/shortLinks" - } - } - }, - "managedShortLinks": { - "methods": { - "create": { - "request": { - "$ref": "CreateManagedShortLinkRequest" - }, - "description": "Creates a managed short Dynamic Link given either a valid long Dynamic Link\nor details such as Dynamic Link domain, Android and iOS app information.\nThe created short Dynamic Link will not expire.\n\nThis differs from CreateShortDynamicLink in the following ways:\n - The request will also contain a name for the link (non unique name\n for the front end).\n - The response must be authenticated with an auth token (generated with\n the admin service account).\n - The link will appear in the FDL list of links in the console front end.\n\nThe Dynamic Link domain in the request must be owned by requester's\nFirebase project.", - "response": { - "$ref": "CreateManagedShortLinkResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/firebase" - ], - "parameters": {}, - "flatPath": "v1/managedShortLinks:create", - "path": "v1/managedShortLinks:create", - "id": "firebasedynamiclinks.managedShortLinks.create" - } - } - }, - "v1": { - "methods": { - "installAttribution": { - "response": { - "$ref": "GetIosPostInstallAttributionResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/firebase" - ], - "flatPath": "v1/installAttribution", - "path": "v1/installAttribution", - "id": "firebasedynamiclinks.installAttribution", - "description": "Get iOS strong/weak-match info for post-install attribution.", - "request": { - "$ref": "GetIosPostInstallAttributionRequest" - } - }, - "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", - "parameters": { - "dynamicLink": { - "location": "path", - "description": "Dynamic Link URL. e.g. https://abcd.app.goo.gl/wxyz", - "required": true, - "type": "string" - }, - "durationDays": { - "location": "query", - "description": "The span of time requested in days.", - "format": "int64", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/firebase" - ], - "flatPath": "v1/{dynamicLink}/linkStats", - "path": "v1/{dynamicLink}/linkStats", - "id": "firebasedynamiclinks.getLinkStats" - } - } - } - }, - "parameters": { - "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": { - "description": "Available 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": { - "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": { - "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" - ] - } - }, - "version": "v1", - "baseUrl": "https://firebasedynamiclinks.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Programmatically creates and manages Firebase Dynamic Links.", - "servicePath": "", - "basePath": "", - "id": "firebasedynamiclinks:v1", - "documentationLink": "https://firebase.google.com/docs/dynamic-links/", - "revision": "20180507", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "AndroidInfo": { - "properties": { - "androidFallbackLink": { - "description": "Link to open on Android if the app is not installed.", - "type": "string" - }, - "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.", - "type": "string" - }, - "androidLink": { - "description": "If specified, this overrides the ‘link’ parameter on Android.", - "type": "string" - } - }, - "id": "AndroidInfo", - "description": "Android related attributes to the Dynamic Link.", - "type": "object" - }, - "DynamicLinkWarning": { - "description": "Dynamic Links warning messages.", - "type": "object", - "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": { - "enumDescriptions": [ - "Unknown code.", - "The Android package does not match any in developer's DevConsole project.", - "The Android minimum version code has to be a valid integer.", - "Android package min version param is not needed, e.g. when\n'apn' is missing.", - "Android link is not a valid URI.", - "Android link param is not needed, e.g. when param 'al' and 'link' have\nthe same value..", - "Android fallback link is not a valid URI.", - "Android fallback link has an invalid (non http/https) URI scheme.", - "The iOS bundle ID does not match any in developer's DevConsole project.", - "The iPad bundle ID does not match any in developer's DevConsole project.", - "iOS URL scheme is not needed, e.g. when 'ibi' are 'ipbi' are all missing.", - "iOS app store ID format is incorrect, e.g. not numeric.", - "iOS app store ID is not needed.", - "iOS fallback link is not a valid URI.", - "iOS fallback link has an invalid (non http/https) URI scheme.", - "iPad fallback link is not a valid URI.", - "iPad fallback link has an invalid (non http/https) URI scheme.", - "Debug param format is incorrect.", - "isAd param format is incorrect.", - "Indicates a certain param is deprecated.", - "Indicates certain paramater is not recognized.", - "Indicates certain paramater is too long.", - "Social meta tag image link is not a valid URI.", - "Social meta tag image link has an invalid (non http/https) URI scheme.", - "", - "", - "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." - ], - "enum": [ - "CODE_UNSPECIFIED", - "NOT_IN_PROJECT_ANDROID_PACKAGE_NAME", - "NOT_INTEGER_ANDROID_PACKAGE_MIN_VERSION", - "UNNECESSARY_ANDROID_PACKAGE_MIN_VERSION", - "NOT_URI_ANDROID_LINK", - "UNNECESSARY_ANDROID_LINK", - "NOT_URI_ANDROID_FALLBACK_LINK", - "BAD_URI_SCHEME_ANDROID_FALLBACK_LINK", - "NOT_IN_PROJECT_IOS_BUNDLE_ID", - "NOT_IN_PROJECT_IPAD_BUNDLE_ID", - "UNNECESSARY_IOS_URL_SCHEME", - "NOT_NUMERIC_IOS_APP_STORE_ID", - "UNNECESSARY_IOS_APP_STORE_ID", - "NOT_URI_IOS_FALLBACK_LINK", - "BAD_URI_SCHEME_IOS_FALLBACK_LINK", - "NOT_URI_IPAD_FALLBACK_LINK", - "BAD_URI_SCHEME_IPAD_FALLBACK_LINK", - "BAD_DEBUG_PARAM", - "BAD_AD_PARAM", - "DEPRECATED_PARAM", - "UNRECOGNIZED_PARAM", - "TOO_LONG_PARAM", - "NOT_URI_SOCIAL_IMAGE_LINK", - "BAD_URI_SCHEME_SOCIAL_IMAGE_LINK", - "NOT_URI_SOCIAL_URL", - "BAD_URI_SCHEME_SOCIAL_URL", - "LINK_LENGTH_TOO_LONG", - "LINK_WITH_FRAGMENTS", - "NOT_MATCHING_IOS_BUNDLE_ID_AND_STORE_ID" - ], - "description": "The warning code.", - "type": "string" - } - }, - "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": { - "iosIpadBundleId": { - "description": "iPad 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" - }, - "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.", - "type": "string" - }, - "iosIpadFallbackLink": { - "description": "If specified, this overrides the ios_fallback_link value on iPads.", - "type": "string" - } - }, - "id": "IosInfo" - }, - "AnalyticsInfo": { - "description": "Tracking parameters supported by Dynamic Link.", - "type": "object", - "properties": { - "itunesConnectAnalytics": { - "$ref": "ITunesConnectAnalytics", - "description": "iTunes Connect App Analytics." - }, - "googlePlayAnalytics": { - "description": "Google Play Campaign Measurements.", - "$ref": "GooglePlayAnalytics" - } - }, - "id": "AnalyticsInfo" - }, - "CreateShortDynamicLinkRequest": { - "description": "Request to create a short Dynamic Link.", - "type": "object", - "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&apn=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." - } - }, - "id": "CreateShortDynamicLinkRequest" - }, - "ManagedShortLink": { - "description": "Managed Short Link.", - "type": "object", - "properties": { - "linkName": { - "description": "Link name defined by the creator.\n\nRequired.", - "type": "string" - }, - "flaggedAttribute": { - "description": "Attributes that have been flagged about this short url.", - "type": "array", - "items": { - "enum": [ - "UNSPECIFIED_ATTRIBUTE", - "SPAM" - ], - "type": "string" - }, - "enumDescriptions": [ - "Indicates that no attributes were found for this short url.", - "Indicates that short url has been flagged by AbuseIAm team as spam." - ] - }, - "info": { - "description": "Full Dyamic Link info", - "$ref": "DynamicLinkInfo" - }, - "link": { - "description": "Short durable link url, for example, \"https://sample.app.goo.gl/xyz123\".\n\nRequired.", - "type": "string" - }, - "creationTime": { - "description": "Creation timestamp of the short link.", - "format": "google-datetime", - "type": "string" - }, - "visibility": { - "enumDescriptions": [ - "Visibility of the link is not specified.", - "Link created in console and should be shown in console.", - "Link created in console and should not be shown in console (but can\nbe shown in the console again if it is unarchived).", - "Link created outside of console and should never be shown in console." - ], - "enum": [ - "UNSPECIFIED_VISIBILITY", - "UNARCHIVED", - "ARCHIVED", - "NEVER_SHOWN" - ], - "description": "Visibility status of link.", - "type": "string" - } - }, - "id": "ManagedShortLink" - }, - "DesktopInfo": { - "properties": { - "desktopFallbackLink": { - "description": "Link to open on desktop.", - "type": "string" - } - }, - "id": "DesktopInfo", - "description": "Desktop related attributes to the Dynamic Link.", - "type": "object" - }, + "schemas": { "DynamicLinkEventStat": { "description": "Dynamic Link event stat.", "type": "object", "properties": { "count": { + "type": "string", "description": "The number of times this event occurred.", - "format": "int64", - "type": "string" + "format": "int64" }, "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", @@ -489,9 +19,24 @@ "APP_RE_OPEN" ], "description": "Link event.", - "type": "string" + "type": "string", + "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." + ] }, "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.", + "Platforms are not categorized as Android/iOS/Destop fall into here." + ], "enum": [ "DYNAMIC_LINK_PLATFORM_UNSPECIFIED", "ANDROID", @@ -500,29 +45,38 @@ "OTHER" ], "description": "Requested platform.", - "type": "string", - "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.", - "Platforms are not categorized as Android/iOS/Destop fall into here." - ] + "type": "string" } }, "id": "DynamicLinkEventStat" }, "GetIosPostInstallAttributionRequest": { + "id": "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", "properties": { + "bundleId": { + "description": "APP bundle ID.", + "type": "string" + }, + "device": { + "description": "Device information.", + "$ref": "DeviceInfo" + }, + "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" + }, + "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" }, "retrievalMethod": { - "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.", @@ -534,55 +88,37 @@ "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" }, "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" + "type": "string", + "enumDescriptions": [ + "Unknown style.", + "Default style.", + "Custom style." + ] }, "sdkVersion": { "description": "Google SDK version.", "type": "string" - }, - "bundleId": { - "description": "APP bundle ID.", - "type": "string" - }, - "device": { - "$ref": "DeviceInfo", - "description": "Device information." - }, - "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" - }, - "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" } - }, - "id": "GetIosPostInstallAttributionRequest" + } }, "CreateManagedShortLinkRequest": { + "description": "Request to create a managed Short Dynamic Link.", + "type": "object", "properties": { - "suffix": { - "$ref": "Suffix", - "description": "Short Dynamic Link suffix. Optional." - }, "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)." + "description": "Information about the Dynamic Link to be shortened.\n[Learn more](https://firebase.google.com/docs/reference/dynamic-links/link-shortener).", + "$ref": "DynamicLinkInfo" }, "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/reference/dynamic-links/link-shortener).", @@ -591,13 +127,16 @@ "name": { "description": "Link name to associate with the link. It's used for marketer to identify\nmanually-created links in the Firebase console\n(https://console.firebase.google.com/).\nLinks must be named to be tracked.", "type": "string" + }, + "suffix": { + "$ref": "Suffix", + "description": "Short Dynamic Link suffix. Optional." } }, - "id": "CreateManagedShortLinkRequest", - "description": "Request to create a managed Short Dynamic Link.", - "type": "object" + "id": "CreateManagedShortLinkRequest" }, "CreateShortDynamicLinkResponse": { + "id": "CreateShortDynamicLinkResponse", "description": "Response to create a short Dynamic Link.", "type": "object", "properties": { @@ -616,20 +155,13 @@ "$ref": "DynamicLinkWarning" } } - }, - "id": "CreateShortDynamicLinkResponse" + } }, "Suffix": { "description": "Short Dynamic Link suffix.", "type": "object", "properties": { "option": { - "enum": [ - "OPTION_UNSPECIFIED", - "UNGUESSABLE", - "SHORT", - "CUSTOM" - ], "description": "Suffix option.", "type": "string", "enumDescriptions": [ @@ -637,6 +169,12 @@ "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.", "Custom DDL suffix is a client specified string, for example,\n\"buy2get1free\".\nNOTE: custom suffix should only be available to managed short link\ncreation" + ], + "enum": [ + "OPTION_UNSPECIFIED", + "UNGUESSABLE", + "SHORT", + "CUSTOM" ] }, "customSuffix": { @@ -647,40 +185,57 @@ "id": "Suffix" }, "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", "properties": { - "utmMedium": { - "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.", "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.", + "utmContent": { + "type": "string", + "description": "Campaign content; used for A/B testing and content-targeted ads to\ndifferentiate ads or links that point to the same URL." + }, + "utmMedium": { + "description": "Campaign medium; used to identify a medium such as email or cost-per-click.", "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.", + "utmTerm": { + "description": "Campaign term; used with paid search to supply the keywords for ads.", "type": "string" } }, - "id": "GooglePlayAnalytics" + "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": { + "id": "DynamicLinkInfo", "description": "Information about a Dynamic Link.", "type": "object", "properties": { + "domainUriPrefix": { + "description": "E.g. https://maps.app.goo.gl, https://maps.page.link, https://g.co/maps\nMore examples can be found in description of getNormalizedUriPrefix in\nj/c/g/firebase/dynamiclinks/uri/DdlDomain.java", + "type": "string" + }, + "androidInfo": { + "description": "Android related information. See Android related parameters in the\n[documentation](https://firebase.google.com/docs/dynamic-links/create-manually).", + "$ref": "AndroidInfo" + }, + "navigationInfo": { + "$ref": "NavigationInfo", + "description": "Information of navigation behavior of a Firebase Dynamic Links." + }, + "analyticsInfo": { + "description": "Parameters used for tracking. See all tracking parameters in the\n[documentation](https://firebase.google.com/docs/dynamic-links/create-manually).", + "$ref": "AnalyticsInfo" + }, "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" @@ -694,39 +249,23 @@ "type": "string" }, "iosInfo": { - "description": "iOS related information. See iOS related parameters in the\n[documentation](https://firebase.google.com/docs/dynamic-links/create-manually).", - "$ref": "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." - }, - "domainUriPrefix": { - "description": "E.g. https://maps.app.goo.gl, https://maps.page.link, https://g.co/maps\nMore examples can be found in description of getNormalizedUriPrefix in\nj/c/g/firebase/dynamiclinks/uri/DdlDomain.java", - "type": "string" - }, - "androidInfo": { - "$ref": "AndroidInfo", - "description": "Android related information. See Android related parameters in the\n[documentation](https://firebase.google.com/docs/dynamic-links/create-manually)." - }, - "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)." + "description": "Parameters for social meta tag params.\nUsed to set meta tag data for link previews on social sites.", + "$ref": "SocialMetaTagInfo" } - }, - "id": "DynamicLinkInfo" + } }, "ITunesConnectAnalytics": { + "id": "ITunesConnectAnalytics", "description": "Parameters for iTunes Connect App Analytics.", "type": "object", "properties": { "at": { - "description": "Affiliate token used to create affiliate-coded links.", - "type": "string" + "type": "string", + "description": "Affiliate token used to create affiliate-coded links." }, "ct": { "description": "Campaign text that developers can optionally add to any link in order to\ntrack sales from a specific marketing campaign.", @@ -740,162 +279,421 @@ "description": "Provider token that enables analytics for Dynamic Links from within iTunes\nConnect.", "type": "string" } - }, - "id": "ITunesConnectAnalytics" + } }, "DeviceInfo": { - "description": "Signals associated with the device making the request.", - "type": "object", "properties": { "deviceModelName": { "description": "Device model name.", "type": "string" }, - "languageCodeFromWebview": { - "description": "Device language code setting obtained by executing JavaScript code in\nWebView.", + "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" + }, + "languageCode": { + "description": "Device language code setting.", + "type": "string" + }, + "screenResolutionHeight": { + "description": "Device display resolution height.", + "format": "int64", + "type": "string" + } + }, + "id": "DeviceInfo", + "description": "Signals associated with the device making the request.", + "type": "object" + }, + "GetIosPostInstallAttributionResponse": { + "type": "object", + "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" + }, + "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" + }, + "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" + }, + "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" + }, + "matchMessage": { + "description": "Describes why match failed, ie: \"discarded due to low confidence\".\nThis message will be publicly visible.", "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.", + "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" }, - "screenResolutionWidth": { - "description": "Device display resolution width.", - "format": "int64", + "utmCampaign": { + "description": "Scion campaign value to be propagated by iSDK to Scion at post-install.", "type": "string" }, - "screenResolutionHeight": { - "description": "Device display resolution height.", - "format": "int64", + "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" }, - "languageCode": { - "description": "Device language code setting.", + "requestedLink": { + "description": "Entire FDL (short or long) attributed post-install via one of several\ntechniques (fingerprint, copy unique).", "type": "string" }, - "timezone": { - "description": "Device timezone setting.", + "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": { + "type": "boolean", + "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." } }, - "id": "DeviceInfo" + "id": "GetIosPostInstallAttributionResponse", + "description": "Response for iSDK to execute strong match flow for post-install attribution." }, "CreateManagedShortLinkResponse": { - "description": "Response to create a short Dynamic Link.", - "type": "object", "properties": { "managedShortLink": { "$ref": "ManagedShortLink", "description": "Short Dynamic Link value. e.g. https://abcd.app.goo.gl/wxyz" }, "warning": { - "description": "Information about potential warnings on link creation.", "type": "array", "items": { "$ref": "DynamicLinkWarning" - } + }, + "description": "Information about potential warnings on link creation." }, "previewLink": { "description": "Preview link to show the link flow chart. (debug info.)", "type": "string" } }, - "id": "CreateManagedShortLinkResponse" + "id": "CreateManagedShortLinkResponse", + "description": "Response to create a short Dynamic Link.", + "type": "object" }, - "GetIosPostInstallAttributionResponse": { - "description": "Response for iSDK to execute strong match flow for post-install attribution.", + "SocialMetaTagInfo": { + "description": "Parameters for social meta tag params.\nUsed to set meta tag data for link previews on social sites.", "type": "object", "properties": { - "deepLink": { - "description": "The deep-link attributed post-install via one of several techniques\n(fingerprint, copy unique).", + "socialDescription": { + "description": "A short description of the link. Optional.", "type": "string" }, - "invitationId": { - "description": "Invitation ID attributed post-install via one of several techniques\n(fingerprint, copy unique).", + "socialTitle": { + "description": "Title to be displayed. Optional.", "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" - ], + "socialImageLink": { + "description": "An image url string. Optional.", + "type": "string" + } + }, + "id": "SocialMetaTagInfo" + }, + "DynamicLinkStats": { + "properties": { + "linkEventStats": { + "description": "Dynamic Link event stats.", + "type": "array", + "items": { + "$ref": "DynamicLinkEventStat" + } + } + }, + "id": "DynamicLinkStats", + "description": "Analytics stats of a Dynamic Link for a given timeframe.", + "type": "object" + }, + "DynamicLinkWarning": { + "properties": { + "warningMessage": { + "description": "The warning message to help developers improve their requests.", + "type": "string" + }, + "warningDocumentLink": { + "type": "string", + "description": "The document describing the warning, and helps resolve." + }, + "warningCode": { "enum": [ - "UNKNOWN_ATTRIBUTION_CONFIDENCE", - "WEAK", - "DEFAULT", - "UNIQUE" + "CODE_UNSPECIFIED", + "NOT_IN_PROJECT_ANDROID_PACKAGE_NAME", + "NOT_INTEGER_ANDROID_PACKAGE_MIN_VERSION", + "UNNECESSARY_ANDROID_PACKAGE_MIN_VERSION", + "NOT_URI_ANDROID_LINK", + "UNNECESSARY_ANDROID_LINK", + "NOT_URI_ANDROID_FALLBACK_LINK", + "BAD_URI_SCHEME_ANDROID_FALLBACK_LINK", + "NOT_IN_PROJECT_IOS_BUNDLE_ID", + "NOT_IN_PROJECT_IPAD_BUNDLE_ID", + "UNNECESSARY_IOS_URL_SCHEME", + "NOT_NUMERIC_IOS_APP_STORE_ID", + "UNNECESSARY_IOS_APP_STORE_ID", + "NOT_URI_IOS_FALLBACK_LINK", + "BAD_URI_SCHEME_IOS_FALLBACK_LINK", + "NOT_URI_IPAD_FALLBACK_LINK", + "BAD_URI_SCHEME_IPAD_FALLBACK_LINK", + "BAD_DEBUG_PARAM", + "BAD_AD_PARAM", + "DEPRECATED_PARAM", + "UNRECOGNIZED_PARAM", + "TOO_LONG_PARAM", + "NOT_URI_SOCIAL_IMAGE_LINK", + "BAD_URI_SCHEME_SOCIAL_IMAGE_LINK", + "NOT_URI_SOCIAL_URL", + "BAD_URI_SCHEME_SOCIAL_URL", + "LINK_LENGTH_TOO_LONG", + "LINK_WITH_FRAGMENTS", + "NOT_MATCHING_IOS_BUNDLE_ID_AND_STORE_ID" ], - "description": "The confidence of the returned attribution.", + "description": "The warning code.", + "type": "string", + "enumDescriptions": [ + "Unknown code.", + "The Android package does not match any in developer's DevConsole project.", + "The Android minimum version code has to be a valid integer.", + "Android package min version param is not needed, e.g. when\n'apn' is missing.", + "Android link is not a valid URI.", + "Android link param is not needed, e.g. when param 'al' and 'link' have\nthe same value..", + "Android fallback link is not a valid URI.", + "Android fallback link has an invalid (non http/https) URI scheme.", + "The iOS bundle ID does not match any in developer's DevConsole project.", + "The iPad bundle ID does not match any in developer's DevConsole project.", + "iOS URL scheme is not needed, e.g. when 'ibi' are 'ipbi' are all missing.", + "iOS app store ID format is incorrect, e.g. not numeric.", + "iOS app store ID is not needed.", + "iOS fallback link is not a valid URI.", + "iOS fallback link has an invalid (non http/https) URI scheme.", + "iPad fallback link is not a valid URI.", + "iPad fallback link has an invalid (non http/https) URI scheme.", + "Debug param format is incorrect.", + "isAd param format is incorrect.", + "Indicates a certain param is deprecated.", + "Indicates certain paramater is not recognized.", + "Indicates certain paramater is too long.", + "Social meta tag image link is not a valid URI.", + "Social meta tag image link has an invalid (non http/https) URI scheme.", + "", + "", + "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", + "description": "Dynamic Links warning messages.", + "type": "object" + }, + "AndroidInfo": { + "description": "Android related attributes to the Dynamic Link.", + "type": "object", + "properties": { + "androidPackageName": { + "description": "Android package name of the app.", "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", + "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" }, - "matchMessage": { - "description": "Describes why match failed, ie: \"discarded due to low confidence\".\nThis message will be publicly visible.", + "androidLink": { + "description": "If specified, this overrides the ‘link’ parameter on Android.", "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).", + "androidFallbackLink": { + "description": "Link to open on Android if the app is not installed.", + "type": "string" + } + }, + "id": "AndroidInfo" + }, + "NavigationInfo": { + "id": "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" + } + } + }, + "IosInfo": { + "description": "iOS related attributes to the Dynamic Link..", + "type": "object", + "properties": { + "iosFallbackLink": { + "description": "Link to open on iOS if the app is not installed.", "type": "string" }, - "utmCampaign": { - "description": "Scion campaign value to be propagated by iSDK to Scion at post-install.", + "iosAppStoreId": { + "description": "iOS App Store ID.", "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).", + "iosIpadFallbackLink": { + "type": "string", + "description": "If specified, this overrides the ios_fallback_link value on iPads." + }, + "iosIpadBundleId": { + "description": "iPad 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" + }, + "iosBundleId": { + "description": "iOS bundle ID of the app.", + "type": "string" + } + }, + "id": "IosInfo" + }, + "AnalyticsInfo": { + "description": "Tracking parameters supported by Dynamic Link.", + "type": "object", + "properties": { + "googlePlayAnalytics": { + "$ref": "GooglePlayAnalytics", + "description": "Google Play Campaign Measurements." + }, + "itunesConnectAnalytics": { + "$ref": "ITunesConnectAnalytics", + "description": "iTunes Connect App Analytics." + } + }, + "id": "AnalyticsInfo" + }, + "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/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&apn=com.sample\",\n[Learn more](https://firebase.google.com/docs/reference/dynamic-links/link-shortener).", + "type": "string" + } + }, + "id": "CreateShortDynamicLinkRequest" + }, + "ManagedShortLink": { + "description": "Managed Short Link.", + "type": "object", + "properties": { + "linkName": { + "description": "Link name defined by the creator.\n\nRequired.", "type": "string" }, - "requestedLink": { - "description": "Entire FDL (short or long) attributed post-install via one of several\ntechniques (fingerprint, copy unique).", - "type": "string" + "flaggedAttribute": { + "description": "Attributes that have been flagged about this short url.", + "type": "array", + "items": { + "enum": [ + "UNSPECIFIED_ATTRIBUTE", + "SPAM" + ], + "type": "string" + }, + "enumDescriptions": [ + "Indicates that no attributes were found for this short url.", + "Indicates that short url has been flagged by AbuseIAm team as spam." + ] }, - "utmMedium": { - "description": "Scion medium value to be propagated by iSDK to Scion at post-install.", - "type": "string" + "info": { + "$ref": "DynamicLinkInfo", + "description": "Full Dyamic Link info" }, - "utmSource": { - "description": "Scion source value to be propagated by iSDK to Scion at post-install.", + "link": { + "description": "Short durable link url, for example, \"https://sample.app.goo.gl/xyz123\".\n\nRequired.", "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" + "creationTime": { + "description": "Creation timestamp of the short link.", + "format": "google-datetime", + "type": "string" }, - "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.", + "visibility": { + "enumDescriptions": [ + "Visibility of the link is not specified.", + "Link created in console and should be shown in console.", + "Link created in console and should not be shown in console (but can\nbe shown in the console again if it is unarchived).", + "Link created outside of console and should never be shown in console." + ], + "enum": [ + "UNSPECIFIED_VISIBILITY", + "UNARCHIVED", + "ARCHIVED", + "NEVER_SHOWN" + ], + "description": "Visibility status of link.", "type": "string" } }, - "id": "GetIosPostInstallAttributionResponse" + "id": "ManagedShortLink" }, - "SocialMetaTagInfo": { + "DesktopInfo": { + "type": "object", "properties": { - "socialTitle": { - "description": "Title to be displayed. Optional.", - "type": "string" - }, - "socialImageLink": { - "description": "An image url string. Optional.", - "type": "string" - }, - "socialDescription": { - "description": "A short description of the link. Optional.", + "desktopFallbackLink": { + "description": "Link to open on desktop.", "type": "string" } }, - "id": "SocialMetaTagInfo", - "description": "Parameters for social meta tag params.\nUsed to set meta tag data for link previews on social sites.", - "type": "object" + "id": "DesktopInfo", + "description": "Desktop related attributes to the Dynamic Link." } }, "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" + "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 Dynamic Links", @@ -908,5 +706,207 @@ } } }, - "rootUrl": "https://firebasedynamiclinks.googleapis.com/" + "rootUrl": "https://firebasedynamiclinks.googleapis.com/", + "ownerDomain": "google.com", + "name": "firebasedynamiclinks", + "batchPath": "batch", + "title": "Firebase Dynamic Links API", + "ownerName": "Google", + "resources": { + "shortLinks": { + "methods": { + "create": { + "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" + ], + "parameters": {}, + "flatPath": "v1/shortLinks", + "id": "firebasedynamiclinks.shortLinks.create", + "path": "v1/shortLinks" + } + } + }, + "managedShortLinks": { + "methods": { + "create": { + "request": { + "$ref": "CreateManagedShortLinkRequest" + }, + "description": "Creates a managed short Dynamic Link given either a valid long Dynamic Link\nor details such as Dynamic Link domain, Android and iOS app information.\nThe created short Dynamic Link will not expire.\n\nThis differs from CreateShortDynamicLink in the following ways:\n - The request will also contain a name for the link (non unique name\n for the front end).\n - The response must be authenticated with an auth token (generated with\n the admin service account).\n - The link will appear in the FDL list of links in the console front end.\n\nThe Dynamic Link domain in the request must be owned by requester's\nFirebase project.", + "response": { + "$ref": "CreateManagedShortLinkResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/firebase" + ], + "parameters": {}, + "flatPath": "v1/managedShortLinks:create", + "path": "v1/managedShortLinks:create", + "id": "firebasedynamiclinks.managedShortLinks.create" + } + } + }, + "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.", + "httpMethod": "GET", + "parameterOrder": [ + "dynamicLink" + ], + "response": { + "$ref": "DynamicLinkStats" + }, + "parameters": { + "durationDays": { + "description": "The span of time requested in days.", + "format": "int64", + "type": "string", + "location": "query" + }, + "dynamicLink": { + "location": "path", + "description": "Dynamic Link URL. e.g. https://abcd.app.goo.gl/wxyz", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/firebase" + ], + "flatPath": "v1/{dynamicLink}/linkStats", + "id": "firebasedynamiclinks.getLinkStats", + "path": "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", + "request": { + "$ref": "GetIosPostInstallAttributionRequest" + }, + "description": "Get iOS strong/weak-match info for post-install attribution." + } + } + } + }, + "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." + }, + "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": { + "type": "string", + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "enum": [ + "1", + "2" + ], + "description": "V1 error format." + }, + "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": { + "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": { + "type": "boolean", + "default": "true", + "location": "query", + "description": "Pretty-print response." + }, + "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": "v1", + "baseUrl": "https://firebasedynamiclinks.googleapis.com/", + "kind": "discovery#restDescription", + "description": "Programmatically creates and manages Firebase Dynamic Links.", + "servicePath": "", + "basePath": "", + "revision": "20180507", + "documentationLink": "https://firebase.google.com/docs/dynamic-links/", + "id": "firebasedynamiclinks:v1", + "discoveryVersion": "v1", + "version_module": true } diff --git a/DiscoveryJson/firebaserules_v1.json b/DiscoveryJson/firebaserules_v1.json index 7622248f71..b47b5974d3 100644 --- a/DiscoveryJson/firebaserules_v1.json +++ b/DiscoveryJson/firebaserules_v1.json @@ -1,5 +1,181 @@ { + "discoveryVersion": "v1", + "version_module": true, "schemas": { + "File": { + "type": "object", + "properties": { + "fingerprint": { + "description": "Fingerprint (e.g. github sha) associated with the `File`.", + "format": "byte", + "type": "string" + }, + "name": { + "description": "File name.", + "type": "string" + }, + "content": { + "description": "Textual Content.", + "type": "string" + } + }, + "id": "File", + "description": "`File` containing source content." + }, + "FunctionCall": { + "description": "Represents a service-defined function call that was invoked during test\nexecution.", + "type": "object", + "properties": { + "function": { + "description": "Name of the function invoked.", + "type": "string" + }, + "args": { + "description": "The arguments that were provided to the function.", + "type": "array", + "items": { + "type": "any" + } + } + }, + "id": "FunctionCall" + }, + "ListReleasesResponse": { + "type": "object", + "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.", + "type": "array", + "items": { + "$ref": "Release" + } + } + }, + "id": "ListReleasesResponse", + "description": "The response for FirebaseRulesService.ListReleases." + }, + "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`.", + "type": "object", + "properties": { + "createTime": { + "description": "Time the release was created.\nOutput only.", + "format": "google-datetime", + "type": "string" + }, + "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" + }, + "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" + }, + "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": { + "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" + }, + "functionCalls": { + "type": "array", + "items": { + "$ref": "FunctionCall" + }, + "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`." + }, + "state": { + "enumDescriptions": [ + "Test state is not set.", + "Test is a success.", + "Test is a failure." + ], + "enum": [ + "STATE_UNSPECIFIED", + "SUCCESS", + "FAILURE" + ], + "description": "State of the test.", + "type": "string" + }, + "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" + } + } + }, + "id": "TestResult" + }, + "ListRulesetsResponse": { + "description": "The response for FirebaseRulesService.ListRulesets.", + "type": "object", + "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" + }, + "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": { "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", @@ -15,45 +191,45 @@ "id": "TestSuite" }, "UpdateReleaseRequest": { - "id": "UpdateReleaseRequest", - "description": "The request for FirebaseRulesService.UpdateReleasePatch.", - "type": "object", "properties": { + "release": { + "$ref": "Release", + "description": "`Release` to update." + }, "updateMask": { "description": "Specifies which fields to update.", "format": "google-fieldmask", "type": "string" - }, - "release": { - "$ref": "Release", - "description": "`Release` to update." } - } + }, + "id": "UpdateReleaseRequest", + "description": "The request for FirebaseRulesService.UpdateReleasePatch.", + "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" + "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 `{}`." }, "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": { - "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" - }, "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": { + "$ref": "Result", + "description": "The mock result of the function call." } }, "id": "FunctionMock" @@ -63,33 +239,12 @@ "description": "The response for FirebaseRulesService.GetReleaseExecutable", "type": "object", "properties": { - "executableVersion": { - "type": "string", - "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." - }, - "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": { - "description": "`Language` used to generate the executable bytes.", - "type": "string", "enumDescriptions": [ "Language unspecified. Defaults to FIREBASE_RULES.", "Firebase Rules language.", @@ -99,11 +254,32 @@ "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" + }, + "executable": { + "description": "Executable view of the `Ruleset` referenced by the `Release`.", + "format": "byte", + "type": "string" } } }, @@ -130,8 +306,8 @@ "type": "any" }, "undefined": { - "description": "The result is undefined, meaning the result could not be computed.", - "$ref": "Empty" + "$ref": "Empty", + "description": "The result is undefined, meaning the result could not be computed." } }, "id": "Result" @@ -140,11 +316,6 @@ "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": { - "line": { - "description": "Line number of the source fragment. 1-based.", - "format": "int32", - "type": "integer" - }, "column": { "description": "First column on the source line associated with the source fragment.", "format": "int32", @@ -153,53 +324,56 @@ "fileName": { "description": "Name of the `File`.", "type": "string" + }, + "line": { + "description": "Line number of the source fragment. 1-based.", + "format": "int32", + "type": "integer" } }, "id": "SourcePosition" }, "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" + "type": "any", + "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." }, "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.", "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": { - "enumDescriptions": [ - "Unspecified expectation.", - "Expect an allowed result.", - "Expect a denied result." - ], "enum": [ "EXPECTATION_UNSPECIFIED", "ALLOW", "DENY" ], "description": "Test expectation.", - "type": "string" + "type": "string", + "enumDescriptions": [ + "Unspecified expectation.", + "Expect an allowed result.", + "Expect a denied result." + ] }, "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" + "id": "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" }, "Ruleset": { + "id": "Ruleset", + "description": "`Ruleset` is an immutable copy of `Source` with a globally unique identifier\nand a creation time.", "type": "object", "properties": { - "source": { - "description": "`Source` for the `Ruleset`.", - "$ref": "Source" - }, "createTime": { "description": "Time the `Ruleset` was created.\nOutput only.", "format": "google-datetime", @@ -208,31 +382,31 @@ "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`." } - }, - "id": "Ruleset", - "description": "`Ruleset` is an immutable copy of `Source` with a globally unique identifier\nand a creation time." + } }, "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`." + "description": "Optional `Source` to be checked for correctness.\n\nThis field must not be set when the resource name refers to a `Ruleset`.", + "$ref": "Source" }, "testSuite": { "$ref": "TestSuite", "description": "Inline `TestSuite` to run." } }, - "id": "TestRulesetRequest", - "description": "The request for FirebaseRulesService.TestRuleset." + "id": "TestRulesetRequest" }, "Issue": { - "type": "object", "properties": { "severity": { - "description": "The severity of the issue.", "type": "string", "enumDescriptions": [ "An unspecified severity.", @@ -245,200 +419,28 @@ "DEPRECATION", "WARNING", "ERROR" - ] + ], + "description": "The severity of the issue." }, "description": { "description": "Short error description.", "type": "string" }, - "sourcePosition": { - "description": "Position of the issue in the `Source`.", - "$ref": "SourcePosition" - } - }, - "id": "Issue", - "description": "Issues include warnings, errors, and deprecation notices." - }, - "File": { - "description": "`File` containing source content.", - "type": "object", - "properties": { - "fingerprint": { - "type": "string", - "description": "Fingerprint (e.g. github sha) associated with the `File`.", - "format": "byte" - }, - "name": { - "description": "File name.", - "type": "string" - }, - "content": { - "description": "Textual Content.", - "type": "string" - } - }, - "id": "File" - }, - "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" - }, - "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": { - "description": "Name of the function invoked.", - "type": "string" - } - }, - "id": "FunctionCall" - }, - "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`.", - "type": "object", - "properties": { - "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" - }, - "createTime": { - "type": "string", - "description": "Time the release was created.\nOutput only.", - "format": "google-datetime" - } - }, - "id": "Release" - }, - "TestRulesetResponse": { - "description": "The response for FirebaseRulesService.TestRuleset.", - "type": "object", - "properties": { - "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" - } - }, - "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" - } - } - }, - "id": "TestRulesetResponse" - }, - "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": { - "type": "string", - "enumDescriptions": [ - "Test state is not set.", - "Test is a success.", - "Test is a failure." - ], - "enum": [ - "STATE_UNSPECIFIED", - "SUCCESS", - "FAILURE" - ], - "description": "State of the test." - }, - "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": { - "$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 }`" - } - }, - "id": "TestResult" - }, - "ListRulesetsResponse": { - "properties": { - "rulesets": { - "description": "List of `Ruleset` instances.", - "type": "array", - "items": { - "$ref": "Ruleset" - } - }, - "nextPageToken": { - "description": "The pagination token to retrieve the next page of results. If the value is\nempty, no further results remain.", - "type": "string" - } - }, - "id": "ListRulesetsResponse", - "description": "The response for FirebaseRulesService.ListRulesets.", - "type": "object" - }, - "Arg": { - "type": "object", - "properties": { - "exactValue": { - "description": "Argument exactly matches value provided.", - "type": "any" - }, - "anyValue": { - "description": "Argument matches any value provided.", - "$ref": "Empty" + "sourcePosition": { + "$ref": "SourcePosition", + "description": "Position of the issue in the `Source`." } }, - "id": "Arg", - "description": "Arg matchers for the mock function." + "id": "Issue", + "description": "Issues include warnings, errors, and deprecation notices.", + "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" }, + "protocol": "rest", "canonicalName": "Firebase Rules", "auth": { "oauth2": { @@ -479,11 +481,11 @@ ], "parameters": { "name": { + "location": "path", "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" + "pattern": "^projects/.+$" } }, "flatPath": "v1/projects/{projectsId}:test", @@ -499,17 +501,6 @@ "rulesets": { "methods": { "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/firebase" - ], "parameters": { "name": { "description": "Resource name for the ruleset to delete.\n\nFormat: `projects/{project_id}/rulesets/{ruleset_id}`", @@ -519,10 +510,21 @@ "location": "path" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/firebase" + ], "flatPath": "v1/projects/{projectsId}/rulesets/{rulesetsId}", "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." + "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" }, "get": { "httpMethod": "GET", @@ -534,11 +536,11 @@ ], "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", - "description": "Resource name for the ruleset to get.\n\nFormat: `projects/{project_id}/rulesets/{ruleset_id}`" + "location": "path" } }, "scopes": [ @@ -553,36 +555,36 @@ }, "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.", - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], "response": { "$ref": "ListRulesetsResponse" }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", "parameters": { + "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", + "type": "integer", + "location": "query" + }, "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" + "type": "string", + "location": "query" }, "name": { - "description": "Resource name for the project.\n\nFormat: `projects/{project_id}`", "required": true, "type": "string", "pattern": "^projects/[^/]+$", - "location": "path" + "location": "path", + "description": "Resource name for the project.\n\nFormat: `projects/{project_id}`" }, "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" } }, "scopes": [ @@ -591,14 +593,10 @@ "https://www.googleapis.com/auth/firebase.readonly" ], "flatPath": "v1/projects/{projectsId}/rulesets", - "id": "firebaserules.projects.rulesets.list", - "path": "v1/{+name}/rulesets" + "path": "v1/{+name}/rulesets", + "id": "firebaserules.projects.rulesets.list" }, "create": { - "request": { - "$ref": "Ruleset" - }, - "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.", "response": { "$ref": "Ruleset" }, @@ -606,58 +604,90 @@ "name" ], "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/firebase" - ], "parameters": { "name": { - "location": "path", "description": "Resource name for Project which owns this `Ruleset`.\n\nFormat: `projects/{project_id}`", "required": true, "type": "string", - "pattern": "^projects/[^/]+$" + "pattern": "^projects/[^/]+$", + "location": "path" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/firebase" + ], "flatPath": "v1/projects/{projectsId}/rulesets", "path": "v1/{+name}/rulesets", - "id": "firebaserules.projects.rulesets.create" + "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" + } } } }, "releases": { "methods": { - "patch": { + "create": { + "response": { + "$ref": "Release" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/firebase" + ], "parameters": { "name": { - "pattern": "^projects/[^/]+/releases/.+$", + "pattern": "^projects/[^/]+$", "location": "path", "description": "Resource name for the project which owns this `Release`.\n\nFormat: `projects/{project_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.patch", + "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." + }, + "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" }, + "httpMethod": "PATCH", + "parameterOrder": [ + "name" + ], "response": { "$ref": "Release" }, - "parameterOrder": [ - "name" + "parameters": { + "name": { + "pattern": "^projects/[^/]+/releases/.+$", + "location": "path", + "description": "Resource name for the project which owns this `Release`.\n\nFormat: `projects/{project_id}`", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/firebase" ], - "httpMethod": "PATCH" + "flatPath": "v1/projects/{projectsId}/releases/{releasesId}", + "id": "firebaserules.projects.releases.patch", + "path": "v1/{+name}" }, "get": { - "description": "Get a `Release` by name.", "response": { "$ref": "Release" }, @@ -681,9 +711,13 @@ ], "flatPath": "v1/projects/{projectsId}/releases/{releasesId}", "path": "v1/{+name}", - "id": "firebaserules.projects.releases.get" + "id": "firebaserules.projects.releases.get", + "description": "Get a `Release` by name." }, "getExecutable": { + "path": "v1/{+name}:getExecutable", + "id": "firebaserules.projects.releases.getExecutable", + "description": "Get the `Release` executable to use when enforcing rules.", "response": { "$ref": "GetReleaseExecutableResponse" }, @@ -691,19 +725,7 @@ "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 of the `Release`.\n\nFormat: `projects/{project_id}/releases/{release_id}`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/releases/.+$", - "location": "path" - }, "executableVersion": { "location": "query", "enum": [ @@ -713,14 +735,27 @@ ], "description": "The requested runtime executable version.\nDefaults to FIREBASE_RULES_EXECUTABLE_V1", "type": "string" + }, + "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", - "path": "v1/{+name}:getExecutable", - "id": "firebaserules.projects.releases.getExecutable", - "description": "Get the `Release` executable to use when enforcing rules." + "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}/releases/{releasesId}:getExecutable" }, "delete": { + "flatPath": "v1/projects/{projectsId}/releases/{releasesId}", + "path": "v1/{+name}", + "id": "firebaserules.projects.releases.delete", + "description": "Delete a `Release` by resource name.", "response": { "$ref": "Empty" }, @@ -728,23 +763,19 @@ "name" ], "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/firebase" - ], "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" + "type": "string", + "pattern": "^projects/[^/]+/releases/.+$" } }, - "flatPath": "v1/projects/{projectsId}/releases/{releasesId}", - "path": "v1/{+name}", - "id": "firebaserules.projects.releases.delete", - "description": "Delete a `Release` by resource name." + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/firebase" + ] }, "list": { "response": { @@ -761,62 +792,33 @@ ], "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`", "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`" + "location": "query" }, "name": { + "location": "path", "description": "Resource name for the project.\n\nFormat: `projects/{project_id}`", "required": true, "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+$" }, "pageToken": { + "description": "Next page token for the next batch of `Release` instances.", "type": "string", - "location": "query", - "description": "Next page token for the next batch of `Release` instances." + "location": "query" }, "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", - "location": "query" + "type": "integer" } }, "flatPath": "v1/projects/{projectsId}/releases", "path": "v1/{+name}/releases", "id": "firebaserules.projects.releases.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." - }, - "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.", - "request": { - "$ref": "Release" - }, - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Release" - }, - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "Resource name for the project which owns this `Release`.\n\nFormat: `projects/{project_id}`" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/firebase" - ], - "flatPath": "v1/projects/{projectsId}/releases", - "id": "firebaserules.projects.releases.create", - "path": "v1/{+name}/releases" } } } @@ -824,20 +826,10 @@ } }, "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": { + "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.", - "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." }, "pp": { "location": "query", @@ -846,9 +838,9 @@ "default": "true" }, "oauth_token": { + "location": "query", "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" + "type": "string" }, "bearer_token": { "location": "query", @@ -866,37 +858,35 @@ "type": "boolean", "default": "true" }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", + "uploadType": { "type": "string", - "location": "query" + "location": "query", + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "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" + "type": "string", + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ] }, "callback": { - "description": "JSONP", "type": "string", - "location": "query" + "location": "query", + "description": "JSONP" }, "alt": { - "description": "Data format for response.", - "default": "json", "enum": [ "json", "media", @@ -908,7 +898,19 @@ "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": { + "type": "string", + "location": "query", + "description": "OAuth access token." } }, "version": "v1", @@ -917,9 +919,7 @@ "description": "Creates and manages rules that determine when a Firebase Rules-enabled service should permit a request.\n", "servicePath": "", "basePath": "", - "revision": "20180423", - "documentationLink": "https://firebase.google.com/docs/storage/security", "id": "firebaserules:v1", - "discoveryVersion": "v1", - "version_module": true + "documentationLink": "https://firebase.google.com/docs/storage/security", + "revision": "20180423" } diff --git a/DiscoveryJson/firestore_v1beta1.json b/DiscoveryJson/firestore_v1beta1.json index f1d45664b4..31be04c9b3 100644 --- a/DiscoveryJson/firestore_v1beta1.json +++ b/DiscoveryJson/firestore_v1beta1.json @@ -1,1252 +1,4 @@ { - "servicePath": "", - "kind": "discovery#restDescription", - "description": "", - "basePath": "", - "id": "firestore:v1beta1", - "documentationLink": "https://cloud.google.com/firestore", - "revision": "20180501", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "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" - }, - "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 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" - }, - "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": { - "removedTargetIds": { - "description": "A set of target IDs for targets that previously matched this document.", - "type": "array", - "items": { - "format": "int32", - "type": "integer" - } - }, - "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" - } - }, - "id": "DocumentRemove" - }, - "ListDocumentsResponse": { - "description": "The response for Firestore.ListDocuments.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "The next page token.", - "type": "string" - }, - "documents": { - "description": "The Documents found.", - "type": "array", - "items": { - "$ref": "Document" - } - } - }, - "id": "ListDocumentsResponse" - }, - "RollbackRequest": { - "properties": { - "transaction": { - "description": "The transaction to roll back.", - "format": "byte", - "type": "string" - } - }, - "id": "RollbackRequest", - "description": "The request for Firestore.Rollback.", - "type": "object" - }, - "CompositeFilter": { - "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", - "description": "A filter that merges multiple other filters using the given operator.", - "type": "object" - }, - "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.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "DocumentsTarget", - "description": "A target specified by a set of documents names.", - "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.", - "type": "object", - "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" - }, - "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": { - "enumDescriptions": [ - "Unspecified. This value must not be used.", - "The time at which the server processed the request, with millisecond\nprecision." - ], - "enum": [ - "SERVER_VALUE_UNSPECIFIED", - "REQUEST_TIME" - ], - "description": "Sets the field to the given server value.", - "type": "string" - } - }, - "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": { - "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" - }, - "Order": { - "properties": { - "direction": { - "enumDescriptions": [ - "Unspecified.", - "Ascending.", - "Descending." - ], - "enum": [ - "DIRECTION_UNSPECIFIED", - "ASCENDING", - "DESCENDING" - ], - "description": "The direction to order by. Defaults to `ASCENDING`.", - "type": "string" - }, - "field": { - "$ref": "FieldReference", - "description": "The field to order by." - } - }, - "id": "Order", - "description": "An order on a field.", - "type": "object" - }, - "WriteResponse": { - "properties": { - "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", - "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" - } - }, - "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.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "WriteResponse", - "description": "The response for Firestore.Write.", - "type": "object" - }, - "FieldFilter": { - "properties": { - "value": { - "description": "The value to compare to.", - "$ref": "Value" - }, - "op": { - "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" - ], - "description": "The operator to filter by.", - "type": "string" - }, - "field": { - "description": "The field to filter by.", - "$ref": "FieldReference" - } - }, - "id": "FieldFilter", - "description": "A filter on a specific field.", - "type": "object" - }, - "TargetChange": { - "description": "Targets being watched have changed.", - "type": "object", - "properties": { - "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" - }, - "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" - } - }, - "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" - }, - "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" - } - }, - "id": "TargetChange" - }, - "MapValue": { - "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", - "description": "A map value.", - "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.", - "type": "object", - "properties": { - "removedTargetIds": { - "description": "A set of target IDs for targets that previously matched this entity.", - "type": "array", - "items": { - "format": "int32", - "type": "integer" - } - }, - "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" - } - }, - "id": "DocumentDelete" - }, - "BeginTransactionResponse": { - "description": "The response for Firestore.BeginTransaction.", - "type": "object", - "properties": { - "transaction": { - "description": "The transaction that was started.", - "format": "byte", - "type": "string" - } - }, - "id": "BeginTransactionResponse" - }, - "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": { - "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 =." - ] - } - }, - "id": "IndexField", - "description": "A field of an index.", - "type": "object" - }, - "RunQueryResponse": { - "description": "The response for Firestore.RunQuery.", - "type": "object", - "properties": { - "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" - }, - "document": { - "$ref": "Document", - "description": "A query result.\nNot set when reporting partial progress." - } - }, - "id": "RunQueryResponse" - }, - "BeginTransactionRequest": { - "description": "The request for Firestore.BeginTransaction.", - "type": "object", - "properties": { - "options": { - "description": "The options for the transaction.\nDefaults to a read-write transaction.", - "$ref": "TransactionOptions" - } - }, - "id": "BeginTransactionRequest" - }, - "CommitRequest": { - "description": "The request for Firestore.Commit.", - "type": "object", - "properties": { - "transaction": { - "description": "If set, applies all writes in this transaction, and commits it.", - "format": "byte", - "type": "string" - }, - "writes": { - "description": "The writes to apply.\n\nAlways executed atomically and in order.", - "type": "array", - "items": { - "$ref": "Write" - } - } - }, - "id": "CommitRequest" - }, - "ListenRequest": { - "description": "A request for Firestore.Listen", - "type": "object", - "properties": { - "addTarget": { - "$ref": "Target", - "description": "A target to add to this stream." - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Labels associated with this target change.", - "type": "object" - }, - "removeTarget": { - "description": "The ID of a target to remove from this stream.", - "format": "int32", - "type": "integer" - } - }, - "id": "ListenRequest" - }, - "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" - } - }, - "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" - }, - "CollectionSelector": { - "description": "A selection of a collection, such as `messages as m1`.", - "type": "object", - "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.", - "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": { - "description": "An index definition.", - "type": "object", - "properties": { - "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" - }, - "name": { - "description": "The resource name of the index.\nOutput only.", - "type": "string" - }, - "collectionId": { - "description": "The collection ID to which this index applies. Required.", - "type": "string" - } - }, - "id": "Index" - }, - "StructuredQuery": { - "description": "A Firestore query.", - "type": "object", - "properties": { - "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" - }, - "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" - }, - "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" - }, - "from": { - "description": "The collections to query.", - "type": "array", - "items": { - "$ref": "CollectionSelector" - } - }, - "endAt": { - "description": "A end point for the query results.", - "$ref": "Cursor" - }, - "startAt": { - "description": "A starting point for the query results.", - "$ref": "Cursor" - }, - "where": { - "$ref": "Filter", - "description": "The filter to apply." - } - }, - "id": "StructuredQuery" - }, - "UnaryFilter": { - "description": "A filter with a single operand.", - "type": "object", - "properties": { - "op": { - "enum": [ - "OPERATOR_UNSPECIFIED", - "IS_NAN", - "IS_NULL" - ], - "description": "The unary operator to apply.", - "type": "string", - "enumDescriptions": [ - "Unspecified. This value must not be used.", - "Test if a field is equal to NaN.", - "Test if an exprestion evaluates to Null." - ] - }, - "field": { - "description": "The field to which to apply the operator.", - "$ref": "FieldReference" - } - }, - "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": { - "$ref": "UnaryFilter", - "description": "A filter that takes exactly one argument." - } - }, - "id": "Filter" - }, - "BatchGetDocumentsResponse": { - "description": "The streamed response for Firestore.BatchGetDocuments.", - "type": "object", - "properties": { - "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" - }, - "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.", - "format": "google-datetime", - "type": "string" - }, - "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" - } - }, - "id": "BatchGetDocumentsResponse" - }, - "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", - "properties": { - "streamId": { - "description": "The ID of the write stream to resume.\nThis may only be set in the first message. When left empty, a new write\nstream will be created.", - "type": "string" - }, - "streamToken": { - "description": "A stream token that was previously sent by the server.\n\nThe client should set this field to the token from the most recent\nWriteResponse it has received. This acknowledges that the client has\nreceived responses up to this token. After sending this token, earlier\ntokens may not be used anymore.\n\nThe server may close the stream if there are too many unacknowledged\nresponses.\n\nLeave this field unset when creating a new stream. To resume a stream at\na specific point, set this field and the `stream_id` field.\n\nLeave this field unset when creating a new stream.", - "format": "byte", - "type": "string" - }, - "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" - } - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Labels associated with this write request.", - "type": "object" - } - }, - "id": "WriteRequest" - }, - "Target": { - "properties": { - "query": { - "description": "A target specified by a query.", - "$ref": "QueryTarget" - }, - "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", - "description": "A specification of a set of documents to listen to.", - "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" - }, - "Precondition": { - "description": "A precondition on a document, used for conditional operations.", - "type": "object", - "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" - } - }, - "id": "Precondition" - }, - "RunQueryRequest": { - "properties": { - "transaction": { - "description": "Reads documents in a transaction.", - "format": "byte", - "type": "string" - }, - "structuredQuery": { - "description": "A structured query.", - "$ref": "StructuredQuery" - }, - "readTime": { - "description": "Reads documents as they were at the given time.\nThis may not be older than 60 seconds.", - "format": "google-datetime", - "type": "string" - }, - "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" - } - }, - "id": "RunQueryRequest", - "description": "The request for Firestore.RunQuery.", - "type": "object" - }, - "ListIndexesResponse": { - "description": "The response for FirestoreAdmin.ListIndexes.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" - }, - "indexes": { - "description": "The indexes.", - "type": "array", - "items": { - "$ref": "Index" - } - } - }, - "id": "ListIndexesResponse" - }, - "TransactionOptions": { - "description": "Options for creating a new transaction.", - "type": "object", - "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." - } - }, - "id": "TransactionOptions" - }, - "FieldReference": { - "properties": { - "fieldPath": { - "type": "string" - } - }, - "id": "FieldReference", - "description": "A reference to a field, such as `max(messages.time) as max_time`.", - "type": "object" - }, - "ListenResponse": { - "properties": { - "documentChange": { - "description": "A Document has changed.", - "$ref": "DocumentChange" - }, - "targetChange": { - "$ref": "TargetChange", - "description": "Targets have changed." - }, - "documentRemove": { - "description": "A Document has been removed from a target (because it is no longer\nrelevant to that target).", - "$ref": "DocumentRemove" - }, - "documentDelete": { - "description": "A Document has been deleted.", - "$ref": "DocumentDelete" - }, - "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." - } - }, - "id": "ListenResponse", - "description": "The response for Firestore.Listen.", - "type": "object" - }, - "ListCollectionIdsRequest": { - "properties": { - "pageToken": { - "description": "A page token. Must be a value from\nListCollectionIdsResponse.", - "type": "string" - }, - "pageSize": { - "description": "The maximum number of results to return.", - "format": "int32", - "type": "integer" - } - }, - "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": { - "targetId": { - "description": "The target ID to which this filter applies.", - "format": "int32", - "type": "integer" - }, - "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" - } - }, - "id": "ExistenceFilter" - }, - "ReadOnly": { - "description": "Options for a transaction that can only be used to read documents.", - "type": "object", - "properties": { - "readTime": { - "description": "Reads documents at the given time.\nThis may not be older than 60 seconds.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "ReadOnly" - }, - "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": { - "description": "A message that can hold any of the supported value types.", - "type": "object", - "properties": { - "timestampValue": { - "description": "A timestamp value.\n\nPrecise only to microseconds. When stored, any additional precision is\nrounded down.", - "format": "google-datetime", - "type": "string" - }, - "nullValue": { - "enum": [ - "NULL_VALUE" - ], - "description": "A null value.", - "type": "string", - "enumDescriptions": [ - "Null value." - ] - }, - "booleanValue": { - "description": "A boolean value.", - "type": "boolean" - }, - "mapValue": { - "description": "A map value.", - "$ref": "MapValue" - }, - "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" - }, - "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" - }, - "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" - }, - "referenceValue": { - "description": "A reference to a document. For example:\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.", - "type": "string" - }, - "arrayValue": { - "description": "An array value.\n\nCannot directly contain another array value, though can contain an\nmap which contains another array.", - "$ref": "ArrayValue" - }, - "doubleValue": { - "description": "A double value.", - "format": "double", - "type": "number" - } - }, - "id": "Value" - }, - "Write": { - "properties": { - "delete": { - "description": "A document name to delete. In the format:\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.", - "type": "string" - }, - "updateMask": { - "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.", - "$ref": "DocumentMask" - }, - "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." - }, - "update": { - "description": "A document to write.", - "$ref": "Document" - }, - "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." - } - }, - "id": "Write", - "description": "A write on a document.", - "type": "object" - }, - "Cursor": { - "description": "A position in a query result set.", - "type": "object", - "properties": { - "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" - } - }, - "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" - } - }, - "id": "Cursor" - }, - "ReadWrite": { - "properties": { - "retryTransaction": { - "description": "An optional transaction to retry.", - "format": "byte", - "type": "string" - } - }, - "id": "ReadWrite", - "description": "Options for a transaction that can be used to read and write documents.", - "type": "object" - }, - "BatchGetDocumentsRequest": { - "description": "The request for Firestore.BatchGetDocuments.", - "type": "object", - "properties": { - "readTime": { - "description": "Reads documents as they were at the given time.\nThis may not be older than 60 seconds.", - "format": "google-datetime", - "type": "string" - }, - "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" - }, - "mask": { - "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.", - "$ref": "DocumentMask" - }, - "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" - } - } - }, - "id": "BatchGetDocumentsRequest" - }, - "QueryTarget": { - "description": "A target specified by a query.", - "type": "object", - "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" - }, - "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" - } - }, - "id": "Operation" - }, - "DocumentChange": { - "properties": { - "removedTargetIds": { - "description": "A set of target IDs for targets that no longer match this document.", - "type": "array", - "items": { - "format": "int32", - "type": "integer" - } - }, - "document": { - "$ref": "Document", - "description": "The new state of the Document.\n\nIf `mask` is set, contains only fields that were updated or added." - }, - "targetIds": { - "description": "A set of target IDs of targets that match this document.", - "type": "array", - "items": { - "format": "int32", - "type": "integer" - } - } - }, - "id": "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" - } - }, - "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": "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, "title": "Cloud Firestore API", @@ -1256,51 +8,80 @@ "resources": { "databases": { "resources": { - "indexes": { + "documents": { "methods": { - "create": { + "write": { + "request": { + "$ref": "WriteRequest" + }, + "description": "Streams batches of document updates and deletes, in order.", "response": { - "$ref": "Operation" + "$ref": "WriteResponse" }, "parameterOrder": [ - "parent" + "database" ], "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ], "parameters": { - "parent": { - "pattern": "^projects/[^/]+/databases/[^/]+$", + "database": { "location": "path", - "description": "The name of the database this index will apply to. For example:\n`projects/{project_id}/databases/{database_id}`", + "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" + "type": "string", + "pattern": "^projects/[^/]+/databases/[^/]+$" } }, + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents:write", + "path": "v1beta1/{+database}/documents:write", + "id": "firestore.projects.databases.documents.write" + }, + "beginTransaction": { + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents:beginTransaction", + "path": "v1beta1/{+database}/documents:beginTransaction", + "id": "firestore.projects.databases.documents.beginTransaction", + "request": { + "$ref": "BeginTransactionRequest" + }, + "description": "Starts a new transaction.", + "response": { + "$ref": "BeginTransactionResponse" + }, + "parameterOrder": [ + "database" + ], + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/datastore" ], - "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/indexes", - "path": "v1beta1/{+parent}/indexes", - "id": "firestore.projects.databases.indexes.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.", - "request": { - "$ref": "Index" + "parameters": { + "database": { + "location": "path", + "description": "The database name. In the format:\n`projects/{project_id}/databases/{database_id}`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/databases/[^/]+$" + } } }, - "delete": { + "batchGet": { "response": { - "$ref": "Empty" + "$ref": "BatchGetDocumentsResponse" }, "parameterOrder": [ - "name" + "database" ], - "httpMethod": "DELETE", + "httpMethod": "POST", "parameters": { - "name": { - "description": "The index name. For example:\n`projects/{project_id}/databases/{database_id}/indexes/{index_id}`", + "database": { + "description": "The database name. In the format:\n`projects/{project_id}/databases/{database_id}`.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/databases/[^/]+/indexes/[^/]+$", + "pattern": "^projects/[^/]+/databases/[^/]+$", "location": "path" } }, @@ -1308,149 +89,169 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/datastore" ], - "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/indexes/{indexesId}", - "path": "v1beta1/{+name}", - "id": "firestore.projects.databases.indexes.delete", - "description": "Deletes an index." + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents:batchGet", + "path": "v1beta1/{+database}/documents:batchGet", + "id": "firestore.projects.databases.documents.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.", + "request": { + "$ref": "BatchGetDocumentsRequest" + } }, "list": { "response": { - "$ref": "ListIndexesResponse" + "$ref": "ListDocumentsResponse" }, "parameterOrder": [ - "parent" + "parent", + "collectionId" ], "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ], "parameters": { - "pageToken": { - "location": "query", - "description": "The standard List page token.", - "type": "string" + "collectionId": { + "description": "The collection ID, relative to `parent`, to list. For example: `chatrooms`\nor `messages`.", + "required": true, + "type": "string", + "location": "path" }, "pageSize": { - "description": "The standard List page size.", + "description": "The maximum number of documents to return.", "format": "int32", "type": "integer", "location": "query" }, + "transaction": { + "description": "Reads documents in a transaction.", + "format": "byte", + "type": "string", + "location": "query" + }, "parent": { - "description": "The database name. For example:\n`projects/{project_id}/databases/{database_id}`", + "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" + }, + "orderBy": { + "location": "query", + "description": "The order to sort results by. For example: `priority desc, name`.", + "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", - "pattern": "^projects/[^/]+/databases/[^/]+$", - "location": "path" + "location": "query" }, - "filter": { + "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`.", + "type": "boolean", + "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" + }, + "pageToken": { "location": "query", + "description": "The `next_page_token` value returned from a previous List request, if any.", "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" - ], - "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/indexes", - "path": "v1beta1/{+parent}/indexes", - "id": "firestore.projects.databases.indexes.list", - "description": "Lists the indexes that match the specified filters." + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents/{documentsId}/{documentsId1}/{collectionId}", + "path": "v1beta1/{+parent}/{collectionId}", + "id": "firestore.projects.databases.documents.list", + "description": "Lists documents." }, - "get": { + "runQuery": { "response": { - "$ref": "Index" + "$ref": "RunQueryResponse" }, "parameterOrder": [ - "name" + "parent" ], - "httpMethod": "GET", - "parameters": { - "name": { - "description": "The name of the index. For example:\n`projects/{project_id}/databases/{database_id}/indexes/{index_id}`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/databases/[^/]+/indexes/[^/]+$", - "location": "path" - } - }, + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/datastore" ], - "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/indexes/{indexesId}", - "path": "v1beta1/{+name}", - "id": "firestore.projects.databases.indexes.get", - "description": "Gets an index." - } - } - }, - "documents": { - "methods": { - "write": { - "httpMethod": "POST", - "parameterOrder": [ - "database" - ], - "response": { - "$ref": "WriteResponse" - }, "parameters": { - "database": { - "pattern": "^projects/[^/]+/databases/[^/]+$", + "parent": { "location": "path", - "description": "The database name. In the format:\n`projects/{project_id}/databases/{database_id}`.\nThis is only required in the first message.", + "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" + "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:write", - "id": "firestore.projects.databases.documents.write", - "path": "v1beta1/{+database}/documents:write", - "description": "Streams batches of document updates and deletes, in order.", + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents/{documentsId}/{documentsId1}:runQuery", + "path": "v1beta1/{+parent}:runQuery", + "id": "firestore.projects.databases.documents.runQuery", "request": { - "$ref": "WriteRequest" - } + "$ref": "RunQueryRequest" + }, + "description": "Runs a query." }, - "beginTransaction": { + "createDocument": { "response": { - "$ref": "BeginTransactionResponse" + "$ref": "Document" }, "parameterOrder": [ - "database" + "parent", + "collectionId" ], "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}`.", + "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" + }, + "collectionId": { + "location": "path", + "description": "The collection ID, relative to `parent`, to list. For example: `chatrooms`.", + "required": 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}`", "required": true, "type": "string", - "pattern": "^projects/[^/]+/databases/[^/]+$", + "pattern": "^projects/[^/]+/databases/[^/]+/documents/.+$", "location": "path" + }, + "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:beginTransaction", - "path": "v1beta1/{+database}/documents:beginTransaction", - "id": "firestore.projects.databases.documents.beginTransaction", - "description": "Starts a new transaction.", + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents/{documentsId}/{collectionId}", + "path": "v1beta1/{+parent}/{collectionId}", + "id": "firestore.projects.databases.documents.createDocument", "request": { - "$ref": "BeginTransactionRequest" - } + "$ref": "Document" + }, + "description": "Creates a new document." }, - "batchGet": { - "path": "v1beta1/{+database}/documents:batchGet", - "id": "firestore.projects.databases.documents.batchGet", + "listen": { "request": { - "$ref": "BatchGetDocumentsRequest" + "$ref": "ListenRequest" }, - "description": "Gets multiple documents.\n\nDocuments returned by this method are not guaranteed to be returned in the\nsame order that they were requested.", + "description": "Listens to changes.", "response": { - "$ref": "BatchGetDocumentsResponse" + "$ref": "ListenResponse" }, "parameterOrder": [ "database" @@ -1469,159 +270,113 @@ "location": "path" } }, - "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents:batchGet" + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents:listen", + "path": "v1beta1/{+database}/documents:listen", + "id": "firestore.projects.databases.documents.listen" }, - "list": { + "patch": { + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents/{documentsId}/{documentsId1}", + "path": "v1beta1/{+name}", + "id": "firestore.projects.databases.documents.patch", + "request": { + "$ref": "Document" + }, + "description": "Updates or inserts a document.", "response": { - "$ref": "ListDocumentsResponse" + "$ref": "Document" }, "parameterOrder": [ - "parent", - "collectionId" + "name" ], - "httpMethod": "GET", + "httpMethod": "PATCH", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/datastore" ], "parameters": { - "orderBy": { + "currentDocument.updateTime": { "location": "query", - "description": "The order to sort results by. For example: `priority desc, name`.", - "type": "string" - }, - "readTime": { - "description": "Reads documents as they were at the given time.\nThis may not be older than 60 seconds.", + "description": "When set, the target document must exist and have been last updated at\nthat time.", "format": "google-datetime", - "type": "string", - "location": "query" + "type": "string" }, - "showMissing": { + "currentDocument.exists": { "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`.", + "description": "When set to `true`, the target document must exist.\nWhen set to `false`, the target document must not exist.", "type": "boolean" }, - "pageToken": { - "description": "The `next_page_token` value returned from a previous List request, if any.", - "type": "string", - "location": "query" + "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" }, - "mask.fieldPaths": { - "repeated": true, + "updateMask.fieldPaths": { "location": "query", "description": "The list of field paths in the mask. See Document.fields for a field\npath syntax reference.", - "type": "string" - }, - "collectionId": { - "description": "The collection ID, relative to `parent`, to list. For example: `chatrooms`\nor `messages`.", - "required": true, "type": "string", - "location": "path" - }, - "pageSize": { - "location": "query", - "description": "The maximum number of documents to return.", - "format": "int32", - "type": "integer" + "repeated": true }, - "transaction": { - "description": "Reads documents in a transaction.", - "format": "byte", + "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" - }, - "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}/{collectionId}", - "path": "v1beta1/{+parent}/{collectionId}", - "id": "firestore.projects.databases.documents.list", - "description": "Lists documents." + } }, - "runQuery": { - "path": "v1beta1/{+parent}:runQuery", - "id": "firestore.projects.databases.documents.runQuery", - "description": "Runs a query.", - "request": { - "$ref": "RunQueryRequest" - }, + "get": { + "description": "Gets a single document.", "response": { - "$ref": "RunQueryResponse" + "$ref": "Document" }, "parameterOrder": [ - "parent" + "name" ], - "httpMethod": "POST", - "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" - } - }, + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/datastore" ], - "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents/{documentsId}/{documentsId1}:runQuery" - }, - "createDocument": { - "httpMethod": "POST", - "parameterOrder": [ - "parent", - "collectionId" - ], - "response": { - "$ref": "Document" - }, "parameters": { - "mask.fieldPaths": { - "repeated": true, - "location": "query", - "description": "The list of field paths in the mask. See Document.fields for a field\npath syntax reference.", - "type": "string" + "transaction": { + "description": "Reads the document in a transaction.", + "format": "byte", + "type": "string", + "location": "query" }, - "collectionId": { - "description": "The collection ID, relative to `parent`, to list. For example: `chatrooms`.", + "name": { + "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/[^/]+/.+$", "location": "path" }, - "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" + "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 }, - "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.", + "readTime": { + "description": "Reads the version of the document at the given time.\nThis may not be older than 60 seconds.", + "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}/{collectionId}", - "id": "firestore.projects.databases.documents.createDocument", - "path": "v1beta1/{+parent}/{collectionId}", - "description": "Creates a new document.", - "request": { - "$ref": "Document" - } + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents/{documentsId}/{documentsId1}", + "path": "v1beta1/{+name}", + "id": "firestore.projects.databases.documents.get" }, - "listen": { + "commit": { + "description": "Commits a transaction, while optionally updating documents.", + "request": { + "$ref": "CommitRequest" + }, "response": { - "$ref": "ListenResponse" + "$ref": "CommitResponse" }, "parameterOrder": [ "database" @@ -1640,329 +395,1574 @@ "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", - "description": "Listens to changes.", - "request": { - "$ref": "ListenRequest" - } + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents:commit", + "path": "v1beta1/{+database}/documents:commit", + "id": "firestore.projects.databases.documents.commit" }, - "patch": { + "delete": { + "description": "Deletes a document.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "parameters": { + "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" + }, + "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" + }, + "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" + } + }, + "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", + "id": "firestore.projects.databases.documents.delete" + }, + "listCollectionIds": { + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents/{documentsId}/{documentsId1}:listCollectionIds", + "path": "v1beta1/{+parent}:listCollectionIds", + "id": "firestore.projects.databases.documents.listCollectionIds", "request": { - "$ref": "Document" + "$ref": "ListCollectionIdsRequest" }, - "description": "Updates or inserts a document.", + "description": "Lists all the collection IDs underneath a document.", "response": { - "$ref": "Document" + "$ref": "ListCollectionIdsResponse" }, "parameterOrder": [ - "name" + "parent" ], - "httpMethod": "PATCH", + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/datastore" ], "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": { - "description": "The resource name of the document, for example\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.", + "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`", "required": true, "type": "string", "pattern": "^projects/[^/]+/databases/[^/]+/documents/[^/]+/.+$", "location": "path" - }, - "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": { - "repeated": true, - "location": "query", - "description": "The list of field paths in the mask. See Document.fields for a field\npath syntax reference.", - "type": "string" - }, - "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" } - }, - "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents/{documentsId}/{documentsId1}" + } }, - "get": { + "rollback": { "response": { - "$ref": "Document" + "$ref": "Empty" }, "parameterOrder": [ - "name" + "database" ], - "httpMethod": "GET", + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/datastore" ], "parameters": { - "name": { - "pattern": "^projects/[^/]+/databases/[^/]+/documents/[^/]+/.+$", + "database": { "location": "path", - "description": "The resource name of the Document to get. In the format:\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.", + "description": "The database name. In the format:\n`projects/{project_id}/databases/{database_id}`.", "required": true, - "type": "string" - }, - "mask.fieldPaths": { - "repeated": true, - "location": "query", - "description": "The list of field paths in the mask. See Document.fields for a field\npath syntax reference.", - "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", - "type": "string", - "location": "query" - }, - "transaction": { - "description": "Reads the document in a transaction.", - "format": "byte", "type": "string", - "location": "query" + "pattern": "^projects/[^/]+/databases/[^/]+$" } }, - "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents/{documentsId}/{documentsId1}", - "path": "v1beta1/{+name}", - "id": "firestore.projects.databases.documents.get", - "description": "Gets a single document." - }, - "listCollectionIds": { - "id": "firestore.projects.databases.documents.listCollectionIds", - "path": "v1beta1/{+parent}:listCollectionIds", - "description": "Lists all the collection IDs underneath a document.", + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents:rollback", + "path": "v1beta1/{+database}/documents:rollback", + "id": "firestore.projects.databases.documents.rollback", "request": { - "$ref": "ListCollectionIdsRequest" + "$ref": "RollbackRequest" }, + "description": "Rolls back a transaction." + } + } + }, + "indexes": { + "methods": { + "create": { "httpMethod": "POST", "parameterOrder": [ "parent" ], "response": { - "$ref": "ListCollectionIdsResponse" + "$ref": "Operation" }, "parameters": { "parent": { - "pattern": "^projects/[^/]+/databases/[^/]+/documents/[^/]+/.+$", - "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`", + "description": "The name of the database this index will apply to. For example:\n`projects/{project_id}/databases/{database_id}`", "required": true, - "type": "string" + "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/{documentsId}/{documentsId1}:listCollectionIds" + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/indexes", + "id": "firestore.projects.databases.indexes.create", + "path": "v1beta1/{+parent}/indexes", + "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.", + "request": { + "$ref": "Index" + } }, "delete": { - "description": "Deletes a document.", - "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], "response": { "$ref": "Empty" }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", "parameters": { - "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}`.", + "description": "The index name. For example:\n`projects/{project_id}/databases/{database_id}/indexes/{index_id}`", "required": true, - "type": "string" - }, - "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" + "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}/documents/{documentsId}/{documentsId1}", - "id": "firestore.projects.databases.documents.delete", - "path": "v1beta1/{+name}" + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/indexes/{indexesId}", + "path": "v1beta1/{+name}", + "id": "firestore.projects.databases.indexes.delete", + "description": "Deletes an index." }, - "commit": { - "description": "Commits a transaction, while optionally updating documents.", - "request": { - "$ref": "CommitRequest" - }, + "list": { + "path": "v1beta1/{+parent}/indexes", + "id": "firestore.projects.databases.indexes.list", + "description": "Lists the indexes that match the specified filters.", "response": { - "$ref": "CommitResponse" + "$ref": "ListIndexesResponse" }, "parameterOrder": [ - "database" + "parent" ], - "httpMethod": "POST", + "httpMethod": "GET", "parameters": { - "database": { - "description": "The database name. In the format:\n`projects/{project_id}/databases/{database_id}`.", + "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": { + "description": "The database name. For example:\n`projects/{project_id}/databases/{database_id}`", "required": true, "type": "string", "pattern": "^projects/[^/]+/databases/[^/]+$", "location": "path" + }, + "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}/documents:commit", - "path": "v1beta1/{+database}/documents:commit", - "id": "firestore.projects.databases.documents.commit" + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/indexes" }, - "rollback": { - "path": "v1beta1/{+database}/documents:rollback", - "id": "firestore.projects.databases.documents.rollback", - "request": { - "$ref": "RollbackRequest" - }, - "description": "Rolls back a transaction.", - "response": { - "$ref": "Empty" - }, + "get": { + "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/indexes/{indexesId}", + "id": "firestore.projects.databases.indexes.get", + "path": "v1beta1/{+name}", + "description": "Gets an index.", + "httpMethod": "GET", "parameterOrder": [ - "database" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/datastore" + "name" ], + "response": { + "$ref": "Index" + }, "parameters": { - "database": { - "description": "The database name. In the format:\n`projects/{project_id}/databases/{database_id}`.", + "name": { + "location": "path", + "description": "The name of the index. For example:\n`projects/{project_id}/databases/{database_id}/indexes/{index_id}`", "required": true, "type": "string", - "pattern": "^projects/[^/]+/databases/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/databases/[^/]+/indexes/[^/]+$" } }, - "flatPath": "v1beta1/projects/{projectsId}/databases/{databasesId}/documents:rollback" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/datastore" + ] } } } } } - } - } - }, - "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": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" + } + } + }, + "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": { + "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": { + "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": { + "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" + } + }, + "version": "v1beta1", + "baseUrl": "https://firestore.googleapis.com/", + "kind": "discovery#restDescription", + "description": "", + "servicePath": "", + "basePath": "", + "id": "firestore:v1beta1", + "documentationLink": "https://cloud.google.com/firestore", + "revision": "20180501", + "discoveryVersion": "v1", + "version_module": true, + "schemas": { + "DocumentTransform": { + "description": "A transformation of a document.", + "type": "object", + "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.", + "type": "array", + "items": { + "$ref": "FieldTransform" + } + } + }, + "id": "DocumentTransform" + }, + "FieldTransform": { + "properties": { + "setToServerValue": { + "enumDescriptions": [ + "Unspecified. This value must not be used.", + "The time at which the server processed the request, with millisecond\nprecision." + ], + "enum": [ + "SERVER_VALUE_UNSPECIFIED", + "REQUEST_TIME" + ], + "description": "Sets the field to the given server value.", + "type": "string" + }, + "fieldPath": { + "description": "The path of the field. See Document.fields for the field path syntax\nreference.", + "type": "string" + } + }, + "id": "FieldTransform", + "description": "A transformation of a field of the document.", + "type": "object" + }, + "ListCollectionIdsResponse": { + "description": "The response from Firestore.ListCollectionIds.", + "type": "object", + "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" + }, + "CommitResponse": { + "description": "The response for Firestore.Commit.", + "type": "object", + "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" + }, + "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" + }, + "commitTime": { + "description": "The time at which the commit occurred.", + "format": "google-datetime", + "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", + "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": "WriteResponse" + }, + "Order": { + "description": "An order on a field.", + "type": "object", + "properties": { + "direction": { + "enumDescriptions": [ + "Unspecified.", + "Ascending.", + "Descending." + ], + "enum": [ + "DIRECTION_UNSPECIFIED", + "ASCENDING", + "DESCENDING" + ], + "description": "The direction to order by. Defaults to `ASCENDING`.", + "type": "string" + }, + "field": { + "description": "The field to order by.", + "$ref": "FieldReference" + } + }, + "id": "Order" + }, + "FieldFilter": { + "description": "A filter on a specific field.", + "type": "object", + "properties": { + "field": { + "description": "The field to filter by.", + "$ref": "FieldReference" + }, + "value": { + "description": "The value to compare to.", + "$ref": "Value" + }, + "op": { + "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" + ], + "description": "The operator to filter by.", + "type": "string" + } + }, + "id": "FieldFilter" + }, + "TargetChange": { + "description": "Targets being watched have changed.", + "type": "object", + "properties": { + "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.", + "format": "byte", + "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.", + "type": "array", + "items": { + "format": "int32", + "type": "integer" + } + }, + "cause": { + "description": "The error that resulted in this change, if applicable.", + "$ref": "Status" + }, + "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" + } + }, + "id": "TargetChange" + }, + "MapValue": { + "description": "A map value.", + "type": "object", + "properties": { + "fields": { + "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", + "additionalProperties": { + "$ref": "Value" + } + } + }, + "id": "MapValue" + }, + "DocumentDelete": { + "properties": { + "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.", + "type": "array", + "items": { + "format": "int32", + "type": "integer" + } + }, + "document": { + "description": "The resource name of the Document that was deleted.", + "type": "string" + } + }, + "id": "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" + }, + "BeginTransactionResponse": { + "properties": { + "transaction": { + "description": "The transaction that was started.", + "format": "byte", + "type": "string" + } + }, + "id": "BeginTransactionResponse", + "description": "The response for Firestore.BeginTransaction.", + "type": "object" + }, + "IndexField": { + "description": "A field of an index.", + "type": "object", + "properties": { + "mode": { + "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 =." + ], + "enum": [ + "MODE_UNSPECIFIED", + "ASCENDING", + "DESCENDING" + ] + }, + "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" + } + }, + "id": "IndexField" + }, + "RunQueryResponse": { + "properties": { + "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" + }, + "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" + } + }, + "id": "RunQueryResponse", + "description": "The response for Firestore.RunQuery.", + "type": "object" + }, + "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", + "properties": { + "transaction": { + "description": "If set, applies all writes in this transaction, and commits it.", + "format": "byte", + "type": "string" + }, + "writes": { + "description": "The writes to apply.\n\nAlways executed atomically and in order.", + "type": "array", + "items": { + "$ref": "Write" + } + } + }, + "id": "CommitRequest" + }, + "ListenRequest": { + "description": "A request for Firestore.Listen", + "type": "object", + "properties": { + "removeTarget": { + "description": "The ID of a target to remove from this stream.", + "format": "int32", + "type": "integer" + }, + "addTarget": { + "description": "A target to add to this stream.", + "$ref": "Target" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels associated with this target change.", + "type": "object" + } + }, + "id": "ListenRequest" + }, + "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" + }, + "CollectionSelector": { + "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.", + "type": "boolean" + }, + "collectionId": { + "description": "The collection ID.\nWhen set, selects only collections with this ID.", + "type": "string" + } + }, + "id": "CollectionSelector", + "description": "A selection of a collection, such as `messages as m1`.", + "type": "object" + }, + "ArrayValue": { + "description": "An array value.", + "type": "object", + "properties": { + "values": { + "description": "Values in the array.", + "type": "array", + "items": { + "$ref": "Value" + } + } + }, + "id": "ArrayValue" + }, + "Index": { + "properties": { + "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" + }, + "name": { + "description": "The resource name of the index.\nOutput only.", + "type": "string" + }, + "collectionId": { + "description": "The collection ID to which this index applies. Required.", + "type": "string" + } + }, + "id": "Index", + "description": "An index definition.", + "type": "object" + }, + "StructuredQuery": { + "properties": { + "where": { + "description": "The filter to apply.", + "$ref": "Filter" + }, + "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": { + "$ref": "Projection", + "description": "The projection to return." + }, + "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" + }, + "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" + }, + "from": { + "description": "The collections to query.", + "type": "array", + "items": { + "$ref": "CollectionSelector" + } + }, + "endAt": { + "$ref": "Cursor", + "description": "A end point for the query results." + }, + "startAt": { + "$ref": "Cursor", + "description": "A starting point for the query results." + } + }, + "id": "StructuredQuery", + "description": "A Firestore query.", + "type": "object" + }, + "UnaryFilter": { + "properties": { + "op": { + "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" + ], + "description": "The unary operator to apply.", + "type": "string" + }, + "field": { + "description": "The field to which to apply the operator.", + "$ref": "FieldReference" + } + }, + "id": "UnaryFilter", + "description": "A filter with a single operand.", + "type": "object" + }, + "Filter": { + "properties": { + "unaryFilter": { + "description": "A filter that takes exactly one argument.", + "$ref": "UnaryFilter" + }, + "compositeFilter": { + "$ref": "CompositeFilter", + "description": "A composite filter." + }, + "fieldFilter": { + "description": "A filter on a document field.", + "$ref": "FieldFilter" + } + }, + "id": "Filter", + "description": "A filter.", + "type": "object" + }, + "BatchGetDocumentsResponse": { + "description": "The streamed response for Firestore.BatchGetDocuments.", + "type": "object", + "properties": { + "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.", + "format": "google-datetime", + "type": "string" + }, + "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" + }, + "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": "BatchGetDocumentsResponse" + }, + "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", + "properties": { + "streamId": { + "description": "The ID of the write stream to resume.\nThis may only be set in the first message. When left empty, a new write\nstream will be created.", + "type": "string" + }, + "streamToken": { + "description": "A stream token that was previously sent by the server.\n\nThe client should set this field to the token from the most recent\nWriteResponse it has received. This acknowledges that the client has\nreceived responses up to this token. After sending this token, earlier\ntokens may not be used anymore.\n\nThe server may close the stream if there are too many unacknowledged\nresponses.\n\nLeave this field unset when creating a new stream. To resume a stream at\na specific point, set this field and the `stream_id` field.\n\nLeave this field unset when creating a new stream.", + "format": "byte", + "type": "string" + }, + "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" + } + }, + "labels": { + "description": "Labels associated with this write request.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "id": "WriteRequest" + }, + "Target": { + "description": "A specification of a set of documents to listen to.", + "type": "object", + "properties": { + "documents": { + "$ref": "DocumentsTarget", + "description": "A target specified by a set of document names." + }, + "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" + } + }, + "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": { + "properties": { + "readTime": { + "description": "Reads documents as they were at the given time.\nThis may not be older than 60 seconds.", + "format": "google-datetime", + "type": "string" + }, + "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." + }, + "transaction": { + "description": "Reads documents in a transaction.", + "format": "byte", + "type": "string" + }, + "structuredQuery": { + "description": "A structured query.", + "$ref": "StructuredQuery" + } + }, + "id": "RunQueryRequest", + "description": "The request for Firestore.RunQuery.", + "type": "object" + }, + "ListIndexesResponse": { + "description": "The response for FirestoreAdmin.ListIndexes.", + "type": "object", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "indexes": { + "description": "The indexes.", + "type": "array", + "items": { + "$ref": "Index" + } + } + }, + "id": "ListIndexesResponse" + }, + "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." + } + }, + "id": "TransactionOptions", + "description": "Options for creating a new transaction.", + "type": "object" + }, + "FieldReference": { + "properties": { + "fieldPath": { + "type": "string" + } + }, + "id": "FieldReference", + "description": "A reference to a field, such as `max(messages.time) as max_time`.", + "type": "object" + }, + "ListenResponse": { + "description": "The response for Firestore.Listen.", + "type": "object", + "properties": { + "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)." + }, + "documentDelete": { + "$ref": "DocumentDelete", + "description": "A Document has been deleted." + }, + "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." + } + }, + "id": "ListenResponse" + }, + "ListCollectionIdsRequest": { + "properties": { + "pageToken": { + "description": "A page token. Must be a value from\nListCollectionIdsResponse.", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of results to return.", + "format": "int32", + "type": "integer" + } + }, + "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": { + "targetId": { + "description": "The target ID to which this filter applies.", + "format": "int32", + "type": "integer" + }, + "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" + } + }, + "id": "ExistenceFilter" + }, + "ReadOnly": { + "description": "Options for a transaction that can only be used to read documents.", + "type": "object", + "properties": { + "readTime": { + "description": "Reads documents at the given time.\nThis may not be older than 60 seconds.", + "format": "google-datetime", + "type": "string" + } + }, + "id": "ReadOnly" + }, + "WriteResult": { + "description": "The result of applying a write.", + "type": "object", + "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" + }, + "Value": { + "description": "A message that can hold any of the supported value types.", + "type": "object", + "properties": { + "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" + }, + "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" + }, + "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" + }, + "referenceValue": { + "description": "A reference to a document. For example:\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.", + "type": "string" + }, + "arrayValue": { + "$ref": "ArrayValue", + "description": "An array value.\n\nCannot directly contain another array value, though can contain an\nmap which contains another array." + }, + "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" + }, + "nullValue": { + "enumDescriptions": [ + "Null value." + ], + "enum": [ + "NULL_VALUE" + ], + "description": "A null value.", + "type": "string" + }, + "booleanValue": { + "description": "A boolean value.", + "type": "boolean" + }, + "mapValue": { + "description": "A map value.", + "$ref": "MapValue" + } + }, + "id": "Value" + }, + "Write": { + "description": "A write on a document.", + "type": "object", + "properties": { + "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`.\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." + }, + "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." + }, + "update": { + "description": "A document to write.", + "$ref": "Document" + }, + "transform": { + "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.", + "$ref": "DocumentTransform" + } + }, + "id": "Write" + }, + "Cursor": { + "description": "A position in a query result set.", + "type": "object", + "properties": { + "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" + } + }, + "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" + } + }, + "id": "Cursor" + }, + "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": { + "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" + }, + "mask": { + "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.", + "$ref": "DocumentMask" + }, + "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": { + "description": "A target specified by a query.", + "type": "object", + "properties": { + "structuredQuery": { + "$ref": "StructuredQuery", + "description": "A structured query." + }, + "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" + } + }, + "id": "QueryTarget" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "type": "object", + "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" + }, + "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" + }, + "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": { + "$ref": "Document", + "description": "The new state of the Document.\n\nIf `mask` is set, contains only fields that were updated or added." + }, + "targetIds": { + "description": "A set of target IDs of targets that match this document.", + "type": "array", + "items": { + "format": "int32", + "type": "integer" + } + } + }, + "id": "DocumentChange" + }, + "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" }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" + "Document": { + "properties": { + "fields": { + "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", + "additionalProperties": { + "$ref": "Value" + } + }, + "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" + }, + "name": { + "description": "The resource name of the document, for example\n`projects/{project_id}/databases/{database_id}/documents/{document_path}`.", + "type": "string" + }, + "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" + } + }, + "id": "Document", + "description": "A Firestore document.\n\nMust not exceed 1 MiB - 4 bytes.", + "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" + "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" }, - "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" + "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" }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" + "ListDocumentsResponse": { + "properties": { + "documents": { + "description": "The Documents found.", + "type": "array", + "items": { + "$ref": "Document" + } + }, + "nextPageToken": { + "description": "The next page token.", + "type": "string" + } + }, + "id": "ListDocumentsResponse", + "description": "The response for Firestore.ListDocuments.", + "type": "object" }, - "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" + "RollbackRequest": { + "description": "The request for Firestore.Rollback.", + "type": "object", + "properties": { + "transaction": { + "description": "The transaction to roll back.", + "format": "byte", + "type": "string" + } + }, + "id": "RollbackRequest" }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" + "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" }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" + "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" }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" + "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", + "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" } }, - "version": "v1beta1", - "baseUrl": "https://firestore.googleapis.com/" + "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": "Firestore", + "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" + } + } + } + }, + "rootUrl": "https://firestore.googleapis.com/", + "ownerDomain": "google.com", + "name": "firestore" } diff --git a/DiscoveryJson/genomics_v1.json b/DiscoveryJson/genomics_v1.json index b9b3cad4d5..811c94f5d7 100644 --- a/DiscoveryJson/genomics_v1.json +++ b/DiscoveryJson/genomics_v1.json @@ -1,6 +1,4 @@ { - "basePath": "", - "ownerDomain": "google.com", "name": "genomics", "batchPath": "batch", "revision": "20180505", @@ -11,337 +9,311 @@ "ownerName": "Google", "discoveryVersion": "v1", "resources": { - "annotationsets": { + "variants": { "methods": { - "update": { - "response": { - "$ref": "AnnotationSet" - }, - "parameterOrder": [ - "annotationSetId" - ], - "httpMethod": "PUT", - "parameters": { - "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", - "type": "string", - "location": "query" - }, - "annotationSetId": { - "description": "The ID of the annotation set to be updated.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1/annotationsets/{annotationSetId}", - "path": "v1/annotationsets/{annotationSetId}", - "id": "genomics.annotationsets.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.", - "request": { - "$ref": "AnnotationSet" - } - }, - "create": { + "search": { "response": { - "$ref": "AnnotationSet" + "$ref": "SearchVariantsResponse" }, "parameterOrder": [], "httpMethod": "POST", "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" ], - "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).", + "flatPath": "v1/variants/search", + "path": "v1/variants/search", + "id": "genomics.variants.search", + "description": "Gets a list of variants matching the criteria.\n\nImplements\n[GlobalAllianceApi.searchVariants](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/variantmethods.avdl#L126).", "request": { - "$ref": "AnnotationSet" + "$ref": "SearchVariantsRequest" } }, - "delete": { + "get": { "parameters": { - "annotationSetId": { - "required": true, - "type": "string", + "variantId": { "location": "path", - "description": "The ID of the annotation set to be deleted." + "description": "The ID of the variant.", + "required": true, + "type": "string" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" ], - "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", - "response": { - "$ref": "Empty" - }, + "flatPath": "v1/variants/{variantId}", + "id": "genomics.variants.get", + "path": "v1/variants/{variantId}", + "description": "Gets a variant by ID.", + "httpMethod": "GET", "parameterOrder": [ - "annotationSetId" - ] + "variantId" + ], + "response": { + "$ref": "Variant" + } }, - "search": { - "path": "v1/annotationsets/search", - "id": "genomics.annotationsets.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.", + "patch": { "request": { - "$ref": "SearchAnnotationSetsRequest" - }, - "response": { - "$ref": "SearchAnnotationSetsResponse" + "$ref": "Variant" }, - "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/annotationsets/search" - }, - "get": { - "description": "Gets an annotation set. Caller must have READ permission for\nthe associated dataset.", + "description": "Updates a variant.\n\nThis method supports patch semantics. Returns the modified variant without\nits calls.", "response": { - "$ref": "AnnotationSet" + "$ref": "Variant" }, "parameterOrder": [ - "annotationSetId" + "variantId" ], - "httpMethod": "GET", + "httpMethod": "PATCH", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" + "https://www.googleapis.com/auth/genomics" ], "parameters": { - "annotationSetId": { - "description": "The ID of the annotation set to be retrieved.", + "variantId": { + "description": "The ID of the variant to be updated.", "required": true, "type": "string", "location": "path" + }, + "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/annotationsets/{annotationSetId}", - "path": "v1/annotationsets/{annotationSetId}", - "id": "genomics.annotationsets.get" - } - } - }, - "variants": { - "methods": { - "get": { + "flatPath": "v1/variants/{variantId}", "path": "v1/variants/{variantId}", - "id": "genomics.variants.get", - "description": "Gets a variant by ID.", + "id": "genomics.variants.patch" + }, + "delete": { "response": { - "$ref": "Variant" + "$ref": "Empty" }, "parameterOrder": [ "variantId" ], - "httpMethod": "GET", - "parameters": { - "variantId": { - "location": "path", - "description": "The ID of the variant.", - "required": true, - "type": "string" - } - }, + "httpMethod": "DELETE", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], - "flatPath": "v1/variants/{variantId}" - }, - "patch": { - "response": { - "$ref": "Variant" - }, - "parameterOrder": [ - "variantId" + "https://www.googleapis.com/auth/genomics" ], - "httpMethod": "PATCH", "parameters": { "variantId": { "location": "path", - "description": "The ID of the variant to be updated.", + "description": "The ID of the variant to be deleted.", "required": true, "type": "string" - }, - "updateMask": { - "location": "query", - "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" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], "flatPath": "v1/variants/{variantId}", "path": "v1/variants/{variantId}", - "id": "genomics.variants.patch", - "description": "Updates a variant.\n\nThis method supports patch semantics. Returns the modified variant without\nits calls.", - "request": { - "$ref": "Variant" - } + "id": "genomics.variants.delete", + "description": "Deletes a variant." }, "merge": { - "description": "Merges the given variants with existing variants.\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.", + "path": "v1/variants:merge", + "id": "genomics.variants.merge", "request": { "$ref": "MergeVariantsRequest" }, - "httpMethod": "POST", - "parameterOrder": [], + "description": "Merges the given variants with existing variants.\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" }, - "parameters": {}, + "parameterOrder": [], + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics" ], - "flatPath": "v1/variants:merge", - "id": "genomics.variants.merge", - "path": "v1/variants:merge" + "parameters": {}, + "flatPath": "v1/variants:merge" }, "import": { - "flatPath": "v1/variants:import", - "path": "v1/variants:import", - "id": "genomics.variants.import", - "description": "Creates variant data by asynchronously importing the provided information.\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" }, + "description": "Creates variant data by asynchronously importing the provided information.\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.", "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" - ] - }, - "delete": { - "description": "Deletes a variant.", - "httpMethod": "DELETE", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "variantId" - ], - "parameters": { - "variantId": { - "description": "The ID of the variant 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/variants/{variantId}", - "id": "genomics.variants.delete", - "path": "v1/variants/{variantId}" + "parameters": {}, + "flatPath": "v1/variants:import", + "path": "v1/variants:import", + "id": "genomics.variants.import" }, "create": { "description": "Creates a new variant.", "request": { "$ref": "Variant" }, - "httpMethod": "POST", - "parameterOrder": [], "response": { "$ref": "Variant" }, + "parameterOrder": [], + "httpMethod": "POST", "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics" ], "flatPath": "v1/variants", - "id": "genomics.variants.create", - "path": "v1/variants" - }, - "search": { - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "SearchVariantsResponse" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], - "flatPath": "v1/variants/search", - "id": "genomics.variants.search", - "path": "v1/variants/search", - "description": "Gets a list of variants matching the criteria.\n\nImplements\n[GlobalAllianceApi.searchVariants](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/variantmethods.avdl#L126).", - "request": { - "$ref": "SearchVariantsRequest" - } + "path": "v1/variants", + "id": "genomics.variants.create" } } }, - "references": { + "annotationsets": { "methods": { - "search": { - "request": { - "$ref": "SearchReferencesRequest" - }, - "description": "Searches for references which match the given criteria.\n\nImplements\n[GlobalAllianceApi.searchReferences](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/referencemethods.avdl#L146).", + "get": { "response": { - "$ref": "SearchReferencesResponse" + "$ref": "AnnotationSet" }, - "parameterOrder": [], - "httpMethod": "POST", + "parameterOrder": [ + "annotationSetId" + ], + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics", "https://www.googleapis.com/auth/genomics.readonly" ], + "parameters": { + "annotationSetId": { + "required": true, + "type": "string", + "location": "path", + "description": "The ID of the annotation set to be retrieved." + } + }, + "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": { + "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.", + "request": { + "$ref": "AnnotationSet" + }, + "response": { + "$ref": "AnnotationSet" + }, + "parameterOrder": [ + "annotationSetId" + ], + "httpMethod": "PUT", + "parameters": { + "annotationSetId": { + "location": "path", + "description": "The ID of the annotation set to be updated.", + "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", + "type": "string", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "flatPath": "v1/annotationsets/{annotationSetId}", + "path": "v1/annotationsets/{annotationSetId}", + "id": "genomics.annotationsets.update" + }, + "create": { + "response": { + "$ref": "AnnotationSet" + }, + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], "parameters": {}, - "flatPath": "v1/references/search", - "path": "v1/references/search", - "id": "genomics.references.search" + "flatPath": "v1/annotationsets", + "path": "v1/annotationsets", + "id": "genomics.annotationsets.create", + "request": { + "$ref": "AnnotationSet" + }, + "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)." }, - "get": { - "description": "Gets a reference.\n\nImplements\n[GlobalAllianceApi.getReference](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/referencemethods.avdl#L158).", + "delete": { + "flatPath": "v1/annotationsets/{annotationSetId}", + "path": "v1/annotationsets/{annotationSetId}", + "id": "genomics.annotationsets.delete", + "description": "Deletes an annotation set. Caller must have WRITE permission\nfor the associated annotation set.", "response": { - "$ref": "Reference" + "$ref": "Empty" }, "parameterOrder": [ - "referenceId" + "annotationSetId" ], - "httpMethod": "GET", + "httpMethod": "DELETE", + "parameters": { + "annotationSetId": { + "location": "path", + "description": "The ID of the annotation set to be deleted.", + "required": true, + "type": "string" + } + }, + "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" + }, + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "SearchAnnotationSetsResponse" + }, + "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics", "https://www.googleapis.com/auth/genomics.readonly" ], + "flatPath": "v1/annotationsets/search", + "id": "genomics.annotationsets.search", + "path": "v1/annotationsets/search" + } + } + }, + "references": { + "methods": { + "get": { + "httpMethod": "GET", + "response": { + "$ref": "Reference" + }, + "parameterOrder": [ + "referenceId" + ], "parameters": { "referenceId": { "location": "path", @@ -350,26 +322,49 @@ "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/references/{referenceId}", + "id": "genomics.references.get", "path": "v1/references/{referenceId}", - "id": "genomics.references.get" + "description": "Gets a reference.\n\nImplements\n[GlobalAllianceApi.getReference](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/referencemethods.avdl#L158)." + }, + "search": { + "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" + ], + "parameters": {}, + "flatPath": "v1/references/search", + "path": "v1/references/search", + "id": "genomics.references.search", + "request": { + "$ref": "SearchReferencesRequest" + }, + "description": "Searches for references which match the given criteria.\n\nImplements\n[GlobalAllianceApi.searchReferences](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/referencemethods.avdl#L146)." } }, "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\nImplements\n[GlobalAllianceApi.getReferenceBases](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/referencemethods.avdl#L221).", - "response": { - "$ref": "ListBasesResponse" - }, + "httpMethod": "GET", "parameterOrder": [ "referenceId" ], - "httpMethod": "GET", + "response": { + "$ref": "ListBasesResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics", @@ -395,9 +390,9 @@ "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" + "type": "string", + "location": "query" }, "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).", @@ -405,7 +400,10 @@ "type": "integer", "location": "query" } - } + }, + "flatPath": "v1/references/{referenceId}/bases", + "id": "genomics.references.bases.list", + "path": "v1/references/{referenceId}/bases" } } } @@ -413,46 +411,83 @@ }, "datasets": { "methods": { - "testIamPermissions": { - "response": { - "$ref": "TestIamPermissionsResponse" + "getIamPolicy": { + "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}:getIamPolicy", + "id": "genomics.datasets.getIamPolicy", + "path": "v1/{+resource}: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.", + "request": { + "$ref": "GetIamPolicyRequest" }, + "httpMethod": "POST", "parameterOrder": [ "resource" ], - "httpMethod": "POST", + "response": { + "$ref": "Policy" + } + }, + "patch": { + "flatPath": "v1/datasets/{datasetId}", + "path": "v1/datasets/{datasetId}", + "id": "genomics.datasets.patch", + "request": { + "$ref": "Dataset" + }, + "description": "Updates a dataset.\n\nThis method supports patch semantics.", + "response": { + "$ref": "Dataset" + }, + "parameterOrder": [ + "datasetId" + ], + "httpMethod": "PATCH", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics" ], "parameters": { - "resource": { + "datasetId": { "location": "path", - "description": "REQUIRED: The resource for which policy is being specified. Format is\n`datasets/\u003cdataset ID\u003e`.", + "description": "The ID of the dataset to be updated.", "required": true, - "type": "string", - "pattern": "^datasets/[^/]+$" + "type": "string" + }, + "updateMask": { + "location": "query", + "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" } - }, - "flatPath": "v1/datasets/{datasetsId}:testIamPermissions", - "path": "v1/{+resource}:testIamPermissions", - "id": "genomics.datasets.testIamPermissions", - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "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." + } }, - "delete": { + "get": { + "id": "genomics.datasets.get", + "path": "v1/datasets/{datasetId}", + "description": "Gets a dataset by ID.", + "httpMethod": "GET", "response": { - "$ref": "Empty" + "$ref": "Dataset" }, "parameterOrder": [ "datasetId" ], - "httpMethod": "DELETE", "parameters": { "datasetId": { - "description": "The ID of the dataset to be deleted.", + "description": "The ID of the dataset.", "required": true, "type": "string", "location": "path" @@ -460,55 +495,51 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" ], - "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." + "flatPath": "v1/datasets/{datasetId}" }, - "list": { + "undelete": { + "description": "Undeletes a dataset by restoring a dataset which was deleted via this API.\n\nThis operation is only possible for a week after the deletion occurred.", + "request": { + "$ref": "UndeleteDatasetRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "datasetId" + ], "response": { - "$ref": "ListDatasetsResponse" + "$ref": "Dataset" + }, + "parameters": { + "datasetId": { + "location": "path", + "description": "The ID of the dataset to be undeleted.", + "required": true, + "type": "string" + } }, - "parameterOrder": [], - "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" + "https://www.googleapis.com/auth/genomics" ], - "parameters": { - "projectId": { - "type": "string", - "location": "query", - "description": "Required. The Google Cloud project ID to list datasets for." - }, - "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 50. The maximum value is 1024.", - "format": "int32" - } - }, - "flatPath": "v1/datasets", - "path": "v1/datasets", - "id": "genomics.datasets.list", - "description": "Lists datasets within a project." + "flatPath": "v1/datasets/{datasetId}:undelete", + "id": "genomics.datasets.undelete", + "path": "v1/datasets/{datasetId}:undelete" }, - "setIamPolicy": { - "httpMethod": "POST", + "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.", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, "parameterOrder": [ "resource" ], - "response": { - "$ref": "Policy" - }, + "httpMethod": "POST", "parameters": { "resource": { "description": "REQUIRED: The resource for which policy is being specified. Format is\n`datasets/\u003cdataset ID\u003e`.", @@ -522,106 +553,40 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics" ], - "flatPath": "v1/datasets/{datasetsId}:setIamPolicy", - "id": "genomics.datasets.setIamPolicy", - "path": "v1/{+resource}:setIamPolicy", - "description": "Sets the access control policy on the specified dataset. Replaces any\nexisting policy.\n\nSee \u003ca href=\"/iam/docs/managing-policies#setting_a_policy\"\u003eSetting a\nPolicy\u003c/a\u003e for more information.", - "request": { - "$ref": "SetIamPolicyRequest" - } - }, - "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", - "description": "Creates a new dataset.", - "request": { - "$ref": "Dataset" - } + "flatPath": "v1/datasets/{datasetsId}:testIamPermissions", + "path": "v1/{+resource}:testIamPermissions", + "id": "genomics.datasets.testIamPermissions" }, - "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.", - "request": { - "$ref": "GetIamPolicyRequest" - }, + "delete": { "response": { - "$ref": "Policy" + "$ref": "Empty" }, "parameterOrder": [ - "resource" + "datasetId" ], - "httpMethod": "POST", - "parameters": { - "resource": { - "location": "path", - "description": "REQUIRED: The resource for which policy is being specified. Format is\n`datasets/\u003cdataset ID\u003e`.", - "required": true, - "type": "string", - "pattern": "^datasets/[^/]+$" - } - }, + "httpMethod": "DELETE", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics" ], - "flatPath": "v1/datasets/{datasetsId}:getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "id": "genomics.datasets.getIamPolicy" - }, - "patch": { - "id": "genomics.datasets.patch", - "path": "v1/datasets/{datasetId}", - "description": "Updates a dataset.\n\nThis method supports patch semantics.", - "request": { - "$ref": "Dataset" - }, - "httpMethod": "PATCH", - "parameterOrder": [ - "datasetId" - ], - "response": { - "$ref": "Dataset" - }, "parameters": { "datasetId": { - "description": "The ID of the dataset to be updated.", + "description": "The ID of the dataset to be deleted.", "required": true, "type": "string", "location": "path" - }, - "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}" - }, - "get": { + "flatPath": "v1/datasets/{datasetId}", "path": "v1/datasets/{datasetId}", - "id": "genomics.datasets.get", - "description": "Gets a dataset by ID.", + "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." + }, + "list": { "response": { - "$ref": "Dataset" + "$ref": "ListDatasetsResponse" }, - "parameterOrder": [ - "datasetId" - ], + "parameterOrder": [], "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", @@ -629,49 +594,115 @@ "https://www.googleapis.com/auth/genomics.readonly" ], "parameters": { - "datasetId": { - "required": true, + "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 to return in a single page. If unspecified,\ndefaults to 50. The maximum value is 1024.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "projectId": { + "description": "Required. The Google Cloud project ID to list datasets for.", "type": "string", - "location": "path", - "description": "The ID of the dataset." + "location": "query" } }, - "flatPath": "v1/datasets/{datasetId}" + "flatPath": "v1/datasets", + "path": "v1/datasets", + "id": "genomics.datasets.list", + "description": "Lists datasets within a project." }, - "undelete": { - "response": { - "$ref": "Dataset" + "setIamPolicy": { + "flatPath": "v1/datasets/{datasetsId}: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\nSee \u003ca href=\"/iam/docs/managing-policies#setting_a_policy\"\u003eSetting a\nPolicy\u003c/a\u003e for more information.", + "httpMethod": "POST", "parameterOrder": [ - "datasetId" + "resource" + ], + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" ], - "httpMethod": "POST", "parameters": { - "datasetId": { - "location": "path", - "description": "The ID of the dataset to be undeleted.", + "resource": { + "description": "REQUIRED: The resource for which policy is being specified. Format is\n`datasets/\u003cdataset ID\u003e`.", "required": true, - "type": "string" + "type": "string", + "pattern": "^datasets/[^/]+$", + "location": "path" } - }, + } + }, + "create": { + "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics" ], - "flatPath": "v1/datasets/{datasetId}:undelete", - "path": "v1/datasets/{datasetId}:undelete", - "id": "genomics.datasets.undelete", - "description": "Undeletes a dataset by restoring a dataset which was deleted via this API.\n\nThis operation is only possible for a week after the deletion occurred.", + "flatPath": "v1/datasets", + "path": "v1/datasets", + "id": "genomics.datasets.create", + "description": "Creates a new dataset.", "request": { - "$ref": "UndeleteDatasetRequest" - } + "$ref": "Dataset" + }, + "response": { + "$ref": "Dataset" + }, + "parameterOrder": [], + "httpMethod": "POST" } } }, "annotations": { "methods": { + "update": { + "response": { + "$ref": "Annotation" + }, + "parameterOrder": [ + "annotationId" + ], + "httpMethod": "PUT", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "parameters": { + "annotationId": { + "location": "path", + "description": "The ID of the annotation to be updated.", + "required": true, + "type": "string" + }, + "updateMask": { + "location": "query", + "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" + } + }, + "flatPath": "v1/annotations/{annotationId}", + "path": "v1/annotations/{annotationId}", + "id": "genomics.annotations.update", + "request": { + "$ref": "Annotation" + }, + "description": "Updates an annotation. Caller must have\nWRITE permission for the associated dataset." + }, "delete": { - "description": "Deletes an annotation. Caller must have WRITE permission for\nthe associated annotation set.", "response": { "$ref": "Empty" }, @@ -693,33 +724,29 @@ }, "flatPath": "v1/annotations/{annotationId}", "path": "v1/annotations/{annotationId}", - "id": "genomics.annotations.delete" + "id": "genomics.annotations.delete", + "description": "Deletes an annotation. Caller must have WRITE permission for\nthe associated annotation set." }, "create": { - "id": "genomics.annotations.create", + "flatPath": "v1/annotations", "path": "v1/annotations", + "id": "genomics.annotations.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.", "request": { "$ref": "Annotation" }, - "httpMethod": "POST", - "parameterOrder": [], "response": { "$ref": "Annotation" }, + "parameterOrder": [], + "httpMethod": "POST", "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1/annotations" + ] }, "batchCreate": { - "response": { - "$ref": "BatchCreateAnnotationsResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics" @@ -731,42 +758,47 @@ "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." + "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" + }, + "parameterOrder": [], + "httpMethod": "POST" }, "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.", "request": { "$ref": "SearchAnnotationsRequest" }, - "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.", + "httpMethod": "POST", + "parameterOrder": [], "response": { "$ref": "SearchAnnotationsResponse" }, - "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" ], - "parameters": {}, - "flatPath": "v1/annotations/search" + "flatPath": "v1/annotations/search", + "id": "genomics.annotations.search", + "path": "v1/annotations/search" }, "get": { - "response": { - "$ref": "Annotation" - }, + "httpMethod": "GET", "parameterOrder": [ "annotationId" ], - "httpMethod": "GET", + "response": { + "$ref": "Annotation" + }, "parameters": { "annotationId": { - "required": true, - "type": "string", "location": "path", - "description": "The ID of the annotation to be retrieved." + "description": "The ID of the annotation to be retrieved.", + "required": true, + "type": "string" } }, "scopes": [ @@ -775,124 +807,111 @@ "https://www.googleapis.com/auth/genomics.readonly" ], "flatPath": "v1/annotations/{annotationId}", - "path": "v1/annotations/{annotationId}", "id": "genomics.annotations.get", - "description": "Gets an annotation. Caller must have READ permission\nfor the associated annotation set." - }, - "update": { - "request": { - "$ref": "Annotation" - }, - "description": "Updates an annotation. Caller must have\nWRITE permission for the associated dataset.", - "response": { - "$ref": "Annotation" - }, - "parameterOrder": [ - "annotationId" - ], - "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": { - "annotationId": { - "description": "The ID of the annotation to be updated.", - "required": true, - "type": "string", - "location": "path" - }, - "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" - } - }, - "flatPath": "v1/annotations/{annotationId}", "path": "v1/annotations/{annotationId}", - "id": "genomics.annotations.update" + "description": "Gets an annotation. Caller must have READ permission\nfor the associated annotation set." } } }, "variantsets": { "methods": { - "export": { - "httpMethod": "POST", + "delete": { + "description": "Deletes a variant set including all variants, call sets, and calls within.\nThis is not reversible.", + "httpMethod": "DELETE", + "response": { + "$ref": "Empty" + }, "parameterOrder": [ "variantSetId" ], - "response": { - "$ref": "Operation" - }, "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.", + "description": "The ID of the variant set to be deleted.", "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", - "id": "genomics.variantsets.export", - "path": "v1/variantsets/{variantSetId}:export", - "description": "Exports variant set data to an external destination.", - "request": { - "$ref": "ExportVariantSetRequest" - } + "flatPath": "v1/variantsets/{variantSetId}", + "id": "genomics.variantsets.delete", + "path": "v1/variantsets/{variantSetId}" }, - "search": { - "path": "v1/variantsets/search", - "id": "genomics.variantsets.search", - "description": "Returns a list of all variant sets matching search criteria.\n\nImplements\n[GlobalAllianceApi.searchVariantSets](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/variantmethods.avdl#L49).", + "create": { + "id": "genomics.variantsets.create", + "path": "v1/variantsets", + "description": "Creates a new variant set.\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.", "request": { - "$ref": "SearchVariantSetsRequest" + "$ref": "VariantSet" }, + "httpMethod": "POST", + "parameterOrder": [], "response": { - "$ref": "SearchVariantSetsResponse" + "$ref": "VariantSet" }, - "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" + "https://www.googleapis.com/auth/genomics" ], - "flatPath": "v1/variantsets/search" + "flatPath": "v1/variantsets" }, - "get": { - "response": { - "$ref": "VariantSet" + "export": { + "request": { + "$ref": "ExportVariantSetRequest" }, + "description": "Exports variant set data to an external destination.", + "httpMethod": "POST", "parameterOrder": [ "variantSetId" ], - "httpMethod": "GET", + "response": { + "$ref": "Operation" + }, "scopes": [ + "https://www.googleapis.com/auth/bigquery", "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" + "https://www.googleapis.com/auth/genomics" ], "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.", "required": true, "type": "string", - "location": "path", - "description": "Required. The ID of the variant set." + "location": "path" } }, - "flatPath": "v1/variantsets/{variantSetId}", - "path": "v1/variantsets/{variantSetId}", - "id": "genomics.variantsets.get", - "description": "Gets a variant set by ID." + "flatPath": "v1/variantsets/{variantSetId}:export", + "id": "genomics.variantsets.export", + "path": "v1/variantsets/{variantSetId}:export" + }, + "search": { + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "SearchVariantSetsResponse" + }, + "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", + "id": "genomics.variantsets.search", + "path": "v1/variantsets/search", + "description": "Returns a list of all variant sets matching search criteria.\n\nImplements\n[GlobalAllianceApi.searchVariantSets](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/variantmethods.avdl#L49).", + "request": { + "$ref": "SearchVariantSetsRequest" + } }, "patch": { + "flatPath": "v1/variantsets/{variantSetId}", + "path": "v1/variantsets/{variantSetId}", + "id": "genomics.variantsets.patch", "request": { "$ref": "VariantSet" }, @@ -910,79 +929,86 @@ ], "parameters": { "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" + "type": "string", + "location": "query" }, "variantSetId": { - "location": "path", "description": "The ID of the variant to be updated (must already exist).", "required": true, - "type": "string" + "type": "string", + "location": "path" } - }, + } + }, + "get": { "flatPath": "v1/variantsets/{variantSetId}", "path": "v1/variantsets/{variantSetId}", - "id": "genomics.variantsets.patch" - }, - "delete": { + "id": "genomics.variantsets.get", + "description": "Gets a variant set by ID.", "response": { - "$ref": "Empty" + "$ref": "VariantSet" }, "parameterOrder": [ "variantSetId" ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], + "httpMethod": "GET", "parameters": { "variantSetId": { - "location": "path", - "description": "The ID of the variant set to be deleted.", + "description": "Required. The ID of the variant set.", "required": true, - "type": "string" + "type": "string", + "location": "path" } }, - "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." - }, - "create": { - "flatPath": "v1/variantsets", - "path": "v1/variantsets", - "id": "genomics.variantsets.create", - "request": { - "$ref": "VariantSet" - }, - "description": "Creates a new variant set.\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.", - "response": { - "$ref": "VariantSet" - }, - "parameterOrder": [], - "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": {} + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" + ] } } }, "operations": { "methods": { - "list": { - "description": "Lists operations that match the specified filter in the request.", + "cancel": { "response": { - "$ref": "ListOperationsResponse" + "$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" + ], + "flatPath": "v1/operations/{operationsId}:cancel", + "path": "v1/{+name}:cancel", + "id": "genomics.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. Clients may use Operations.GetOperation or Operations.ListOperations to check whether the cancellation succeeded or the operation completed despite cancellation.", + "request": { + "$ref": "CancelOperationRequest" + } + }, + "list": { "httpMethod": "GET", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "ListOperationsResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics" @@ -994,16 +1020,16 @@ "type": "string" }, "name": { - "required": true, - "type": "string", "pattern": "^operations$", "location": "path", - "description": "The name of the operation's parent resource." + "description": "The name of the operation's parent resource.", + "required": true, + "type": "string" }, "pageToken": { - "location": "query", "description": "The standard list page token.", - "type": "string" + "type": "string", + "location": "query" }, "pageSize": { "description": "The maximum number of results to return. If unspecified, defaults to\n256. The maximum value is 2048.", @@ -1013,77 +1039,51 @@ } }, "flatPath": "v1/operations", + "id": "genomics.operations.list", "path": "v1/{+name}", - "id": "genomics.operations.list" + "description": "Lists operations that match the specified filter in the request." }, "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", "response": { "$ref": "Operation" }, "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/.+$" + "pattern": "^operations/.+$", + "location": "path" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], "flatPath": "v1/operations/{operationsId}", + "id": "genomics.operations.get", "path": "v1/{+name}", - "id": "genomics.operations.get" - }, - "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.", + "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": { + "path": "v1/referencesets/search", + "id": "genomics.referencesets.search", + "description": "Searches for reference sets which match the given criteria.\n\nImplements\n[GlobalAllianceApi.searchReferenceSets](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/referencemethods.avdl#L71)", "request": { - "$ref": "CancelOperationRequest" + "$ref": "SearchReferenceSetsRequest" }, "response": { - "$ref": "Empty" + "$ref": "SearchReferenceSetsResponse" }, - "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" - ], - "flatPath": "v1/operations/{operationsId}:cancel", - "path": "v1/{+name}:cancel", - "id": "genomics.operations.cancel" - } - } - }, - "referencesets": { - "methods": { - "search": { - "description": "Searches for reference sets which match the given criteria.\n\nImplements\n[GlobalAllianceApi.searchReferenceSets](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/referencemethods.avdl#L71)", - "request": { - "$ref": "SearchReferenceSetsRequest" - }, - "response": { - "$ref": "SearchReferenceSetsResponse" - }, - "parameterOrder": [], + "parameterOrder": [], "httpMethod": "POST", "parameters": {}, "scopes": [ @@ -1091,25 +1091,22 @@ "https://www.googleapis.com/auth/genomics", "https://www.googleapis.com/auth/genomics.readonly" ], - "flatPath": "v1/referencesets/search", - "path": "v1/referencesets/search", - "id": "genomics.referencesets.search" + "flatPath": "v1/referencesets/search" }, "get": { - "description": "Gets a reference set.\n\nImplements\n[GlobalAllianceApi.getReferenceSet](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/referencemethods.avdl#L83).", + "httpMethod": "GET", "response": { "$ref": "ReferenceSet" }, "parameterOrder": [ "referenceSetId" ], - "httpMethod": "GET", "parameters": { "referenceSetId": { - "location": "path", "description": "The ID of the reference set.", "required": true, - "type": "string" + "type": "string", + "location": "path" } }, "scopes": [ @@ -1118,47 +1115,159 @@ "https://www.googleapis.com/auth/genomics.readonly" ], "flatPath": "v1/referencesets/{referenceSetId}", + "id": "genomics.referencesets.get", "path": "v1/referencesets/{referenceSetId}", - "id": "genomics.referencesets.get" + "description": "Gets a reference set.\n\nImplements\n[GlobalAllianceApi.getReferenceSet](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/referencemethods.avdl#L83)." } } }, - "callsets": { + "readgroupsets": { + "resources": { + "coveragebuckets": { + "methods": { + "list": { + "httpMethod": "GET", + "parameterOrder": [ + "readGroupSetId" + ], + "response": { + "$ref": "ListCoverageBucketsResponse" + }, + "parameters": { + "pageSize": { + "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 1024. The maximum value is 2048.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "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", + "type": "string", + "location": "query" + }, + "readGroupSetId": { + "location": "path", + "description": "Required. The ID of the read group set over which coverage is requested.", + "required": true, + "type": "string" + }, + "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.", + "type": "string" + }, + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics", + "https://www.googleapis.com/auth/genomics.readonly" + ], + "flatPath": "v1/readgroupsets/{readGroupSetId}/coveragebuckets", + "id": "genomics.readgroupsets.coveragebuckets.list", + "path": "v1/readgroupsets/{readGroupSetId}/coveragebuckets", + "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\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." + } + } + } + }, "methods": { - "delete": { - "description": "Deletes a call set.", + "import": { "response": { - "$ref": "Empty" + "$ref": "Operation" }, - "parameterOrder": [ - "callSetId" + "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" ], - "httpMethod": "DELETE", + "flatPath": "v1/readgroupsets:import", + "path": "v1/readgroupsets:import", + "id": "genomics.readgroupsets.import", + "description": "Creates read group sets by asynchronously importing the provided\ninformation.\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)", + "request": { + "$ref": "ImportReadGroupSetsRequest" + } + }, + "delete": { "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics" ], "parameters": { - "callSetId": { + "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.", + "required": true, + "type": "string", + "location": "path" + } + }, + "flatPath": "v1/readgroupsets/{readGroupSetId}", + "path": "v1/readgroupsets/{readGroupSetId}", + "id": "genomics.readgroupsets.delete", + "description": "Deletes a read group set.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "readGroupSetId" + ], + "httpMethod": "DELETE" + }, + "export": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "readGroupSetId" + ], + "httpMethod": "POST", + "parameters": { + "readGroupSetId": { "location": "path", - "description": "The ID of the call set to be deleted.", + "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" } }, - "flatPath": "v1/callsets/{callSetId}", - "path": "v1/callsets/{callSetId}", - "id": "genomics.callsets.delete" + "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", + "path": "v1/readgroupsets/{readGroupSetId}:export", + "id": "genomics.readgroupsets.export", + "description": "Exports a read group set to a BAM file in Google Cloud Storage.\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.", + "request": { + "$ref": "ExportReadGroupSetRequest" + } }, "search": { - "description": "Gets a list of call sets matching the criteria.\n\nImplements\n[GlobalAllianceApi.searchCallSets](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/variantmethods.avdl#L178).", - "request": { - "$ref": "SearchCallSetsRequest" - }, "httpMethod": "POST", "parameterOrder": [], "response": { - "$ref": "SearchCallSetsResponse" + "$ref": "SearchReadGroupSetsResponse" }, "parameters": {}, "scopes": [ @@ -1166,51 +1275,21 @@ "https://www.googleapis.com/auth/genomics", "https://www.googleapis.com/auth/genomics.readonly" ], - "flatPath": "v1/callsets/search", - "id": "genomics.callsets.search", - "path": "v1/callsets/search" - }, - "patch": { - "flatPath": "v1/callsets/{callSetId}", - "path": "v1/callsets/{callSetId}", - "id": "genomics.callsets.patch", + "flatPath": "v1/readgroupsets/search", + "id": "genomics.readgroupsets.search", + "path": "v1/readgroupsets/search", + "description": "Searches for read group sets matching the criteria.\n\nImplements\n[GlobalAllianceApi.searchReadGroupSets](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/readmethods.avdl#L135).", "request": { - "$ref": "CallSet" - }, - "description": "Updates a call set.\n\nThis method supports patch semantics.", - "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": { - "description": "The ID of the call set to be updated.", - "required": true, - "type": "string", - "location": "path" - } + "$ref": "SearchReadGroupSetsRequest" } }, "get": { - "description": "Gets a call set by ID.", + "description": "Gets a read group set by ID.", "response": { - "$ref": "CallSet" + "$ref": "ReadGroupSet" }, "parameterOrder": [ - "callSetId" + "readGroupSetId" ], "httpMethod": "GET", "scopes": [ @@ -1219,35 +1298,50 @@ "https://www.googleapis.com/auth/genomics.readonly" ], "parameters": { - "callSetId": { - "description": "The ID of the call set.", + "readGroupSetId": { + "location": "path", + "description": "The ID of the read group set.", "required": true, - "type": "string", - "location": "path" + "type": "string" } }, - "flatPath": "v1/callsets/{callSetId}", - "path": "v1/callsets/{callSetId}", - "id": "genomics.callsets.get" + "flatPath": "v1/readgroupsets/{readGroupSetId}", + "path": "v1/readgroupsets/{readGroupSetId}", + "id": "genomics.readgroupsets.get" }, - "create": { - "response": { - "$ref": "CallSet" + "patch": { + "id": "genomics.readgroupsets.patch", + "path": "v1/readgroupsets/{readGroupSetId}", + "description": "Updates a read group set.\n\nThis method supports patch semantics.", + "request": { + "$ref": "ReadGroupSet" }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" + "httpMethod": "PATCH", + "parameterOrder": [ + "readGroupSetId" ], - "flatPath": "v1/callsets", - "path": "v1/callsets", - "id": "genomics.callsets.create", - "description": "Creates a new call set.", - "request": { - "$ref": "CallSet" - } + "response": { + "$ref": "ReadGroupSet" + }, + "parameters": { + "readGroupSetId": { + "location": "path", + "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" + }, + "updateMask": { + "location": "query", + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "flatPath": "v1/readgroupsets/{readGroupSetId}" } } }, @@ -1258,11 +1352,11 @@ "$ref": "SearchReadsRequest" }, "description": "Gets a list of reads for one or more read group sets.\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).", - "httpMethod": "POST", - "parameterOrder": [], "response": { "$ref": "SearchReadsResponse" }, + "parameterOrder": [], + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics", @@ -1270,275 +1364,165 @@ ], "parameters": {}, "flatPath": "v1/reads/search", - "id": "genomics.reads.search", - "path": "v1/reads/search" + "path": "v1/reads/search", + "id": "genomics.reads.search" } } }, - "readgroupsets": { + "callsets": { "methods": { "delete": { - "parameters": { - "readGroupSetId": { - "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" - } - }, - "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", - "description": "Deletes a read group set.", + "description": "Deletes a call set.", "response": { "$ref": "Empty" }, "parameterOrder": [ - "readGroupSetId" + "callSetId" ], - "httpMethod": "DELETE" - }, - "import": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, + "httpMethod": "DELETE", "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", - "description": "Creates read group sets by asynchronously importing the provided\ninformation.\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)", - "request": { - "$ref": "ImportReadGroupSetsRequest" - } - }, - "export": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "readGroupSetId" - ], - "httpMethod": "POST", "parameters": { - "readGroupSetId": { + "callSetId": { + "description": "The ID of the call set to be deleted.", "required": true, "type": "string", - "location": "path", - "description": "Required. The ID of the read group set to export. The caller must have\nREAD access to this read group set." + "location": "path" } }, - "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", - "path": "v1/readgroupsets/{readGroupSetId}:export", - "id": "genomics.readgroupsets.export", - "description": "Exports a read group set to a BAM file in Google Cloud Storage.\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.", - "request": { - "$ref": "ExportReadGroupSetRequest" - } + "flatPath": "v1/callsets/{callSetId}", + "path": "v1/callsets/{callSetId}", + "id": "genomics.callsets.delete" }, "search": { "response": { - "$ref": "SearchReadGroupSetsResponse" + "$ref": "SearchCallSetsResponse" }, "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" ], - "parameters": {}, - "flatPath": "v1/readgroupsets/search", - "path": "v1/readgroupsets/search", - "id": "genomics.readgroupsets.search", + "flatPath": "v1/callsets/search", + "path": "v1/callsets/search", + "id": "genomics.callsets.search", + "description": "Gets a list of call sets matching the criteria.\n\nImplements\n[GlobalAllianceApi.searchCallSets](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/variantmethods.avdl#L178).", "request": { - "$ref": "SearchReadGroupSetsRequest" - }, - "description": "Searches for read group sets matching the criteria.\n\nImplements\n[GlobalAllianceApi.searchReadGroupSets](https://github.com/ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/readmethods.avdl#L135)." + "$ref": "SearchCallSetsRequest" + } }, - "get": { - "path": "v1/readgroupsets/{readGroupSetId}", - "id": "genomics.readgroupsets.get", - "description": "Gets a read group set by ID.", + "patch": { + "request": { + "$ref": "CallSet" + }, + "description": "Updates a call set.\n\nThis method supports patch semantics.", "response": { - "$ref": "ReadGroupSet" + "$ref": "CallSet" }, "parameterOrder": [ - "readGroupSetId" + "callSetId" ], - "httpMethod": "GET", + "httpMethod": "PATCH", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" + "https://www.googleapis.com/auth/genomics" ], "parameters": { - "readGroupSetId": { + "callSetId": { "location": "path", - "description": "The ID of the read group set.", + "description": "The ID of the call set to be updated.", "required": true, "type": "string" + }, + "updateMask": { + "location": "query", + "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" } }, - "flatPath": "v1/readgroupsets/{readGroupSetId}" + "flatPath": "v1/callsets/{callSetId}", + "path": "v1/callsets/{callSetId}", + "id": "genomics.callsets.patch" }, - "patch": { - "id": "genomics.readgroupsets.patch", - "path": "v1/readgroupsets/{readGroupSetId}", - "description": "Updates a read group set.\n\nThis method supports patch semantics.", - "request": { - "$ref": "ReadGroupSet" + "get": { + "description": "Gets a call set by ID.", + "httpMethod": "GET", + "response": { + "$ref": "CallSet" }, - "httpMethod": "PATCH", "parameterOrder": [ - "readGroupSetId" + "callSetId" ], - "response": { - "$ref": "ReadGroupSet" - }, "parameters": { - "readGroupSetId": { - "location": "path", - "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.", + "callSetId": { + "description": "The ID of the call set.", "required": true, - "type": "string" - }, - "updateMask": { - "location": "query", - "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" + "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/callsets/{callSetId}", + "id": "genomics.callsets.get", + "path": "v1/callsets/{callSetId}" + }, + "create": { + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "CallSet" + }, + "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics" ], - "flatPath": "v1/readgroupsets/{readGroupSetId}" - } - }, - "resources": { - "coveragebuckets": { - "methods": { - "list": { - "httpMethod": "GET", - "parameterOrder": [ - "readGroupSetId" - ], - "response": { - "$ref": "ListCoverageBucketsResponse" - }, - "parameters": { - "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 results to return in a single page. If unspecified,\ndefaults to 1024. The maximum value is 2048.", - "format": "int32", - "type": "integer" - }, - "start": { - "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" - }, - "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" - }, - "readGroupSetId": { - "location": "path", - "description": "Required. The ID of the read group set over which coverage is requested.", - "required": true, - "type": "string" - }, - "referenceName": { - "description": "The name of the reference to query, within the reference set associated\nwith this query. Optional.", - "type": "string", - "location": "query" - }, - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics", - "https://www.googleapis.com/auth/genomics.readonly" - ], - "flatPath": "v1/readgroupsets/{readGroupSetId}/coveragebuckets", - "id": "genomics.readgroupsets.coveragebuckets.list", - "path": "v1/readgroupsets/{readGroupSetId}/coveragebuckets", - "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\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." - } + "flatPath": "v1/callsets", + "id": "genomics.callsets.create", + "path": "v1/callsets", + "description": "Creates a new call set.", + "request": { + "$ref": "CallSet" } } } } }, "parameters": { - "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": { "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" }, - "uploadType": { + "callback": { + "type": "string", "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" + "description": "JSONP" }, "$.xgafv": { + "description": "V1 error format.", + "type": "string", "enumDescriptions": [ "v1 error format", "v2 error format" @@ -1547,18 +1531,9 @@ "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", @@ -1570,164 +1545,171 @@ "Media download with context-dependent Content-Type", "Responses with Content-Type of application/x-protobuf" ], - "location": "query" + "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", + "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" }, - "key": { + "pp": { + "description": "Pretty-print response.", + "type": "boolean", + "default": "true", + "location": "query" + }, + "bearer_token": { + "location": "query", + "description": "OAuth bearer token.", + "type": "string" + }, + "oauth_token": { "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." + "description": "OAuth 2.0 token for the current user." }, - "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.", + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", "type": "string", "location": "query" } }, "schemas": { - "ImportVariantsResponse": { + "UndeleteDatasetRequest": { + "properties": {}, + "id": "UndeleteDatasetRequest", + "type": "object" + }, + "Binding": { + "description": "Associates `members` with a `role`.", "type": "object", "properties": { - "callSetIds": { + "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` .\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" - }, - "description": "IDs of the call sets created during the import." + } + }, + "role": { + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "type": "string" } }, - "id": "ImportVariantsResponse", - "description": "The variant data import response." + "id": "Binding" }, - "WorkerAssignedEvent": { - "description": "This event is generated once a worker VM has been assigned to run the\npipeline.", + "Range": { "type": "object", "properties": { - "instance": { - "description": "The worker's instance name.", + "start": { + "description": "The start position of the range on the reference, 0-based inclusive.", + "format": "int64", "type": "string" }, - "zone": { - "description": "The zone the worker is running in.", + "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": "WorkerAssignedEvent" + "id": "Range", + "description": "A 0-based half-open genomic coordinate range for search requests." }, - "ReadGroup": { - "description": "A read group is all the data that's processed the same way by the sequencer.", + "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.", "type": "object", "properties": { - "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" - }, "datasetId": { - "description": "The dataset to which this read group belongs.", + "description": "The dataset to which this variant set belongs.", "type": "string" }, - "experiment": { - "$ref": "Experiment", - "description": "The experiment used to generate this read group." - }, "name": { - "description": "The read group name. This corresponds to the @RG ID field in the SAM spec.", + "description": "User-specified, mutable name.", "type": "string" }, "referenceSetId": { - "description": "The reference set the reads in this read group are aligned to.", + "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" }, - "info": { - "additionalProperties": { - "type": "array", - "items": { - "type": "any" - } - }, - "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" - }, - "id": { - "type": "string", - "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." + "metadata": { + "description": "The metadata associated with this variant set.", + "type": "array", + "items": { + "$ref": "VariantSetMetadata" + } }, - "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.", + "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": "Program" + "$ref": "ReferenceBound" } }, - "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" + "id": { + "description": "The server-generated variant set ID, unique across all variant sets.", + "type": "string" + }, + "description": { + "description": "A textual description of this variant set.", + "type": "string" } }, - "id": "ReadGroup" + "id": "VariantSet" }, - "ReadGroupSet": { + "ReferenceBound": { + "description": "ReferenceBound records an upper bound for the starting coordinate of\nvariants in a particular reference.", + "type": "object", "properties": { - "info": { - "description": "A map of additional read group set information.", - "type": "object", - "additionalProperties": { - "type": "array", - "items": { - "type": "any" - } - } - }, - "id": { - "description": "The server-generated read group set ID, unique for all read group sets.", + "upperBound": { + "description": "An upper bound (inclusive) on the starting coordinate of any\nvariant in the reference sequence.", + "format": "int64", "type": "string" }, - "datasetId": { - "description": "The dataset to which this read group set belongs.", + "referenceName": { + "description": "The name of the reference associated with this reference bound.", "type": "string" - }, - "readGroups": { - "description": "The read groups in this set. There are typically 1-10 read groups in a read\ngroup set.", + } + }, + "id": "ReferenceBound" + }, + "BatchCreateAnnotationsResponse": { + "type": "object", + "properties": { + "entries": { + "description": "The resulting per-annotation entries, ordered consistently with the\noriginal request.", "type": "array", "items": { - "$ref": "ReadGroup" + "$ref": "Entry" } - }, - "filename": { - "description": "The filename of the original source file for this read group set, if any.", - "type": "string" - }, - "name": { - "type": "string", - "description": "The read group set name. By default this will be initialized to the sample\nname of the sequenced data contained in this set." - }, - "referenceSetId": { - "description": "The reference set to which the reads in this read group set are aligned.", - "type": "string" } }, - "id": "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.", - "type": "object" + "id": "BatchCreateAnnotationsResponse" }, - "SearchVariantSetsResponse": { - "description": "The search variant sets response.", + "SearchCallSetsResponse": { + "description": "The call set search response.", "type": "object", "properties": { - "variantSets": { - "description": "The variant sets belonging to the requested dataset.", + "callSets": { + "description": "The list of matching call sets.", "type": "array", "items": { - "$ref": "VariantSet" + "$ref": "CallSet" } }, "nextPageToken": { @@ -1735,1258 +1717,1112 @@ "type": "string" } }, - "id": "SearchVariantSetsResponse" - }, - "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" + "id": "SearchCallSetsResponse" }, - "Entry": { + "Variant": { "properties": { - "status": { - "description": "The creation status.", - "$ref": "Status" + "id": { + "description": "The server-generated variant ID, unique across all variants.", + "type": "string" }, - "annotation": { - "$ref": "Annotation", - "description": "The created annotation, if creation was successful." - } - }, - "id": "Entry", - "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.", - "type": "object", - "properties": { - "position": { - "description": "The 0-based offset from the start of the forward strand for that reference.", - "format": "int64", + "variantSetId": { + "description": "The ID of the variant set this variant belongs to.", "type": "string" }, "referenceName": { - "description": "The name of the reference in whatever reference set is being used.", + "description": "The reference on which this variant occurs.\n(such as `chr20` or `X`)", "type": "string" }, - "reverseStrand": { - "description": "Whether this position is on the reverse strand, as opposed to the forward\nstrand.", - "type": "boolean" - } - }, - "id": "Position" - }, - "SearchReferenceSetsResponse": { - "id": "SearchReferenceSetsResponse", - "type": "object", - "properties": { - "referenceSets": { + "info": { + "additionalProperties": { + "type": "array", + "items": { + "type": "any" + } + }, + "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" + }, + "referenceBases": { + "type": "string", + "description": "The reference bases for this variant. They start at the given\nposition." + }, + "names": { + "description": "Names for the variant, for example a RefSNP ID.", "type": "array", "items": { - "$ref": "ReferenceSet" - }, - "description": "The matching references sets." + "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" - } - } - }, - "SearchCallSetsRequest": { - "description": "The call set search request.", - "type": "object", - "properties": { - "name": { - "description": "Only return call sets for which a substring of the name matches this\nstring.", - "type": "string" + "alternateBases": { + "description": "The bases that appear instead of the reference bases.", + "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.", + "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" }, - "pageSize": { - "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 1024.", - "format": "int32", - "type": "integer" - }, - "variantSetIds": { - "description": "Restrict the query to call sets within the given variant sets. At least one\nID must be provided.", + "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": "SearchCallSetsRequest" - }, - "ImportReadGroupSetsRequest": { - "description": "The read group set import request.", - "type": "object", - "properties": { - "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.", + }, + "calls": { + "description": "The variant calls for this particular variant. Each one represents the\ndetermination of genotype with respect to this variant.", "type": "array", "items": { - "type": "string" + "$ref": "VariantCall" } }, - "referenceSetId": { - "type": "string", - "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." + "created": { + "description": "The date this variant was created, in milliseconds from the epoch.", + "format": "int64", + "type": "string" }, - "partitionStrategy": { - "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." - ], - "enum": [ - "PARTITION_STRATEGY_UNSPECIFIED", - "PER_FILE_PER_SAMPLE", - "MERGE_ALL" - ], - "description": "The partition strategy describes how read groups are partitioned into read\ngroup sets.", + "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" }, - "datasetId": { - "type": "string", - "description": "Required. The ID of the dataset these read group sets will belong to. The\ncaller must have WRITE permissions to this dataset." + "quality": { + "description": "A measure of how likely this variant is to be real.\nA higher value is better.", + "format": "double", + "type": "number" } }, - "id": "ImportReadGroupSetsRequest" + "id": "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\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" }, - "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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\n\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", "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.", + "operations": { + "description": "A list of operations that matches the specified filter in the request.", "type": "array", "items": { - "$ref": "Binding" + "$ref": "Operation" } + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" } }, - "id": "Policy" + "id": "ListOperationsResponse" }, - "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.", + "OperationMetadata": { + "id": "OperationMetadata", + "description": "Metadata describing an Operation.", "type": "object", "properties": { - "exitStatus": { - "description": "The exit status of the container.", - "format": "int32", - "type": "integer" + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optionally provided by the caller when submitting the request that creates\nthe operation.", + "type": "object" }, - "actionId": { - "description": "The numeric ID of the action that started the container.", - "format": "int32", - "type": "integer" + "createTime": { + "description": "The time at which the job was submitted to the Genomics service.", + "format": "google-datetime", + "type": "string" + }, + "projectId": { + "description": "The Google Cloud Project in which the job is scoped.", + "type": "string" + }, + "clientId": { + "description": "This field is deprecated. Use `labels` instead. Optionally provided by the\ncaller when submitting the request that creates the operation.", + "type": "string" + }, + "endTime": { + "description": "The time at which the job stopped running.", + "format": "google-datetime", + "type": "string" + }, + "events": { + "type": "array", + "items": { + "$ref": "OperationEvent" + }, + "description": "Optional event messages that were generated during the job's execution.\nThis also contains any warnings that were generated during import\nor export." + }, + "startTime": { + "description": "The time at which the job began to run.", + "format": "google-datetime", + "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" } - }, - "id": "UnexpectedExitStatusEvent" + } }, - "SearchReadsRequest": { - "description": "The read search request.", + "SearchVariantsRequest": { + "description": "The variant search request.", "type": "object", "properties": { - "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`.", + "referenceName": { + "description": "Required. Only return variants in this reference sequence.", + "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.", "type": "array", "items": { "type": "string" } }, "end": { - "description": "The end position of the range on the reference, 0-based exclusive. If\nspecified, `referenceName` must also be specified.", + "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": { - "type": "string", - "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." + "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.", + "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 start position of the range on the reference, 0-based inclusive. If\nspecified, `referenceName` must also be specified.", + "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" }, - "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.", + "variantName": { + "description": "Only return variants which have exactly this name.", "type": "string" - }, - "readGroupSetIds": { - "type": "array", - "items": { - "type": "string" - }, - "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`." } }, - "id": "SearchReadsRequest" - }, - "CancelOperationRequest": { - "properties": {}, - "id": "CancelOperationRequest", - "description": "The request message for Operations.CancelOperation.", - "type": "object" + "id": "SearchVariantsRequest" }, - "Annotation": { + "SearchReadGroupSetsRequest": { "type": "object", "properties": { - "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": { - "type": "string", - "description": "The display name corresponding to the reference specified by\n`referenceId`, for example `chr1`, `1`, or `chrX`." - }, - "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" - }, - "type": { - "enum": [ - "ANNOTATION_TYPE_UNSPECIFIED", - "GENERIC", - "VARIANT", - "GENE", - "TRANSCRIPT" - ], - "description": "The data type for this annotation. Must match the containing annotation\nset's type.", - "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." - ] - }, - "end": { - "type": "string", - "description": "The end position of the range on the reference, 0-based exclusive.", - "format": "int64" - }, - "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" - }, - "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" + "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" + } }, "name": { - "description": "The display name of this annotation.", + "description": "Only return read group sets for which a substring of the name matches this\nstring.", "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": { - "description": "The server-generated annotation ID, unique across all annotations.", + "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 Google Genomics reference associated with this range.", - "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" } }, - "id": "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`." + "id": "SearchReadGroupSetsRequest", + "description": "The read group set search request." }, - "Operation": { - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "SearchAnnotationsResponse": { "type": "object", "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`", + "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" }, - "error": { - "$ref": "Status", - "description": "The error result of the operation in case of failure or cancellation." - }, - "metadata": { - "description": "An OperationMetadata or Metadata object. This will always be returned with the Operation.", - "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": { - "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" - } - }, - "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": { - "$ref": "ComputeEngine", - "description": "Execution information specific to Google Compute Engine." - } - }, - "id": "RuntimeMetadata" - }, - "ImportReadGroupSetsResponse": { - "description": "The read group set import response.", - "type": "object", - "properties": { - "readGroupSetIds": { - "description": "IDs of the read group sets that were created.", + "annotations": { + "description": "The matching annotations.", "type": "array", "items": { - "type": "string" + "$ref": "Annotation" } } }, - "id": "ImportReadGroupSetsResponse" + "id": "SearchAnnotationsResponse" }, - "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.", + "ClinicalCondition": { "type": "object", "properties": { - "phaseset": { - "type": "string", - "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 `*`." - }, - "info": { - "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", - "additionalProperties": { - "type": "array", - "items": { - "type": "any" - } - } - }, - "callSetName": { - "description": "The name of the call set this variant call belongs to.", + "omimId": { + "description": "The OMIM id for this condition.\nSearch for these IDs at http://omim.org/", "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`.", + "externalIds": { + "description": "The set of external IDs for this condition.", "type": "array", "items": { - "format": "double", - "type": "number" + "$ref": "ExternalId" } }, - "callSetId": { - "description": "The ID of the call set this variant call belongs to.", + "conceptId": { + "description": "The MedGen concept id associated with this gene.\nSearch for these IDs at http://www.ncbi.nlm.nih.gov/medgen/", "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.", + "names": { + "description": "A set of names for the condition.", "type": "array", "items": { - "format": "int32", - "type": "integer" + "type": "string" } } }, - "id": "VariantCall" + "id": "ClinicalCondition" }, - "SearchVariantsResponse": { - "id": "SearchVariantsResponse", - "description": "The variant search response.", + "SearchReadsResponse": { + "description": "The read search response.", "type": "object", "properties": { - "variants": { + "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": "Variant" - }, - "description": "The list of matching Variants." + "$ref": "Read" + } }, "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": "SearchReadsResponse" }, - "ListBasesResponse": { - "type": "object", + "ContainerStartedEvent": { "properties": { - "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" + "portMappings": { + "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", + "additionalProperties": { + "format": "int32", + "type": "integer" + } }, - "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" + "actionId": { + "description": "The numeric ID of the action that started this container.", + "format": "int32", + "type": "integer" }, - "sequence": { - "description": "A substring of the bases that make up this reference.", - "type": "string" + "ipAddress": { + "type": "string", + "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." } }, - "id": "ListBasesResponse" + "id": "ContainerStartedEvent", + "description": "This event is generated when a container starts.", + "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.", + "Program": { + "id": "Program", "type": "object", "properties": { - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" + "id": { + "description": "The user specified locally unique ID of the program. Used along with\n`prevProgramId` to define an ordering between programs.", + "type": "string" }, - "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.", + "version": { + "description": "The version of the program run.", "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": { - "type": "any", - "description": "Properties of the object. Contains field @type with type URL." - }, - "type": "object" - } + "name": { + "type": "string", + "description": "The display name of the program. This is typically the colloquial name of\nthe tool used, for example 'bwa' or 'picard'." + }, + "commandLine": { + "type": "string", + "description": "The command line used to run this program." + }, + "prevProgramId": { + "description": "The ID of the program run before this one.", + "type": "string" } - }, - "id": "Status" - }, - "UndeleteDatasetRequest": { - "type": "object", - "properties": {}, - "id": "UndeleteDatasetRequest" + } }, - "Binding": { - "description": "Associates `members` with a `role`.", + "ComputeEngine": { + "id": "ComputeEngine", + "description": "Describes a Compute Engine resource that is being managed by a running\npipeline.", "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` .\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", + "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" } }, - "role": { - "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "instanceName": { + "type": "string", + "description": "The instance on which the operation is running." + }, + "zone": { + "description": "The availability zone in which the instance resides.", "type": "string" } - }, - "id": "Binding" + } }, - "Range": { - "id": "Range", - "description": "A 0-based half-open genomic coordinate range for search requests.", - "type": "object", + "CoverageBucket": { "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" + "meanCoverage": { + "description": "The average number of reads which are aligned to each individual\nreference base in this bucket.", + "format": "float", + "type": "number" }, - "start": { - "description": "The start position of the range on the reference, 0-based inclusive.", - "format": "int64", - "type": "string" + "range": { + "$ref": "Range", + "description": "The genomic coordinate range spanned by this bucket." } - } + }, + "id": "CoverageBucket", + "description": "A bucket over which read coverage has been precomputed. A bucket corresponds\nto a specific range of the reference sequence.", + "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.", + "ExternalId": { "type": "object", "properties": { - "referenceBounds": { - "type": "array", - "items": { - "$ref": "ReferenceBound" - }, - "description": "A list of all references used by the variants in a variant set\nwith associated coordinate upper bounds for each one." + "sourceName": { + "description": "The name of the source of this data.", + "type": "string" }, "id": { - "type": "string", - "description": "The server-generated variant set ID, unique across all variant sets." - }, - "description": { - "type": "string", - "description": "A textual description of this variant set." - }, - "datasetId": { - "type": "string", - "description": "The dataset to which this variant set belongs." - }, - "name": { - "type": "string", - "description": "User-specified, mutable name." - }, - "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.", + "description": "The id used by the source of this data.", "type": "string" - }, - "metadata": { - "description": "The metadata associated with this variant set.", - "type": "array", - "items": { - "$ref": "VariantSetMetadata" - } } }, - "id": "VariantSet" + "id": "ExternalId" }, - "BatchCreateAnnotationsResponse": { + "SearchVariantSetsRequest": { + "description": "The search variant sets request.", "type": "object", "properties": { - "entries": { - "description": "The resulting per-annotation entries, ordered consistently with the\noriginal request.", + "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" + }, + "datasetIds": { + "description": "Exactly one dataset ID must be provided here. Only variant sets which\nbelong to this dataset will be returned.", "type": "array", "items": { - "$ref": "Entry" + "type": "string" } } }, - "id": "BatchCreateAnnotationsResponse" + "id": "SearchVariantSetsRequest" }, - "ReferenceBound": { - "description": "ReferenceBound records an upper bound for the starting coordinate of\nvariants in a particular reference.", + "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", "properties": { - "upperBound": { - "description": "An upper bound (inclusive) on the starting coordinate of any\nvariant in the reference sequence.", - "format": "int64", + "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": [ + "", + "", + "", + "", + "", + "" + ] + }, + "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" + }, + "value": { + "type": "string", + "description": "The value field for simple metadata" + }, + "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" }, - "referenceName": { - "description": "The name of the reference associated with this reference bound.", + "number": { + "description": "The number of values that can be included in a field described by this\nmetadata.", "type": "string" - } - }, - "id": "ReferenceBound" - }, - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "The standard List next-page token.", + }, + "key": { + "description": "The top-level key.", "type": "string" }, - "operations": { - "description": "A list of operations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Operation" - } + "description": { + "description": "A textual description of this metadata.", + "type": "string" } }, - "id": "ListOperationsResponse" + "id": "VariantSetMetadata" }, - "Variant": { + "Reference": { + "id": "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.", + "type": "object", "properties": { - "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.", + "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" }, - "referenceName": { - "description": "The reference on which this variant occurs.\n(such as `chr20` or `X`)", + "id": { + "description": "The server-generated reference ID, unique across all references.", "type": "string" }, - "info": { - "type": "object", - "additionalProperties": { - "type": "array", - "items": { - "type": "any" - } - }, - "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)." - }, - "referenceBases": { - "description": "The reference bases for this variant. They start at the given\nposition.", + "length": { + "description": "The length of this reference's sequence.", + "format": "int64", "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.", + "sourceAccessions": { + "description": "All known corresponding accession IDs in INSDC (GenBank/ENA/DDBJ) ideally\nwith a version number, for example `GCF_000001405.26`.", "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", + "sourceUri": { + "description": "The URI from which the sequence was obtained. Typically specifies a FASTA\nformat file.", "type": "string" }, - "filter": { - "description": "A list of filters (normally quality filters) this variant has failed.\n`PASS` indicates this variant has passed all filters.", + "ncbiTaxonId": { + "description": "ID from http://www.ncbi.nlm.nih.gov/taxonomy. For example, 9606 for human.", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "The name of this reference, for example `22`.", + "type": "string" + } + } + }, + "SearchReferenceSetsRequest": { + "type": "object", + "properties": { + "md5checksums": { "type": "array", "items": { "type": "string" - } + }, + "description": "If present, return reference sets for which the\nmd5checksum matches exactly." }, - "calls": { - "description": "The variant calls for this particular variant. Each one represents the\ndetermination of genotype with respect to this variant.", + "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": { - "$ref": "VariantCall" + "type": "string" } }, - "created": { - "description": "The date this variant was created, in milliseconds from the epoch.", - "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" }, - "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", + "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" } }, - "id": "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\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" + "id": "SearchReferenceSetsRequest" }, - "SearchCallSetsResponse": { - "description": "The call set search response.", + "SetIamPolicyRequest": { + "description": "Request message for `SetIamPolicy` method.", "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": { - "type": "array", - "items": { - "$ref": "CallSet" - }, - "description": "The list of matching call sets." + "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": "SearchCallSetsResponse" + "id": "SetIamPolicyRequest" }, - "SearchVariantsRequest": { - "description": "The variant search request.", + "DelayedEvent": { + "description": "This event is generated whenever a resource limitation or transient error\ndelays execution of a pipeline that was otherwise ready to run.", "type": "object", "properties": { - "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.", + "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.", "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", + "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" - }, - "variantName": { - "type": "string", - "description": "Only return variants which have exactly this name." - }, - "referenceName": { - "description": "Required. Only return variants in this reference sequence.", + } + }, + "id": "DelayedEvent" + }, + "MergeVariantsRequest": { + "id": "MergeVariantsRequest", + "type": "object", + "properties": { + "variantSetId": { + "description": "The destination variant set.", "type": "string" }, - "variantSetIds": { + "variants": { + "description": "The variants to be merged with existing variants.", "type": "array", "items": { + "$ref": "Variant" + } + }, + "infoMergeConfig": { + "additionalProperties": { + "enum": [ + "INFO_MERGE_OPERATION_UNSPECIFIED", + "IGNORE_NEW", + "MOVE_TO_CALLS" + ], "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" + "description": "A mapping between info field keys and the InfoMergeOperations to\nbe performed on them.", + "type": "object" } - }, - "id": "SearchVariantsRequest" + } }, - "OperationMetadata": { - "description": "Metadata describing an Operation.", + "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\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": { - "runtimeMetadata": { - "description": "Runtime metadata on this Operation.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } + "alignment": { + "description": "The linear alignment for this alignment record. This field is null for\nunmapped reads.", + "$ref": "LinearAlignment" }, - "createTime": { - "description": "The time at which the job was submitted to the Genomics service.", - "format": "google-datetime", + "numberReads": { + "description": "The number of reads in the fragment (extension to SAM flag 0x1).", + "format": "int32", + "type": "integer" + }, + "id": { + "description": "The server-generated read ID, unique across all reads. This is different\nfrom the `fragmentName`.", "type": "string" }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Optionally provided by the caller when submitting the request that creates\nthe operation.", - "type": "object" + "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" }, - "projectId": { - "description": "The Google Cloud Project in which the job is scoped.", + "fragmentName": { + "description": "The fragment name. Equivalent to QNAME (query template name) in SAM.", "type": "string" }, - "clientId": { - "description": "This field is deprecated. Use `labels` instead. Optionally provided by the\ncaller when submitting the request that creates the operation.", + "readGroupSetId": { + "description": "The ID of the read group set this read belongs to. A read belongs to\nexactly one read group set.", "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" - } + "duplicateFragment": { + "description": "The fragment is a PCR or optical duplicate (SAM flag 0x400).", + "type": "boolean" }, - "endTime": { - "description": "The time at which the job stopped running.", - "format": "google-datetime", + "readNumber": { + "type": "integer", + "description": "The read number in sequencing. 0-based and less than numberReads. This\nfield replaces SAM flag 0x40 and 0x80.", + "format": "int32" + }, + "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" }, - "startTime": { - "description": "The time at which the job began to run.", - "format": "google-datetime", + "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" }, - "request": { + "info": { "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" + "type": "array", + "items": { + "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.", + "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": { + "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.", + "$ref": "Position" + }, + "properPlacement": { + "description": "The orientation and the distance between reads from the fragment are\nconsistent with the sequencing protocol (SAM flag 0x2).", + "type": "boolean" + }, + "supplementaryAlignment": { + "type": "boolean", + "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." + }, + "fragmentLength": { + "type": "integer", + "description": "The observed length of the fragment, equivalent to TLEN in SAM.", + "format": "int32" + }, + "failedVendorQualityChecks": { + "description": "Whether this read did not pass filters, such as platform or vendor quality\ncontrols (SAM flag 0x200).", + "type": "boolean" + }, + "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.", + "type": "array", + "items": { + "format": "int32", + "type": "integer" + } } }, - "id": "OperationMetadata" + "id": "Read" }, - "SearchReadGroupSetsRequest": { - "id": "SearchReadGroupSetsRequest", - "description": "The read group set search request.", + "BatchCreateAnnotationsRequest": { + "id": "BatchCreateAnnotationsRequest", "type": "object", "properties": { - "datasetIds": { - "description": "Restricts this query to read group sets within the given datasets. At least\none ID must be provided.", + "annotations": { + "description": "The annotations to be created. At most 4096 can be specified in a single\nrequest.", "type": "array", "items": { - "type": "string" + "$ref": "Annotation" } }, - "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.", + "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" - }, - "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" } } }, - "SearchAnnotationsResponse": { + "WorkerReleasedEvent": { "type": "object", "properties": { - "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." + "instance": { + "description": "The worker's instance name.", + "type": "string" }, - "annotations": { - "description": "The matching annotations.", - "type": "array", - "items": { - "$ref": "Annotation" - } + "zone": { + "description": "The zone the worker was running in.", + "type": "string" } }, - "id": "SearchAnnotationsResponse" + "id": "WorkerReleasedEvent", + "description": "This event is generated when the worker VM that was assigned to the pipeline\nhas been released (i.e., deleted)." }, - "SearchReadsResponse": { + "CigarUnit": { + "description": "A single CIGAR operation.", + "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.", + "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" }, - "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" - } + "operationLength": { + "description": "The number of genomic bases that the operation runs for. Required.", + "format": "int64", + "type": "string" + }, + "operation": { + "enum": [ + "OPERATION_UNSPECIFIED", + "ALIGNMENT_MATCH", + "INSERT", + "DELETE", + "SKIP", + "CLIP_SOFT", + "CLIP_HARD", + "PAD", + "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`.", + "The insert operator indicates that the read contains evidence of bases\nbeing inserted into the reference. This operator is equivalent to SAM's\n`I`.", + "The delete operator indicates that the read contains evidence of bases\nbeing deleted from the reference. This operator is equivalent to SAM's\n`D`.", + "The skip operator indicates that this read skips a long segment of the\nreference, but the bases have not been deleted. This operator is commonly\nused when working with RNA-seq data, where reads may skip long segments\nof the reference between exons. This operator is equivalent to SAM's\n`N`.", + "The soft clip operator indicates that bases at the start/end of a read\nhave not been considered during alignment. This may occur if the majority\nof a read maps, except for low quality bases at the start/end of a read.\nThis operator is equivalent to SAM's `S`. Bases that are soft\nclipped will still be stored in the read.", + "The hard clip operator indicates that bases at the start/end of a read\nhave been omitted from this alignment. This may occur if this linear\nalignment is part of a chimeric alignment, or if the read has been\ntrimmed (for example, during error correction or to trim poly-A tails for\nRNA-seq). This operator is equivalent to SAM's `H`.", + "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`." + ] } }, - "id": "SearchReadsResponse", - "description": "The read search response.", - "type": "object" + "id": "CigarUnit" }, - "ClinicalCondition": { + "ReferenceSet": { + "id": "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.", "type": "object", "properties": { - "conceptId": { - "description": "The MedGen concept id associated with this gene.\nSearch for these IDs at http://www.ncbi.nlm.nih.gov/medgen/", + "id": { + "description": "The server-generated reference set ID, unique across all reference sets.", "type": "string" }, - "names": { - "description": "A set of names for the condition.", + "sourceAccessions": { + "description": "All known corresponding accession IDs in INSDC (GenBank/ENA/DDBJ) ideally\nwith a version number, for example `NC_000001.11`.", "type": "array", "items": { "type": "string" } }, - "omimId": { - "description": "The OMIM id for this condition.\nSearch for these IDs at http://omim.org/", + "description": { + "description": "Free text description of this reference set.", "type": "string" }, - "externalIds": { - "type": "array", - "items": { - "$ref": "ExternalId" - }, - "description": "The set of external IDs for this condition." - } - }, - "id": "ClinicalCondition" - }, - "Program": { - "properties": { - "commandLine": { - "description": "The command line used to run this program.", - "type": "string" + "sourceUri": { + "type": "string", + "description": "The URI from which the references were obtained." }, - "prevProgramId": { - "description": "The ID of the program run before this one.", - "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" }, - "id": { - "description": "The user specified locally unique ID of the program. Used along with\n`prevProgramId` to define an ordering between programs.", - "type": "string" + "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", + "items": { + "type": "string" + } }, - "version": { - "description": "The version of the program run.", + "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" }, - "name": { - "type": "string", - "description": "The display name of the program. This is typically the colloquial name of\nthe tool used, for example 'bwa' or 'picard'." - } - }, - "id": "Program", - "type": "object" - }, - "ContainerStartedEvent": { - "description": "This event is generated when a container starts.", - "type": "object", - "properties": { - "ipAddress": { + "assemblyId": { "type": "string", - "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." - }, - "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" - }, - "actionId": { - "description": "The numeric ID of the action that started this container.", - "format": "int32", - "type": "integer" - } - }, - "id": "ContainerStartedEvent" - }, - "CoverageBucket": { - "properties": { - "range": { - "description": "The genomic coordinate range spanned by this bucket.", - "$ref": "Range" - }, - "meanCoverage": { - "description": "The average number of reads which are aligned to each individual\nreference base in this bucket.", - "format": "float", - "type": "number" + "description": "Public id of this reference set, such as `GRCh37`." } - }, - "id": "CoverageBucket", - "description": "A bucket over which read coverage has been precomputed. A bucket corresponds\nto a specific range of the reference sequence.", - "type": "object" + } }, - "ComputeEngine": { - "description": "Describes a Compute Engine resource that is being managed by a running\npipeline.", + "Transcript": { + "description": "A transcript represents the assertion that a particular region of the\nreference genome may be transcribed as RNA.", "type": "object", "properties": { - "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.", + "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": { - "type": "string" + "$ref": "Exon" } }, - "instanceName": { - "description": "The instance on which the operation is running.", + "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": "ComputeEngine" + "id": "Transcript" }, - "ExternalId": { + "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", "properties": { - "id": { - "description": "The id used by the source of this data.", + "sourceUri": { + "description": "The source URI describing the file from which this annotation set was\ngenerated, if any.", "type": "string" }, - "sourceName": { - "description": "The name of the source of this data.", + "datasetId": { + "description": "The dataset to which this annotation set belongs.", "type": "string" - } - }, - "id": "ExternalId" - }, - "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", - "properties": { - "key": { - "type": "string", - "description": "The top-level key." }, - "description": { - "description": "A textual description of this metadata.", + "name": { + "description": "The display name for this annotation set.", "type": "string" }, + "referenceSetId": { + "type": "string", + "description": "The ID of the reference set that defines the coordinate space for this\nset's annotations." + }, "info": { + "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", "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": { + "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." ], "enum": [ - "TYPE_UNSPECIFIED", - "INTEGER", - "FLOAT", - "FLAG", - "CHARACTER", - "STRING" - ], - "description": "The type of data. Possible types include: Integer, Float,\nFlag, Character, and String.", - "type": "string" - }, - "value": { - "description": "The value field for simple metadata", - "type": "string" + "ANNOTATION_TYPE_UNSPECIFIED", + "GENERIC", + "VARIANT", + "GENE", + "TRANSCRIPT" + ] }, "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.", + "description": "The server-generated annotation set ID, unique across all annotation sets.", "type": "string" - }, - "number": { - "type": "string", - "description": "The number of values that can be included in a field described by this\nmetadata." } }, - "id": "VariantSetMetadata" + "id": "AnnotationSet" }, - "SearchVariantSetsRequest": { - "description": "The search variant sets request.", + "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.", "type": "object", "properties": { - "datasetIds": { - "description": "Exactly one dataset ID must be provided here. Only variant sets which\nbelong to this dataset will be returned.", - "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.", + "cause": { + "description": "The human readable description of the cause of the failure.", "type": "string" }, - "pageSize": { - "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 1024.", - "format": "int32", - "type": "integer" + "code": { + "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" + ], + "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" + ], + "description": "The Google standard error code that best describes this failure.", + "type": "string" } }, - "id": "SearchVariantSetsRequest" + "id": "FailedEvent" }, - "Reference": { + "Experiment": { "type": "object", "properties": { - "id": { - "type": "string", - "description": "The server-generated reference ID, unique across all references." - }, - "length": { - "description": "The length of this reference's sequence.", - "format": "int64", + "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" }, - "sourceAccessions": { - "description": "All known corresponding accession IDs in INSDC (GenBank/ENA/DDBJ) ideally\nwith a version number, for example `GCF_000001405.26`.", - "type": "array", - "items": { - "type": "string" - } + "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" }, - "ncbiTaxonId": { - "description": "ID from http://www.ncbi.nlm.nih.gov/taxonomy. For example, 9606 for human.", - "format": "int32", - "type": "integer" - }, - "sourceUri": { - "description": "The URI from which the sequence was obtained. Typically specifies a FASTA\nformat file.", + "instrumentModel": { + "description": "The instrument model used as part of this experiment. This maps to\nsequencing technology in the SAM spec.", "type": "string" }, - "name": { - "description": "The name of this reference, for example `22`.", + "sequencingCenter": { + "description": "The sequencing center used as part of this experiment.", "type": "string" - }, - "md5checksum": { - "type": "string", - "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." } }, - "id": "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." + "id": "Experiment" }, - "SearchReferenceSetsRequest": { + "ContainerStoppedEvent": { + "type": "object", "properties": { - "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" - } - }, - "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" - } + "actionId": { + "description": "The numeric ID of the action that started this container.", + "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.", + "stderr": { + "description": "The tail end of any content written to standard error by the container.\nTo prevent this from being recorded if the action is known to emit\nlarge amounts of debugging noise or sensitive information, set the\nDISABLE_STANDARD_ERROR_CAPTURE flag.\n\nNote that only a small amount of the end of the stream is captured here.\nThe entire stream is stored in the /google/logs directory mounted into\neach action, and may be copied off the machine as described elsewhere.", "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.", + "exitStatus": { + "description": "The exit status of the container.", "format": "int32", "type": "integer" } }, - "id": "SearchReferenceSetsRequest", - "type": "object" + "id": "ContainerStoppedEvent", + "description": "This event is generated when a container exits." }, - "SetIamPolicyRequest": { + "ListDatasetsResponse": { + "description": "The dataset list response.", "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." + "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": "SetIamPolicyRequest", - "description": "Request message for `SetIamPolicy` method." + "id": "ListDatasetsResponse" }, - "DelayedEvent": { - "description": "This event is generated whenever a resource limitation or transient error\ndelays execution of a pipeline that was otherwise ready to run.", + "TestIamPermissionsRequest": { + "description": "Request message for `TestIamPermissions` method.", "type": "object", "properties": { - "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.", + "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" } - }, - "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" } }, - "id": "DelayedEvent" + "id": "TestIamPermissionsRequest" }, - "MergeVariantsRequest": { + "ExportReadGroupSetRequest": { + "description": "The read group set export request.", "type": "object", "properties": { - "variants": { - "description": "The variants to be merged with existing variants.", + "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", "items": { - "$ref": "Variant" - } - }, - "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.", + "projectId": { + "description": "Required. The Google Cloud project ID that owns this\nexport. The caller must have WRITE access to this project.", "type": "string" } }, - "id": "MergeVariantsRequest" + "id": "ExportReadGroupSetRequest" }, - "Read": { + "Exon": { + "type": "object", "properties": { - "numberReads": { - "description": "The number of reads in the fragment (extension to SAM flag 0x1).", + "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.", + "format": "int64", + "type": "string" + }, + "frame": { + "description": "The frame of this exon. Contains a value of 0, 1, or 2, which indicates\nthe offset of the first coding base of the exon within the reading frame\nof the coding DNA sequence, if any. This field is dependent on the\nstrandedness of this annotation (see\nAnnotation.reverse_strand).\nFor forward stranded annotations, this offset is relative to the\nexon.start. For reverse\nstrand annotations, this offset is relative to the\nexon.end `- 1`.\n\nUnset if this exon does not intersect the coding sequence. Upon creation\nof a transcript, the frame must be populated for all or none of the\ncoding exons.", "format": "int32", "type": "integer" }, - "id": { - "description": "The server-generated read ID, unique across all reads. This is different\nfrom the `fragmentName`.", + "start": { + "description": "The start position of the exon on this annotation's reference sequence,\n0-based inclusive. Note that this is relative to the reference start, and\n**not** the containing annotation start.", + "format": "int64", "type": "string" - }, - "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.", + } + }, + "id": "Exon" + }, + "PullStartedEvent": { + "description": "This event is generated when the worker starts pulling an image.", + "type": "object", + "properties": { + "imageUri": { + "description": "The URI of the image that was pulled.", "type": "string" - }, - "readGroupSetId": { - "description": "The ID of the read group set this read belongs to. A read belongs to\nexactly one read group set.", + } + }, + "id": "PullStartedEvent" + }, + "CallSet": { + "properties": { + "created": { + "description": "The date this call set was created in milliseconds from the epoch.", + "format": "int64", "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).", + "sampleId": { + "description": "The sample ID this call set corresponds to.", "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.", + "name": { + "description": "The call set name.", "type": "string" }, "info": { - "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).", + "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", "additionalProperties": { "type": "array", @@ -2995,750 +2831,873 @@ } } }, - "nextMatePosition": { - "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.", - "$ref": "Position" - }, - "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": { - "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.", + "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", "items": { - "format": "int32", - "type": "integer" + "type": "string" } }, - "alignment": { - "$ref": "LinearAlignment", - "description": "The linear alignment for this alignment record. This field is null for\nunmapped reads." + "id": { + "description": "The server-generated call set ID, unique across all call sets.", + "type": "string" } }, - "id": "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\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": "CallSet", + "description": "A call set is a collection of variant calls, typically for one sample. It\nbelongs to a variant set.", "type": "object" }, - "BatchCreateAnnotationsRequest": { - "type": "object", + "SearchAnnotationSetsResponse": { "properties": { - "annotations": { - "description": "The annotations to be created. At most 4096 can be specified in a single\nrequest.", + "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" + }, + "annotationSets": { + "description": "The matching annotation sets.", "type": "array", "items": { - "$ref": "Annotation" + "$ref": "AnnotationSet" } - }, - "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": "BatchCreateAnnotationsRequest" + "id": "SearchAnnotationSetsResponse", + "type": "object" }, - "WorkerReleasedEvent": { - "description": "This event is generated when the worker VM that was assigned to the pipeline\nhas been released (i.e., deleted).", + "PullStoppedEvent": { + "id": "PullStoppedEvent", + "description": "This event is generated when the worker stops pulling an image.", "type": "object", "properties": { - "instance": { - "description": "The worker's instance name.", - "type": "string" - }, - "zone": { - "description": "The zone the worker was running in.", + "imageUri": { + "description": "The URI of the image that was pulled.", "type": "string" } - }, - "id": "WorkerReleasedEvent" + } }, - "CigarUnit": { + "ImportVariantsRequest": { + "description": "The variant data import request.", + "type": "object", "properties": { - "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" + "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. This is plumbed down to the MergeVariantRequests\ngenerated by the resulting import job.", + "type": "object" }, - "operationLength": { - "description": "The number of genomic bases that the operation runs for. Required.", - "format": "int64", + "variantSetId": { + "description": "Required. The variant set to which variant data should be imported.", "type": "string" }, - "operation": { + "sourceUris": { + "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", + "items": { + "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" + }, + "format": { + "enum": [ + "FORMAT_UNSPECIFIED", + "FORMAT_VCF", + "FORMAT_COMPLETE_GENOMICS" + ], + "description": "The format of the variant data being imported. If unspecified, defaults to\nto `VCF`.", "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`.", - "The insert operator indicates that the read contains evidence of bases\nbeing inserted into the reference. This operator is equivalent to SAM's\n`I`.", - "The delete operator indicates that the read contains evidence of bases\nbeing deleted from the reference. This operator is equivalent to SAM's\n`D`.", - "The skip operator indicates that this read skips a long segment of the\nreference, but the bases have not been deleted. This operator is commonly\nused when working with RNA-seq data, where reads may skip long segments\nof the reference between exons. This operator is equivalent to SAM's\n`N`.", - "The soft clip operator indicates that bases at the start/end of a read\nhave not been considered during alignment. This may occur if the majority\nof a read maps, except for low quality bases at the start/end of a read.\nThis operator is equivalent to SAM's `S`. Bases that are soft\nclipped will still be stored in the read.", - "The hard clip operator indicates that bases at the start/end of a read\nhave been omitted from this alignment. This may occur if this linear\nalignment is part of a chimeric alignment, or if the read has been\ntrimmed (for example, during error correction or to trim poly-A tails for\nRNA-seq). This operator is equivalent to SAM's `H`.", - "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`." - ], - "enum": [ - "OPERATION_UNSPECIFIED", - "ALIGNMENT_MATCH", - "INSERT", - "DELETE", - "SKIP", - "CLIP_SOFT", - "CLIP_HARD", - "PAD", - "SEQUENCE_MATCH", - "SEQUENCE_MISMATCH" + "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." ] } }, - "id": "CigarUnit", - "description": "A single CIGAR operation.", - "type": "object" + "id": "ImportVariantsRequest" }, - "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.", + "ListCoverageBucketsResponse": { "type": "object", "properties": { - "id": { - "description": "The server-generated reference set ID, unique across all reference sets.", + "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" + } + }, + "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" }, - "description": { - "description": "Free text description of this reference set.", + "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", + "type": "string" + } + }, + "id": "ListCoverageBucketsResponse" + }, + "VariantAnnotation": { + "type": "object", + "properties": { + "geneId": { + "description": "Google annotation ID of the gene affected by this variant. This should\nbe provided when the variant is created.", "type": "string" }, - "sourceAccessions": { + "clinicalSignificance": { + "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/", + "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." + ], + "enum": [ + "CLINICAL_SIGNIFICANCE_UNSPECIFIED", + "CLINICAL_SIGNIFICANCE_OTHER", + "UNCERTAIN", + "BENIGN", + "LIKELY_BENIGN", + "LIKELY_PATHOGENIC", + "PATHOGENIC", + "DRUG_RESPONSE", + "HISTOCOMPATIBILITY", + "CONFERS_SENSITIVITY", + "RISK_FACTOR", + "ASSOCIATION", + "PROTECTIVE", + "MULTIPLE_REPORTED" + ] + }, + "conditions": { + "description": "The set of conditions associated with this variant.\nA condition describes the way a variant influences human health.", "type": "array", "items": { - "type": "string" - }, - "description": "All known corresponding accession IDs in INSDC (GenBank/ENA/DDBJ) ideally\nwith a version number, for example `NC_000001.11`." - }, - "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" + "$ref": "ClinicalCondition" + } }, - "sourceUri": { - "description": "The URI from which the references were obtained.", + "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.", "type": "string" }, - "referenceIds": { - "description": "The IDs of the reference objects that are part of this set.\n`Reference.md5checksum` must be unique within this set.", + "transcriptIds": { + "description": "Google annotation IDs of the transcripts affected by this variant. These\nshould be provided when the variant is created.", "type": "array", "items": { "type": "string" } }, - "assemblyId": { - "description": "Public id of this reference set, such as `GRCh37`.", - "type": "string" + "type": { + "enum": [ + "TYPE_UNSPECIFIED", + "TYPE_OTHER", + "INSERTION", + "DELETION", + "SUBSTITUTION", + "SNP", + "STRUCTURAL", + "CNV" + ], + "description": "Type has been adapted from ClinVar's list of variant types.", + "type": "string", + "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." + ] }, - "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.", + "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" } }, - "id": "ReferenceSet" + "id": "VariantAnnotation" }, - "Transcript": { + "ExportVariantSetRequest": { + "description": "The variant data export request.", "type": "object", "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.", + "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": { - "$ref": "Exon" + "type": "string" } }, - "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." + "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" }, - "geneId": { - "description": "The annotation ID of the gene from which this transcript is transcribed.", + "format": { + "description": "The format for the exported data.", + "type": "string", + "enumDescriptions": [ + "", + "Export the data to Google BigQuery." + ], + "enum": [ + "FORMAT_UNSPECIFIED", + "FORMAT_BIGQUERY" + ] + }, + "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" + }, + "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" } }, - "id": "Transcript", - "description": "A transcript represents the assertion that a particular region of the\nreference genome may be transcribed as RNA." + "id": "ExportVariantSetRequest" }, - "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'.", + "Event": { + "description": "Event carries information about events that occur during pipeline execution.", "type": "object", "properties": { - "name": { - "description": "The display name for this annotation set.", - "type": "string" - }, - "referenceSetId": { - "description": "The ID of the reference set that defines the coordinate space for this\nset's annotations.", + "timestamp": { + "description": "The time that the event occurred.", + "format": "google-datetime", "type": "string" }, - "info": { + "details": { "additionalProperties": { - "type": "array", - "items": { - "type": "any" - } + "description": "Properties of the object. Contains field @type with type URL.", + "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).", + "description": "Machine readable details about the event.", "type": "object" }, - "type": { - "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." - ], - "enum": [ - "ANNOTATION_TYPE_UNSPECIFIED", - "GENERIC", - "VARIANT", - "GENE", - "TRANSCRIPT" - ], - "description": "The type of annotations contained within this set." + "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" + } + }, + "id": "Event" + }, + "SearchAnnotationsRequest": { + "type": "object", + "properties": { + "referenceId": { + "description": "The ID of the reference to query.", + "type": "string" }, - "id": { - "description": "The server-generated annotation set ID, unique across all annotation sets.", + "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": { + "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" + }, + "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.", + "type": "array", + "items": { + "type": "string" + } + }, + "referenceName": { + "description": "The name of the reference to query, within the reference set associated\nwith this query.", + "type": "string" + } + }, + "id": "SearchAnnotationsRequest" + }, + "OperationEvent": { + "id": "OperationEvent", + "description": "An event that occurred during an Operation.", + "type": "object", + "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" }, - "sourceUri": { - "description": "The source URI describing the file from which this annotation set was\ngenerated, if any.", + "startTime": { + "description": "Optional time of when event started.", + "format": "google-datetime", "type": "string" }, - "datasetId": { - "description": "The dataset to which this annotation set belongs.", + "description": { + "description": "Required description of event.", "type": "string" } - }, - "id": "AnnotationSet" + } }, - "FailedEvent": { - "id": "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.", + "CodingSequence": { "type": "object", "properties": { - "cause": { - "description": "The human readable description of the cause of the failure.", + "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" }, - "code": { - "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" - ], - "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" - ], - "description": "The Google standard error code that best describes this failure.", + "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": "CodingSequence" }, - "Experiment": { - "id": "Experiment", + "TestIamPermissionsResponse": { "type": "object", "properties": { - "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" - }, - "instrumentModel": { - "description": "The instrument model used as part of this experiment. This maps to\nsequencing technology in the SAM spec.", - "type": "string" - }, - "sequencingCenter": { - "description": "The sequencing center used as part of this experiment.", - "type": "string" + "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." + }, + "GetIamPolicyRequest": { + "description": "Request message for `GetIamPolicy` method.", + "type": "object", + "properties": {}, + "id": "GetIamPolicyRequest" + }, + "SearchReferencesResponse": { + "type": "object", + "properties": { + "references": { + "description": "The matching references.", + "type": "array", + "items": { + "$ref": "Reference" + } }, - "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" + "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." } - } + }, + "id": "SearchReferencesResponse" }, - "ContainerStoppedEvent": { - "description": "This event is generated when a container exits.", + "SearchAnnotationSetsRequest": { "type": "object", "properties": { - "exitStatus": { - "description": "The exit status of the container.", - "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" }, - "actionId": { - "description": "The numeric ID of the action that started this container.", + "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" }, - "stderr": { - "description": "The tail end of any content written to standard error by the container.\nTo prevent this from being recorded if the action is known to emit\nlarge amounts of debugging noise or sensitive information, set the\nDISABLE_STANDARD_ERROR_CAPTURE flag.\n\nNote that only a small amount of the end of the stream is captured here.\nThe entire stream is stored in the /google/logs directory mounted into\neach action, and may be copied off the machine as described elsewhere.", + "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." + ] + }, + "name": { + "description": "Only return annotations sets for which a substring of the name matches this\nstring (case insensitive).", "type": "string" + }, + "referenceSetId": { + "type": "string", + "description": "If specified, only annotation sets associated with the given reference set\nare returned." } }, - "id": "ContainerStoppedEvent" + "id": "SearchAnnotationSetsRequest" }, - "ListDatasetsResponse": { - "description": "The dataset list response.", + "SearchReadGroupSetsResponse": { + "description": "The read group set search response.", "type": "object", "properties": { - "datasets": { - "description": "The list of matching Datasets.", + "readGroupSets": { "type": "array", "items": { - "$ref": "Dataset" - } + "$ref": "ReadGroupSet" + }, + "description": "The list of matching read group sets." }, "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" + "id": "SearchReadGroupSetsResponse" }, - "TestIamPermissionsRequest": { + "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": { - "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`", + "mappingQuality": { + "type": "integer", + "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" + }, + "position": { + "$ref": "Position", + "description": "The position of this alignment." + }, + "cigar": { "type": "array", "items": { - "type": "string" - } + "$ref": "CigarUnit" + }, + "description": "Represents the local alignment of this sequence (alignment matches, indels,\netc) against the reference." } }, - "id": "TestIamPermissionsRequest", - "description": "Request message for `TestIamPermissions` method." + "id": "LinearAlignment" }, - "PullStartedEvent": { - "description": "This event is generated when the worker starts pulling an image.", + "SearchReferencesRequest": { "type": "object", "properties": { - "imageUri": { - "description": "The URI of the image that was pulled.", + "accessions": { + "type": "array", + "items": { + "type": "string" + }, + "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`." + }, + "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": "PullStartedEvent" + "id": "SearchReferencesRequest" }, - "Exon": { + "Dataset": { + "description": "A Dataset is a collection of genomic data.", + "type": "object", "properties": { - "start": { - "description": "The start position of the exon on this annotation's reference sequence,\n0-based inclusive. Note that this is relative to the reference start, and\n**not** the containing annotation start.", - "format": "int64", + "name": { + "description": "The dataset name.", "type": "string" }, - "end": { - "type": "string", - "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.", - "format": "int64" + "projectId": { + "description": "The Google Cloud project ID that this dataset belongs to.", + "type": "string" }, - "frame": { - "type": "integer", - "description": "The frame of this exon. Contains a value of 0, 1, or 2, which indicates\nthe offset of the first coding base of the exon within the reading frame\nof the coding DNA sequence, if any. This field is dependent on the\nstrandedness of this annotation (see\nAnnotation.reverse_strand).\nFor forward stranded annotations, this offset is relative to the\nexon.start. For reverse\nstrand annotations, this offset is relative to the\nexon.end `- 1`.\n\nUnset if this exon does not intersect the coding sequence. Upon creation\nof a transcript, the frame must be populated for all or none of the\ncoding exons.", - "format": "int32" + "id": { + "description": "The server-generated dataset ID, unique across all datasets.", + "type": "string" + }, + "createTime": { + "description": "The time this dataset was created, in seconds from the epoch.", + "format": "google-datetime", + "type": "string" + } + }, + "id": "Dataset" + }, + "ImportVariantsResponse": { + "properties": { + "callSetIds": { + "description": "IDs of the call sets created during the import.", + "type": "array", + "items": { + "type": "string" + } } }, - "id": "Exon", + "id": "ImportVariantsResponse", + "description": "The variant data import response.", "type": "object" }, - "ExportReadGroupSetRequest": { - "id": "ExportReadGroupSetRequest", - "description": "The read group set export request.", + "WorkerAssignedEvent": { + "description": "This event is generated once a worker VM has been assigned to run the\npipeline.", "type": "object", "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.", + "instance": { + "description": "The worker's instance name.", "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", - "items": { - "type": "string" - } - }, - "projectId": { - "description": "Required. The Google Cloud project ID that owns this\nexport. The caller must have WRITE access to this project.", + "zone": { + "description": "The zone the worker is running in.", "type": "string" } - } + }, + "id": "WorkerAssignedEvent" }, - "CallSet": { - "description": "A call set is a collection of variant calls, typically for one sample. It\nbelongs to a variant set.", + "ReadGroup": { + "description": "A read group is all the data that's processed the same way by the sequencer.", "type": "object", "properties": { + "description": { + "description": "A free-form text description of this read group.", + "type": "string" + }, "sampleId": { - "description": "The sample ID this call set corresponds to.", + "description": "A client-supplied sample identifier for the reads in this read group.", + "type": "string" + }, + "datasetId": { + "description": "The dataset to which this read group belongs.", "type": "string" }, + "experiment": { + "$ref": "Experiment", + "description": "The experiment used to generate this read group." + }, "name": { - "description": "The call set name.", + "description": "The read group name. This corresponds to the @RG ID field in the SAM spec.", "type": "string" }, + "referenceSetId": { + "type": "string", + "description": "The reference set the reads in this read group are aligned to." + }, "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)." - }, - "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", - "items": { - "type": "string" - } + "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" }, "id": { "type": "string", - "description": "The server-generated call set ID, unique across all call sets." + "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." }, - "created": { - "type": "string", - "description": "The date this call set was created in milliseconds from the epoch.", - "format": "int64" - } - }, - "id": "CallSet" - }, - "PullStoppedEvent": { - "description": "This event is generated when the worker stops pulling an image.", - "type": "object", - "properties": { - "imageUri": { - "description": "The URI of the image that was pulled.", - "type": "string" - } - }, - "id": "PullStoppedEvent" - }, - "SearchAnnotationSetsResponse": { - "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" + "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" }, - "annotationSets": { - "description": "The matching annotation sets.", + "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": "AnnotationSet" + "$ref": "Program" } } }, - "id": "SearchAnnotationSetsResponse" + "id": "ReadGroup" }, - "ImportVariantsRequest": { - "id": "ImportVariantsRequest", - "description": "The variant data import request.", + "ReadGroupSet": { "type": "object", "properties": { - "variantSetId": { - "description": "Required. The variant set to which variant data should be imported.", - "type": "string" - }, - "sourceUris": { - "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.", + "readGroups": { + "description": "The read groups in this set. There are typically 1-10 read groups in a read\ngroup set.", "type": "array", "items": { - "type": "string" + "$ref": "ReadGroup" } }, - "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" + "filename": { + "description": "The filename of the original source file for this read group set, if any.", + "type": "string" }, - "format": { - "description": "The format of the variant data being imported. If unspecified, defaults to\nto `VCF`.", - "type": "string", - "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" - ] + "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" }, - "infoMergeConfig": { - "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", + "referenceSetId": { + "description": "The reference set to which the reads in this read group set are aligned.", + "type": "string" + }, + "info": { "additionalProperties": { - "enum": [ - "INFO_MERGE_OPERATION_UNSPECIFIED", - "IGNORE_NEW", - "MOVE_TO_CALLS" - ], - "type": "string" - } + "type": "array", + "items": { + "type": "any" + } + }, + "description": "A map of additional read group set information.", + "type": "object" + }, + "id": { + "description": "The server-generated read group set ID, unique for all read group sets.", + "type": "string" + }, + "datasetId": { + "description": "The dataset to which this read group set belongs.", + "type": "string" } - } + }, + "id": "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." }, - "VariantAnnotation": { + "SearchVariantSetsResponse": { + "description": "The search variant sets response.", "type": "object", "properties": { - "alternateBases": { - "type": "string", - "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." - }, - "geneId": { - "description": "Google annotation ID of the gene affected by this variant. This should\nbe provided when the variant is created.", + "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" }, - "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." - ], - "enum": [ - "CLINICAL_SIGNIFICANCE_UNSPECIFIED", - "CLINICAL_SIGNIFICANCE_OTHER", - "UNCERTAIN", - "BENIGN", - "LIKELY_BENIGN", - "LIKELY_PATHOGENIC", - "PATHOGENIC", - "DRUG_RESPONSE", - "HISTOCOMPATIBILITY", - "CONFERS_SENSITIVITY", - "RISK_FACTOR", - "ASSOCIATION", - "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/" - }, - "conditions": { - "description": "The set of conditions associated with this variant.\nA condition describes the way a variant influences human health.", + "variantSets": { + "description": "The variant sets belonging to the requested dataset.", "type": "array", "items": { - "$ref": "ClinicalCondition" + "$ref": "VariantSet" } + } + }, + "id": "SearchVariantSetsResponse" + }, + "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" + }, + "Entry": { + "type": "object", + "properties": { + "status": { + "$ref": "Status", + "description": "The creation status." }, - "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.", + "annotation": { + "$ref": "Annotation", + "description": "The created annotation, if creation was successful." + } + }, + "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": { + "position": { + "description": "The 0-based offset from the start of the forward strand for that reference.", + "format": "int64", "type": "string" }, - "transcriptIds": { - "description": "Google annotation IDs of the transcripts affected by this variant. These\nshould be provided when the variant is created.", + "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" + } + }, + "id": "Position" + }, + "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.", "type": "array", "items": { - "type": "string" + "$ref": "ReferenceSet" } - }, - "type": { - "description": "Type has been adapted from ClinVar's list of variant types.", - "type": "string", - "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" - ] } }, - "id": "VariantAnnotation" + "id": "SearchReferenceSetsResponse", + "type": "object" }, - "ListCoverageBucketsResponse": { + "SearchCallSetsRequest": { + "description": "The call set search request.", "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.", + "name": { + "description": "Only return call sets for which a substring of the name matches this\nstring.", "type": "string" }, - "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", + "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" }, - "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.", + "pageSize": { + "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 1024.", + "format": "int32", + "type": "integer" + }, + "variantSetIds": { + "description": "Restrict the query to call sets within the given variant sets. At least one\nID must be provided.", "type": "array", "items": { - "$ref": "CoverageBucket" + "type": "string" } } }, - "id": "ListCoverageBucketsResponse" + "id": "SearchCallSetsRequest" }, - "ExportVariantSetRequest": { - "description": "The variant data export request.", + "ImportReadGroupSetsRequest": { + "id": "ImportReadGroupSetsRequest", + "description": "The read group set import request.", "type": "object", "properties": { - "format": { + "partitionStrategy": { "enumDescriptions": [ "", - "Export the data to Google BigQuery." + "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." ], "enum": [ - "FORMAT_UNSPECIFIED", - "FORMAT_BIGQUERY" + "PARTITION_STRATEGY_UNSPECIFIED", + "PER_FILE_PER_SAMPLE", + "MERGE_ALL" ], - "description": "The format for the exported data.", - "type": "string" - }, - "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\".", + "description": "The partition strategy describes how read groups are partitioned into read\ngroup sets.", "type": "string" }, - "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.", + "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" }, - "callSetIds": { - "description": "If provided, only variant call information from the specified call sets\nwill be exported. By default all variant calls are exported.", + "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.", "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.", + "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" } - }, - "id": "ExportVariantSetRequest" + } }, - "Event": { - "id": "Event", - "description": "Event carries information about events that occur during pipeline execution.", + "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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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": { - "details": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "Machine readable details about the event.", - "type": "object" - }, - "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.", + "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" }, - "timestamp": { - "description": "The time that the event occurred.", - "format": "google-datetime", - "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" }, - "SearchAnnotationsRequest": { + "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.", + "type": "object", "properties": { - "referenceId": { - "description": "The ID of the reference to query.", - "type": "string" - }, - "end": { - "type": "string", - "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" + "exitStatus": { + "description": "The exit status of the container.", + "format": "int32", + "type": "integer" }, + "actionId": { + "description": "The numeric ID of the action that started the container.", + "format": "int32", + "type": "integer" + } + }, + "id": "UnexpectedExitStatusEvent" + }, + "SearchReadsRequest": { + "id": "SearchReadsRequest", + "description": "The read search request.", + "type": "object", + "properties": { "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" @@ -3749,247 +3708,286 @@ "type": "integer" }, "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.", + "description": "The start position of the range on the reference, 0-based inclusive. If\nspecified, `referenceName` must also be specified.", "format": "int64", "type": "string" }, - "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.", + "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" } }, - "referenceName": { - "description": "The name of the reference to query, within the reference set associated\nwith this query.", + "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`.", + "type": "array", + "items": { + "type": "string" + } + }, + "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" } - }, - "id": "SearchAnnotationsRequest", - "type": "object" + } }, - "OperationEvent": { - "description": "An event that occurred during an Operation.", + "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", "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", + "referenceName": { + "description": "The display name corresponding to the reference specified by\n`referenceId`, for example `chr1`, `1`, or `chrX`.", + "type": "string" + }, + "type": { + "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." + ], + "enum": [ + "ANNOTATION_TYPE_UNSPECIFIED", + "GENERIC", + "VARIANT", + "GENE", + "TRANSCRIPT" + ], + "description": "The data type for this annotation. Must match the containing annotation\nset's type." + }, + "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" + }, + "end": { + "type": "string", + "description": "The end position of the range on the reference, 0-based exclusive.", + "format": "int64" + }, + "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`." + }, + "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" }, - "startTime": { - "description": "Optional time of when event started.", - "format": "google-datetime", + "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" + }, + "referenceId": { + "description": "The ID of the Google Genomics reference associated with this range.", "type": "string" }, - "description": { - "description": "Required description of event.", + "id": { + "description": "The server-generated annotation ID, unique across all annotations.", "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" } }, - "id": "OperationEvent" + "id": "Annotation" }, - "CodingSequence": { + "CancelOperationRequest": { + "id": "CancelOperationRequest", + "description": "The request message for Operations.CancelOperation.", + "type": "object", + "properties": {} + }, + "Operation": { "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" + "error": { + "description": "The error result of the operation in case of failure or cancellation.", + "$ref": "Status" }, - "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", + "metadata": { + "type": "object", + "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." + }, + "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": "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`", "type": "string" } }, - "id": "CodingSequence" + "id": "Operation", + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call." }, - "SearchReferencesResponse": { - "id": "SearchReferencesResponse", + "RuntimeMetadata": { "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" + "computeEngine": { + "description": "Execution information specific to Google Compute Engine.", + "$ref": "ComputeEngine" } - } - }, - "GetIamPolicyRequest": { - "type": "object", - "properties": {}, - "id": "GetIamPolicyRequest", - "description": "Request message for `GetIamPolicy` method." + }, + "id": "RuntimeMetadata", + "description": "Runtime metadata that will be populated in the\nruntimeMetadata\nfield of the Operation associated with a RunPipeline execution." }, - "TestIamPermissionsResponse": { + "ImportReadGroupSetsResponse": { + "description": "The read group set import response.", "type": "object", "properties": { - "permissions": { - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", + "readGroupSetIds": { + "description": "IDs of the read group sets that were created.", "type": "array", "items": { "type": "string" } } }, - "id": "TestIamPermissionsResponse", - "description": "Response message for `TestIamPermissions` method." + "id": "ImportReadGroupSetsResponse" }, - "SearchAnnotationSetsRequest": { + "VariantCall": { "properties": { - "types": { - "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": "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" + "info": { + "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", + "additionalProperties": { + "type": "array", + "items": { + "type": "any" + } } }, - "name": { - "description": "Only return annotations sets for which a substring of the name matches this\nstring (case insensitive).", - "type": "string" + "callSetName": { + "type": "string", + "description": "The name of the call set this variant call belongs to." }, - "referenceSetId": { - "description": "If specified, only annotation sets associated with the given reference set\nare returned.", - "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" + } }, - "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.", + "callSetId": { + "description": "The ID of the call set this variant call belongs to.", "type": "string" }, - "pageSize": { - "type": "integer", - "description": "The maximum number of results to return in a single page. If unspecified,\ndefaults to 128. The maximum value is 1024.", - "format": "int32" - }, - "datasetIds": { - "description": "Required. The dataset IDs to search within. Caller must have `READ` access\nto these datasets.", + "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": { - "type": "string" + "format": "int32", + "type": "integer" } + }, + "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" } }, - "id": "SearchAnnotationSetsRequest", + "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" }, - "SearchReadGroupSetsResponse": { - "description": "The read group set search response.", + "SearchVariantsResponse": { + "id": "SearchVariantsResponse", + "description": "The variant search response.", "type": "object", "properties": { - "readGroupSets": { - "description": "The list of matching read group sets.", + "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": { "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." + "$ref": "Variant" + }, + "description": "The list of matching Variants." } - }, - "id": "SearchReadGroupSetsResponse" + } }, - "SearchReferencesRequest": { + "ListBasesResponse": { + "id": "ListBasesResponse", "type": "object", "properties": { - "referenceSetId": { - "description": "If present, return only references which belong to this reference set.", + "sequence": { + "description": "A substring of the bases that make up this reference.", "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" - } - }, - "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" - } + "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" }, - "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.", + "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": "SearchReferencesRequest" + } }, - "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.", + "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": { - "position": { - "description": "The position of this alignment.", - "$ref": "Position" - }, - "cigar": { - "description": "Represents the local alignment of this sequence (alignment matches, indels,\netc) against the reference.", + "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": { - "$ref": "CigarUnit" + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" } }, - "mappingQuality": { - "type": "integer", - "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" - } - }, - "id": "LinearAlignment" - }, - "Dataset": { - "properties": { - "id": { - "description": "The server-generated dataset ID, unique across all datasets.", - "type": "string" - }, - "createTime": { - "description": "The time this dataset was created, in seconds from the epoch.", - "format": "google-datetime", - "type": "string" - }, - "name": { - "description": "The dataset name.", - "type": "string" + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" }, - "projectId": { - "description": "The Google Cloud project ID that this dataset belongs to.", + "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": "Dataset", - "description": "A Dataset is a collection of genomic data.", - "type": "object" + "id": "Status" } }, "icons": { @@ -4002,9 +4000,6 @@ "auth": { "oauth2": { "scopes": { - "https://www.googleapis.com/auth/genomics": { - "description": "View and manage Genomics data" - }, "https://www.googleapis.com/auth/bigquery": { "description": "View and manage your data in Google BigQuery" }, @@ -4016,6 +4011,9 @@ }, "https://www.googleapis.com/auth/genomics.readonly": { "description": "View Genomics data" + }, + "https://www.googleapis.com/auth/genomics": { + "description": "View and manage Genomics data" } } } @@ -4023,5 +4021,7 @@ "kind": "discovery#restDescription", "description": "Upload, process, query, and search Genomics data in the cloud.", "servicePath": "", - "rootUrl": "https://genomics.googleapis.com/" + "rootUrl": "https://genomics.googleapis.com/", + "basePath": "", + "ownerDomain": "google.com" } diff --git a/DiscoveryJson/genomics_v1alpha2.json b/DiscoveryJson/genomics_v1alpha2.json index 6c8cb127ab..d634083df2 100644 --- a/DiscoveryJson/genomics_v1alpha2.json +++ b/DiscoveryJson/genomics_v1alpha2.json @@ -1,64 +1,52 @@ { - "rootUrl": "https://genomics.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "genomics", - "batchPath": "batch", - "revision": "20180505", - "documentationLink": "https://cloud.google.com/genomics", - "id": "genomics:v1alpha2", - "fullyEncodeReservedExpansion": true, - "title": "Genomics API", "discoveryVersion": "v1", "ownerName": "Google", "resources": { "pipelines": { "methods": { - "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.", + "get": { + "path": "v1alpha2/pipelines/{pipelineId}", + "id": "genomics.pipelines.get", + "description": "Retrieves a pipeline based on ID.\n\nCaller must have READ permission to the project.", "response": { - "$ref": "Empty" + "$ref": "Pipeline" }, - "parameterOrder": [], - "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" + "parameterOrder": [ + "pipelineId" ], - "parameters": {}, - "flatPath": "v1alpha2/pipelines:setOperationStatus", - "path": "v1alpha2/pipelines:setOperationStatus", - "id": "genomics.pipelines.setOperationStatus" - }, - "getControllerConfig": { + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics" ], "parameters": { - "operationId": { - "location": "query", - "description": "The operation to retrieve controller configuration for.", + "pipelineId": { + "location": "path", + "description": "Caller must have READ access to the project in which this pipeline\nis defined.", + "required": true, "type": "string" - }, - "validationToken": { - "format": "uint64", - "type": "string", - "location": "query" } }, - "flatPath": "v1alpha2/pipelines:getControllerConfig", - "path": "v1alpha2/pipelines:getControllerConfig", - "id": "genomics.pipelines.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" + "flatPath": "v1alpha2/pipelines/{pipelineId}" + }, + "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.", + "request": { + "$ref": "SetOperationStatusRequest" }, + "httpMethod": "PUT", "parameterOrder": [], - "httpMethod": "GET" + "response": { + "$ref": "Empty" + }, + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "flatPath": "v1alpha2/pipelines:setOperationStatus", + "id": "genomics.pipelines.setOperationStatus", + "path": "v1alpha2/pipelines:setOperationStatus" }, "delete": { "response": { @@ -68,11 +56,38 @@ "pipelineId" ], "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], "parameters": { "pipelineId": { - "location": "path", "description": "Caller must have WRITE access to the project in which this pipeline\nis defined.", "required": true, + "type": "string", + "location": "path" + } + }, + "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." + }, + "getControllerConfig": { + "httpMethod": "GET", + "parameterOrder": [], + "response": { + "$ref": "ControllerConfig" + }, + "parameters": { + "operationId": { + "location": "query", + "description": "The operation to retrieve controller configuration for.", + "type": "string" + }, + "validationToken": { + "location": "query", + "format": "uint64", "type": "string" } }, @@ -80,10 +95,10 @@ "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." + "flatPath": "v1alpha2/pipelines:getControllerConfig", + "id": "genomics.pipelines.getControllerConfig", + "path": "v1alpha2/pipelines:getControllerConfig", + "description": "Gets controller configuration information. Should only be called\nby VMs created by the Pipelines Service and not by end users." }, "list": { "response": { @@ -91,16 +106,20 @@ }, "parameterOrder": [], "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], "parameters": { "namePrefix": { - "location": "query", "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" + "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", - "location": "query" + "type": "string" }, "pageSize": { "description": "Number of pipelines to return at once. Defaults to 256, and max\nis 2048.", @@ -109,40 +128,42 @@ "location": "query" }, "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", + "description": "Required. The name of the project to search for pipelines. Caller\nmust have READ access to this project." } }, - "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": { - "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" }, + "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.", "response": { "$ref": "Pipeline" }, "parameterOrder": [], "httpMethod": "POST", - "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics" ], - "flatPath": "v1alpha2/pipelines" + "parameters": {}, + "flatPath": "v1alpha2/pipelines", + "path": "v1alpha2/pipelines", + "id": "genomics.pipelines.create" }, "run": { + "path": "v1alpha2/pipelines:run", + "id": "genomics.pipelines.run", + "request": { + "$ref": "RunPipelineRequest" + }, + "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.", "response": { "$ref": "Operation" }, @@ -154,50 +175,21 @@ "https://www.googleapis.com/auth/genomics" ], "parameters": {}, - "flatPath": "v1alpha2/pipelines:run", - "path": "v1alpha2/pipelines:run", - "id": "genomics.pipelines.run", - "request": { - "$ref": "RunPipelineRequest" - }, - "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." - }, - "get": { - "parameters": { - "pipelineId": { - "description": "Caller must have READ access to the project in which this pipeline\nis defined.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v1alpha2/pipelines/{pipelineId}", - "id": "genomics.pipelines.get", - "path": "v1alpha2/pipelines/{pipelineId}", - "description": "Retrieves a pipeline based on ID.\n\nCaller must have READ permission to the project.", - "httpMethod": "GET", - "response": { - "$ref": "Pipeline" - }, - "parameterOrder": [ - "pipelineId" - ] + "flatPath": "v1alpha2/pipelines:run" } } }, "operations": { "methods": { "list": { + "response": { + "$ref": "ListOperationsResponse" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", "parameters": { - "filter": { - "location": "query", - "description": "A string for filtering Operations.\nIn v2alpha1, the following filter fields are supported:\n\n* createTime: The time this job was created\n* events: The set of event (names) that have occurred while running\n the pipeline. The : operator can be used to determine if a\n particular event has occurred.\n* error: 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:\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": { "description": "The name of the operation's parent resource.", "required": true, @@ -211,10 +203,15 @@ "type": "string" }, "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" + "type": "integer", + "location": "query" + }, + "filter": { + "location": "query", + "description": "A string for filtering Operations.\nIn v2alpha1, the following filter fields are supported:\n\n* createTime: The time this job was created\n* events: The set of event (names) that have occurred while running\n the pipeline. The : operator can be used to determine if a\n particular event has occurred.\n* error: 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:\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" } }, "scopes": [ @@ -222,44 +219,40 @@ "https://www.googleapis.com/auth/genomics" ], "flatPath": "v1alpha2/operations", - "id": "genomics.operations.list", "path": "v1alpha2/{+name}", - "description": "Lists operations that match the specified filter in the request.", + "id": "genomics.operations.list", + "description": "Lists operations that match the specified filter in the request." + }, + "get": { "httpMethod": "GET", "parameterOrder": [ "name" ], - "response": { - "$ref": "ListOperationsResponse" - } - }, - "get": { - "httpMethod": "GET", "response": { "$ref": "Operation" }, - "parameterOrder": [ - "name" + "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/.+$", - "location": "path" + "pattern": "^operations/.+$" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], "flatPath": "v1alpha2/operations/{operationsId}", "id": "genomics.operations.get", "path": "v1alpha2/{+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": { + "flatPath": "v1alpha2/operations/{operationsId}:cancel", + "path": "v1alpha2/{+name}:cancel", + "id": "genomics.operations.cancel", "request": { "$ref": "CancelOperationRequest" }, @@ -277,26 +270,44 @@ ], "parameters": { "name": { - "pattern": "^operations/.+$", - "location": "path", "description": "The name of the operation resource to be cancelled.", "required": true, - "type": "string" + "type": "string", + "pattern": "^operations/.+$", + "location": "path" } - }, - "flatPath": "v1alpha2/operations/{operationsId}:cancel", - "path": "v1alpha2/{+name}:cancel", - "id": "genomics.operations.cancel" + } } } } }, "parameters": { - "upload_protocol": { + "quotaUser": { + "type": "string", "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "description": "Available 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": { + "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.", @@ -304,9 +315,9 @@ "default": "true" }, "fields": { - "location": "query", "description": "Selector specifying which fields to include in a partial response.", - "type": "string" + "type": "string", + "location": "query" }, "uploadType": { "location": "query", @@ -314,8 +325,6 @@ "type": "string" }, "$.xgafv": { - "description": "V1 error format.", - "type": "string", "enumDescriptions": [ "v1 error format", "v2 error format" @@ -324,7 +333,9 @@ "enum": [ "1", "2" - ] + ], + "description": "V1 error format.", + "type": "string" }, "callback": { "location": "query", @@ -332,6 +343,7 @@ "type": "string" }, "alt": { + "default": "json", "enum": [ "json", "media", @@ -344,8 +356,7 @@ "Responses with Content-Type of application/x-protobuf" ], "location": "query", - "description": "Data format for response.", - "default": "json" + "description": "Data format for response." }, "access_token": { "description": "OAuth access token.", @@ -353,33 +364,103 @@ "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": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" - }, - "bearer_token": { "location": "query", - "description": "OAuth bearer token.", + "description": "API key. 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" } }, "schemas": { + "WorkerReleasedEvent": { + "description": "This event is generated when the worker VM that was assigned to the pipeline\nhas been released (i.e., deleted).", + "type": "object", + "properties": { + "instance": { + "description": "The worker's instance name.", + "type": "string" + }, + "zone": { + "type": "string", + "description": "The zone the worker was running in." + } + }, + "id": "WorkerReleasedEvent" + }, + "FailedEvent": { + "properties": { + "cause": { + "description": "The human readable description of the cause of the failure.", + "type": "string" + }, + "code": { + "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" + ], + "description": "The Google standard error code that best describes this failure.", + "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", + "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" + ] + } + }, + "id": "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.", + "type": "object" + }, + "PipelineParameter": { + "id": "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", + "properties": { + "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." + }, + "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" + }, + "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" + } + } + }, "ContainerStoppedEvent": { "id": "ContainerStoppedEvent", "description": "This event is generated when a container exits.", @@ -401,24 +482,24 @@ } } }, - "LoggingOptions": { - "description": "The logging options for the pipeline run.", - "type": "object", + "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" } }, - "id": "LoggingOptions" + "id": "LoggingOptions", + "description": "The logging options for the pipeline run.", + "type": "object" }, "PullStartedEvent": { "description": "This event is generated when the worker starts pulling an image.", "type": "object", "properties": { "imageUri": { - "description": "The URI of the image that was pulled.", - "type": "string" + "type": "string", + "description": "The URI of the image that was pulled." } }, "id": "PullStartedEvent" @@ -441,9 +522,11 @@ "id": "UnexpectedExitStatusEvent" }, "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", "properties": { + "pipelineArgs": { + "description": "The arguments to use when running this pipeline.", + "$ref": "RunPipelineArgs" + }, "pipelineId": { "description": "The already created pipeline to run.", "type": "string" @@ -451,21 +534,20 @@ "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" } }, - "id": "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" }, "CancelOperationRequest": { + "id": "CancelOperationRequest", "description": "The request message for Operations.CancelOperation.", "type": "object", - "properties": {}, - "id": "CancelOperationRequest" + "properties": {} }, "PullStoppedEvent": { + "type": "object", "properties": { "imageUri": { "description": "The URI of the image that was pulled.", @@ -473,26 +555,12 @@ } }, "id": "PullStoppedEvent", - "description": "This event is generated when the worker stops pulling an image.", - "type": "object" + "description": "This event is generated when the worker stops pulling an image." }, "Operation": { - "id": "Operation", "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", "type": "object", "properties": { - "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" - } - }, - "name": { - "description": "The server-assigned name, which is only unique within the same service that originally returns it. For example: `operations/CJHU7Oi_ChDrveSpBRjfuL-qzoWAgEw`", - "type": "string" - }, "error": { "$ref": "Status", "description": "The error result of the operation in case of failure or cancellation." @@ -506,10 +574,23 @@ } }, "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" + }, + "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`", + "type": "string" } - } + }, + "id": "Operation" }, "RuntimeMetadata": { "description": "Runtime metadata that will be populated in the\nruntimeMetadata\nfield of the Operation associated with a RunPipeline execution.", @@ -537,33 +618,34 @@ "id": "ImportReadGroupSetsResponse" }, "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": { - "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": { - "type": "object", "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" + }, + "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" + } }, "Event": { + "id": "Event", "description": "Event carries information about events that occur during pipeline execution.", "type": "object", "properties": { @@ -573,19 +655,18 @@ "type": "string" }, "details": { - "description": "Machine readable details about the event.", "type": "object", "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": "Machine readable details about the event." }, "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" } - }, - "id": "Event" + } }, "ServiceAccount": { "description": "A Google Cloud Service Account.", @@ -606,26 +687,9 @@ "id": "ServiceAccount" }, "PipelineResources": { - "id": "PipelineResources", "description": "The system resources for the pipeline run.", "type": "object", "properties": { - "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" - }, - "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" - }, "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" @@ -655,22 +719,30 @@ "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" + }, + "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" + }, + "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" } - } + }, + "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": { - "projectId": { - "description": "Required. The project in which to create the pipeline. The caller must have\nWRITE access.", - "type": "string" - }, - "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", @@ -678,14 +750,14 @@ "$ref": "PipelineParameter" } }, - "docker": { - "$ref": "DockerExecutor", - "description": "Specifies the docker run information." - }, "description": { "description": "User-specified description.", "type": "string" }, + "docker": { + "description": "Specifies the docker run information.", + "$ref": "DockerExecutor" + }, "inputParameters": { "description": "Input parameters of the pipeline.", "type": "array", @@ -698,19 +770,29 @@ "description": "Required. Specifies resource requirements for the pipeline run.\nRequired fields:\n\n*\nminimumCpuCores\n\n*\nminimumRamGb" }, "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", + "description": "Required. A user specified pipeline name that does not have to be unique.\nThis name can be used for filtering Pipelines in ListPipelines." + }, + "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" } - } + }, + "id": "Pipeline" }, "OperationEvent": { + "id": "OperationEvent", "description": "An event that occurred during an Operation.", "type": "object", "properties": { "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" + "format": "google-datetime", + "type": "string" }, "startTime": { "description": "Optional time of when event started.", @@ -718,29 +800,15 @@ "type": "string" }, "description": { - "type": "string", - "description": "Required description of event." + "description": "Required description of event.", + "type": "string" } - }, - "id": "OperationEvent" + } }, "ControllerConfig": { - "id": "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", "properties": { - "disks": { - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "machineType": { - "type": "string" - }, - "cmd": { - "type": "string" - }, "vars": { "additionalProperties": { "type": "string" @@ -754,30 +822,31 @@ "type": "string" }, "gcsSources": { - "type": "object", "additionalProperties": { "$ref": "RepeatedString" - } + }, + "type": "object" }, "gcsSinks": { + "type": "object", "additionalProperties": { "$ref": "RepeatedString" - }, - "type": "object" - } - } - }, - "RepeatedString": { - "type": "object", - "properties": { - "values": { - "type": "array", - "items": { + } + }, + "disks": { + "type": "object", + "additionalProperties": { "type": "string" } + }, + "machineType": { + "type": "string" + }, + "cmd": { + "type": "string" } }, - "id": "RepeatedString" + "id": "ControllerConfig" }, "ListOperationsResponse": { "description": "The response message for Operations.ListOperations.", @@ -797,22 +866,22 @@ }, "id": "ListOperationsResponse" }, + "RepeatedString": { + "properties": { + "values": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "id": "RepeatedString", + "type": "object" + }, "OperationMetadata": { "description": "Metadata describing an Operation.", "type": "object", "properties": { - "createTime": { - "description": "The time at which the job was submitted to the Genomics service.", - "format": "google-datetime", - "type": "string" - }, - "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" @@ -821,80 +890,58 @@ "description": "This field is deprecated. Use `labels` instead. Optionally provided by the\ncaller when submitting the request that creates the operation.", "type": "string" }, - "events": { - "type": "array", - "items": { - "$ref": "OperationEvent" - }, - "description": "Optional event messages that were generated during the job's execution.\nThis also contains any warnings that were generated during import\nor export." - }, "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": { - "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" - } + }, + "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": { + "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": "Runtime metadata on this Operation.", + "description": "Optionally provided by the caller when submitting the request that creates\nthe operation.", "type": "object" - } - }, - "id": "OperationMetadata" - }, - "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", - "properties": { - "nextPageToken": { - "description": "The token to use to get the next page of results.", - "type": "string" }, - "pipelines": { - "description": "The matched pipelines.", - "type": "array", - "items": { - "$ref": "Pipeline" - } + "createTime": { + "description": "The time at which the job was submitted to the Genomics service.", + "format": "google-datetime", + "type": "string" } }, - "id": "ListPipelinesResponse" + "id": "OperationMetadata" }, "RunPipelineArgs": { - "description": "The pipeline run arguments.", - "type": "object", - "properties": { - "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" - }, - "resources": { - "$ref": "PipelineResources", - "description": "Specifies resource requirements/overrides for the pipeline run." - }, - "keepVmAliveOnFailureDuration": { - "type": "string", - "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" - }, + "description": "The pipeline run arguments.", + "type": "object", + "properties": { "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" @@ -903,6 +950,10 @@ "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": { "additionalProperties": { "type": "string" @@ -910,10 +961,6 @@ "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" }, - "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.", - "$ref": "ServiceAccount" - }, "labels": { "additionalProperties": { "type": "string" @@ -924,38 +971,78 @@ "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": { + "$ref": "PipelineResources", + "description": "Specifies resource requirements/overrides for the pipeline run." + }, + "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" } }, "id": "RunPipelineArgs" }, - "ContainerStartedEvent": { - "description": "This event is generated when a container starts.", - "type": "object", + "ListPipelinesResponse": { "properties": { - "actionId": { - "description": "The numeric ID of the action that started this container.", - "format": "int32", - "type": "integer" + "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", + "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" + }, + "ContainerStartedEvent": { + "properties": { "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": { - "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", "additionalProperties": { - "format": "int32", - "type": "integer" - } + "type": "integer", + "format": "int32" + }, + "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." + }, + "actionId": { + "description": "The numeric ID of the action that started this container.", + "format": "int32", + "type": "integer" } }, - "id": "ContainerStartedEvent" + "id": "ContainerStartedEvent", + "description": "This event is generated when a container starts.", + "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.", "type": "object", "properties": { + "timestampEvents": { + "type": "array", + "items": { + "$ref": "TimestampEvent" + } + }, "operationId": { "type": "string" }, @@ -967,7 +1054,6 @@ "type": "string" }, "errorCode": { - "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", @@ -1005,32 +1091,30 @@ "INTERNAL", "UNAVAILABLE", "DATA_LOSS" - ] - }, - "timestampEvents": { - "type": "array", - "items": { - "$ref": "TimestampEvent" - } + ], + "type": "string" } }, "id": "SetOperationStatusRequest" }, - "ComputeEngine": { - "description": "Describes a Compute Engine resource that is being managed by a running\npipeline.", + "ImportVariantsResponse": { + "id": "ImportVariantsResponse", + "description": "The variant data import response.", "type": "object", "properties": { - "machineType": { - "description": "The machine type of the instance.", - "type": "string" - }, - "diskNames": { + "callSetIds": { "type": "array", "items": { "type": "string" }, - "description": "The names of the disks that were created for this pipeline." - }, + "description": "IDs of the call sets created during the import." + } + } + }, + "ComputeEngine": { + "description": "Describes a Compute Engine resource that is being managed by a running\npipeline.", + "type": "object", + "properties": { "instanceName": { "description": "The instance on which the operation is running.", "type": "string" @@ -1038,23 +1122,20 @@ "zone": { "description": "The availability zone in which the instance resides.", "type": "string" - } - }, - "id": "ComputeEngine" - }, - "ImportVariantsResponse": { - "description": "The variant data import response.", - "type": "object", - "properties": { - "callSetIds": { - "description": "IDs of the call sets created during the import.", + }, + "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" } } }, - "id": "ImportVariantsResponse" + "id": "ComputeEngine" }, "WorkerAssignedEvent": { "description": "This event is generated once a worker VM has been assigned to run the\npipeline.", @@ -1065,13 +1146,15 @@ "type": "string" }, "zone": { - "description": "The zone the worker is running in.", - "type": "string" + "type": "string", + "description": "The zone the worker is running in." } }, "id": "WorkerAssignedEvent" }, "TimestampEvent": { + "description": "Stores the list of events and times they occured for major events in job\nexecution.", + "type": "object", "properties": { "timestamp": { "description": "The time this event occured.", @@ -1083,9 +1166,7 @@ "type": "string" } }, - "id": "TimestampEvent", - "description": "Stores the list of events and times they occured for major events in job\nexecution.", - "type": "object" + "id": "TimestampEvent" }, "LocalCopy": { "description": "LocalCopy defines how a remote file should be copied to and from the VM.", @@ -1124,35 +1205,38 @@ "description": "The Docker execuctor specification.", "type": "object", "properties": { - "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." - }, "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": { + "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" } }, "id": "DockerExecutor" }, + "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 `{}`." + }, "Disk": { - "id": "Disk", "description": "A Google Compute Engine disk resource specification.", "type": "object", "properties": { - "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": { + "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." + ], "enum": [ "TYPE_UNSPECIFIED", "PERSISTENT_HDD", @@ -1160,13 +1244,7 @@ "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." - ] + "type": "string" }, "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.", @@ -1180,130 +1258,52 @@ "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" - } - } - }, - "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": {} - }, - "WorkerReleasedEvent": { - "id": "WorkerReleasedEvent", - "description": "This event is generated when the worker VM that was assigned to the pipeline\nhas been released (i.e., deleted).", - "type": "object", - "properties": { - "zone": { - "description": "The zone the worker was running in.", - "type": "string" - }, - "instance": { - "description": "The worker's instance name.", - "type": "string" - } - } - }, - "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.", - "type": "object", - "properties": { - "cause": { - "description": "The human readable description of the cause of the failure.", - "type": "string" - }, - "code": { - "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" - ], - "description": "The Google standard error code that best describes this failure.", - "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", - "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" - ] - } - }, - "id": "FailedEvent" - }, - "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", - "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" }, - "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" + "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" }, - "description": { - "description": "Human-readable description.", + "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" - }, - "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" + "id": "Disk" } }, - "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" }, + "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" + }, + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" } } } }, - "kind": "discovery#restDescription", + "servicePath": "", "description": "Upload, process, query, and search Genomics data in the cloud.", - "servicePath": "" + "kind": "discovery#restDescription", + "rootUrl": "https://genomics.googleapis.com/", + "basePath": "", + "ownerDomain": "google.com", + "name": "genomics", + "batchPath": "batch", + "revision": "20180505", + "documentationLink": "https://cloud.google.com/genomics", + "id": "genomics:v1alpha2", + "fullyEncodeReservedExpansion": true, + "title": "Genomics API" } diff --git a/DiscoveryJson/genomics_v2alpha1.json b/DiscoveryJson/genomics_v2alpha1.json index f9b85a3d23..ae36167b33 100644 --- a/DiscoveryJson/genomics_v2alpha1.json +++ b/DiscoveryJson/genomics_v2alpha1.json @@ -1,15 +1,38 @@ { - "fullyEncodeReservedExpansion": true, - "title": "Genomics API", "ownerName": "Google", "resources": { + "pipelines": { + "methods": { + "run": { + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "Operation" + }, + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "flatPath": "v2alpha1/pipelines:run", + "id": "genomics.pipelines.run", + "path": "v2alpha1/pipelines: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", + "request": { + "$ref": "RunPipelineRequest" + } + } + } + }, "workers": { "methods": { "checkIn": { + "path": "v2alpha1/workers/{id}:checkIn", + "id": "genomics.workers.checkIn", + "description": "The worker uses this method to retrieve the assigned operation and\nprovide periodic status updates.", "request": { "$ref": "CheckInRequest" }, - "description": "The worker uses this method to retrieve the assigned operation and\nprovide periodic status updates.", "response": { "$ref": "CheckInResponse" }, @@ -17,21 +40,19 @@ "id" ], "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], "parameters": { "id": { + "description": "The worker id, assigned when it was created.", "required": true, "type": "string", - "location": "path", - "description": "The worker id, assigned when it was created." + "location": "path" } }, - "flatPath": "v2alpha1/workers/{id}:checkIn", - "path": "v2alpha1/workers/{id}:checkIn", - "id": "genomics.workers.checkIn" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], + "flatPath": "v2alpha1/workers/{id}:checkIn" } } }, @@ -48,13 +69,17 @@ "name" ], "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/genomics" + ], "parameters": { "name": { - "pattern": "^projects/[^/]+/operations$", - "location": "path", "description": "The name of the operation's parent resource.", "required": true, - "type": "string" + "type": "string", + "pattern": "^projects/[^/]+/operations$", + "location": "path" }, "pageToken": { "location": "query", @@ -73,39 +98,35 @@ "location": "query" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], "flatPath": "v2alpha1/projects/{projectsId}/operations", "path": "v2alpha1/{+name}", "id": "genomics.projects.operations.list" }, "get": { + "flatPath": "v2alpha1/projects/{projectsId}/operations/{operationsId}", + "id": "genomics.projects.operations.get", + "path": "v2alpha1/{+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" }, + "parameterOrder": [ + "name" + ], "parameters": { "name": { - "location": "path", "description": "The name of the operation resource.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/operations/[^/]+$" + "pattern": "^projects/[^/]+/operations/[^/]+$", + "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/genomics" - ], - "flatPath": "v2alpha1/projects/{projectsId}/operations/{operationsId}", - "id": "genomics.projects.operations.get", - "path": "v2alpha1/{+name}" + ] }, "cancel": { "httpMethod": "POST", @@ -117,11 +138,11 @@ }, "parameters": { "name": { + "location": "path", "description": "The name of the operation resource to be cancelled.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/operations/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/operations/[^/]+$" } }, "scopes": [ @@ -139,29 +160,6 @@ } } } - }, - "pipelines": { - "methods": { - "run": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/genomics" - ], - "parameters": {}, - "flatPath": "v2alpha1/pipelines:run", - "path": "v2alpha1/pipelines:run", - "id": "genomics.pipelines.run", - "request": { - "$ref": "RunPipelineRequest" - }, - "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" - } - } } }, "parameters": { @@ -176,24 +174,17 @@ "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", + "uploadType": { "type": "string", - "location": "query" + "location": "query", + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." }, "$.xgafv": { - "description": "V1 error format.", - "type": "string", "enumDescriptions": [ "v1 error format", "v2 error format" @@ -202,33 +193,40 @@ "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" + "location": "query", + "description": "Data format for response.", + "default": "json", + "enum": [ + "json", + "media", + "proto" + ] }, - "key": { + "access_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.", + "description": "OAuth access token.", "type": "string" }, - "access_token": { + "key": { "type": "string", "location": "query", - "description": "OAuth access token." + "description": "API key. 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.", @@ -236,27 +234,27 @@ "location": "query" }, "pp": { - "location": "query", "description": "Pretty-print response.", "type": "boolean", - "default": "true" + "default": "true", + "location": "query" }, - "bearer_token": { + "oauth_token": { "location": "query", - "description": "OAuth bearer token.", + "description": "OAuth 2.0 token for the current user.", "type": "string" }, - "oauth_token": { + "bearer_token": { "location": "query", - "description": "OAuth 2.0 token for the current user.", + "description": "OAuth bearer token.", "type": "string" } }, "version": "v2alpha1", "baseUrl": "https://genomics.googleapis.com/", + "servicePath": "", "description": "Upload, process, query, and search Genomics data in the cloud.", "kind": "discovery#restDescription", - "servicePath": "", "basePath": "", "revision": "20180505", "documentationLink": "https://cloud.google.com/genomics", @@ -264,417 +262,154 @@ "discoveryVersion": "v1", "version_module": true, "schemas": { - "ImportVariantsResponse": { - "description": "The variant data import response.", - "type": "object", + "ContainerStoppedEvent": { "properties": { - "callSetIds": { - "description": "IDs of the call sets created during the import.", - "type": "array", - "items": { - "type": "string" - } + "exitStatus": { + "type": "integer", + "description": "The exit status of the container.", + "format": "int32" + }, + "actionId": { + "description": "The numeric ID of the action that started this container.", + "format": "int32", + "type": "integer" + }, + "stderr": { + "description": "The tail end of any content written to standard error by the container.\nTo prevent this from being recorded if the action is known to emit\nlarge amounts of debugging noise or sensitive information, set the\nDISABLE_STANDARD_ERROR_CAPTURE flag.\n\nNote that only a small amount of the end of the stream is captured here.\nThe entire stream is stored in the /google/logs directory mounted into\neach action, and may be copied off the machine as described elsewhere.", + "type": "string" } }, - "id": "ImportVariantsResponse" + "id": "ContainerStoppedEvent", + "description": "This event is generated when a container exits.", + "type": "object" }, - "ComputeEngine": { - "description": "Describes a Compute Engine resource that is being managed by a running\npipeline.", + "Metadata": { + "description": "Metadata carries information about the pipeline execution that is returned\nin the long running operation's metadata field.", "type": "object", "properties": { - "zone": { - "description": "The availability zone in which the instance resides.", + "createTime": { + "description": "The time that the operation was created by the API.", + "format": "google-datetime", "type": "string" }, - "machineType": { - "description": "The machine type of the instance.", + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "The user defined labels associated with this operation.", + "type": "object" + }, + "endTime": { + "description": "The time at which execution was completed and resources were cleaned up.", + "format": "google-datetime", "type": "string" }, - "diskNames": { - "description": "The names of the disks that were created for this pipeline.", + "events": { + "description": "The list of events that have happened so far during the execution of this\noperation.", "type": "array", "items": { - "type": "string" + "$ref": "Event" } }, - "instanceName": { - "type": "string", - "description": "The instance on which the operation is running." + "pipeline": { + "description": "The pipeline this operation represents.", + "$ref": "Pipeline" + }, + "startTime": { + "description": "The first time at which resources were allocated to execute the pipeline.", + "format": "google-datetime", + "type": "string" } }, - "id": "ComputeEngine" + "id": "Metadata" }, - "WorkerAssignedEvent": { - "id": "WorkerAssignedEvent", - "description": "This event is generated once a worker VM has been assigned to run the\npipeline.", + "PullStartedEvent": { + "description": "This event is generated when the worker starts pulling an image.", "type": "object", "properties": { - "instance": { - "description": "The worker's instance name.", - "type": "string" - }, - "zone": { - "description": "The zone the worker is running in.", + "imageUri": { + "description": "The URI of the image that was pulled.", "type": "string" } - } + }, + "id": "PullStartedEvent" }, - "Network": { - "description": "VM networking options.", + "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.", "type": "object", "properties": { - "name": { - "description": "The network name to attach the VM's network interface to. If unspecified,\nthe global default network is used.", - "type": "string" + "exitStatus": { + "description": "The exit status of the container.", + "format": "int32", + "type": "integer" }, - "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" + "actionId": { + "description": "The numeric ID of the action that started the container.", + "format": "int32", + "type": "integer" } }, - "id": "Network" + "id": "UnexpectedExitStatusEvent" }, - "DelayedEvent": { - "description": "This event is generated whenever a resource limitation or transient error\ndelays execution of a pipeline that was otherwise ready to run.", + "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.", "type": "object", "properties": { - "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.", - "type": "array", - "items": { + "labels": { + "additionalProperties": { "type": "string" - } - }, - "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" - } - }, - "id": "DelayedEvent" - }, - "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": { - "sourceImage": { - "type": "string", - "description": "An optional image to put on the disk before attaching it to the VM." - }, - "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" - }, - "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" - }, - "type": { - "type": "string", - "description": "The Compute Engine disk type. If unspecified, 'standard-pd' is used." - } - }, - "id": "Disk", - "description": "Carries information about a disk that can be attached to a VM." - }, - "WorkerReleasedEvent": { - "description": "This event is generated when the worker VM that was assigned to the pipeline\nhas been released (i.e., deleted).", - "type": "object", - "properties": { - "instance": { - "description": "The worker's instance name.", - "type": "string" - }, - "zone": { - "description": "The zone the worker was running in.", - "type": "string" - } - }, - "id": "WorkerReleasedEvent" - }, - "Action": { - "description": "Action specifies a single action that runs a docker container.", - "type": "object", - "properties": { - "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", - "type": "array", - "items": { - "$ref": "Mount" - } - }, - "environment": { - "type": "object", - "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." - }, - "portMappings": { - "type": "object", - "additionalProperties": { - "type": "integer", - "format": "int32" - }, - "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." - }, - "labels": { - "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", - "additionalProperties": { - "type": "string" - } - }, - "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" - }, - "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" - }, - "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.", - "type": "array", - "items": { - "type": "string" - } - }, - "entrypoint": { - "description": "If specified, overrides the ENTRYPOINT specified in the container.", - "type": "string" - }, - "pidNamespace": { - "description": "The PID namespace to run the action inside. If unspecified, a separate\nisolated namespace is used.", - "type": "string" - }, - "flags": { - "description": "The set of flags to apply to this action.", - "type": "array", - "items": { - "type": "string", - "enum": [ - "FLAG_UNSPECIFIED", - "IGNORE_EXIT_STATUS", - "RUN_IN_BACKGROUND", - "ALWAYS_RUN", - "ENABLE_FUSE", - "PUBLISH_EXPOSED_PORTS", - "DISABLE_IMAGE_PREFETCH", - "DISABLE_STANDARD_ERROR_CAPTURE" - ] - }, - "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.", - "Normally, a small portion of the container's standard error stream is\ncaptured and returned inside the ContainerStoppedEvent. Setting this\nflag disables this functionality." - ] - } - }, - "id": "Action" - }, - "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.", - "type": "object", - "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.", - "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", - "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" - ], - "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" - ] - } - }, - "id": "FailedEvent" - }, - "ContainerStoppedEvent": { - "description": "This event is generated when a container exits.", - "type": "object", - "properties": { - "exitStatus": { - "description": "The exit status of the container.", - "format": "int32", - "type": "integer" - }, - "actionId": { - "description": "The numeric ID of the action that started this container.", - "format": "int32", - "type": "integer" - }, - "stderr": { - "description": "The tail end of any content written to standard error by the container.\nTo prevent this from being recorded if the action is known to emit\nlarge amounts of debugging noise or sensitive information, set the\nDISABLE_STANDARD_ERROR_CAPTURE flag.\n\nNote that only a small amount of the end of the stream is captured here.\nThe entire stream is stored in the /google/logs directory mounted into\neach action, and may be copied off the machine as described elsewhere.", - "type": "string" - } - }, - "id": "ContainerStoppedEvent" - }, - "Metadata": { - "description": "Metadata carries information about the pipeline execution that is returned\nin the long running operation's metadata field.", - "type": "object", - "properties": { - "events": { - "description": "The list of events that have happened so far during the execution of this\noperation.", - "type": "array", - "items": { - "$ref": "Event" - } - }, - "endTime": { - "description": "The time at which execution was completed and resources were cleaned up.", - "format": "google-datetime", - "type": "string" - }, - "pipeline": { - "description": "The pipeline this operation represents.", - "$ref": "Pipeline" - }, - "startTime": { - "description": "The first time at which resources were allocated to execute the pipeline.", - "format": "google-datetime", - "type": "string" - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "The user defined labels associated with this operation.", - "type": "object" - }, - "createTime": { - "description": "The time that the operation was created by the API.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "Metadata" - }, - "PullStartedEvent": { - "properties": { - "imageUri": { - "description": "The URI of the image that was pulled.", - "type": "string" - } - }, - "id": "PullStartedEvent", - "description": "This event is generated when the worker starts pulling an image.", - "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.", - "type": "object", - "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" - } - }, - "id": "UnexpectedExitStatusEvent" - }, - "RunPipelineRequest": { - "type": "object", - "properties": { - "labels": { - "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", - "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." } }, - "id": "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" }, "CancelOperationRequest": { - "description": "The request message for Operations.CancelOperation.", - "type": "object", "properties": {}, - "id": "CancelOperationRequest" + "id": "CancelOperationRequest", + "description": "The request message for Operations.CancelOperation.", + "type": "object" }, "PullStoppedEvent": { - "id": "PullStoppedEvent", "description": "This event is generated when the worker stops pulling an image.", "type": "object", "properties": { "imageUri": { - "type": "string", - "description": "The URI of the image that was pulled." + "description": "The URI of the image that was pulled.", + "type": "string" } - } + }, + "id": "PullStoppedEvent" }, "RuntimeMetadata": { + "description": "Runtime metadata that will be populated in the\nruntimeMetadata\nfield of the Operation associated with a RunPipeline execution.", + "type": "object", "properties": { "computeEngine": { "$ref": "ComputeEngine", "description": "Execution information specific to Google Compute Engine." } }, - "id": "RuntimeMetadata", - "description": "Runtime metadata that will be populated in the\nruntimeMetadata\nfield of the Operation associated with a RunPipeline execution.", - "type": "object" + "id": "RuntimeMetadata" }, "Operation": { + "id": "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": "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`", "type": "string" @@ -684,56 +419,47 @@ "description": "The error result of the operation in case of failure or cancellation." }, "metadata": { + "description": "An OperationMetadata or Metadata object. This will always be returned with the Operation.", "type": "object", "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." + } }, "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": { - "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." } - }, - "id": "Operation" + } }, "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" - }, - "description": "IDs of the read group sets that were created." + } } }, - "id": "ImportReadGroupSetsResponse" + "id": "ImportReadGroupSetsResponse", + "description": "The read group set import response." }, "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" - } - }, - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use." + }, + "type": "object" + } }, "code": { "description": "The status code, which should be an enum value of google.rpc.Code.", @@ -748,7 +474,6 @@ "id": "Status" }, "Event": { - "description": "Event carries information about events that occur during pipeline execution.", "type": "object", "properties": { "timestamp": { @@ -757,21 +482,23 @@ "type": "string" }, "details": { - "description": "Machine readable details about the event.", - "type": "object", "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } + "type": "any", + "description": "Properties of the object. Contains field @type with type URL." + }, + "description": "Machine readable details about the event.", + "type": "object" }, "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" } }, - "id": "Event" + "id": "Event", + "description": "Event carries information about events that occur during pipeline execution." }, "ServiceAccount": { + "id": "ServiceAccount", "description": "Carries information about a Google Cloud Service Account.", "type": "object", "properties": { @@ -786,82 +513,79 @@ "type": "string" } } - }, - "id": "ServiceAccount" + } }, "Pipeline": { "description": "The Pipeline object describes a series of actions to execute, expressed as\ndocker containers.", "type": "object", "properties": { + "environment": { + "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", + "additionalProperties": { + "type": "string" + } + }, + "resources": { + "$ref": "Resources", + "description": "The resources required for execution." + }, "actions": { "description": "The list of actions to execute, in the order they are specified.", "type": "array", "items": { "$ref": "Action" } - }, - "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": { - "description": "The resources required for execution.", - "$ref": "Resources" } }, "id": "Pipeline" }, - "OperationEvent": { + "Accelerator": { + "id": "Accelerator", + "description": "Carries information about an accelerator that can be attached to a VM.", + "type": "object", "properties": { - "startTime": { - "description": "Optional time of when event started.", - "format": "google-datetime", - "type": "string" - }, - "description": { - "description": "Required description of event.", + "count": { + "description": "How many accelerators of this type to attach.", + "format": "int64", "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": { + "description": "The accelerator type string (eg nvidia-tesla-k80).\n\nOnly NVIDIA GPU accelerators are currently supported. If an NVIDIA GPU is\nattached, the required runtime libraries will be made available to all\ncontainers under `/usr/local/nvidia`. The driver version to install must\nbe specified using the NVIDIA driver version parameter on the virtual\nmachine specification. Note that attaching a GPU increases the worker VM\nstartup time by a few minutes.", "type": "string" } - }, - "id": "OperationEvent", - "description": "An event that occurred during an Operation.", - "type": "object" + } }, - "Accelerator": { - "description": "Carries information about an accelerator that can be attached to a VM.", + "OperationEvent": { + "description": "An event that occurred during an Operation.", "type": "object", "properties": { - "type": { - "description": "The accelerator type string (eg nvidia-tesla-k80).\n\nOnly NVIDIA GPU accelerators are currently supported. If an NVIDIA GPU is\nattached, the required runtime libraries will be made available to all\ncontainers under `/usr/local/nvidia`. The driver version to install must\nbe specified using the NVIDIA driver version parameter on the virtual\nmachine specification. Note that attaching a GPU increases the worker VM\nstartup time by a few minutes.", + "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" }, - "count": { - "description": "How many accelerators of this type to attach.", - "format": "int64", + "startTime": { + "description": "Optional time of when event started.", + "format": "google-datetime", "type": "string" + }, + "description": { + "type": "string", + "description": "Required description of event." } }, - "id": "Accelerator" + "id": "OperationEvent" }, "Resources": { - "id": "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.", "type": "object", "properties": { "regions": { + "description": "The list of regions allowed for VM allocation. If set, the zones field\nmust not be set.", "type": "array", "items": { "type": "string" - }, - "description": "The list of regions allowed for VM allocation. If set, the zones field\nmust not be set." + } }, "zones": { "description": "The list of zones allowed for VM allocation. If set, the regions field\nmust not be set.", @@ -878,32 +602,34 @@ "description": "The customer project ID to allocate resources in.", "type": "string" } - } - }, - "CheckInResponse": { - "properties": { - "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" - }, - "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" - } }, - "id": "CheckInResponse", - "description": "The response to the CheckIn method.", - "type": "object" + "id": "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." }, "VirtualMachine": { + "id": "VirtualMachine", "description": "Carries information about a Compute Engine VM resource.", "type": "object", "properties": { + "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.", + "type": "array", + "items": { + "$ref": "Disk" + } + }, + "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." + }, + "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" + }, "accelerators": { "description": "The list of accelerators to attach to the VM.", "type": "array", @@ -912,12 +638,12 @@ } }, "machineType": { - "type": "string", - "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\")." + "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": { - "description": "The VM network configuration.", - "$ref": "Network" + "$ref": "Network", + "description": "The VM network configuration." }, "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.", @@ -938,177 +664,449 @@ }, "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" + } + } + }, + "CheckInResponse": { + "type": "object", + "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" }, - "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.", + "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" + } + }, + "id": "CheckInResponse", + "description": "The response to the CheckIn method." + }, + "ListOperationsResponse": { + "type": "object", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", "type": "string" }, - "disks": { - "description": "The list of disks to create and attach to the VM.", + "operations": { + "description": "A list of operations that matches the specified filter in the request.", "type": "array", "items": { - "$ref": "Disk" + "$ref": "Operation" } + } + }, + "id": "ListOperationsResponse", + "description": "The response message for Operations.ListOperations." + }, + "OperationMetadata": { + "description": "Metadata describing an Operation.", + "type": "object", + "properties": { + "projectId": { + "description": "The Google Cloud Project in which the job is scoped.", + "type": "string" }, - "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." + "clientId": { + "description": "This field is deprecated. Use `labels` instead. Optionally provided by the\ncaller when submitting the request that creates the operation.", + "type": "string" + }, + "endTime": { + "type": "string", + "description": "The time at which the job stopped running.", + "format": "google-datetime" + }, + "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": { + "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": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Runtime metadata on this Operation.", + "type": "object" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optionally provided by the caller when submitting the request that creates\nthe operation.", + "type": "object" + }, + "createTime": { + "description": "The time at which the job was submitted to the Genomics service.", + "format": "google-datetime", + "type": "string" + } + }, + "id": "OperationMetadata" + }, + "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" + } + }, + "id": "ContainerStartedEvent", + "description": "This event is generated when a container starts.", + "type": "object" + }, + "CheckInRequest": { + "properties": { + "deadlineExpired": { + "description": "The deadline has expired and the worker needs more time.", + "$ref": "Empty" + }, + "event": { + "additionalProperties": { + "type": "any", + "description": "Properties of the object. Contains field @type with type URL." + }, + "description": "A workflow specific event occurred.", + "type": "object" + }, + "result": { + "description": "The operation has finished with the given result.", + "$ref": "Status" + } + }, + "id": "CheckInRequest", + "description": "The parameters to the CheckIn method.", + "type": "object" + }, + "Mount": { + "id": "Mount", + "description": "Mount carries information about a particular disk mount inside a container.", + "type": "object", + "properties": { + "disk": { + "description": "The name of the disk to mount, as specified in the resources section.", + "type": "string" + }, + "readOnly": { + "description": "If true, the disk is mounted read only inside the container.", + "type": "boolean" + }, + "path": { + "type": "string", + "description": "The path to mount the disk at inside the container." + } + } + }, + "ComputeEngine": { + "description": "Describes a Compute Engine resource that is being managed by a running\npipeline.", + "type": "object", + "properties": { + "zone": { + "description": "The availability zone in which the instance resides.", + "type": "string" + }, + "machineType": { + "description": "The machine type of the instance.", + "type": "string" + }, + "diskNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The names of the disks that were created for this pipeline." + }, + "instanceName": { + "description": "The instance on which the operation is running.", + "type": "string" + } + }, + "id": "ComputeEngine" + }, + "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" + }, + "WorkerAssignedEvent": { + "id": "WorkerAssignedEvent", + "description": "This event is generated once a worker VM has been assigned to run the\npipeline.", + "type": "object", + "properties": { + "zone": { + "type": "string", + "description": "The zone the worker is running in." + }, + "instance": { + "description": "The worker's instance name.", + "type": "string" + } + } + }, + "Network": { + "description": "VM networking options.", + "type": "object", + "properties": { + "name": { + "description": "The network name to attach the VM's network interface to. If unspecified,\nthe global default network is used.", + "type": "string" }, - "bootImage": { - "type": "string", - "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\"." + "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" } }, - "id": "VirtualMachine" + "id": "Network" }, - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", - "type": "object", + "DelayedEvent": { "properties": { - "operations": { - "description": "A list of operations that matches the specified filter in the request.", + "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.", "type": "array", "items": { - "$ref": "Operation" + "type": "string" } }, - "nextPageToken": { - "description": "The standard List next-page token.", + "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" } }, - "id": "ListOperationsResponse" + "id": "DelayedEvent", + "description": "This event is generated whenever a resource limitation or transient error\ndelays execution of a pipeline that was otherwise ready to run.", + "type": "object" }, - "OperationMetadata": { - "description": "Metadata describing an Operation.", + "Disk": { "type": "object", "properties": { - "startTime": { - "description": "The time at which the job began to run.", - "format": "google-datetime", + "sourceImage": { + "description": "An optional image to put on the disk before attaching it to the VM.", "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" + "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" }, - "createTime": { - "description": "The time at which the job was submitted to the Genomics service.", - "format": "google-datetime", + "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" }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Optionally provided by the caller when submitting the request that creates\nthe operation.", - "type": "object" - }, - "projectId": { - "type": "string", - "description": "The Google Cloud Project in which the job is scoped." - }, - "clientId": { - "description": "This field is deprecated. Use `labels` instead. Optionally provided by the\ncaller when submitting the request that creates the operation.", + "type": { + "description": "The Compute Engine disk type. If unspecified, 'standard-pd' is used.", "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" - } - }, - "endTime": { - "type": "string", - "description": "The time at which the job stopped running.", - "format": "google-datetime" } }, - "id": "OperationMetadata" + "id": "Disk", + "description": "Carries information about a disk that can be attached to a VM." }, - "ContainerStartedEvent": { - "description": "This event is generated when a container starts.", + "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" + }, + "WorkerReleasedEvent": { + "description": "This event is generated when the worker VM that was assigned to the pipeline\nhas been released (i.e., deleted).", "type": "object", "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.", + "zone": { + "description": "The zone the worker was running in.", "type": "string" }, - "portMappings": { - "additionalProperties": { - "type": "integer", - "format": "int32" - }, - "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" + "instance": { + "description": "The worker's instance name.", + "type": "string" } }, - "id": "ContainerStartedEvent" + "id": "WorkerReleasedEvent" }, - "Mount": { - "description": "Mount carries information about a particular disk mount inside a container.", + "Action": { + "description": "Action specifies a single action that runs a docker container.", "type": "object", "properties": { - "path": { - "description": "The path to mount the disk at inside the container.", + "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" }, - "disk": { - "description": "The name of the disk to mount, as specified in the resources section.", + "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.", + "type": "array", + "items": { + "type": "string" + } + }, + "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" }, - "readOnly": { - "description": "If true, the disk is mounted read only inside the container.", - "type": "boolean" + "entrypoint": { + "description": "If specified, overrides the ENTRYPOINT specified in the container.", + "type": "string" + }, + "pidNamespace": { + "description": "The PID namespace to run the action inside. If unspecified, a separate\nisolated namespace is used.", + "type": "string" + }, + "flags": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "FLAG_UNSPECIFIED", + "IGNORE_EXIT_STATUS", + "RUN_IN_BACKGROUND", + "ALWAYS_RUN", + "ENABLE_FUSE", + "PUBLISH_EXPOSED_PORTS", + "DISABLE_IMAGE_PREFETCH", + "DISABLE_STANDARD_ERROR_CAPTURE" + ] + }, + "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.", + "Normally, a small portion of the container's standard error stream is\ncaptured and returned inside the ContainerStoppedEvent. Setting this\nflag disables this functionality." + ], + "description": "The set of flags to apply to this action." + }, + "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", + "type": "array", + "items": { + "$ref": "Mount" + } + }, + "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" + }, + "labels": { + "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", + "additionalProperties": { + "type": "string" + } + }, + "portMappings": { + "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", + "additionalProperties": { + "format": "int32", + "type": "integer" + } } }, - "id": "Mount" + "id": "Action" }, - "CheckInRequest": { - "description": "The parameters to the CheckIn method.", + "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.", "type": "object", "properties": { - "event": { - "description": "A workflow specific event occurred.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - }, - "result": { - "$ref": "Status", - "description": "The operation has finished with the given result." + "code": { + "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" + ], + "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" + ], + "description": "The Google standard error code that best describes this failure.", + "type": "string" }, - "deadlineExpired": { - "$ref": "Empty", - "description": "The deadline has expired and the worker needs more time." + "cause": { + "description": "The human readable description of the cause of the failure.", + "type": "string" } }, - "id": "CheckInRequest" + "id": "FailedEvent" } }, "icons": { - "x16": "http://www.google.com/images/icons/product/search-16.gif", - "x32": "http://www.google.com/images/icons/product/search-32.gif" + "x32": "http://www.google.com/images/icons/product/search-32.gif", + "x16": "http://www.google.com/images/icons/product/search-16.gif" }, "protocol": "rest", "auth": { @@ -1126,5 +1124,7 @@ "rootUrl": "https://genomics.googleapis.com/", "ownerDomain": "google.com", "name": "genomics", - "batchPath": "batch" + "batchPath": "batch", + "fullyEncodeReservedExpansion": true, + "title": "Genomics API" } diff --git a/DiscoveryJson/iam_v1.json b/DiscoveryJson/iam_v1.json index 46be44ab78..d107b74c81 100644 --- a/DiscoveryJson/iam_v1.json +++ b/DiscoveryJson/iam_v1.json @@ -1,1086 +1,576 @@ { - "canonicalName": "iam", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" + "discoveryVersion": "v1", + "version_module": true, + "schemas": { + "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` .\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" } - } - } - }, - "rootUrl": "https://iam.googleapis.com/", - "ownerDomain": "google.com", - "name": "iam", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Identity and Access Management (IAM) API", - "ownerName": "Google", - "resources": { - "iamPolicies": { - "methods": { - "queryAuditableServices": { - "flatPath": "v1/iamPolicies:queryAuditableServices", - "id": "iam.iamPolicies.queryAuditableServices", - "path": "v1/iamPolicies:queryAuditableServices", - "description": "Returns a list of services that support service level audit logging\nconfiguration for the given resource.", - "request": { - "$ref": "QueryAuditableServicesRequest" - }, - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "QueryAuditableServicesResponse" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + }, + "id": "Binding" + }, + "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", + "properties": { + "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" + }, + "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" + }, + "email": { + "description": "@OutputOnly The email address of the service account.", + "type": "string" + }, + "projectId": { + "description": "@OutputOnly The id of the project that owns 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" + }, + "uniqueId": { + "description": "@OutputOnly The unique and stable id of the service account.", + "type": "string" + } + }, + "id": "ServiceAccount" + }, + "QueryGrantableRolesRequest": { + "description": "The grantable role query request.", + "type": "object", + "properties": { + "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" + }, + "pageToken": { + "type": "string", + "description": "Optional pagination token returned in an earlier\nQueryGrantableRolesResponse." + } + }, + "id": "QueryGrantableRolesRequest" + }, + "CreateRoleRequest": { + "description": "The request to create a new role.", + "type": "object", + "properties": { + "roleId": { + "type": "string", + "description": "The role id to use for this role." + }, + "role": { + "$ref": "Role", + "description": "The Role resource to create." + } + }, + "id": "CreateRoleRequest" + }, + "TestIamPermissionsResponse": { + "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.", + "type": "object" + }, + "ListServiceAccountKeysResponse": { + "description": "The service account keys list response.", + "type": "object", + "properties": { + "keys": { + "description": "The public keys for the service account.", + "type": "array", + "items": { + "$ref": "ServiceAccountKey" + } + } + }, + "id": "ListServiceAccountKeysResponse" + }, + "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": { + "description": "Optional pagination token returned in an earlier\nQueryTestablePermissionsRequest.", + "type": "string" + }, + "pageSize": { + "description": "Optional limit on the number of permissions to include in the response.", + "format": "int32", + "type": "integer" + } + }, + "id": "QueryTestablePermissionsRequest" + }, + "ServiceAccountKey": { + "id": "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", + "properties": { + "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" + }, + "publicKeyData": { + "type": "string", + "description": "The public key data. Only provided in `GetServiceAccountKey` responses.", + "format": "byte" + }, + "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", + "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" ] + }, + "validAfterTime": { + "type": "string", + "description": "The key can be used after this timestamp.", + "format": "google-datetime" + }, + "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 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.", + "type": "string" } } }, - "projects": { - "resources": { - "serviceAccounts": { - "methods": { - "delete": { - "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "name": { - "required": true, - "type": "string", - "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." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}", - "id": "iam.projects.serviceAccounts.delete", - "path": "v1/{+name}", - "description": "Deletes a ServiceAccount." - }, - "signBlob": { - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "SignBlobResponse" - }, - "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", - "id": "iam.projects.serviceAccounts.signBlob", - "path": "v1/{+name}:signBlob", - "description": "Signs a blob using a service account's system-managed private key.", - "request": { - "$ref": "SignBlobRequest" - } - }, - "list": { - "description": "Lists ServiceAccounts for a project.", - "response": { - "$ref": "ListServiceAccountsResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "location": "path", - "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/[^/]+$" - }, - "pageToken": { - "description": "Optional pagination token returned in an earlier\nListServiceAccountsResponse.next_page_token.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "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" - } - }, - "flatPath": "v1/projects/{projectsId}/serviceAccounts", - "path": "v1/{+name}/serviceAccounts", - "id": "iam.projects.serviceAccounts.list" - }, - "create": { - "response": { - "$ref": "ServiceAccount" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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" - } - }, - "flatPath": "v1/projects/{projectsId}/serviceAccounts", - "path": "v1/{+name}/serviceAccounts", - "id": "iam.projects.serviceAccounts.create", - "request": { - "$ref": "CreateServiceAccountRequest" - }, - "description": "Creates a ServiceAccount\nand returns it." - }, - "setIamPolicy": { - "request": { - "$ref": "SetIamPolicyRequest" - }, - "description": "Sets the IAM access control policy for a\nServiceAccount.", - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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/[^/]+/serviceAccounts/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}:setIamPolicy", - "path": "v1/{+resource}:setIamPolicy", - "id": "iam.projects.serviceAccounts.setIamPolicy" - }, - "signJwt": { - "response": { - "$ref": "SignJwtResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "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}: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" - } - }, - "getIamPolicy": { - "description": "Returns the IAM access control policy for a\nServiceAccount.", - "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": "^projects/[^/]+/serviceAccounts/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}:getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "id": "iam.projects.serviceAccounts.getIamPolicy" - }, - "get": { - "description": "Gets a ServiceAccount.", - "response": { - "$ref": "ServiceAccount" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "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}", - "path": "v1/{+name}", - "id": "iam.projects.serviceAccounts.get" - }, - "update": { - "request": { - "$ref": "ServiceAccount" - }, - "description": "Updates a ServiceAccount.\n\nCurrently, only the following fields are updatable:\n`display_name` .\nThe `etag` is mandatory.", - "response": { - "$ref": "ServiceAccount" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PUT", - "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}`.\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" - } - }, - "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}", - "path": "v1/{+name}", - "id": "iam.projects.serviceAccounts.update" - }, - "testIamPermissions": { - "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}:testIamPermissions", - "id": "iam.projects.serviceAccounts.testIamPermissions", - "path": "v1/{+resource}:testIamPermissions", - "description": "Tests the specified permissions against the IAM access control policy\nfor a ServiceAccount.", - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "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/[^/]+/serviceAccounts/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - }, - "resources": { - "keys": { - "methods": { - "create": { - "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", - "path": "v1/{+name}/keys", - "id": "iam.projects.serviceAccounts.keys.create", - "request": { - "$ref": "CreateServiceAccountKeyRequest" - }, - "description": "Creates a ServiceAccountKey\nand returns it." - }, - "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 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/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}/keys/{keysId}", - "id": "iam.projects.serviceAccounts.keys.delete", - "path": "v1/{+name}", - "description": "Deletes a ServiceAccountKey." - }, - "list": { - "description": "Lists ServiceAccountKeys.", - "response": { - "$ref": "ListServiceAccountKeysResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "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}`.\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" - }, - "keyTypes": { - "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", - "repeated": true, - "location": "query" - } - }, - "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}/keys", - "path": "v1/{+name}/keys", - "id": "iam.projects.serviceAccounts.keys.list" - }, - "get": { - "description": "Gets the ServiceAccountKey\nby key id.", - "httpMethod": "GET", - "response": { - "$ref": "ServiceAccountKey" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "publicKeyType": { - "location": "query", - "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" - }, - "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/serviceAccounts/[^/]+/keys/[^/]+$", - "location": "path", - "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." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}/keys/{keysId}", - "id": "iam.projects.serviceAccounts.keys.get", - "path": "v1/{+name}" - } - } - } - } - }, - "roles": { - "methods": { - "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", - "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`organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}`\n`projects/{PROJECT_ID}/roles/{ROLE_NAME}`", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/roles/[^/]+$" - }, - "etag": { - "location": "query", - "description": "Used to perform a consistent read-modify-write.", - "format": "byte", - "type": "string" - } - }, - "flatPath": "v1/projects/{projectsId}/roles/{rolesId}", - "path": "v1/{+name}", - "id": "iam.projects.roles.delete" - }, - "list": { - "description": "Lists the Roles defined on a resource.", - "response": { - "$ref": "ListRolesResponse" - }, - "parameterOrder": [ - "parent" - ], - "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": { - "pattern": "^projects/[^/]+$", - "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" - }, - "showDeleted": { - "location": "query", - "description": "Include Roles that have been deleted.", - "type": "boolean" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/roles", - "path": "v1/{+parent}/roles", - "id": "iam.projects.roles.list" - }, - "create": { - "request": { - "$ref": "CreateRoleRequest" - }, - "description": "Creates a new Role.", - "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": "^projects/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/roles", - "path": "v1/{+parent}/roles", - "id": "iam.projects.roles.create" - }, - "patch": { - "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", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "updateMask": { - "location": "query", - "description": "A mask describing which fields in the Role have changed.", - "format": "google-fieldmask", - "type": "string" - }, - "name": { - "pattern": "^projects/[^/]+/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}`", - "required": true, - "type": "string" - } - } - }, - "undelete": { - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Role" - }, - "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/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/roles/{rolesId}:undelete", - "id": "iam.projects.roles.undelete", - "path": "v1/{+name}:undelete", - "description": "Undelete a Role, bringing it back in its previous state.", - "request": { - "$ref": "UndeleteRoleRequest" - } - }, - "get": { - "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", - "description": "Gets a Role definition." - } - } + "SignBlobResponse": { + "description": "The service account sign blob response.", + "type": "object", + "properties": { + "signature": { + "description": "The signed blob.", + "format": "byte", + "type": "string" + }, + "keyId": { + "type": "string", + "description": "The id of the key used to sign the blob." } - } + }, + "id": "SignBlobResponse" }, - "roles": { - "methods": { - "list": { - "flatPath": "v1/roles", - "path": "v1/roles", - "id": "iam.roles.list", - "description": "Lists the Roles defined on a resource.", - "response": { - "$ref": "ListRolesResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "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": { - "description": "Optional view for the returned Role objects.", - "type": "string", - "location": "query", - "enum": [ - "BASIC", - "FULL" - ] - }, - "parent": { - "type": "string", - "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}`" - }, - "showDeleted": { - "type": "boolean", - "location": "query", - "description": "Include Roles that have been deleted." - } - } + "Permission": { + "description": "A permission which can be included by a role.", + "type": "object", + "properties": { + "description": { + "description": "A brief description of what this Permission is used for.", + "type": "string" }, - "get": { - "path": "v1/{+name}", - "id": "iam.roles.get", - "description": "Gets a Role definition.", - "response": { - "$ref": "Role" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "pattern": "^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}`", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "customRolesSupportLevel": { + "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." ], - "flatPath": "v1/roles/{rolesId}" + "enum": [ + "SUPPORTED", + "TESTING", + "NOT_SUPPORTED" + ] }, - "queryGrantableRoles": { - "response": { - "$ref": "QueryGrantableRolesResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "apiDisabled": { + "description": "The service API associated with the permission is not enabled.", + "type": "boolean" + }, + "stage": { + "enum": [ + "ALPHA", + "BETA", + "GA", + "DEPRECATED" ], - "flatPath": "v1/roles: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" + "description": "The current launch stage of the permission.", + "type": "string", + "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." + ] + }, + "name": { + "description": "The name of this Permission.", + "type": "string" + }, + "onlyInPredefinedRoles": { + "description": "This permission can ONLY be used in predefined roles.", + "type": "boolean" + }, + "title": { + "description": "The title of this Permission.", + "type": "string" + } + }, + "id": "Permission" + }, + "SignJwtRequest": { + "properties": { + "payload": { + "description": "The JWT payload to sign, a JSON JWT Claim set.", + "type": "string" + } + }, + "id": "SignJwtRequest", + "description": "The service account sign JWT request.", + "type": "object" + }, + "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" }, - "permissions": { - "methods": { - "queryTestablePermissions": { - "path": "v1/permissions:queryTestablePermissions", - "id": "iam.permissions.queryTestablePermissions", - "request": { - "$ref": "QueryTestablePermissionsRequest" - }, - "description": "Lists the permissions testable on a resource.\nA permission is testable if it can be tested for an identity on a resource.", - "response": { - "$ref": "QueryTestablePermissionsResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": {}, - "flatPath": "v1/permissions:queryTestablePermissions" + "AuditableService": { + "description": "Contains information about an auditable service.", + "type": "object", + "properties": { + "name": { + "description": "Public name of the service.\nFor example, the service name for Cloud IAM is 'iam.googleapis.com'.", + "type": "string" } - } + }, + "id": "AuditableService" }, - "organizations": { - "resources": { + "ListServiceAccountsResponse": { + "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", + "description": "The service account list response." + }, + "QueryGrantableRolesResponse": { + "description": "The grantable role query response.", + "type": "object", + "properties": { "roles": { - "methods": { - "create": { - "response": { - "$ref": "Role" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "pattern": "^organizations/[^/]+$", - "location": "path", - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/organizations/{organizationsId}/roles", - "path": "v1/{+parent}/roles", - "id": "iam.organizations.roles.create", - "description": "Creates a new Role.", - "request": { - "$ref": "CreateRoleRequest" - } - }, - "undelete": { - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Role" - }, - "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`organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}`\n`projects/{PROJECT_ID}/roles/{ROLE_NAME}`" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/organizations/{organizationsId}/roles/{rolesId}:undelete", - "id": "iam.organizations.roles.undelete", - "path": "v1/{+name}:undelete", - "description": "Undelete a Role, bringing it back in its previous state.", - "request": { - "$ref": "UndeleteRoleRequest" - } - }, - "get": { - "description": "Gets a Role definition.", - "httpMethod": "GET", - "response": { - "$ref": "Role" - }, - "parameterOrder": [ - "name" - ], - "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": "^organizations/[^/]+/roles/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/organizations/{organizationsId}/roles/{rolesId}", - "id": "iam.organizations.roles.get", - "path": "v1/{+name}" - }, - "patch": { - "id": "iam.organizations.roles.patch", - "path": "v1/{+name}", - "request": { - "$ref": "Role" - }, - "description": "Updates a Role definition.", - "httpMethod": "PATCH", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Role" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "updateMask": { - "description": "A mask describing which fields in the Role have changed.", - "format": "google-fieldmask", - "type": "string", - "location": "query" - }, - "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}" - }, - "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.", - "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}", - "id": "iam.organizations.roles.delete", - "path": "v1/{+name}" - }, - "list": { - "flatPath": "v1/organizations/{organizationsId}/roles", - "id": "iam.organizations.roles.list", - "path": "v1/{+parent}/roles", - "description": "Lists the Roles defined on a resource.", - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListRolesResponse" - }, - "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": { - "enum": [ - "BASIC", - "FULL" - ], - "description": "Optional view for the returned Role objects.", - "type": "string", - "location": "query" - }, - "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": "^organizations/[^/]+$", - "location": "path" - }, - "showDeleted": { - "location": "query", - "description": "Include Roles that have been deleted.", - "type": "boolean" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } + "description": "The list of matching roles.", + "type": "array", + "items": { + "$ref": "Role" } + }, + "nextPageToken": { + "description": "To retrieve the next page of results, set\n`QueryGrantableRolesRequest.page_token` to this value.", + "type": "string" } - } - } - }, - "parameters": { - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" + }, + "id": "QueryGrantableRolesResponse" }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" + "SignBlobRequest": { + "description": "The service account sign blob request.", + "type": "object", + "properties": { + "bytesToSign": { + "description": "The bytes to sign.", + "format": "byte", + "type": "string" + } + }, + "id": "SignBlobRequest" }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "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." + }, + "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", + "description": "Request message for `SetIamPolicy` method." }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" + "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" }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" + "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 `{}`." }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" + "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": { + "enum": [ + "LOG_TYPE_UNSPECIFIED", + "ADMIN_READ", + "DATA_WRITE", + "DATA_READ" + ], + "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" + ] + } + }, + "id": "AuditLogConfig" }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" + "CreateServiceAccountKeyRequest": { + "type": "object", + "properties": { + "keyAlgorithm": { + "enumDescriptions": [ + "An unspecified key algorithm.", + "1k RSA Key.", + "2k RSA Key." + ], + "enum": [ + "KEY_ALG_UNSPECIFIED", + "KEY_ALG_RSA_1024", + "KEY_ALG_RSA_2048" + ], + "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" + }, + "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", + "description": "The service account key create request." }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" + "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" }, - "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" + "SignJwtResponse": { + "properties": { + "keyId": { + "type": "string", + "description": "The id of the key used to sign the JWT." + }, + "signedJwt": { + "description": "The signed JWT.", + "type": "string" + } + }, + "id": "SignJwtResponse", + "description": "The service account sign JWT response.", + "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" + "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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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": { + "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" + } + }, + "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" }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" + "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" }, - "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" + "AuditData": { + "type": "object", + "properties": { + "policyDelta": { + "$ref": "PolicyDelta", + "description": "Policy delta between the original policy and the newly set policy." + } + }, + "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." }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" - } - }, - "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": "", - "revision": "20180420", - "documentationLink": "https://cloud.google.com/iam/", - "id": "iam:v1", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { "BindingDelta": { - "id": "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", "properties": { + "member": { + "description": "A single identity requesting access for a Cloud Platform resource.\nFollows the same format of Binding.members.\nRequired", + "type": "string" + }, + "role": { + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "type": "string" + }, "action": { "enumDescriptions": [ "Unspecified.", @@ -1094,16 +584,10 @@ ], "description": "The action that was performed on a Binding.\nRequired", "type": "string" - }, - "member": { - "type": "string", - "description": "A single identity requesting access for a Cloud Platform resource.\nFollows the same format of Binding.members.\nRequired" - }, - "role": { - "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", - "type": "string" } - } + }, + "id": "BindingDelta", + "description": "One delta entry for Binding. Each individual change (only one member in each\nentry) to a binding will be a separate entry." }, "QueryAuditableServicesRequest": { "description": "A request to get the list of auditable services for a resource.", @@ -1128,28 +612,13 @@ }, "id": "UndeleteRoleRequest" }, - "CreateServiceAccountRequest": { - "description": "The service account create request.", - "type": "object", - "properties": { - "serviceAccount": { - "$ref": "ServiceAccount", - "description": "The ServiceAccount resource to create.\nCurrently, only the following values are user assignable:\n`display_name` ." - }, - "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.", - "type": "string" - } - }, - "id": "CreateServiceAccountRequest" - }, "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.", "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" + "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.", @@ -1159,24 +628,25 @@ } } }, - "id": "AuditConfig" + "id": "AuditConfig" + }, + "CreateServiceAccountRequest": { + "type": "object", + "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.", + "type": "string" + }, + "serviceAccount": { + "$ref": "ServiceAccount", + "description": "The ServiceAccount resource to create.\nCurrently, only the following values are user assignable:\n`display_name` ." + } + }, + "id": "CreateServiceAccountRequest", + "description": "The service account create request." }, "Role": { - "id": "Role", - "description": "A role in the Identity and Access Management API.", - "type": "object", "properties": { - "title": { - "description": "Optional. A human-readable title for the role. Typically this\nis limited to 100 UTF-8 bytes.", - "type": "string" - }, - "includedPermissions": { - "description": "The names of the permissions this role grants when bound in an IAM policy.", - "type": "array", - "items": { - "type": "string" - } - }, "description": { "description": "Optional. A human-readable description for the role.", "type": "string" @@ -1187,6 +657,8 @@ "type": "string" }, "stage": { + "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.", @@ -1202,9 +674,7 @@ "DEPRECATED", "DISABLED", "EAP" - ], - "description": "The current launch stage of the role.", - "type": "string" + ] }, "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.", @@ -1213,585 +683,1115 @@ "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" - } - } - }, - "QueryAuditableServicesResponse": { - "description": "A response containing a list of auditable services for a resource.", - "type": "object", - "properties": { - "services": { - "description": "The auditable services for a resource.", - "type": "array", - "items": { - "$ref": "AuditableService" - } - } - }, - "id": "QueryAuditableServicesResponse" - }, - "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` .\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" - }, - "QueryGrantableRolesRequest": { - "description": "The grantable role query request.", - "type": "object", - "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" - }, - "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" - ] - } - }, - "id": "QueryGrantableRolesRequest" - }, - "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", - "properties": { - "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" - }, - "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" - }, - "email": { - "description": "@OutputOnly The email address of the service account.", - "type": "string" - }, - "projectId": { - "description": "@OutputOnly The id of the project that owns the service account.", - "type": "string" - } - }, - "id": "ServiceAccount" - }, - "CreateRoleRequest": { - "type": "object", - "properties": { - "roleId": { - "description": "The role id to use for this role.", + "title": { + "description": "Optional. A human-readable title for the role. Typically this\nis limited to 100 UTF-8 bytes.", "type": "string" }, - "role": { - "$ref": "Role", - "description": "The Role resource to create." - } - }, - "id": "CreateRoleRequest", - "description": "The request to create a new role." - }, - "TestIamPermissionsResponse": { - "description": "Response message for `TestIamPermissions` method.", - "type": "object", - "properties": { - "permissions": { - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", + "includedPermissions": { + "description": "The names of the permissions this role grants when bound in an IAM policy.", "type": "array", "items": { "type": "string" } } }, - "id": "TestIamPermissionsResponse" + "id": "Role", + "description": "A role in the Identity and Access Management API.", + "type": "object" }, - "ListServiceAccountKeysResponse": { + "QueryAuditableServicesResponse": { + "id": "QueryAuditableServicesResponse", + "description": "A response containing a list of auditable services for a resource.", "type": "object", "properties": { - "keys": { - "description": "The public keys for the service account.", + "services": { + "description": "The auditable services for a resource.", "type": "array", "items": { - "$ref": "ServiceAccountKey" + "$ref": "AuditableService" } } - }, - "id": "ListServiceAccountKeysResponse", - "description": "The service account keys list response." - }, - "QueryTestablePermissionsRequest": { - "description": "A request to get permissions which can be tested on a resource.", - "type": "object", - "properties": { - "pageSize": { - "description": "Optional limit on the number of permissions to include in the response.", - "format": "int32", - "type": "integer" - }, - "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": { - "description": "Optional pagination token returned in an earlier\nQueryTestablePermissionsRequest.", - "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": "iam", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" } - }, - "id": "QueryTestablePermissionsRequest" - }, - "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", - "properties": { - "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": { - "type": "string", - "description": "The key can be used before this timestamp.", - "format": "google-datetime" - }, - "keyAlgorithm": { - "enumDescriptions": [ - "An unspecified key algorithm.", - "1k RSA Key.", - "2k RSA Key." - ], - "enum": [ - "KEY_ALG_UNSPECIFIED", - "KEY_ALG_RSA_1024", - "KEY_ALG_RSA_2048" + } + } + }, + "rootUrl": "https://iam.googleapis.com/", + "ownerDomain": "google.com", + "name": "iam", + "batchPath": "batch", + "fullyEncodeReservedExpansion": true, + "title": "Identity and Access Management (IAM) API", + "ownerName": "Google", + "resources": { + "roles": { + "methods": { + "queryGrantableRoles": { + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "QueryGrantableRolesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "description": "Specifies the algorithm (and possibly key size) for the key.", - "type": "string" + "parameters": {}, + "flatPath": "v1/roles:queryGrantableRoles", + "id": "iam.roles.queryGrantableRoles", + "path": "v1/roles:queryGrantableRoles", + "request": { + "$ref": "QueryGrantableRolesRequest" + }, + "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." }, - "validAfterTime": { - "description": "The key can be used after this timestamp.", - "format": "google-datetime", - "type": "string" + "list": { + "httpMethod": "GET", + "parameterOrder": [], + "response": { + "$ref": "ListRolesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "pageToken": { + "description": "Optional pagination token returned in an earlier ListRolesResponse.", + "type": "string", + "location": "query" + }, + "pageSize": { + "location": "query", + "description": "Optional limit on the number of roles to include in the response.", + "format": "int32", + "type": "integer" + }, + "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}`", + "type": "string", + "location": "query" + }, + "showDeleted": { + "type": "boolean", + "location": "query", + "description": "Include Roles that have been deleted." + } + }, + "flatPath": "v1/roles", + "id": "iam.roles.list", + "path": "v1/roles", + "description": "Lists the Roles defined on a resource." }, - "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." + "get": { + "description": "Gets a Role definition.", + "response": { + "$ref": "Role" + }, + "parameterOrder": [ + "name" ], - "enum": [ - "TYPE_UNSPECIFIED", - "TYPE_PKCS12_FILE", - "TYPE_GOOGLE_CREDENTIALS_FILE" + "httpMethod": "GET", + "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": "^roles/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "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.", - "type": "string" - }, - "privateKeyData": { - "type": "string", - "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" - }, - "publicKeyData": { - "description": "The public key data. Only provided in `GetServiceAccountKey` responses.", - "format": "byte", - "type": "string" + "flatPath": "v1/roles/{rolesId}", + "path": "v1/{+name}", + "id": "iam.roles.get" } - }, - "id": "ServiceAccountKey" + } }, - "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" + "permissions": { + "methods": { + "queryTestablePermissions": { + "request": { + "$ref": "QueryTestablePermissionsRequest" + }, + "description": "Lists the permissions testable on a resource.\nA permission is testable if it can be tested for an identity on a resource.", + "response": { + "$ref": "QueryTestablePermissionsResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": {}, + "flatPath": "v1/permissions:queryTestablePermissions", + "path": "v1/permissions:queryTestablePermissions", + "id": "iam.permissions.queryTestablePermissions" } - }, - "id": "SignBlobResponse" + } }, - "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" + "organizations": { + "resources": { + "roles": { + "methods": { + "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": { + "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}", + "path": "v1/{+name}", + "id": "iam.organizations.roles.delete" + }, + "list": { + "path": "v1/{+parent}/roles", + "id": "iam.organizations.roles.list", + "description": "Lists the Roles defined on a resource.", + "response": { + "$ref": "ListRolesResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "parameters": { + "pageToken": { + "type": "string", + "location": "query", + "description": "Optional pagination token returned in an earlier ListRolesResponse." + }, + "pageSize": { + "location": "query", + "description": "Optional limit on the number of roles to include in the response.", + "format": "int32", + "type": "integer" + }, + "view": { + "type": "string", + "location": "query", + "enum": [ + "BASIC", + "FULL" + ], + "description": "Optional view for the returned Role objects." + }, + "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": "^organizations/[^/]+$", + "location": "path" + }, + "showDeleted": { + "description": "Include Roles that have been deleted.", + "type": "boolean", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/organizations/{organizationsId}/roles" + }, + "create": { + "response": { + "$ref": "Role" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "parameters": { + "parent": { + "location": "path", + "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/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/organizations/{organizationsId}/roles", + "path": "v1/{+parent}/roles", + "id": "iam.organizations.roles.create", + "description": "Creates a new Role.", + "request": { + "$ref": "CreateRoleRequest" + } + }, + "undelete": { + "description": "Undelete a Role, bringing it back in its previous state.", + "request": { + "$ref": "UndeleteRoleRequest" + }, + "httpMethod": "POST", + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/organizations/{organizationsId}/roles/{rolesId}:undelete", + "id": "iam.organizations.roles.undelete", + "path": "v1/{+name}:undelete" + }, + "get": { + "flatPath": "v1/organizations/{organizationsId}/roles/{rolesId}", + "id": "iam.organizations.roles.get", + "path": "v1/{+name}", + "description": "Gets a Role definition.", + "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" + } + } + }, + "patch": { + "response": { + "$ref": "Role" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "PATCH", + "parameters": { + "updateMask": { + "location": "query", + "description": "A mask describing which fields in the Role have changed.", + "format": "google-fieldmask", + "type": "string" + }, + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/organizations/{organizationsId}/roles/{rolesId}", + "path": "v1/{+name}", + "id": "iam.organizations.roles.patch", + "description": "Updates a Role definition.", + "request": { + "$ref": "Role" + } + } + } } - }, - "id": "SignJwtRequest" + } }, - "Permission": { - "description": "A permission which can be included by a role.", - "type": "object", - "properties": { - "onlyInPredefinedRoles": { - "description": "This permission can ONLY be used in predefined roles.", - "type": "boolean" - }, - "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." - ] - }, - "apiDisabled": { - "description": "The service API associated with the permission is not enabled.", - "type": "boolean" - }, - "stage": { - "description": "The current launch stage of the permission.", - "type": "string", - "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." + "iamPolicies": { + "methods": { + "queryAuditableServices": { + "description": "Returns a list of services that support service level audit logging\nconfiguration for the given resource.", + "request": { + "$ref": "QueryAuditableServicesRequest" + }, + "response": { + "$ref": "QueryAuditableServicesResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "enum": [ - "ALPHA", - "BETA", - "GA", - "DEPRECATED" - ] - }, - "name": { - "description": "The name of this Permission.", - "type": "string" + "flatPath": "v1/iamPolicies:queryAuditableServices", + "path": "v1/iamPolicies:queryAuditableServices", + "id": "iam.iamPolicies.queryAuditableServices" } - }, - "id": "Permission" + } }, - "PolicyDelta": { - "properties": { - "bindingDeltas": { - "description": "The delta for Bindings between two policies.", - "type": "array", - "items": { - "$ref": "BindingDelta" + "projects": { + "resources": { + "serviceAccounts": { + "methods": { + "getIamPolicy": { + "description": "Returns the IAM access control policy for a\nServiceAccount.", + "response": { + "$ref": "Policy" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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" + } + }, + "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}:getIamPolicy", + "path": "v1/{+resource}:getIamPolicy", + "id": "iam.projects.serviceAccounts.getIamPolicy" + }, + "get": { + "response": { + "$ref": "ServiceAccount" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "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}", + "path": "v1/{+name}", + "id": "iam.projects.serviceAccounts.get", + "description": "Gets a ServiceAccount." + }, + "update": { + "request": { + "$ref": "ServiceAccount" + }, + "description": "Updates a ServiceAccount.\n\nCurrently, only the following fields are updatable:\n`display_name` .\nThe `etag` is mandatory.", + "response": { + "$ref": "ServiceAccount" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "PUT", + "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}`.\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" + } + }, + "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}", + "path": "v1/{+name}", + "id": "iam.projects.serviceAccounts.update" + }, + "testIamPermissions": { + "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}:testIamPermissions", + "id": "iam.projects.serviceAccounts.testIamPermissions", + "path": "v1/{+resource}:testIamPermissions", + "description": "Tests the specified permissions against the IAM access control policy\nfor a ServiceAccount.", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "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": "^projects/[^/]+/serviceAccounts/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}", + "path": "v1/{+name}", + "id": "iam.projects.serviceAccounts.delete", + "description": "Deletes a ServiceAccount.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "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" + } + } + }, + "list": { + "description": "Lists ServiceAccounts for a project.", + "httpMethod": "GET", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "ListServiceAccountsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "pattern": "^projects/[^/]+$", + "location": "path", + "description": "Required. The resource name of the project associated with the service\naccounts, such as `projects/my-project-123`.", + "required": true, + "type": "string" + }, + "pageToken": { + "location": "query", + "description": "Optional pagination token returned in an earlier\nListServiceAccountsResponse.next_page_token.", + "type": "string" + }, + "pageSize": { + "location": "query", + "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" + } + }, + "flatPath": "v1/projects/{projectsId}/serviceAccounts", + "id": "iam.projects.serviceAccounts.list", + "path": "v1/{+name}/serviceAccounts" + }, + "signBlob": { + "request": { + "$ref": "SignBlobRequest" + }, + "description": "Signs a blob using a service account's system-managed private key.", + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "SignBlobResponse" + }, + "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}:signBlob", + "id": "iam.projects.serviceAccounts.signBlob", + "path": "v1/{+name}:signBlob" + }, + "create": { + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "ServiceAccount" + }, + "parameters": { + "name": { + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$", + "location": "path", + "description": "Required. The resource name of the project associated with the service\naccounts, such as `projects/my-project-123`." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/serviceAccounts", + "id": "iam.projects.serviceAccounts.create", + "path": "v1/{+name}/serviceAccounts", + "description": "Creates a ServiceAccount\nand returns it.", + "request": { + "$ref": "CreateServiceAccountRequest" + } + }, + "signJwt": { + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "SignJwtResponse" + }, + "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}:signJwt", + "id": "iam.projects.serviceAccounts.signJwt", + "path": "v1/{+name}: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" + } + }, + "setIamPolicy": { + "description": "Sets the IAM access control policy for a\nServiceAccount.", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", + "parameters": { + "resource": { + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/serviceAccounts/[^/]+$", + "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" + ], + "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}:setIamPolicy", + "path": "v1/{+resource}:setIamPolicy", + "id": "iam.projects.serviceAccounts.setIamPolicy" + } + }, + "resources": { + "keys": { + "methods": { + "delete": { + "id": "iam.projects.serviceAccounts.keys.delete", + "path": "v1/{+name}", + "description": "Deletes a ServiceAccountKey.", + "httpMethod": "DELETE", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/serviceAccounts/[^/]+/keys/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}/keys/{keysId}" + }, + "list": { + "response": { + "$ref": "ListServiceAccountKeysResponse" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "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}`.\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" + }, + "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" + } + }, + "flatPath": "v1/projects/{projectsId}/serviceAccounts/{serviceAccountsId}/keys", + "path": "v1/{+name}/keys", + "id": "iam.projects.serviceAccounts.keys.list", + "description": "Lists ServiceAccountKeys." + }, + "get": { + "response": { + "$ref": "ServiceAccountKey" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "parameters": { + "publicKeyType": { + "location": "query", + "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" + }, + "name": { + "pattern": "^projects/[^/]+/serviceAccounts/[^/]+/keys/[^/]+$", + "location": "path", + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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": { + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "ServiceAccountKey" + }, + "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", + "id": "iam.projects.serviceAccounts.keys.create", + "path": "v1/{+name}/keys", + "request": { + "$ref": "CreateServiceAccountKeyRequest" + }, + "description": "Creates a ServiceAccountKey\nand returns it." + } + } + } } - } - }, - "id": "PolicyDelta", - "description": "The difference delta between two policies.", - "type": "object" - }, - "AuditableService": { - "type": "object", - "properties": { - "name": { - "description": "Public name of the service.\nFor example, the service name for Cloud IAM is 'iam.googleapis.com'.", - "type": "string" - } - }, - "id": "AuditableService", - "description": "Contains information about an auditable service." - }, - "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": { - "id": "QueryGrantableRolesResponse", - "description": "The grantable role query response.", - "type": "object", - "properties": { "roles": { - "description": "The list of matching roles.", - "type": "array", - "items": { - "$ref": "Role" + "methods": { + "undelete": { + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Role" + }, + "parameters": { + "name": { + "required": true, + "type": "string", + "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}`" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/roles/{rolesId}:undelete", + "id": "iam.projects.roles.undelete", + "path": "v1/{+name}:undelete", + "description": "Undelete a Role, bringing it back in its previous state.", + "request": { + "$ref": "UndeleteRoleRequest" + } + }, + "get": { + "httpMethod": "GET", + "response": { + "$ref": "Role" + }, + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/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}`" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/roles/{rolesId}", + "id": "iam.projects.roles.get", + "path": "v1/{+name}", + "description": "Gets a Role definition." + }, + "patch": { + "request": { + "$ref": "Role" + }, + "description": "Updates a Role definition.", + "response": { + "$ref": "Role" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "PATCH", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "updateMask": { + "description": "A mask describing which fields in the Role have changed.", + "format": "google-fieldmask", + "type": "string", + "location": "query" + }, + "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/[^/]+$" + } + }, + "flatPath": "v1/projects/{projectsId}/roles/{rolesId}", + "path": "v1/{+name}", + "id": "iam.projects.roles.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.", + "httpMethod": "DELETE", + "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`organizations/{ORGANIZATION_ID}/roles/{ROLE_NAME}`\n`projects/{PROJECT_ID}/roles/{ROLE_NAME}`", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/roles/[^/]+$", + "location": "path" + }, + "etag": { + "location": "query", + "description": "Used to perform a consistent read-modify-write.", + "format": "byte", + "type": "string" + } + }, + "flatPath": "v1/projects/{projectsId}/roles/{rolesId}", + "id": "iam.projects.roles.delete", + "path": "v1/{+name}" + }, + "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": { + "location": "query", + "description": "Optional pagination token returned in an earlier ListRolesResponse.", + "type": "string" + }, + "pageSize": { + "location": "query", + "description": "Optional limit on the number of roles to include in the response.", + "format": "int32", + "type": "integer" + }, + "view": { + "type": "string", + "location": "query", + "enum": [ + "BASIC", + "FULL" + ], + "description": "Optional view for the returned Role objects." + }, + "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": "^projects/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/roles", + "path": "v1/{+parent}/roles", + "id": "iam.projects.roles.list" + }, + "create": { + "response": { + "$ref": "Role" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "parent": { + "pattern": "^projects/[^/]+$", + "location": "path", + "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" + } + }, + "flatPath": "v1/projects/{projectsId}/roles", + "path": "v1/{+parent}/roles", + "id": "iam.projects.roles.create", + "request": { + "$ref": "CreateRoleRequest" + }, + "description": "Creates a new Role." + } } - }, - "nextPageToken": { - "description": "To retrieve the next page of results, set\n`QueryGrantableRolesRequest.page_token` to this value.", - "type": "string" } } + } + }, + "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" }, - "SignBlobRequest": { - "properties": { - "bytesToSign": { - "description": "The bytes to sign.", - "format": "byte", - "type": "string" - } - }, - "id": "SignBlobRequest", - "description": "The service account sign blob request.", - "type": "object" + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "type": "string", + "location": "query" }, - "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." - }, - "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." + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string", + "location": "query" }, - "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": { - "type": "string", - "description": "To retrieve the next page of results, set\n`QueryTestableRolesRequest.page_token` to this value." - } - }, - "id": "QueryTestablePermissionsResponse" + "$.xgafv": { + "description": "V1 error format.", + "type": "string", + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "enum": [ + "1", + "2" + ] }, - "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 `{}`." + "callback": { + "type": "string", + "location": "query", + "description": "JSONP" }, - "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": { - "enum": [ - "LOG_TYPE_UNSPECIFIED", - "ADMIN_READ", - "DATA_WRITE", - "DATA_READ" - ], - "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" - ] - } - }, - "id": "AuditLogConfig" + "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" }, - "CreateServiceAccountKeyRequest": { - "description": "The service account key create request.", - "type": "object", - "properties": { - "keyAlgorithm": { - "enumDescriptions": [ - "An unspecified key algorithm.", - "1k RSA Key.", - "2k RSA Key." - ], - "enum": [ - "KEY_ALG_UNSPECIFIED", - "KEY_ALG_RSA_1024", - "KEY_ALG_RSA_2048" - ], - "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" - }, - "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" + "access_token": { + "description": "OAuth access token.", + "type": "string", + "location": "query" }, - "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" + "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" }, - "TestIamPermissionsRequest": { - "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", - "description": "Request message for `TestIamPermissions` method." + "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" }, - "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": { - "type": "array", - "items": { - "$ref": "Binding" - }, - "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error." - } - }, - "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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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" + "pp": { + "location": "query", + "description": "Pretty-print response.", + "type": "boolean", + "default": "true" }, - "ListRolesResponse": { - "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", - "description": "The response containing the roles defined under a resource.", - "type": "object" + "oauth_token": { + "type": "string", + "location": "query", + "description": "OAuth 2.0 token for the current user." }, - "AuditData": { - "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", - "properties": { - "policyDelta": { - "description": "Policy delta between the original policy and the newly set policy.", - "$ref": "PolicyDelta" - } - } + "bearer_token": { + "description": "OAuth bearer token.", + "type": "string", + "location": "query" } }, - "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://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": "", + "id": "iam:v1", + "documentationLink": "https://cloud.google.com/iam/", + "revision": "20180420" } diff --git a/DiscoveryJson/kgsearch_v1.json b/DiscoveryJson/kgsearch_v1.json index 61043c0ed6..48b8f5b184 100644 --- a/DiscoveryJson/kgsearch_v1.json +++ b/DiscoveryJson/kgsearch_v1.json @@ -1,4 +1,15 @@ { + "kind": "discovery#restDescription", + "description": "Searches the Google Knowledge Graph for entities.", + "servicePath": "", + "rootUrl": "https://kgsearch.googleapis.com/", + "basePath": "", + "ownerDomain": "google.com", + "name": "kgsearch", + "batchPath": "batch", + "id": "kgsearch:v1", + "documentationLink": "https://developers.google.com/knowledge-graph/", + "revision": "20180104", "title": "Knowledge Graph Search API", "discoveryVersion": "v1", "ownerName": "Google", @@ -7,28 +18,27 @@ "entities": { "methods": { "search": { - "description": "Searches Knowledge Graph for entities that match the constraints.\nA list of matched entities will be returned in response, which will be in\nJSON-LD format and compatible with http://schema.org", - "httpMethod": "GET", "response": { "$ref": "SearchResponse" }, "parameterOrder": [], + "httpMethod": "GET", "parameters": { "prefix": { + "location": "query", "description": "Enables prefix match against names and aliases of entities", - "type": "boolean", - "location": "query" + "type": "boolean" }, "query": { - "description": "The literal query string for search.", "type": "string", - "location": "query" + "location": "query", + "description": "The literal query string for search." }, "types": { + "location": "query", "description": "Restricts returned entities with these types, e.g. Person\n(as defined in http://schema.org/Person). If multiple types are specified,\nreturned entities will contain one or more of these types.", "type": "string", - "repeated": true, - "location": "query" + "repeated": true }, "indent": { "location": "query", @@ -36,10 +46,10 @@ "type": "boolean" }, "languages": { - "location": "query", - "description": "The list of language codes (defined in ISO 693) to run the query with,\ne.g. 'en'.", "type": "string", - "repeated": true + "repeated": true, + "location": "query", + "description": "The list of language codes (defined in ISO 693) to run the query with,\ne.g. 'en'." }, "ids": { "location": "query", @@ -55,108 +65,108 @@ } }, "flatPath": "v1/entities:search", + "path": "v1/entities:search", "id": "kgsearch.entities.search", - "path": "v1/entities:search" + "description": "Searches Knowledge Graph for entities that match the constraints.\nA list of matched entities will be returned in response, which will be in\nJSON-LD format and compatible with http://schema.org" } } } }, "parameters": { - "callback": { - "description": "JSONP", + "upload_protocol": { "type": "string", - "location": "query" + "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": { + "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" - }, - "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" - ], + "v1 error format", + "v2 error format" + ] + }, + "callback": { + "type": "string", "location": "query", - "description": "Data format for response.", + "description": "JSONP" + }, + "alt": { "default": "json", "enum": [ "json", "media", "proto" ], - "type": "string" - }, - "key": { + "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": "API key. 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" + "description": "Data format for response." }, "access_token": { + "type": "string", "location": "query", - "description": "OAuth access token.", - "type": "string" + "description": "OAuth access token." + }, + "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" + "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", - "location": "query" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" + "default": "true" }, "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" + "location": "query", + "description": "OAuth 2.0 token for the current user." }, - "uploadType": { + "bearer_token": { "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "description": "OAuth bearer token.", "type": "string" - }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" } }, "schemas": { "SearchResponse": { - "description": "Response message includes the context and a list of matching results\nwhich contain the detail of associated entities.", "type": "object", "properties": { "@context": { - "description": "The local context applicable for the response. See more details at\nhttp://www.w3.org/TR/json-ld/#context-definitions.", - "type": "any" + "type": "any", + "description": "The local context applicable for the response. See more details at\nhttp://www.w3.org/TR/json-ld/#context-definitions." }, "itemListElement": { "description": "The item list of search results.", @@ -170,25 +180,15 @@ "type": "any" } }, - "id": "SearchResponse" + "id": "SearchResponse", + "description": "Response message includes the context and a list of matching results\nwhich contain the detail of associated entities." } }, + "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" + "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://kgsearch.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Searches the Google Knowledge Graph for entities.", - "servicePath": "", - "rootUrl": "https://kgsearch.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "kgsearch", - "batchPath": "batch", - "revision": "20180104", - "documentationLink": "https://developers.google.com/knowledge-graph/", - "id": "kgsearch:v1" + "baseUrl": "https://kgsearch.googleapis.com/" } diff --git a/DiscoveryJson/language_v1.json b/DiscoveryJson/language_v1.json index 8fc99c2d1a..64122e0107 100644 --- a/DiscoveryJson/language_v1.json +++ b/DiscoveryJson/language_v1.json @@ -1,15 +1,33 @@ { - "ownerName": "Google", "resources": { "documents": { "methods": { - "analyzeSyntax": { + "analyzeEntitySentiment": { "request": { - "$ref": "AnalyzeSyntaxRequest" + "$ref": "AnalyzeEntitySentimentRequest" }, - "description": "Analyzes the syntax of the text and provides sentence boundaries and\ntokenization along with part of speech tags, dependency trees, and other\nproperties.", + "description": "Finds entities, similar to AnalyzeEntities in the text and analyzes\nsentiment associated with each entity and its mentions.", + "httpMethod": "POST", + "parameterOrder": [], "response": { - "$ref": "AnalyzeSyntaxResponse" + "$ref": "AnalyzeEntitySentimentResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-language", + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": {}, + "flatPath": "v1/documents:analyzeEntitySentiment", + "id": "language.documents.analyzeEntitySentiment", + "path": "v1/documents:analyzeEntitySentiment" + }, + "analyzeEntities": { + "request": { + "$ref": "AnalyzeEntitiesRequest" + }, + "description": "Finds named entities (currently proper names and common nouns) in the text\nalong with entity types, salience, mentions for each entity, and\nother properties.", + "response": { + "$ref": "AnalyzeEntitiesResponse" }, "parameterOrder": [], "httpMethod": "POST", @@ -18,74 +36,77 @@ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": {}, - "flatPath": "v1/documents:analyzeSyntax", - "path": "v1/documents:analyzeSyntax", - "id": "language.documents.analyzeSyntax" + "flatPath": "v1/documents:analyzeEntities", + "path": "v1/documents:analyzeEntities", + "id": "language.documents.analyzeEntities" }, - "annotateText": { + "analyzeSyntax": { + "id": "language.documents.analyzeSyntax", + "path": "v1/documents:analyzeSyntax", + "description": "Analyzes the syntax of the text and provides sentence boundaries and\ntokenization along with part of speech tags, dependency trees, and other\nproperties.", + "request": { + "$ref": "AnalyzeSyntaxRequest" + }, "httpMethod": "POST", "parameterOrder": [], "response": { - "$ref": "AnnotateTextResponse" + "$ref": "AnalyzeSyntaxResponse" }, "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-language", "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1/documents:annotateText", + "flatPath": "v1/documents:analyzeSyntax" + }, + "annotateText": { "id": "language.documents.annotateText", "path": "v1/documents:annotateText", "description": "A convenience method that provides all the features that analyzeSentiment,\nanalyzeEntities, and analyzeSyntax provide in one call.", "request": { "$ref": "AnnotateTextRequest" - } - }, - "classifyText": { - "response": { - "$ref": "ClassifyTextResponse" }, - "parameterOrder": [], "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "AnnotateTextResponse" + }, "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-language", "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1/documents:classifyText", + "flatPath": "v1/documents:annotateText" + }, + "classifyText": { "path": "v1/documents:classifyText", "id": "language.documents.classifyText", - "description": "Classifies a document into categories.", "request": { "$ref": "ClassifyTextRequest" - } - }, - "analyzeSentiment": { - "description": "Analyzes the sentiment of the provided text.", - "request": { - "$ref": "AnalyzeSentimentRequest" }, + "description": "Classifies a document into categories.", "response": { - "$ref": "AnalyzeSentimentResponse" + "$ref": "ClassifyTextResponse" }, "parameterOrder": [], "httpMethod": "POST", - "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-language", "https://www.googleapis.com/auth/cloud-platform" ], + "parameters": {}, + "flatPath": "v1/documents:classifyText" + }, + "analyzeSentiment": { "flatPath": "v1/documents:analyzeSentiment", "path": "v1/documents:analyzeSentiment", - "id": "language.documents.analyzeSentiment" - }, - "analyzeEntitySentiment": { - "description": "Finds entities, similar to AnalyzeEntities in the text and analyzes\nsentiment associated with each entity and its mentions.", + "id": "language.documents.analyzeSentiment", + "description": "Analyzes the sentiment of the provided text.", "request": { - "$ref": "AnalyzeEntitySentimentRequest" + "$ref": "AnalyzeSentimentRequest" }, "response": { - "$ref": "AnalyzeEntitySentimentResponse" + "$ref": "AnalyzeSentimentResponse" }, "parameterOrder": [], "httpMethod": "POST", @@ -93,41 +114,19 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-language", "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/documents:analyzeEntitySentiment", - "path": "v1/documents:analyzeEntitySentiment", - "id": "language.documents.analyzeEntitySentiment" - }, - "analyzeEntities": { - "response": { - "$ref": "AnalyzeEntitiesResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-language", - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": {}, - "flatPath": "v1/documents:analyzeEntities", - "path": "v1/documents:analyzeEntities", - "id": "language.documents.analyzeEntities", - "request": { - "$ref": "AnalyzeEntitiesRequest" - }, - "description": "Finds named entities (currently proper names and common nouns) in the text\nalong with entity types, salience, mentions for each entity, and\nother properties." + ] } } } }, "parameters": { - "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" + }, + "access_token": { + "description": "OAuth access token.", "type": "string", "location": "query" }, @@ -142,36 +141,41 @@ "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" }, - "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" + "type": "string", + "location": "query" }, "prettyPrint": { - "location": "query", "description": "Returns response with indentations and line breaks.", "type": "boolean", - "default": "true" + "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" }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" + "callback": { + "location": "query", + "description": "JSONP", + "type": "string" }, "$.xgafv": { "type": "string", @@ -186,13 +190,7 @@ ], "description": "V1 error format." }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" - }, "alt": { - "description": "Data format for response.", "default": "json", "enum": [ "json", @@ -205,173 +203,30 @@ "Media download with context-dependent Content-Type", "Responses with Content-Type of application/x-protobuf" ], - "location": "query" + "location": "query", + "description": "Data format for response." } }, "version": "v1", "baseUrl": "https://language.googleapis.com/", - "kind": "discovery#restDescription", "description": "Provides natural language understanding technologies to developers. Examples include sentiment analysis, entity recognition, entity sentiment analysis, and text annotations.", + "kind": "discovery#restDescription", "servicePath": "", "basePath": "", - "revision": "20180428", + "revision": "20180507", "documentationLink": "https://cloud.google.com/natural-language/", "id": "language:v1", "discoveryVersion": "v1", "version_module": true, "schemas": { - "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" - }, - "Features": { - "description": "All available features for sentiment, syntax, and semantic analysis.\nSetting each one to true will enable that specific analysis for the input.", - "type": "object", - "properties": { - "extractEntities": { - "type": "boolean", - "description": "Extract entities." - }, - "classifyText": { - "description": "Classify the full document into categories.", - "type": "boolean" - }, - "extractSyntax": { - "description": "Extract syntax information.", - "type": "boolean" - }, - "extractDocumentSentiment": { - "description": "Extract document-level sentiment.", - "type": "boolean" - }, - "extractEntitySentiment": { - "description": "Extract entities and their associated sentiment.", - "type": "boolean" - } - }, - "id": "Features" - }, - "Document": { - "description": "################################################################ #\n\nRepresents the input to API methods.", - "type": "object", - "properties": { - "language": { - "description": "The language of the document (if not specified, the language is\nautomatically detected). Both ISO and BCP-47 language codes are\naccepted.\u003cbr\u003e\n[Language Support](/natural-language/docs/languages)\nlists currently supported languages for each API method.\nIf the language (either specified by the caller or automatically detected)\nis not supported by the called API method, an `INVALID_ARGUMENT` error\nis returned.", - "type": "string" - }, - "type": { - "enumDescriptions": [ - "The content type is not specified.", - "Plain text", - "HTML" - ], - "enum": [ - "TYPE_UNSPECIFIED", - "PLAIN_TEXT", - "HTML" - ], - "description": "Required. If the type is not set or is `TYPE_UNSPECIFIED`,\nreturns an `INVALID_ARGUMENT` error.", - "type": "string" - }, - "content": { - "description": "The content of the input in string format.", - "type": "string" - }, - "gcsContentUri": { - "description": "The Google Cloud Storage URI where the file content is located.\nThis URI must be of the form: gs://bucket_name/object_name. For more\ndetails, see https://cloud.google.com/storage/docs/reference-uris.\nNOTE: Cloud Storage object versioning is not supported.", - "type": "string" - } - }, - "id": "Document" - }, - "AnalyzeEntitiesRequest": { - "description": "The entity analysis request message.", - "type": "object", - "properties": { - "encodingType": { - "enumDescriptions": [ - "If `EncodingType` is not specified, encoding-dependent information (such as\n`begin_offset`) will be set at `-1`.", - "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-8 encoding of the input. C++ and Go are examples of languages\nthat use this encoding natively.", - "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-16 encoding of the input. Java and Javascript are examples of\nlanguages that use this encoding natively.", - "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-32 encoding of the input. Python is an example of a language\nthat uses this encoding natively." - ], - "enum": [ - "NONE", - "UTF8", - "UTF16", - "UTF32" - ], - "description": "The encoding type used by the API to calculate offsets.", - "type": "string" - }, - "document": { - "$ref": "Document", - "description": "Input document." - } - }, - "id": "AnalyzeEntitiesRequest" - }, - "ClassifyTextRequest": { - "properties": { - "document": { - "$ref": "Document", - "description": "Input document." - } - }, - "id": "ClassifyTextRequest", - "description": "The document classification request message.", - "type": "object" - }, - "AnalyzeEntitySentimentResponse": { - "description": "The entity-level sentiment analysis response message.", - "type": "object", - "properties": { - "entities": { - "description": "The recognized entities in the input document with associated sentiments.", - "type": "array", - "items": { - "$ref": "Entity" - } - }, - "language": { - "description": "The language of the text, which will be the same as the language specified\nin the request or, if not specified, the automatically-detected language.\nSee Document.language field for more details.", - "type": "string" - } - }, - "id": "AnalyzeEntitySentimentResponse" - }, "AnalyzeSentimentResponse": { + "id": "AnalyzeSentimentResponse", + "description": "The sentiment analysis response message.", + "type": "object", "properties": { - "documentSentiment": { - "$ref": "Sentiment", - "description": "The overall sentiment of the input document." - }, "language": { - "description": "The language of the text, which will be the same as the language specified\nin the request or, if not specified, the automatically-detected language.\nSee Document.language field for more details.", - "type": "string" + "type": "string", + "description": "The language of the text, which will be the same as the language specified\nin the request or, if not specified, the automatically-detected language.\nSee Document.language field for more details." }, "sentences": { "description": "The sentiment for all the sentences in the document.", @@ -379,20 +234,18 @@ "items": { "$ref": "Sentence" } + }, + "documentSentiment": { + "description": "The overall sentiment of the input document.", + "$ref": "Sentiment" } - }, - "id": "AnalyzeSentimentResponse", - "description": "The sentiment analysis response message.", - "type": "object" + } }, "AnalyzeSyntaxResponse": { + "id": "AnalyzeSyntaxResponse", "description": "The syntax analysis response message.", "type": "object", "properties": { - "language": { - "type": "string", - "description": "The language of the text, which will be the same as the language specified\nin the request or, if not specified, the automatically-detected language.\nSee Document.language field for more details." - }, "sentences": { "description": "Sentences in the input document.", "type": "array", @@ -406,25 +259,17 @@ "items": { "$ref": "Token" } + }, + "language": { + "description": "The language of the text, which will be the same as the language specified\nin the request or, if not specified, the automatically-detected language.\nSee Document.language field for more details.", + "type": "string" } - }, - "id": "AnalyzeSyntaxResponse" + } }, "AnnotateTextResponse": { "description": "The text annotations response message.", "type": "object", "properties": { - "categories": { - "type": "array", - "items": { - "$ref": "ClassificationCategory" - }, - "description": "Categories identified in the input document." - }, - "documentSentiment": { - "$ref": "Sentiment", - "description": "The overall sentiment for the document. Populated if the user enables\nAnnotateTextRequest.Features.extract_document_sentiment." - }, "language": { "description": "The language of the text, which will be the same as the language specified\nin the request or, if not specified, the automatically-detected language.\nSee Document.language field for more details.", "type": "string" @@ -437,11 +282,11 @@ } }, "sentences": { - "description": "Sentences in the input document. Populated if the user enables\nAnnotateTextRequest.Features.extract_syntax.", "type": "array", "items": { "$ref": "Sentence" - } + }, + "description": "Sentences in the input document. Populated if the user enables\nAnnotateTextRequest.Features.extract_syntax." }, "tokens": { "description": "Tokens, along with their syntactic information, in the input document.\nPopulated if the user enables\nAnnotateTextRequest.Features.extract_syntax.", @@ -449,14 +294,28 @@ "items": { "$ref": "Token" } + }, + "categories": { + "description": "Categories identified in the input document.", + "type": "array", + "items": { + "$ref": "ClassificationCategory" + } + }, + "documentSentiment": { + "$ref": "Sentiment", + "description": "The overall sentiment for the document. Populated if the user enables\nAnnotateTextRequest.Features.extract_document_sentiment." } }, "id": "AnnotateTextResponse" }, "DependencyEdge": { - "description": "Represents dependency parse tree information for a token. (For more\ninformation on dependency labels, see\nhttp://www.aclweb.org/anthology/P13-2017", - "type": "object", "properties": { + "headTokenIndex": { + "description": "Represents the head of this token in the dependency tree.\nThis is the index of the token which has an arc going to this token.\nThe index is the position of the token in the array of tokens returned\nby the API method. If this token is a root token, then the\n`head_token_index` is its own index.", + "format": "int32", + "type": "integer" + }, "label": { "enumDescriptions": [ "Unknown", @@ -630,16 +489,30 @@ ], "description": "The parse label for the token.", "type": "string" - }, - "headTokenIndex": { - "description": "Represents the head of this token in the dependency tree.\nThis is the index of the token which has an arc going to this token.\nThe index is the position of the token in the array of tokens returned\nby the API method. If this token is a root token, then the\n`head_token_index` is its own index.", + } + }, + "id": "DependencyEdge", + "description": "Represents dependency parse tree information for a token. (For more\ninformation on dependency labels, see\nhttp://www.aclweb.org/anthology/P13-2017", + "type": "object" + }, + "TextSpan": { + "description": "Represents an output piece of text.", + "type": "object", + "properties": { + "beginOffset": { + "description": "The API calculates the beginning offset of the content in the original\ndocument according to the EncodingType specified in the API request.", "format": "int32", "type": "integer" + }, + "content": { + "description": "The content of the output text.", + "type": "string" } }, - "id": "DependencyEdge" + "id": "TextSpan" }, "Token": { + "id": "Token", "description": "Represents the smallest syntactic building block of the text.", "type": "object", "properties": { @@ -652,34 +525,16 @@ "description": "The token text." }, "dependencyEdge": { - "description": "Dependency tree parse for this token.", - "$ref": "DependencyEdge" + "$ref": "DependencyEdge", + "description": "Dependency tree parse for this token." }, "lemma": { "description": "[Lemma](https://en.wikipedia.org/wiki/Lemma_%28morphology%29) of the token.", "type": "string" } - }, - "id": "Token" - }, - "TextSpan": { - "description": "Represents an output piece of text.", - "type": "object", - "properties": { - "beginOffset": { - "description": "The API calculates the beginning offset of the content in the original\ndocument according to the EncodingType specified in the API request.", - "format": "int32", - "type": "integer" - }, - "content": { - "description": "The content of the output text.", - "type": "string" - } - }, - "id": "TextSpan" + } }, "ClassifyTextResponse": { - "id": "ClassifyTextResponse", "description": "The document classification response message.", "type": "object", "properties": { @@ -690,27 +545,29 @@ "$ref": "ClassificationCategory" } } - } + }, + "id": "ClassifyTextResponse" }, "EntityMention": { + "description": "Represents a mention for an entity in the text. Currently, proper noun\nmentions are supported.", "type": "object", "properties": { "text": { - "description": "The mention text.", - "$ref": "TextSpan" + "$ref": "TextSpan", + "description": "The mention text." }, "type": { + "enum": [ + "TYPE_UNKNOWN", + "PROPER", + "COMMON" + ], "description": "The type of the entity mention.", "type": "string", "enumDescriptions": [ "Unknown", "Proper name", "Common noun (or noun compound)" - ], - "enum": [ - "TYPE_UNKNOWN", - "PROPER", - "COMMON" ] }, "sentiment": { @@ -718,15 +575,14 @@ "description": "For calls to AnalyzeEntitySentiment or if\nAnnotateTextRequest.Features.extract_entity_sentiment is set to\ntrue, this field will contain the sentiment expressed for this mention of\nthe entity in the provided document." } }, - "id": "EntityMention", - "description": "Represents a mention for an entity in the text. Currently, proper noun\nmentions are supported." + "id": "EntityMention" }, "Sentence": { "type": "object", "properties": { "text": { - "description": "The sentence text.", - "$ref": "TextSpan" + "$ref": "TextSpan", + "description": "The sentence text." }, "sentiment": { "$ref": "Sentiment", @@ -737,7 +593,6 @@ "description": "Represents a sentence in the input document." }, "Sentiment": { - "id": "Sentiment", "description": "Represents the feeling associated with the entire text or entities in\nthe text.", "type": "object", "properties": { @@ -751,9 +606,11 @@ "format": "float", "type": "number" } - } + }, + "id": "Sentiment" }, "AnalyzeEntitySentimentRequest": { + "id": "AnalyzeEntitySentimentRequest", "description": "The entity-level sentiment analysis request message.", "type": "object", "properties": { @@ -777,100 +634,12 @@ "$ref": "Document", "description": "Input document." } - }, - "id": "AnalyzeEntitySentimentRequest" + } }, "PartOfSpeech": { + "description": "Represents part of speech information for a token. Parts of speech\nare as defined in\nhttp://www.lrec-conf.org/proceedings/lrec2012/pdf/274_Paper.pdf", "type": "object", "properties": { - "proper": { - "description": "The grammatical properness.", - "type": "string", - "enumDescriptions": [ - "Proper is not applicable in the analyzed language or is not predicted.", - "Proper", - "Not proper" - ], - "enum": [ - "PROPER_UNKNOWN", - "PROPER", - "NOT_PROPER" - ] - }, - "case": { - "description": "The grammatical case.", - "type": "string", - "enumDescriptions": [ - "Case is not applicable in the analyzed language or is not predicted.", - "Accusative", - "Adverbial", - "Complementive", - "Dative", - "Genitive", - "Instrumental", - "Locative", - "Nominative", - "Oblique", - "Partitive", - "Prepositional", - "Reflexive", - "Relative", - "Vocative" - ], - "enum": [ - "CASE_UNKNOWN", - "ACCUSATIVE", - "ADVERBIAL", - "COMPLEMENTIVE", - "DATIVE", - "GENITIVE", - "INSTRUMENTAL", - "LOCATIVE", - "NOMINATIVE", - "OBLIQUE", - "PARTITIVE", - "PREPOSITIONAL", - "REFLEXIVE_CASE", - "RELATIVE_CASE", - "VOCATIVE" - ] - }, - "tense": { - "enum": [ - "TENSE_UNKNOWN", - "CONDITIONAL_TENSE", - "FUTURE", - "PAST", - "PRESENT", - "IMPERFECT", - "PLUPERFECT" - ], - "description": "The grammatical tense.", - "type": "string", - "enumDescriptions": [ - "Tense is not applicable in the analyzed language or is not predicted.", - "Conditional", - "Future", - "Past", - "Present", - "Imperfect", - "Pluperfect" - ] - }, - "reciprocity": { - "type": "string", - "enumDescriptions": [ - "Reciprocity is not applicable in the analyzed language or is not\npredicted.", - "Reciprocal", - "Non-reciprocal" - ], - "enum": [ - "RECIPROCITY_UNKNOWN", - "RECIPROCAL", - "NON_RECIPROCAL" - ], - "description": "The grammatical reciprocity." - }, "form": { "enum": [ "FORM_UNKNOWN", @@ -904,6 +673,8 @@ ] }, "number": { + "description": "The grammatical number.", + "type": "string", "enumDescriptions": [ "Number is not applicable in the analyzed language or is not predicted.", "Singular", @@ -915,17 +686,9 @@ "SINGULAR", "PLURAL", "DUAL" - ], - "description": "The grammatical number.", - "type": "string" + ] }, "voice": { - "enum": [ - "VOICE_UNKNOWN", - "ACTIVE", - "CAUSATIVE", - "PASSIVE" - ], "description": "The grammatical voice.", "type": "string", "enumDescriptions": [ @@ -933,9 +696,21 @@ "Active", "Causative", "Passive" + ], + "enum": [ + "VOICE_UNKNOWN", + "ACTIVE", + "CAUSATIVE", + "PASSIVE" ] }, "aspect": { + "enumDescriptions": [ + "Aspect is not applicable in the analyzed language or is not predicted.", + "Perfective", + "Imperfective", + "Progressive" + ], "enum": [ "ASPECT_UNKNOWN", "PERFECTIVE", @@ -943,15 +718,18 @@ "PROGRESSIVE" ], "description": "The grammatical aspect.", - "type": "string", - "enumDescriptions": [ - "Aspect is not applicable in the analyzed language or is not predicted.", - "Perfective", - "Imperfective", - "Progressive" - ] + "type": "string" }, "mood": { + "enumDescriptions": [ + "Mood is not applicable in the analyzed language or is not predicted.", + "Conditional", + "Imperative", + "Indicative", + "Interrogative", + "Jussive", + "Subjunctive" + ], "enum": [ "MOOD_UNKNOWN", "CONDITIONAL_MOOD", @@ -962,18 +740,26 @@ "SUBJUNCTIVE" ], "description": "The grammatical mood.", - "type": "string", - "enumDescriptions": [ - "Mood is not applicable in the analyzed language or is not predicted.", - "Conditional", - "Imperative", - "Indicative", - "Interrogative", - "Jussive", - "Subjunctive" - ] + "type": "string" }, "tag": { + "enum": [ + "UNKNOWN", + "ADJ", + "ADP", + "ADV", + "CONJ", + "DET", + "NOUN", + "NUM", + "PRON", + "PRT", + "PUNCT", + "VERB", + "X", + "AFFIX" + ], + "description": "The part of speech tag.", "type": "string", "enumDescriptions": [ "Unknown", @@ -990,85 +776,154 @@ "Verb (all tenses and modes)", "Other: foreign words, typos, abbreviations", "Affix" + ] + }, + "gender": { + "type": "string", + "enumDescriptions": [ + "Gender is not applicable in the analyzed language or is not predicted.", + "Feminine", + "Masculine", + "Neuter" ], "enum": [ - "UNKNOWN", - "ADJ", - "ADP", - "ADV", - "CONJ", - "DET", - "NOUN", - "NUM", - "PRON", - "PRT", - "PUNCT", - "VERB", - "X", - "AFFIX" + "GENDER_UNKNOWN", + "FEMININE", + "MASCULINE", + "NEUTER" + ], + "description": "The grammatical gender." + }, + "person": { + "description": "The grammatical person.", + "type": "string", + "enumDescriptions": [ + "Person is not applicable in the analyzed language or is not predicted.", + "First", + "Second", + "Third", + "Reflexive" + ], + "enum": [ + "PERSON_UNKNOWN", + "FIRST", + "SECOND", + "THIRD", + "REFLEXIVE_PERSON" + ] + }, + "proper": { + "description": "The grammatical properness.", + "type": "string", + "enumDescriptions": [ + "Proper is not applicable in the analyzed language or is not predicted.", + "Proper", + "Not proper" + ], + "enum": [ + "PROPER_UNKNOWN", + "PROPER", + "NOT_PROPER" + ] + }, + "case": { + "type": "string", + "enumDescriptions": [ + "Case is not applicable in the analyzed language or is not predicted.", + "Accusative", + "Adverbial", + "Complementive", + "Dative", + "Genitive", + "Instrumental", + "Locative", + "Nominative", + "Oblique", + "Partitive", + "Prepositional", + "Reflexive", + "Relative", + "Vocative" + ], + "enum": [ + "CASE_UNKNOWN", + "ACCUSATIVE", + "ADVERBIAL", + "COMPLEMENTIVE", + "DATIVE", + "GENITIVE", + "INSTRUMENTAL", + "LOCATIVE", + "NOMINATIVE", + "OBLIQUE", + "PARTITIVE", + "PREPOSITIONAL", + "REFLEXIVE_CASE", + "RELATIVE_CASE", + "VOCATIVE" ], - "description": "The part of speech tag." + "description": "The grammatical case." }, - "gender": { + "tense": { "enumDescriptions": [ - "Gender is not applicable in the analyzed language or is not predicted.", - "Feminine", - "Masculine", - "Neuter" + "Tense is not applicable in the analyzed language or is not predicted.", + "Conditional", + "Future", + "Past", + "Present", + "Imperfect", + "Pluperfect" ], "enum": [ - "GENDER_UNKNOWN", - "FEMININE", - "MASCULINE", - "NEUTER" + "TENSE_UNKNOWN", + "CONDITIONAL_TENSE", + "FUTURE", + "PAST", + "PRESENT", + "IMPERFECT", + "PLUPERFECT" ], - "description": "The grammatical gender.", + "description": "The grammatical tense.", "type": "string" }, - "person": { - "description": "The grammatical person.", - "type": "string", + "reciprocity": { "enumDescriptions": [ - "Person is not applicable in the analyzed language or is not predicted.", - "First", - "Second", - "Third", - "Reflexive" + "Reciprocity is not applicable in the analyzed language or is not\npredicted.", + "Reciprocal", + "Non-reciprocal" ], "enum": [ - "PERSON_UNKNOWN", - "FIRST", - "SECOND", - "THIRD", - "REFLEXIVE_PERSON" - ] + "RECIPROCITY_UNKNOWN", + "RECIPROCAL", + "NON_RECIPROCAL" + ], + "description": "The grammatical reciprocity.", + "type": "string" } }, - "id": "PartOfSpeech", - "description": "Represents part of speech information for a token. Parts of speech\nare as defined in\nhttp://www.lrec-conf.org/proceedings/lrec2012/pdf/274_Paper.pdf" + "id": "PartOfSpeech" }, "ClassificationCategory": { + "description": "Represents a category returned from the text classifier.", + "type": "object", "properties": { "confidence": { + "type": "number", "description": "The classifier's confidence of the category. Number represents how certain\nthe classifier is that this category represents the given text.", - "format": "float", - "type": "number" + "format": "float" }, "name": { "description": "The name of the category representing the document, from the [predefined\ntaxonomy](/natural-language/docs/categories).", "type": "string" } }, - "id": "ClassificationCategory", - "description": "Represents a category returned from the text classifier.", - "type": "object" + "id": "ClassificationCategory" }, "AnalyzeSyntaxRequest": { "description": "The syntax analysis request message.", "type": "object", "properties": { "encodingType": { - "type": "string", "enumDescriptions": [ "If `EncodingType` is not specified, encoding-dependent information (such as\n`begin_offset`) will be set at `-1`.", "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-8 encoding of the input. C++ and Go are examples of languages\nthat use this encoding natively.", @@ -1081,7 +936,8 @@ "UTF16", "UTF32" ], - "description": "The encoding type used by the API to calculate offsets." + "description": "The encoding type used by the API to calculate offsets.", + "type": "string" }, "document": { "$ref": "Document", @@ -1109,8 +965,20 @@ "id": "AnalyzeEntitiesResponse" }, "Entity": { + "description": "Represents a phrase in the text that is a known entity, such as\na person, an organization, or location. The API associates information, such\nas salience and mentions, with entities.", "type": "object", "properties": { + "mentions": { + "description": "The mentions of this entity in the input document. The API currently\nsupports proper noun mentions.", + "type": "array", + "items": { + "$ref": "EntityMention" + } + }, + "name": { + "description": "The representative name for the entity.", + "type": "string" + }, "type": { "description": "The entity type.", "type": "string", @@ -1148,29 +1016,23 @@ "type": "number" }, "sentiment": { - "description": "For calls to AnalyzeEntitySentiment or if\nAnnotateTextRequest.Features.extract_entity_sentiment is set to\ntrue, this field will contain the aggregate sentiment expressed for this\nentity in the provided document.", - "$ref": "Sentiment" - }, - "mentions": { - "description": "The mentions of this entity in the input document. The API currently\nsupports proper noun mentions.", - "type": "array", - "items": { - "$ref": "EntityMention" - } - }, - "name": { - "description": "The representative name for the entity.", - "type": "string" + "$ref": "Sentiment", + "description": "For calls to AnalyzeEntitySentiment or if\nAnnotateTextRequest.Features.extract_entity_sentiment is set to\ntrue, this field will contain the aggregate sentiment expressed for this\nentity in the provided document." } }, - "id": "Entity", - "description": "Represents a phrase in the text that is a known entity, such as\na person, an organization, or location. The API associates information, such\nas salience and mentions, with entities." + "id": "Entity" }, "AnnotateTextRequest": { "description": "The request message for the text annotation API, which can perform multiple\nanalysis types (sentiment, entities, and syntax) in one call.", "type": "object", "properties": { "encodingType": { + "enumDescriptions": [ + "If `EncodingType` is not specified, encoding-dependent information (such as\n`begin_offset`) will be set at `-1`.", + "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-8 encoding of the input. C++ and Go are examples of languages\nthat use this encoding natively.", + "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-16 encoding of the input. Java and Javascript are examples of\nlanguages that use this encoding natively.", + "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-32 encoding of the input. Python is an example of a language\nthat uses this encoding natively." + ], "enum": [ "NONE", "UTF8", @@ -1178,13 +1040,7 @@ "UTF32" ], "description": "The encoding type used by the API to calculate offsets.", - "type": "string", - "enumDescriptions": [ - "If `EncodingType` is not specified, encoding-dependent information (such as\n`begin_offset`) will be set at `-1`.", - "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-8 encoding of the input. C++ and Go are examples of languages\nthat use this encoding natively.", - "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-16 encoding of the input. Java and Javascript are examples of\nlanguages that use this encoding natively.", - "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-32 encoding of the input. Python is an example of a language\nthat uses this encoding natively." - ] + "type": "string" }, "document": { "$ref": "Document", @@ -1201,8 +1057,121 @@ "description": "The sentiment analysis request message.", "type": "object", "properties": { + "document": { + "description": "Input document.", + "$ref": "Document" + }, "encodingType": { + "enum": [ + "NONE", + "UTF8", + "UTF16", + "UTF32" + ], + "description": "The encoding type used by the API to calculate sentence offsets.", + "type": "string", + "enumDescriptions": [ + "If `EncodingType` is not specified, encoding-dependent information (such as\n`begin_offset`) will be set at `-1`.", + "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-8 encoding of the input. C++ and Go are examples of languages\nthat use this encoding natively.", + "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-16 encoding of the input. Java and Javascript are examples of\nlanguages that use this encoding natively.", + "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-32 encoding of the input. Python is an example of a language\nthat uses this encoding natively." + ] + } + }, + "id": "AnalyzeSentimentRequest" + }, + "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": { "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." + } + }, + "id": "Status" + }, + "Features": { + "type": "object", + "properties": { + "classifyText": { + "description": "Classify the full document into categories.", + "type": "boolean" + }, + "extractSyntax": { + "description": "Extract syntax information.", + "type": "boolean" + }, + "extractDocumentSentiment": { + "description": "Extract document-level sentiment.", + "type": "boolean" + }, + "extractEntitySentiment": { + "description": "Extract entities and their associated sentiment.", + "type": "boolean" + }, + "extractEntities": { + "type": "boolean", + "description": "Extract entities." + } + }, + "id": "Features", + "description": "All available features for sentiment, syntax, and semantic analysis.\nSetting each one to true will enable that specific analysis for the input." + }, + "Document": { + "description": "################################################################ #\n\nRepresents the input to API methods.", + "type": "object", + "properties": { + "language": { + "description": "The language of the document (if not specified, the language is\nautomatically detected). Both ISO and BCP-47 language codes are\naccepted.\u003cbr\u003e\n[Language Support](/natural-language/docs/languages)\nlists currently supported languages for each API method.\nIf the language (either specified by the caller or automatically detected)\nis not supported by the called API method, an `INVALID_ARGUMENT` error\nis returned.", + "type": "string" + }, + "type": { + "enumDescriptions": [ + "The content type is not specified.", + "Plain text", + "HTML" + ], + "enum": [ + "TYPE_UNSPECIFIED", + "PLAIN_TEXT", + "HTML" + ], + "description": "Required. If the type is not set or is `TYPE_UNSPECIFIED`,\nreturns an `INVALID_ARGUMENT` error.", + "type": "string" + }, + "content": { + "description": "The content of the input in string format.", + "type": "string" + }, + "gcsContentUri": { + "description": "The Google Cloud Storage URI where the file content is located.\nThis URI must be of the form: gs://bucket_name/object_name. For more\ndetails, see https://cloud.google.com/storage/docs/reference-uris.\nNOTE: Cloud Storage object versioning is not supported.", + "type": "string" + } + }, + "id": "Document" + }, + "AnalyzeEntitiesRequest": { + "description": "The entity analysis request message.", + "type": "object", + "properties": { + "encodingType": { "enumDescriptions": [ "If `EncodingType` is not specified, encoding-dependent information (such as\n`begin_offset`) will be set at `-1`.", "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-8 encoding of the input. C++ and Go are examples of languages\nthat use this encoding natively.", @@ -1215,30 +1184,60 @@ "UTF16", "UTF32" ], - "description": "The encoding type used by the API to calculate sentence offsets." + "description": "The encoding type used by the API to calculate offsets.", + "type": "string" }, "document": { "$ref": "Document", "description": "Input document." } }, - "id": "AnalyzeSentimentRequest" + "id": "AnalyzeEntitiesRequest" + }, + "ClassifyTextRequest": { + "id": "ClassifyTextRequest", + "description": "The document classification request message.", + "type": "object", + "properties": { + "document": { + "$ref": "Document", + "description": "Input document." + } + } + }, + "AnalyzeEntitySentimentResponse": { + "description": "The entity-level sentiment analysis response message.", + "type": "object", + "properties": { + "language": { + "description": "The language of the text, which will be the same as the language specified\nin the request or, if not specified, the automatically-detected language.\nSee Document.language field for more details.", + "type": "string" + }, + "entities": { + "description": "The recognized entities in the input document with associated sentiments.", + "type": "array", + "items": { + "$ref": "Entity" + } + } + }, + "id": "AnalyzeEntitySentimentResponse" } }, "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" + "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 Natural Language", "auth": { "oauth2": { "scopes": { - "https://www.googleapis.com/auth/cloud-language": { - "description": "Apply machine learning models to reveal the structure and meaning of text" - }, "https://www.googleapis.com/auth/cloud-platform": { "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-language": { + "description": "Apply machine learning models to reveal the structure and meaning of text" } } } @@ -1247,5 +1246,6 @@ "ownerDomain": "google.com", "name": "language", "batchPath": "batch", - "title": "Cloud Natural Language API" + "title": "Cloud Natural Language API", + "ownerName": "Google" } diff --git a/DiscoveryJson/language_v1beta1.json b/DiscoveryJson/language_v1beta1.json index 59146863cc..fca87e29f6 100644 --- a/DiscoveryJson/language_v1beta1.json +++ b/DiscoveryJson/language_v1beta1.json @@ -1,9 +1,64 @@ { + "canonicalName": "Cloud Natural Language", + "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-language": { + "description": "Apply machine learning models to reveal the structure and meaning of text" + } + } + } + }, + "rootUrl": "https://language.googleapis.com/", + "ownerDomain": "google.com", + "name": "language", + "batchPath": "batch", "title": "Cloud Natural Language API", "ownerName": "Google", "resources": { "documents": { "methods": { + "annotateText": { + "path": "v1beta1/documents:annotateText", + "id": "language.documents.annotateText", + "request": { + "$ref": "AnnotateTextRequest" + }, + "description": "A convenience method that provides all the features that analyzeSentiment,\nanalyzeEntities, and analyzeSyntax provide in one call.", + "response": { + "$ref": "AnnotateTextResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-language", + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": {}, + "flatPath": "v1beta1/documents:annotateText" + }, + "analyzeEntities": { + "response": { + "$ref": "AnalyzeEntitiesResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-language", + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": {}, + "flatPath": "v1beta1/documents:analyzeEntities", + "path": "v1beta1/documents:analyzeEntities", + "id": "language.documents.analyzeEntities", + "request": { + "$ref": "AnalyzeEntitiesRequest" + }, + "description": "Finds named entities (currently proper names and common nouns) in the text\nalong with entity types, salience, mentions for each entity, and\nother properties." + }, "analyzeSyntax": { "httpMethod": "POST", "parameterOrder": [], @@ -41,89 +96,18 @@ "flatPath": "v1beta1/documents:analyzeSentiment", "id": "language.documents.analyzeSentiment", "path": "v1beta1/documents:analyzeSentiment" - }, - "annotateText": { - "response": { - "$ref": "AnnotateTextResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-language", - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": {}, - "flatPath": "v1beta1/documents:annotateText", - "path": "v1beta1/documents:annotateText", - "id": "language.documents.annotateText", - "request": { - "$ref": "AnnotateTextRequest" - }, - "description": "A convenience method that provides all the features that analyzeSentiment,\nanalyzeEntities, and analyzeSyntax provide in one call." - }, - "analyzeEntities": { - "flatPath": "v1beta1/documents:analyzeEntities", - "path": "v1beta1/documents:analyzeEntities", - "id": "language.documents.analyzeEntities", - "request": { - "$ref": "AnalyzeEntitiesRequest" - }, - "description": "Finds named entities (currently proper names and common nouns) in the text\nalong with entity types, salience, mentions for each entity, and\nother properties.", - "response": { - "$ref": "AnalyzeEntitiesResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-language", - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": {} } } } }, "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" - }, - "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": { - "type": "string", + "alt": { "enumDescriptions": [ - "v1 error format", - "v2 error format" + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" ], "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format." - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "alt": { "description": "Data format for response.", "default": "json", "enum": [ @@ -131,13 +115,7 @@ "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" + "type": "string" }, "access_token": { "location": "query", @@ -166,9 +144,48 @@ "type": "string" }, "bearer_token": { - "location": "query", "description": "OAuth bearer token.", - "type": "string" + "type": "string", + "location": "query" + }, + "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": { + "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" + }, + "$.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" } }, "version": "v1beta1", @@ -183,162 +200,130 @@ "discoveryVersion": "v1", "version_module": true, "schemas": { - "AnalyzeSyntaxRequest": { - "description": "The syntax analysis request message.", + "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" + }, + "EntityMention": { + "description": "Represents a mention for an entity in the text. Currently, proper noun\nmentions are supported.", "type": "object", "properties": { - "encodingType": { - "description": "The encoding type used by the API to calculate offsets.", + "text": { + "description": "The mention text.", + "$ref": "TextSpan" + }, + "type": { + "description": "The type of the entity mention.", "type": "string", "enumDescriptions": [ - "If `EncodingType` is not specified, encoding-dependent information (such as\n`begin_offset`) will be set at `-1`.", - "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-8 encoding of the input. C++ and Go are examples of languages\nthat use this encoding natively.", - "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-16 encoding of the input. Java and Javascript are examples of\nlanguages that use this encoding natively.", - "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-32 encoding of the input. Python is an example of a language\nthat uses this encoding natively." + "Unknown", + "Proper name", + "Common noun (or noun compound)" ], "enum": [ - "NONE", - "UTF8", - "UTF16", - "UTF32" + "TYPE_UNKNOWN", + "PROPER", + "COMMON" ] - }, - "document": { - "$ref": "Document", - "description": "Input document." } }, - "id": "AnalyzeSyntaxRequest" + "id": "EntityMention" }, - "AnalyzeSentimentResponse": { - "description": "The sentiment analysis response message.", + "Features": { + "description": "All available features for sentiment, syntax, and semantic analysis.\nSetting each one to true will enable that specific analysis for the input.", "type": "object", "properties": { - "documentSentiment": { - "$ref": "Sentiment", - "description": "The overall sentiment of the input document." + "extractEntities": { + "description": "Extract entities.", + "type": "boolean" }, - "language": { - "description": "The language of the text, which will be the same as the language specified\nin the request or, if not specified, the automatically-detected language.\nSee Document.language field for more details.", - "type": "string" + "extractSyntax": { + "description": "Extract syntax information.", + "type": "boolean" }, - "sentences": { - "description": "The sentiment for all the sentences in the document.", - "type": "array", - "items": { - "$ref": "Sentence" - } + "extractDocumentSentiment": { + "description": "Extract document-level sentiment.", + "type": "boolean" } }, - "id": "AnalyzeSentimentResponse" + "id": "Features" }, - "AnalyzeEntitiesResponse": { + "Document": { + "description": "################################################################ #\n\nRepresents the input to API methods.", "type": "object", "properties": { - "entities": { - "type": "array", - "items": { - "$ref": "Entity" - }, - "description": "The recognized entities in the input document." - }, - "language": { - "description": "The language of the text, which will be the same as the language specified\nin the request or, if not specified, the automatically-detected language.\nSee Document.language field for more details.", - "type": "string" - } - }, - "id": "AnalyzeEntitiesResponse", - "description": "The entity analysis response message." - }, - "Entity": { - "id": "Entity", - "description": "Represents a phrase in the text that is a known entity, such as\na person, an organization, or location. The API associates information, such\nas salience and mentions, with entities.", - "type": "object", - "properties": { - "mentions": { - "description": "The mentions of this entity in the input document. The API currently\nsupports proper noun mentions.", - "type": "array", - "items": { - "$ref": "EntityMention" - } - }, - "name": { - "description": "The representative name for the entity.", - "type": "string" - }, "type": { + "description": "Required. If the type is not set or is `TYPE_UNSPECIFIED`,\nreturns an `INVALID_ARGUMENT` error.", + "type": "string", "enumDescriptions": [ - "Unknown", - "Person", - "Location", - "Organization", - "Event", - "Work of art", - "Consumer goods", - "Other types" + "The content type is not specified.", + "Plain text", + "HTML" ], "enum": [ - "UNKNOWN", - "PERSON", - "LOCATION", - "ORGANIZATION", - "EVENT", - "WORK_OF_ART", - "CONSUMER_GOOD", - "OTHER" - ], - "description": "The entity type.", - "type": "string" + "TYPE_UNSPECIFIED", + "PLAIN_TEXT", + "HTML" + ] }, - "metadata": { - "additionalProperties": { - "type": "string" - }, - "description": "Metadata associated with the entity.\n\nCurrently, Wikipedia URLs and Knowledge Graph MIDs are provided, if\navailable. The associated keys are \"wikipedia_url\" and \"mid\", respectively.", - "type": "object" + "content": { + "type": "string", + "description": "The content of the input in string format." }, - "salience": { - "description": "The salience score associated with the entity in the [0, 1.0] range.\n\nThe salience score for an entity provides information about the\nimportance or centrality of that entity to the entire document text.\nScores closer to 0 are less salient, while scores closer to 1.0 are highly\nsalient.", - "format": "float", - "type": "number" + "gcsContentUri": { + "description": "The Google Cloud Storage URI where the file content is located.\nThis URI must be of the form: gs://bucket_name/object_name. For more\ndetails, see https://cloud.google.com/storage/docs/reference-uris.\nNOTE: Cloud Storage object versioning is not supported.", + "type": "string" + }, + "language": { + "description": "The language of the document (if not specified, the language is\nautomatically detected). Both ISO and BCP-47 language codes are\naccepted.\u003cbr\u003e\n[Language Support](/natural-language/docs/languages)\nlists currently supported languages for each API method.\nIf the language (either specified by the caller or automatically detected)\nis not supported by the called API method, an `INVALID_ARGUMENT` error\nis returned.", + "type": "string" } - } + }, + "id": "Document" }, - "AnalyzeSyntaxResponse": { - "description": "The syntax analysis response message.", + "Sentence": { + "description": "Represents a sentence in the input document.", "type": "object", "properties": { - "language": { - "description": "The language of the text, which will be the same as the language specified\nin the request or, if not specified, the automatically-detected language.\nSee Document.language field for more details.", - "type": "string" - }, - "sentences": { - "description": "Sentences in the input document.", - "type": "array", - "items": { - "$ref": "Sentence" - } + "text": { + "description": "The sentence text.", + "$ref": "TextSpan" }, - "tokens": { - "description": "Tokens, along with their syntactic information, in the input document.", - "type": "array", - "items": { - "$ref": "Token" - } + "sentiment": { + "$ref": "Sentiment", + "description": "For calls to AnalyzeSentiment or if\nAnnotateTextRequest.Features.extract_document_sentiment is set to\ntrue, this field will contain the sentiment for the sentence." } }, - "id": "AnalyzeSyntaxResponse" + "id": "Sentence" }, - "AnnotateTextRequest": { - "description": "The request message for the text annotation API, which can perform multiple\nanalysis types (sentiment, entities, and syntax) in one call.", + "AnalyzeEntitiesRequest": { + "description": "The entity analysis request message.", "type": "object", "properties": { - "features": { - "$ref": "Features", - "description": "The enabled features." - }, "encodingType": { - "type": "string", "enumDescriptions": [ "If `EncodingType` is not specified, encoding-dependent information (such as\n`begin_offset`) will be set at `-1`.", "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-8 encoding of the input. C++ and Go are examples of languages\nthat use this encoding natively.", @@ -351,427 +336,524 @@ "UTF16", "UTF32" ], - "description": "The encoding type used by the API to calculate offsets." + "description": "The encoding type used by the API to calculate offsets.", + "type": "string" }, "document": { "description": "Input document.", "$ref": "Document" } }, - "id": "AnnotateTextRequest" + "id": "AnalyzeEntitiesRequest" }, - "AnnotateTextResponse": { - "description": "The text annotations response message.", + "Sentiment": { + "description": "Represents the feeling associated with the entire text or entities in\nthe text.", "type": "object", "properties": { - "tokens": { - "description": "Tokens, along with their syntactic information, in the input document.\nPopulated if the user enables\nAnnotateTextRequest.Features.extract_syntax.", - "type": "array", - "items": { - "$ref": "Token" - } - }, - "entities": { - "description": "Entities, along with their semantic information, in the input document.\nPopulated if the user enables\nAnnotateTextRequest.Features.extract_entities.", - "type": "array", - "items": { - "$ref": "Entity" - } - }, - "documentSentiment": { - "$ref": "Sentiment", - "description": "The overall sentiment for the document. Populated if the user enables\nAnnotateTextRequest.Features.extract_document_sentiment." + "polarity": { + "description": "DEPRECATED FIELD - This field is being deprecated in\nfavor of score. Please refer to our documentation at\nhttps://cloud.google.com/natural-language/docs for more information.", + "format": "float", + "type": "number" }, - "language": { - "description": "The language of the text, which will be the same as the language specified\nin the request or, if not specified, the automatically-detected language.\nSee Document.language field for more details.", - "type": "string" + "score": { + "description": "Sentiment score between -1.0 (negative sentiment) and 1.0\n(positive sentiment).", + "format": "float", + "type": "number" }, - "sentences": { - "description": "Sentences in the input document. Populated if the user enables\nAnnotateTextRequest.Features.extract_syntax.", - "type": "array", - "items": { - "$ref": "Sentence" - } + "magnitude": { + "description": "A non-negative number in the [0, +inf) range, which represents\nthe absolute magnitude of sentiment regardless of score (positive or\nnegative).", + "format": "float", + "type": "number" } }, - "id": "AnnotateTextResponse" + "id": "Sentiment" }, - "AnalyzeSentimentRequest": { - "description": "The sentiment analysis request message.", + "PartOfSpeech": { + "description": "Represents part of speech information for a token.", "type": "object", "properties": { - "encodingType": { + "form": { "enum": [ - "NONE", - "UTF8", - "UTF16", - "UTF32" + "FORM_UNKNOWN", + "ADNOMIAL", + "AUXILIARY", + "COMPLEMENTIZER", + "FINAL_ENDING", + "GERUND", + "REALIS", + "IRREALIS", + "SHORT", + "LONG", + "ORDER", + "SPECIFIC" ], - "description": "The encoding type used by the API to calculate sentence offsets for the\nsentence sentiment.", + "description": "The grammatical form.", "type": "string", "enumDescriptions": [ - "If `EncodingType` is not specified, encoding-dependent information (such as\n`begin_offset`) will be set at `-1`.", - "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-8 encoding of the input. C++ and Go are examples of languages\nthat use this encoding natively.", - "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-16 encoding of the input. Java and Javascript are examples of\nlanguages that use this encoding natively.", - "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-32 encoding of the input. Python is an example of a language\nthat uses this encoding natively." + "Form is not applicable in the analyzed language or is not predicted.", + "Adnomial", + "Auxiliary", + "Complementizer", + "Final ending", + "Gerund", + "Realis", + "Irrealis", + "Short form", + "Long form", + "Order form", + "Specific form" ] }, - "document": { - "description": "Input document.", - "$ref": "Document" - } - }, - "id": "AnalyzeSentimentRequest" - }, - "DependencyEdge": { - "description": "Represents dependency parse tree information for a token.", - "type": "object", - "properties": { - "headTokenIndex": { - "description": "Represents the head of this token in the dependency tree.\nThis is the index of the token which has an arc going to this token.\nThe index is the position of the token in the array of tokens returned\nby the API method. If this token is a root token, then the\n`head_token_index` is its own index.", - "format": "int32", - "type": "integer" + "number": { + "enumDescriptions": [ + "Number is not applicable in the analyzed language or is not predicted.", + "Singular", + "Plural", + "Dual" + ], + "enum": [ + "NUMBER_UNKNOWN", + "SINGULAR", + "PLURAL", + "DUAL" + ], + "description": "The grammatical number.", + "type": "string" }, - "label": { + "voice": { + "description": "The grammatical voice.", + "type": "string", + "enumDescriptions": [ + "Voice is not applicable in the analyzed language or is not predicted.", + "Active", + "Causative", + "Passive" + ], "enum": [ - "UNKNOWN", - "ABBREV", - "ACOMP", - "ADVCL", - "ADVMOD", - "AMOD", - "APPOS", - "ATTR", - "AUX", - "AUXPASS", - "CC", - "CCOMP", - "CONJ", - "CSUBJ", - "CSUBJPASS", - "DEP", - "DET", - "DISCOURSE", - "DOBJ", - "EXPL", - "GOESWITH", - "IOBJ", - "MARK", - "MWE", - "MWV", - "NEG", - "NN", - "NPADVMOD", - "NSUBJ", - "NSUBJPASS", - "NUM", - "NUMBER", - "P", - "PARATAXIS", - "PARTMOD", - "PCOMP", - "POBJ", - "POSS", - "POSTNEG", - "PRECOMP", - "PRECONJ", - "PREDET", - "PREF", - "PREP", - "PRONL", - "PRT", - "PS", - "QUANTMOD", - "RCMOD", - "RCMODREL", - "RDROP", - "REF", - "REMNANT", - "REPARANDUM", - "ROOT", - "SNUM", - "SUFF", - "TMOD", - "TOPIC", - "VMOD", - "VOCATIVE", - "XCOMP", - "SUFFIX", - "TITLE", - "ADVPHMOD", - "AUXCAUS", - "AUXVV", - "DTMOD", - "FOREIGN", - "KW", - "LIST", - "NOMC", - "NOMCSUBJ", - "NOMCSUBJPASS", - "NUMC", - "COP", - "DISLOCATED", - "ASP", - "GMOD", - "GOBJ", - "INFMOD", - "MES", - "NCOMP" + "VOICE_UNKNOWN", + "ACTIVE", + "CAUSATIVE", + "PASSIVE" + ] + }, + "aspect": { + "enumDescriptions": [ + "Aspect is not applicable in the analyzed language or is not predicted.", + "Perfective", + "Imperfective", + "Progressive" + ], + "enum": [ + "ASPECT_UNKNOWN", + "PERFECTIVE", + "IMPERFECTIVE", + "PROGRESSIVE" ], - "description": "The parse label for the token.", + "description": "The grammatical aspect.", + "type": "string" + }, + "mood": { "type": "string", + "enumDescriptions": [ + "Mood is not applicable in the analyzed language or is not predicted.", + "Conditional", + "Imperative", + "Indicative", + "Interrogative", + "Jussive", + "Subjunctive" + ], + "enum": [ + "MOOD_UNKNOWN", + "CONDITIONAL_MOOD", + "IMPERATIVE", + "INDICATIVE", + "INTERROGATIVE", + "JUSSIVE", + "SUBJUNCTIVE" + ], + "description": "The grammatical mood." + }, + "tag": { "enumDescriptions": [ "Unknown", - "Abbreviation modifier", - "Adjectival complement", - "Adverbial clause modifier", - "Adverbial modifier", - "Adjectival modifier of an NP", - "Appositional modifier of an NP", - "Attribute dependent of a copular verb", - "Auxiliary (non-main) verb", - "Passive auxiliary", - "Coordinating conjunction", - "Clausal complement of a verb or adjective", - "Conjunct", - "Clausal subject", - "Clausal passive subject", - "Dependency (unable to determine)", + "Adjective", + "Adposition (preposition and postposition)", + "Adverb", + "Conjunction", "Determiner", - "Discourse", - "Direct object", - "Expletive", - "Goes with (part of a word in a text not well edited)", - "Indirect object", - "Marker (word introducing a subordinate clause)", - "Multi-word expression", - "Multi-word verbal expression", - "Negation modifier", - "Noun compound modifier", - "Noun phrase used as an adverbial modifier", - "Nominal subject", - "Passive nominal subject", - "Numeric modifier of a noun", - "Element of compound number", - "Punctuation mark", - "Parataxis relation", - "Participial modifier", - "The complement of a preposition is a clause", - "Object of a preposition", - "Possession modifier", - "Postverbal negative particle", - "Predicate complement", - "Preconjunt", - "Predeterminer", - "Prefix", - "Prepositional modifier", - "The relationship between a verb and verbal morpheme", - "Particle", - "Associative or possessive marker", - "Quantifier phrase modifier", - "Relative clause modifier", - "Complementizer in relative clause", - "Ellipsis without a preceding predicate", - "Referent", - "Remnant", - "Reparandum", - "Root", - "Suffix specifying a unit of number", - "Suffix", - "Temporal modifier", - "Topic marker", - "Clause headed by an infinite form of the verb that modifies a noun", - "Vocative", - "Open clausal complement", - "Name suffix", - "Name title", - "Adverbial phrase modifier", - "Causative auxiliary", - "Helper auxiliary", - "Rentaishi (Prenominal modifier)", - "Foreign words", - "Keyword", - "List for chains of comparable items", - "Nominalized clause", - "Nominalized clausal subject", - "Nominalized clausal passive", - "Compound of numeric modifier", - "Copula", - "Dislocated relation (for fronted/topicalized elements)", - "Aspect marker", - "Genitive modifier", - "Genitive object", - "Infinitival modifier", - "Measure", - "Nominal complement of a noun" + "Noun (common and proper)", + "Cardinal number", + "Pronoun", + "Particle or other function word", + "Punctuation", + "Verb (all tenses and modes)", + "Other: foreign words, typos, abbreviations", + "Affix" + ], + "enum": [ + "UNKNOWN", + "ADJ", + "ADP", + "ADV", + "CONJ", + "DET", + "NOUN", + "NUM", + "PRON", + "PRT", + "PUNCT", + "VERB", + "X", + "AFFIX" + ], + "description": "The part of speech tag.", + "type": "string" + }, + "gender": { + "enumDescriptions": [ + "Gender is not applicable in the analyzed language or is not predicted.", + "Feminine", + "Masculine", + "Neuter" + ], + "enum": [ + "GENDER_UNKNOWN", + "FEMININE", + "MASCULINE", + "NEUTER" + ], + "description": "The grammatical gender.", + "type": "string" + }, + "person": { + "description": "The grammatical person.", + "type": "string", + "enumDescriptions": [ + "Person is not applicable in the analyzed language or is not predicted.", + "First", + "Second", + "Third", + "Reflexive" + ], + "enum": [ + "PERSON_UNKNOWN", + "FIRST", + "SECOND", + "THIRD", + "REFLEXIVE_PERSON" + ] + }, + "proper": { + "description": "The grammatical properness.", + "type": "string", + "enumDescriptions": [ + "Proper is not applicable in the analyzed language or is not predicted.", + "Proper", + "Not proper" + ], + "enum": [ + "PROPER_UNKNOWN", + "PROPER", + "NOT_PROPER" + ] + }, + "case": { + "enum": [ + "CASE_UNKNOWN", + "ACCUSATIVE", + "ADVERBIAL", + "COMPLEMENTIVE", + "DATIVE", + "GENITIVE", + "INSTRUMENTAL", + "LOCATIVE", + "NOMINATIVE", + "OBLIQUE", + "PARTITIVE", + "PREPOSITIONAL", + "REFLEXIVE_CASE", + "RELATIVE_CASE", + "VOCATIVE" + ], + "description": "The grammatical case.", + "type": "string", + "enumDescriptions": [ + "Case is not applicable in the analyzed language or is not predicted.", + "Accusative", + "Adverbial", + "Complementive", + "Dative", + "Genitive", + "Instrumental", + "Locative", + "Nominative", + "Oblique", + "Partitive", + "Prepositional", + "Reflexive", + "Relative", + "Vocative" + ] + }, + "tense": { + "description": "The grammatical tense.", + "type": "string", + "enumDescriptions": [ + "Tense is not applicable in the analyzed language or is not predicted.", + "Conditional", + "Future", + "Past", + "Present", + "Imperfect", + "Pluperfect" + ], + "enum": [ + "TENSE_UNKNOWN", + "CONDITIONAL_TENSE", + "FUTURE", + "PAST", + "PRESENT", + "IMPERFECT", + "PLUPERFECT" ] + }, + "reciprocity": { + "enumDescriptions": [ + "Reciprocity is not applicable in the analyzed language or is not\npredicted.", + "Reciprocal", + "Non-reciprocal" + ], + "enum": [ + "RECIPROCITY_UNKNOWN", + "RECIPROCAL", + "NON_RECIPROCAL" + ], + "description": "The grammatical reciprocity.", + "type": "string" } }, - "id": "DependencyEdge" + "id": "PartOfSpeech" }, - "Token": { - "id": "Token", - "description": "Represents the smallest syntactic building block of the text.", - "type": "object", + "AnalyzeSyntaxRequest": { "properties": { - "lemma": { - "description": "[Lemma](https://en.wikipedia.org/wiki/Lemma_%28morphology%29) of the token.", - "type": "string" - }, - "partOfSpeech": { - "$ref": "PartOfSpeech", - "description": "Parts of speech tag for this token." - }, - "text": { - "$ref": "TextSpan", - "description": "The token text." + "encodingType": { + "description": "The encoding type used by the API to calculate offsets.", + "type": "string", + "enumDescriptions": [ + "If `EncodingType` is not specified, encoding-dependent information (such as\n`begin_offset`) will be set at `-1`.", + "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-8 encoding of the input. C++ and Go are examples of languages\nthat use this encoding natively.", + "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-16 encoding of the input. Java and Javascript are examples of\nlanguages that use this encoding natively.", + "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-32 encoding of the input. Python is an example of a language\nthat uses this encoding natively." + ], + "enum": [ + "NONE", + "UTF8", + "UTF16", + "UTF32" + ] }, - "dependencyEdge": { - "description": "Dependency tree parse for this token.", - "$ref": "DependencyEdge" + "document": { + "description": "Input document.", + "$ref": "Document" } - } + }, + "id": "AnalyzeSyntaxRequest", + "description": "The syntax analysis request message.", + "type": "object" }, - "TextSpan": { - "id": "TextSpan", - "description": "Represents an output piece of text.", - "type": "object", + "AnalyzeSentimentResponse": { "properties": { - "beginOffset": { - "description": "The API calculates the beginning offset of the content in the original\ndocument according to the EncodingType specified in the API request.", - "format": "int32", - "type": "integer" + "documentSentiment": { + "$ref": "Sentiment", + "description": "The overall sentiment of the input document." }, - "content": { + "language": { "type": "string", - "description": "The content of the output text." + "description": "The language of the text, which will be the same as the language specified\nin the request or, if not specified, the automatically-detected language.\nSee Document.language field for more details." + }, + "sentences": { + "type": "array", + "items": { + "$ref": "Sentence" + }, + "description": "The sentiment for all the sentences in the document." } - } + }, + "id": "AnalyzeSentimentResponse", + "description": "The sentiment analysis response message.", + "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.", + "AnalyzeEntitiesResponse": { + "description": "The entity analysis response message.", "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.", + "language": { + "description": "The language of the text, which will be the same as the language specified\nin the request or, if not specified, the automatically-detected language.\nSee Document.language field for more details.", "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.", + "entities": { + "description": "The recognized entities in the input document.", "type": "array", "items": { - "type": "object", - "additionalProperties": { - "type": "any", - "description": "Properties of the object. Contains field @type with type URL." - } + "$ref": "Entity" } } }, - "id": "Status" + "id": "AnalyzeEntitiesResponse" }, - "EntityMention": { - "description": "Represents a mention for an entity in the text. Currently, proper noun\nmentions are supported.", + "Entity": { + "description": "Represents a phrase in the text that is a known entity, such as\na person, an organization, or location. The API associates information, such\nas salience and mentions, with entities.", "type": "object", "properties": { - "text": { - "$ref": "TextSpan", - "description": "The mention text." + "mentions": { + "description": "The mentions of this entity in the input document. The API currently\nsupports proper noun mentions.", + "type": "array", + "items": { + "$ref": "EntityMention" + } + }, + "name": { + "description": "The representative name for the entity.", + "type": "string" }, "type": { "enum": [ - "TYPE_UNKNOWN", - "PROPER", - "COMMON" + "UNKNOWN", + "PERSON", + "LOCATION", + "ORGANIZATION", + "EVENT", + "WORK_OF_ART", + "CONSUMER_GOOD", + "OTHER" ], - "description": "The type of the entity mention.", + "description": "The entity type.", "type": "string", "enumDescriptions": [ "Unknown", - "Proper name", - "Common noun (or noun compound)" + "Person", + "Location", + "Organization", + "Event", + "Work of art", + "Consumer goods", + "Other types" ] + }, + "metadata": { + "additionalProperties": { + "type": "string" + }, + "description": "Metadata associated with the entity.\n\nCurrently, Wikipedia URLs and Knowledge Graph MIDs are provided, if\navailable. The associated keys are \"wikipedia_url\" and \"mid\", respectively.", + "type": "object" + }, + "salience": { + "description": "The salience score associated with the entity in the [0, 1.0] range.\n\nThe salience score for an entity provides information about the\nimportance or centrality of that entity to the entire document text.\nScores closer to 0 are less salient, while scores closer to 1.0 are highly\nsalient.", + "format": "float", + "type": "number" } }, - "id": "EntityMention" + "id": "Entity" }, - "Features": { - "description": "All available features for sentiment, syntax, and semantic analysis.\nSetting each one to true will enable that specific analysis for the input.", + "AnalyzeSyntaxResponse": { + "description": "The syntax analysis response message.", "type": "object", "properties": { - "extractEntities": { - "description": "Extract entities.", - "type": "boolean" + "sentences": { + "description": "Sentences in the input document.", + "type": "array", + "items": { + "$ref": "Sentence" + } }, - "extractSyntax": { - "description": "Extract syntax information.", - "type": "boolean" + "tokens": { + "type": "array", + "items": { + "$ref": "Token" + }, + "description": "Tokens, along with their syntactic information, in the input document." }, - "extractDocumentSentiment": { - "description": "Extract document-level sentiment.", - "type": "boolean" + "language": { + "description": "The language of the text, which will be the same as the language specified\nin the request or, if not specified, the automatically-detected language.\nSee Document.language field for more details.", + "type": "string" } }, - "id": "Features" + "id": "AnalyzeSyntaxResponse" }, - "Document": { - "description": "################################################################ #\n\nRepresents the input to API methods.", + "AnnotateTextRequest": { "type": "object", "properties": { - "type": { + "encodingType": { "enum": [ - "TYPE_UNSPECIFIED", - "PLAIN_TEXT", - "HTML" + "NONE", + "UTF8", + "UTF16", + "UTF32" ], - "description": "Required. If the type is not set or is `TYPE_UNSPECIFIED`,\nreturns an `INVALID_ARGUMENT` error.", + "description": "The encoding type used by the API to calculate offsets.", "type": "string", "enumDescriptions": [ - "The content type is not specified.", - "Plain text", - "HTML" + "If `EncodingType` is not specified, encoding-dependent information (such as\n`begin_offset`) will be set at `-1`.", + "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-8 encoding of the input. C++ and Go are examples of languages\nthat use this encoding natively.", + "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-16 encoding of the input. Java and Javascript are examples of\nlanguages that use this encoding natively.", + "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-32 encoding of the input. Python is an example of a language\nthat uses this encoding natively." ] }, - "content": { - "description": "The content of the input in string format.", - "type": "string" + "document": { + "description": "Input document.", + "$ref": "Document" + }, + "features": { + "$ref": "Features", + "description": "The enabled features." + } + }, + "id": "AnnotateTextRequest", + "description": "The request message for the text annotation API, which can perform multiple\nanalysis types (sentiment, entities, and syntax) in one call." + }, + "AnnotateTextResponse": { + "type": "object", + "properties": { + "tokens": { + "description": "Tokens, along with their syntactic information, in the input document.\nPopulated if the user enables\nAnnotateTextRequest.Features.extract_syntax.", + "type": "array", + "items": { + "$ref": "Token" + } + }, + "entities": { + "description": "Entities, along with their semantic information, in the input document.\nPopulated if the user enables\nAnnotateTextRequest.Features.extract_entities.", + "type": "array", + "items": { + "$ref": "Entity" + } }, - "gcsContentUri": { - "description": "The Google Cloud Storage URI where the file content is located.\nThis URI must be of the form: gs://bucket_name/object_name. For more\ndetails, see https://cloud.google.com/storage/docs/reference-uris.\nNOTE: Cloud Storage object versioning is not supported.", - "type": "string" + "documentSentiment": { + "description": "The overall sentiment for the document. Populated if the user enables\nAnnotateTextRequest.Features.extract_document_sentiment.", + "$ref": "Sentiment" }, "language": { - "description": "The language of the document (if not specified, the language is\nautomatically detected). Both ISO and BCP-47 language codes are\naccepted.\u003cbr\u003e\n[Language Support](/natural-language/docs/languages)\nlists currently supported languages for each API method.\nIf the language (either specified by the caller or automatically detected)\nis not supported by the called API method, an `INVALID_ARGUMENT` error\nis returned.", + "description": "The language of the text, which will be the same as the language specified\nin the request or, if not specified, the automatically-detected language.\nSee Document.language field for more details.", "type": "string" - } - }, - "id": "Document" - }, - "Sentence": { - "type": "object", - "properties": { - "text": { - "$ref": "TextSpan", - "description": "The sentence text." }, - "sentiment": { - "description": "For calls to AnalyzeSentiment or if\nAnnotateTextRequest.Features.extract_document_sentiment is set to\ntrue, this field will contain the sentiment for the sentence.", - "$ref": "Sentiment" + "sentences": { + "description": "Sentences in the input document. Populated if the user enables\nAnnotateTextRequest.Features.extract_syntax.", + "type": "array", + "items": { + "$ref": "Sentence" + } } }, - "id": "Sentence", - "description": "Represents a sentence in the input document." + "id": "AnnotateTextResponse", + "description": "The text annotations response message." }, - "AnalyzeEntitiesRequest": { - "description": "The entity analysis request message.", + "AnalyzeSentimentRequest": { "type": "object", "properties": { "encodingType": { + "description": "The encoding type used by the API to calculate sentence offsets for the\nsentence sentiment.", + "type": "string", "enumDescriptions": [ "If `EncodingType` is not specified, encoding-dependent information (such as\n`begin_offset`) will be set at `-1`.", "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-8 encoding of the input. C++ and Go are examples of languages\nthat use this encoding natively.", @@ -783,327 +865,245 @@ "UTF8", "UTF16", "UTF32" - ], - "description": "The encoding type used by the API to calculate offsets.", - "type": "string" + ] }, "document": { - "description": "Input document.", - "$ref": "Document" + "$ref": "Document", + "description": "Input document." } }, - "id": "AnalyzeEntitiesRequest" + "id": "AnalyzeSentimentRequest", + "description": "The sentiment analysis request message." }, - "Sentiment": { - "id": "Sentiment", - "description": "Represents the feeling associated with the entire text or entities in\nthe text.", + "DependencyEdge": { + "description": "Represents dependency parse tree information for a token.", "type": "object", "properties": { - "polarity": { - "description": "DEPRECATED FIELD - This field is being deprecated in\nfavor of score. Please refer to our documentation at\nhttps://cloud.google.com/natural-language/docs for more information.", - "format": "float", - "type": "number" - }, - "score": { - "description": "Sentiment score between -1.0 (negative sentiment) and 1.0\n(positive sentiment).", - "format": "float", - "type": "number" - }, - "magnitude": { - "description": "A non-negative number in the [0, +inf) range, which represents\nthe absolute magnitude of sentiment regardless of score (positive or\nnegative).", - "format": "float", - "type": "number" - } - } - }, - "PartOfSpeech": { - "properties": { - "form": { - "enumDescriptions": [ - "Form is not applicable in the analyzed language or is not predicted.", - "Adnomial", - "Auxiliary", - "Complementizer", - "Final ending", - "Gerund", - "Realis", - "Irrealis", - "Short form", - "Long form", - "Order form", - "Specific form" - ], - "enum": [ - "FORM_UNKNOWN", - "ADNOMIAL", - "AUXILIARY", - "COMPLEMENTIZER", - "FINAL_ENDING", - "GERUND", - "REALIS", - "IRREALIS", - "SHORT", - "LONG", - "ORDER", - "SPECIFIC" - ], - "description": "The grammatical form.", - "type": "string" - }, - "number": { - "description": "The grammatical number.", - "type": "string", - "enumDescriptions": [ - "Number is not applicable in the analyzed language or is not predicted.", - "Singular", - "Plural", - "Dual" - ], - "enum": [ - "NUMBER_UNKNOWN", - "SINGULAR", - "PLURAL", - "DUAL" - ] - }, - "voice": { - "enum": [ - "VOICE_UNKNOWN", - "ACTIVE", - "CAUSATIVE", - "PASSIVE" - ], - "description": "The grammatical voice.", - "type": "string", - "enumDescriptions": [ - "Voice is not applicable in the analyzed language or is not predicted.", - "Active", - "Causative", - "Passive" - ] - }, - "aspect": { - "description": "The grammatical aspect.", - "type": "string", - "enumDescriptions": [ - "Aspect is not applicable in the analyzed language or is not predicted.", - "Perfective", - "Imperfective", - "Progressive" - ], - "enum": [ - "ASPECT_UNKNOWN", - "PERFECTIVE", - "IMPERFECTIVE", - "PROGRESSIVE" - ] - }, - "mood": { - "enum": [ - "MOOD_UNKNOWN", - "CONDITIONAL_MOOD", - "IMPERATIVE", - "INDICATIVE", - "INTERROGATIVE", - "JUSSIVE", - "SUBJUNCTIVE" - ], - "description": "The grammatical mood.", - "type": "string", - "enumDescriptions": [ - "Mood is not applicable in the analyzed language or is not predicted.", - "Conditional", - "Imperative", - "Indicative", - "Interrogative", - "Jussive", - "Subjunctive" - ] - }, - "tag": { + "label": { "type": "string", "enumDescriptions": [ "Unknown", - "Adjective", - "Adposition (preposition and postposition)", - "Adverb", - "Conjunction", + "Abbreviation modifier", + "Adjectival complement", + "Adverbial clause modifier", + "Adverbial modifier", + "Adjectival modifier of an NP", + "Appositional modifier of an NP", + "Attribute dependent of a copular verb", + "Auxiliary (non-main) verb", + "Passive auxiliary", + "Coordinating conjunction", + "Clausal complement of a verb or adjective", + "Conjunct", + "Clausal subject", + "Clausal passive subject", + "Dependency (unable to determine)", "Determiner", - "Noun (common and proper)", - "Cardinal number", - "Pronoun", - "Particle or other function word", - "Punctuation", - "Verb (all tenses and modes)", - "Other: foreign words, typos, abbreviations", - "Affix" + "Discourse", + "Direct object", + "Expletive", + "Goes with (part of a word in a text not well edited)", + "Indirect object", + "Marker (word introducing a subordinate clause)", + "Multi-word expression", + "Multi-word verbal expression", + "Negation modifier", + "Noun compound modifier", + "Noun phrase used as an adverbial modifier", + "Nominal subject", + "Passive nominal subject", + "Numeric modifier of a noun", + "Element of compound number", + "Punctuation mark", + "Parataxis relation", + "Participial modifier", + "The complement of a preposition is a clause", + "Object of a preposition", + "Possession modifier", + "Postverbal negative particle", + "Predicate complement", + "Preconjunt", + "Predeterminer", + "Prefix", + "Prepositional modifier", + "The relationship between a verb and verbal morpheme", + "Particle", + "Associative or possessive marker", + "Quantifier phrase modifier", + "Relative clause modifier", + "Complementizer in relative clause", + "Ellipsis without a preceding predicate", + "Referent", + "Remnant", + "Reparandum", + "Root", + "Suffix specifying a unit of number", + "Suffix", + "Temporal modifier", + "Topic marker", + "Clause headed by an infinite form of the verb that modifies a noun", + "Vocative", + "Open clausal complement", + "Name suffix", + "Name title", + "Adverbial phrase modifier", + "Causative auxiliary", + "Helper auxiliary", + "Rentaishi (Prenominal modifier)", + "Foreign words", + "Keyword", + "List for chains of comparable items", + "Nominalized clause", + "Nominalized clausal subject", + "Nominalized clausal passive", + "Compound of numeric modifier", + "Copula", + "Dislocated relation (for fronted/topicalized elements)", + "Aspect marker", + "Genitive modifier", + "Genitive object", + "Infinitival modifier", + "Measure", + "Nominal complement of a noun" ], "enum": [ "UNKNOWN", - "ADJ", - "ADP", - "ADV", + "ABBREV", + "ACOMP", + "ADVCL", + "ADVMOD", + "AMOD", + "APPOS", + "ATTR", + "AUX", + "AUXPASS", + "CC", + "CCOMP", "CONJ", + "CSUBJ", + "CSUBJPASS", + "DEP", "DET", - "NOUN", + "DISCOURSE", + "DOBJ", + "EXPL", + "GOESWITH", + "IOBJ", + "MARK", + "MWE", + "MWV", + "NEG", + "NN", + "NPADVMOD", + "NSUBJ", + "NSUBJPASS", "NUM", - "PRON", + "NUMBER", + "P", + "PARATAXIS", + "PARTMOD", + "PCOMP", + "POBJ", + "POSS", + "POSTNEG", + "PRECOMP", + "PRECONJ", + "PREDET", + "PREF", + "PREP", + "PRONL", "PRT", - "PUNCT", - "VERB", - "X", - "AFFIX" + "PS", + "QUANTMOD", + "RCMOD", + "RCMODREL", + "RDROP", + "REF", + "REMNANT", + "REPARANDUM", + "ROOT", + "SNUM", + "SUFF", + "TMOD", + "TOPIC", + "VMOD", + "VOCATIVE", + "XCOMP", + "SUFFIX", + "TITLE", + "ADVPHMOD", + "AUXCAUS", + "AUXVV", + "DTMOD", + "FOREIGN", + "KW", + "LIST", + "NOMC", + "NOMCSUBJ", + "NOMCSUBJPASS", + "NUMC", + "COP", + "DISLOCATED", + "ASP", + "GMOD", + "GOBJ", + "INFMOD", + "MES", + "NCOMP" ], - "description": "The part of speech tag." + "description": "The parse label for the token." }, - "gender": { - "enumDescriptions": [ - "Gender is not applicable in the analyzed language or is not predicted.", - "Feminine", - "Masculine", - "Neuter" - ], - "enum": [ - "GENDER_UNKNOWN", - "FEMININE", - "MASCULINE", - "NEUTER" - ], - "description": "The grammatical gender.", - "type": "string" + "headTokenIndex": { + "description": "Represents the head of this token in the dependency tree.\nThis is the index of the token which has an arc going to this token.\nThe index is the position of the token in the array of tokens returned\nby the API method. If this token is a root token, then the\n`head_token_index` is its own index.", + "format": "int32", + "type": "integer" + } + }, + "id": "DependencyEdge" + }, + "Token": { + "description": "Represents the smallest syntactic building block of the text.", + "type": "object", + "properties": { + "partOfSpeech": { + "description": "Parts of speech tag for this token.", + "$ref": "PartOfSpeech" }, - "person": { - "enumDescriptions": [ - "Person is not applicable in the analyzed language or is not predicted.", - "First", - "Second", - "Third", - "Reflexive" - ], - "enum": [ - "PERSON_UNKNOWN", - "FIRST", - "SECOND", - "THIRD", - "REFLEXIVE_PERSON" - ], - "description": "The grammatical person.", - "type": "string" + "text": { + "$ref": "TextSpan", + "description": "The token text." }, - "proper": { - "enumDescriptions": [ - "Proper is not applicable in the analyzed language or is not predicted.", - "Proper", - "Not proper" - ], - "enum": [ - "PROPER_UNKNOWN", - "PROPER", - "NOT_PROPER" - ], - "description": "The grammatical properness.", - "type": "string" + "dependencyEdge": { + "description": "Dependency tree parse for this token.", + "$ref": "DependencyEdge" }, - "case": { - "enumDescriptions": [ - "Case is not applicable in the analyzed language or is not predicted.", - "Accusative", - "Adverbial", - "Complementive", - "Dative", - "Genitive", - "Instrumental", - "Locative", - "Nominative", - "Oblique", - "Partitive", - "Prepositional", - "Reflexive", - "Relative", - "Vocative" - ], - "enum": [ - "CASE_UNKNOWN", - "ACCUSATIVE", - "ADVERBIAL", - "COMPLEMENTIVE", - "DATIVE", - "GENITIVE", - "INSTRUMENTAL", - "LOCATIVE", - "NOMINATIVE", - "OBLIQUE", - "PARTITIVE", - "PREPOSITIONAL", - "REFLEXIVE_CASE", - "RELATIVE_CASE", - "VOCATIVE" - ], - "description": "The grammatical case.", - "type": "string" + "lemma": { + "type": "string", + "description": "[Lemma](https://en.wikipedia.org/wiki/Lemma_%28morphology%29) of the token." + } + }, + "id": "Token" + }, + "TextSpan": { + "type": "object", + "properties": { + "beginOffset": { + "description": "The API calculates the beginning offset of the content in the original\ndocument according to the EncodingType specified in the API request.", + "format": "int32", + "type": "integer" }, - "tense": { - "enumDescriptions": [ - "Tense is not applicable in the analyzed language or is not predicted.", - "Conditional", - "Future", - "Past", - "Present", - "Imperfect", - "Pluperfect" - ], - "enum": [ - "TENSE_UNKNOWN", - "CONDITIONAL_TENSE", - "FUTURE", - "PAST", - "PRESENT", - "IMPERFECT", - "PLUPERFECT" - ], - "description": "The grammatical tense.", + "content": { + "description": "The content of the output text.", "type": "string" - }, - "reciprocity": { - "description": "The grammatical reciprocity.", - "type": "string", - "enumDescriptions": [ - "Reciprocity is not applicable in the analyzed language or is not\npredicted.", - "Reciprocal", - "Non-reciprocal" - ], - "enum": [ - "RECIPROCITY_UNKNOWN", - "RECIPROCAL", - "NON_RECIPROCAL" - ] } }, - "id": "PartOfSpeech", - "description": "Represents part of speech information for a token.", - "type": "object" + "id": "TextSpan", + "description": "Represents an output piece of text." } }, "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 Natural Language", - "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-language": { - "description": "Apply machine learning models to reveal the structure and meaning of text" - } - } - } - }, - "rootUrl": "https://language.googleapis.com/", - "ownerDomain": "google.com", - "name": "language", - "batchPath": "batch" + "protocol": "rest" } diff --git a/DiscoveryJson/language_v1beta2.json b/DiscoveryJson/language_v1beta2.json index e10478b77c..7917f01a57 100644 --- a/DiscoveryJson/language_v1beta2.json +++ b/DiscoveryJson/language_v1beta2.json @@ -1,277 +1,11 @@ { - "canonicalName": "Cloud Natural Language", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-language": { - "description": "Apply machine learning models to reveal the structure and meaning of text" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://language.googleapis.com/", - "ownerDomain": "google.com", - "name": "language", - "batchPath": "batch", - "title": "Cloud Natural Language API", - "ownerName": "Google", - "resources": { - "documents": { - "methods": { - "analyzeSentiment": { - "description": "Analyzes the sentiment of the provided text.", - "request": { - "$ref": "AnalyzeSentimentRequest" - }, - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "AnalyzeSentimentResponse" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-language", - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/documents:analyzeSentiment", - "id": "language.documents.analyzeSentiment", - "path": "v1beta2/documents:analyzeSentiment" - }, - "analyzeEntitySentiment": { - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-language", - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/documents:analyzeEntitySentiment", - "path": "v1beta2/documents:analyzeEntitySentiment", - "id": "language.documents.analyzeEntitySentiment", - "description": "Finds entities, similar to AnalyzeEntities in the text and analyzes\nsentiment associated with each entity and its mentions.", - "request": { - "$ref": "AnalyzeEntitySentimentRequest" - }, - "response": { - "$ref": "AnalyzeEntitySentimentResponse" - }, - "parameterOrder": [], - "httpMethod": "POST" - }, - "analyzeEntities": { - "description": "Finds named entities (currently proper names and common nouns) in the text\nalong with entity types, salience, mentions for each entity, and\nother properties.", - "request": { - "$ref": "AnalyzeEntitiesRequest" - }, - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "AnalyzeEntitiesResponse" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-language", - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/documents:analyzeEntities", - "id": "language.documents.analyzeEntities", - "path": "v1beta2/documents:analyzeEntities" - }, - "analyzeSyntax": { - "path": "v1beta2/documents:analyzeSyntax", - "id": "language.documents.analyzeSyntax", - "request": { - "$ref": "AnalyzeSyntaxRequest" - }, - "description": "Analyzes the syntax of the text and provides sentence boundaries and\ntokenization along with part of speech tags, dependency trees, and other\nproperties.", - "response": { - "$ref": "AnalyzeSyntaxResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-language", - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": {}, - "flatPath": "v1beta2/documents:analyzeSyntax" - }, - "annotateText": { - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "AnnotateTextResponse" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-language", - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/documents:annotateText", - "id": "language.documents.annotateText", - "path": "v1beta2/documents:annotateText", - "description": "A convenience method that provides all syntax, sentiment, entity, and\nclassification features in one call.", - "request": { - "$ref": "AnnotateTextRequest" - } - }, - "classifyText": { - "path": "v1beta2/documents:classifyText", - "id": "language.documents.classifyText", - "request": { - "$ref": "ClassifyTextRequest" - }, - "description": "Classifies a document into categories.", - "response": { - "$ref": "ClassifyTextResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-language", - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": {}, - "flatPath": "v1beta2/documents:classifyText" - } - } - } - }, - "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": { - "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", - "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" - }, - "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": { - "description": "Available 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" - } - }, - "version": "v1beta2", - "baseUrl": "https://language.googleapis.com/", - "servicePath": "", - "description": "Provides natural language understanding technologies to developers. Examples include sentiment analysis, entity recognition, entity sentiment analysis, and text annotations.", - "kind": "discovery#restDescription", - "basePath": "", - "id": "language:v1beta2", - "documentationLink": "https://cloud.google.com/natural-language/", - "revision": "20180507", - "discoveryVersion": "v1", "version_module": true, "schemas": { - "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" - }, "Features": { - "description": "All available features for sentiment, syntax, and semantic analysis.\nSetting each one to true will enable that specific analysis for the input.", - "type": "object", "properties": { "classifyText": { - "type": "boolean", - "description": "Classify the full document into categories. If this is true,\nthe API will use the default model which classifies into a\n[predefined taxonomy](/natural-language/docs/categories)." + "description": "Classify the full document into categories. If this is true,\nthe API will use the default model which classifies into a\n[predefined taxonomy](/natural-language/docs/categories).", + "type": "boolean" }, "extractSyntax": { "description": "Extract syntax information.", @@ -290,27 +24,31 @@ "type": "boolean" } }, - "id": "Features" + "id": "Features", + "description": "All available features for sentiment, syntax, and semantic analysis.\nSetting each one to true will enable that specific analysis for the input.", + "type": "object" }, "Document": { + "description": "################################################################ #\n\nRepresents the input to API methods.", + "type": "object", "properties": { "language": { "description": "The language of the document (if not specified, the language is\nautomatically detected). Both ISO and BCP-47 language codes are\naccepted.\u003cbr\u003e\n[Language Support](/natural-language/docs/languages)\nlists currently supported languages for each API method.\nIf the language (either specified by the caller or automatically detected)\nis not supported by the called API method, an `INVALID_ARGUMENT` error\nis returned.", "type": "string" }, "type": { + "enumDescriptions": [ + "The content type is not specified.", + "Plain text", + "HTML" + ], "enum": [ "TYPE_UNSPECIFIED", "PLAIN_TEXT", "HTML" ], "description": "Required. If the type is not set or is `TYPE_UNSPECIFIED`,\nreturns an `INVALID_ARGUMENT` error.", - "type": "string", - "enumDescriptions": [ - "The content type is not specified.", - "Plain text", - "HTML" - ] + "type": "string" }, "content": { "description": "The content of the input in string format.", @@ -321,19 +59,13 @@ "type": "string" } }, - "id": "Document", - "description": "################################################################ #\n\nRepresents the input to API methods.", - "type": "object" + "id": "Document" }, "AnalyzeEntitiesRequest": { + "description": "The entity analysis request message.", + "type": "object", "properties": { "encodingType": { - "enum": [ - "NONE", - "UTF8", - "UTF16", - "UTF32" - ], "description": "The encoding type used by the API to calculate offsets.", "type": "string", "enumDescriptions": [ @@ -341,6 +73,12 @@ "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-8 encoding of the input. C++ and Go are examples of languages\nthat use this encoding natively.", "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-16 encoding of the input. Java and Javascript are examples of\nlanguages that use this encoding natively.", "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-32 encoding of the input. Python is an example of a language\nthat uses this encoding natively." + ], + "enum": [ + "NONE", + "UTF8", + "UTF16", + "UTF32" ] }, "document": { @@ -348,41 +86,44 @@ "description": "Input document." } }, - "id": "AnalyzeEntitiesRequest", - "description": "The entity analysis request message.", - "type": "object" + "id": "AnalyzeEntitiesRequest" }, "ClassifyTextRequest": { - "description": "The document classification request message.", - "type": "object", "properties": { "document": { "description": "Input document.", "$ref": "Document" } }, - "id": "ClassifyTextRequest" + "id": "ClassifyTextRequest", + "description": "The document classification request message.", + "type": "object" }, "AnalyzeEntitySentimentResponse": { "description": "The entity-level sentiment analysis response message.", "type": "object", "properties": { + "language": { + "description": "The language of the text, which will be the same as the language specified\nin the request or, if not specified, the automatically-detected language.\nSee Document.language field for more details.", + "type": "string" + }, "entities": { + "description": "The recognized entities in the input document with associated sentiments.", "type": "array", "items": { "$ref": "Entity" - }, - "description": "The recognized entities in the input document with associated sentiments." - }, - "language": { - "description": "The language of the text, which will be the same as the language specified\nin the request or, if not specified, the automatically-detected language.\nSee Document.language field for more details.", - "type": "string" + } } }, "id": "AnalyzeEntitySentimentResponse" }, "AnalyzeSentimentResponse": { + "type": "object", "properties": { + "documentSentiment": { + "$ref": "Sentiment", + "description": "The overall sentiment of the input document." + }, "language": { "description": "The language of the text, which will be the same as the language specified\nin the request or, if not specified, the automatically-detected language.\nSee Document.language field for more details.", "type": "string" @@ -393,20 +134,17 @@ "items": { "$ref": "Sentence" } - }, - "documentSentiment": { - "description": "The overall sentiment of the input document.", - "$ref": "Sentiment" } }, "id": "AnalyzeSentimentResponse", - "description": "The sentiment analysis response message.", - "type": "object" + "description": "The sentiment analysis response message." }, "AnalyzeSyntaxResponse": { - "description": "The syntax analysis response message.", - "type": "object", "properties": { + "language": { + "type": "string", + "description": "The language of the text, which will be the same as the language specified\nin the request or, if not specified, the automatically-detected language.\nSee Document.language field for more details." + }, "sentences": { "description": "Sentences in the input document.", "type": "array", @@ -420,38 +158,22 @@ "items": { "$ref": "Token" } - }, - "language": { - "description": "The language of the text, which will be the same as the language specified\nin the request or, if not specified, the automatically-detected language.\nSee Document.language field for more details.", - "type": "string" } }, - "id": "AnalyzeSyntaxResponse" + "id": "AnalyzeSyntaxResponse", + "description": "The syntax analysis response message.", + "type": "object" }, "AnnotateTextResponse": { "description": "The text annotations response message.", "type": "object", "properties": { - "entities": { - "description": "Entities, along with their semantic information, in the input document.\nPopulated if the user enables\nAnnotateTextRequest.Features.extract_entities.", - "type": "array", - "items": { - "$ref": "Entity" - } - }, - "sentences": { - "description": "Sentences in the input document. Populated if the user enables\nAnnotateTextRequest.Features.extract_syntax.", - "type": "array", - "items": { - "$ref": "Sentence" - } - }, "tokens": { + "description": "Tokens, along with their syntactic information, in the input document.\nPopulated if the user enables\nAnnotateTextRequest.Features.extract_syntax.", "type": "array", "items": { "$ref": "Token" - }, - "description": "Tokens, along with their syntactic information, in the input document.\nPopulated if the user enables\nAnnotateTextRequest.Features.extract_syntax." + } }, "categories": { "description": "Categories identified in the input document.", @@ -467,12 +189,32 @@ "language": { "description": "The language of the text, which will be the same as the language specified\nin the request or, if not specified, the automatically-detected language.\nSee Document.language field for more details.", "type": "string" + }, + "entities": { + "description": "Entities, along with their semantic information, in the input document.\nPopulated if the user enables\nAnnotateTextRequest.Features.extract_entities.", + "type": "array", + "items": { + "$ref": "Entity" + } + }, + "sentences": { + "description": "Sentences in the input document. Populated if the user enables\nAnnotateTextRequest.Features.extract_syntax.", + "type": "array", + "items": { + "$ref": "Sentence" + } } }, "id": "AnnotateTextResponse" }, "DependencyEdge": { + "type": "object", "properties": { + "headTokenIndex": { + "description": "Represents the head of this token in the dependency tree.\nThis is the index of the token which has an arc going to this token.\nThe index is the position of the token in the array of tokens returned\nby the API method. If this token is a root token, then the\n`head_token_index` is its own index.", + "format": "int32", + "type": "integer" + }, "label": { "enum": [ "UNKNOWN", @@ -646,22 +388,18 @@ "Measure", "Nominal complement of a noun" ] - }, - "headTokenIndex": { - "description": "Represents the head of this token in the dependency tree.\nThis is the index of the token which has an arc going to this token.\nThe index is the position of the token in the array of tokens returned\nby the API method. If this token is a root token, then the\n`head_token_index` is its own index.", - "format": "int32", - "type": "integer" } }, "id": "DependencyEdge", - "description": "Represents dependency parse tree information for a token.", - "type": "object" + "description": "Represents dependency parse tree information for a token." }, "Token": { + "description": "Represents the smallest syntactic building block of the text.", + "type": "object", "properties": { "partOfSpeech": { - "description": "Parts of speech tag for this token.", - "$ref": "PartOfSpeech" + "$ref": "PartOfSpeech", + "description": "Parts of speech tag for this token." }, "text": { "$ref": "TextSpan", @@ -676,11 +414,11 @@ "type": "string" } }, - "id": "Token", - "description": "Represents the smallest syntactic building block of the text.", - "type": "object" + "id": "Token" }, "TextSpan": { + "description": "Represents an output piece of text.", + "type": "object", "properties": { "beginOffset": { "description": "The API calculates the beginning offset of the content in the original\ndocument according to the EncodingType specified in the API request.", @@ -692,9 +430,7 @@ "type": "string" } }, - "id": "TextSpan", - "description": "Represents an output piece of text.", - "type": "object" + "id": "TextSpan" }, "EntityMention": { "description": "Represents a mention for an entity in the text. Currently, proper noun\nmentions are supported.", @@ -705,6 +441,7 @@ "description": "The mention text." }, "type": { + "description": "The type of the entity mention.", "type": "string", "enumDescriptions": [ "Unknown", @@ -715,17 +452,18 @@ "TYPE_UNKNOWN", "PROPER", "COMMON" - ], - "description": "The type of the entity mention." + ] }, "sentiment": { - "description": "For calls to AnalyzeEntitySentiment or if\nAnnotateTextRequest.Features.extract_entity_sentiment is set to\ntrue, this field will contain the sentiment expressed for this mention of\nthe entity in the provided document.", - "$ref": "Sentiment" + "$ref": "Sentiment", + "description": "For calls to AnalyzeEntitySentiment or if\nAnnotateTextRequest.Features.extract_entity_sentiment is set to\ntrue, this field will contain the sentiment expressed for this mention of\nthe entity in the provided document." } }, "id": "EntityMention" }, "ClassifyTextResponse": { + "description": "The document classification response message.", + "type": "object", "properties": { "categories": { "description": "Categories representing the input document.", @@ -735,26 +473,27 @@ } } }, - "id": "ClassifyTextResponse", - "description": "The document classification response message.", - "type": "object" + "id": "ClassifyTextResponse" }, "Sentence": { + "id": "Sentence", "description": "Represents a sentence in the input document.", "type": "object", "properties": { "sentiment": { - "$ref": "Sentiment", - "description": "For calls to AnalyzeSentiment or if\nAnnotateTextRequest.Features.extract_document_sentiment is set to\ntrue, this field will contain the sentiment for the sentence." + "description": "For calls to AnalyzeSentiment or if\nAnnotateTextRequest.Features.extract_document_sentiment is set to\ntrue, this field will contain the sentiment for the sentence.", + "$ref": "Sentiment" }, "text": { "description": "The sentence text.", "$ref": "TextSpan" } - }, - "id": "Sentence" + } }, "Sentiment": { + "id": "Sentiment", + "description": "Represents the feeling associated with the entire text or entities in\nthe text.", + "type": "object", "properties": { "score": { "type": "number", @@ -766,22 +505,17 @@ "format": "float", "type": "number" } - }, - "id": "Sentiment", - "description": "Represents the feeling associated with the entire text or entities in\nthe text.", - "type": "object" + } }, "AnalyzeEntitySentimentRequest": { "description": "The entity-level sentiment analysis request message.", "type": "object", "properties": { + "document": { + "description": "Input document.", + "$ref": "Document" + }, "encodingType": { - "enumDescriptions": [ - "If `EncodingType` is not specified, encoding-dependent information (such as\n`begin_offset`) will be set at `-1`.", - "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-8 encoding of the input. C++ and Go are examples of languages\nthat use this encoding natively.", - "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-16 encoding of the input. Java and Javascript are examples of\nlanguages that use this encoding natively.", - "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-32 encoding of the input. Python is an example of a language\nthat uses this encoding natively." - ], "enum": [ "NONE", "UTF8", @@ -789,16 +523,19 @@ "UTF32" ], "description": "The encoding type used by the API to calculate offsets.", - "type": "string" - }, - "document": { - "$ref": "Document", - "description": "Input document." + "type": "string", + "enumDescriptions": [ + "If `EncodingType` is not specified, encoding-dependent information (such as\n`begin_offset`) will be set at `-1`.", + "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-8 encoding of the input. C++ and Go are examples of languages\nthat use this encoding natively.", + "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-16 encoding of the input. Java and Javascript are examples of\nlanguages that use this encoding natively.", + "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-32 encoding of the input. Python is an example of a language\nthat uses this encoding natively." + ] } }, "id": "AnalyzeEntitySentimentRequest" }, "ClassificationCategory": { + "id": "ClassificationCategory", "description": "Represents a category returned from the text classifier.", "type": "object", "properties": { @@ -811,84 +548,165 @@ "description": "The name of the category representing the document, from the [predefined\ntaxonomy](/natural-language/docs/categories).", "type": "string" } - }, - "id": "ClassificationCategory" + } }, "PartOfSpeech": { "description": "Represents part of speech information for a token.", "type": "object", "properties": { - "form": { - "description": "The grammatical form.", - "type": "string", - "enumDescriptions": [ - "Form is not applicable in the analyzed language or is not predicted.", - "Adnomial", - "Auxiliary", - "Complementizer", - "Final ending", - "Gerund", - "Realis", - "Irrealis", - "Short form", - "Long form", - "Order form", - "Specific form" - ], - "enum": [ - "FORM_UNKNOWN", - "ADNOMIAL", - "AUXILIARY", - "COMPLEMENTIZER", - "FINAL_ENDING", - "GERUND", - "REALIS", - "IRREALIS", - "SHORT", - "LONG", - "ORDER", - "SPECIFIC" - ] - }, - "number": { + "proper": { "enumDescriptions": [ - "Number is not applicable in the analyzed language or is not predicted.", - "Singular", - "Plural", - "Dual" + "Proper is not applicable in the analyzed language or is not predicted.", + "Proper", + "Not proper" ], "enum": [ - "NUMBER_UNKNOWN", - "SINGULAR", - "PLURAL", - "DUAL" + "PROPER_UNKNOWN", + "PROPER", + "NOT_PROPER" ], - "description": "The grammatical number.", + "description": "The grammatical properness.", "type": "string" }, - "voice": { - "type": "string", + "case": { "enumDescriptions": [ - "Voice is not applicable in the analyzed language or is not predicted.", - "Active", - "Causative", - "Passive" + "Case is not applicable in the analyzed language or is not predicted.", + "Accusative", + "Adverbial", + "Complementive", + "Dative", + "Genitive", + "Instrumental", + "Locative", + "Nominative", + "Oblique", + "Partitive", + "Prepositional", + "Reflexive", + "Relative", + "Vocative" ], "enum": [ - "VOICE_UNKNOWN", - "ACTIVE", - "CAUSATIVE", - "PASSIVE" + "CASE_UNKNOWN", + "ACCUSATIVE", + "ADVERBIAL", + "COMPLEMENTIVE", + "DATIVE", + "GENITIVE", + "INSTRUMENTAL", + "LOCATIVE", + "NOMINATIVE", + "OBLIQUE", + "PARTITIVE", + "PREPOSITIONAL", + "REFLEXIVE_CASE", + "RELATIVE_CASE", + "VOCATIVE" ], - "description": "The grammatical voice." + "description": "The grammatical case.", + "type": "string" }, - "aspect": { + "tense": { "enum": [ - "ASPECT_UNKNOWN", - "PERFECTIVE", - "IMPERFECTIVE", - "PROGRESSIVE" + "TENSE_UNKNOWN", + "CONDITIONAL_TENSE", + "FUTURE", + "PAST", + "PRESENT", + "IMPERFECT", + "PLUPERFECT" + ], + "description": "The grammatical tense.", + "type": "string", + "enumDescriptions": [ + "Tense is not applicable in the analyzed language or is not predicted.", + "Conditional", + "Future", + "Past", + "Present", + "Imperfect", + "Pluperfect" + ] + }, + "reciprocity": { + "enumDescriptions": [ + "Reciprocity is not applicable in the analyzed language or is not\npredicted.", + "Reciprocal", + "Non-reciprocal" + ], + "enum": [ + "RECIPROCITY_UNKNOWN", + "RECIPROCAL", + "NON_RECIPROCAL" + ], + "description": "The grammatical reciprocity.", + "type": "string" + }, + "form": { + "enum": [ + "FORM_UNKNOWN", + "ADNOMIAL", + "AUXILIARY", + "COMPLEMENTIZER", + "FINAL_ENDING", + "GERUND", + "REALIS", + "IRREALIS", + "SHORT", + "LONG", + "ORDER", + "SPECIFIC" + ], + "description": "The grammatical form.", + "type": "string", + "enumDescriptions": [ + "Form is not applicable in the analyzed language or is not predicted.", + "Adnomial", + "Auxiliary", + "Complementizer", + "Final ending", + "Gerund", + "Realis", + "Irrealis", + "Short form", + "Long form", + "Order form", + "Specific form" + ] + }, + "number": { + "type": "string", + "enumDescriptions": [ + "Number is not applicable in the analyzed language or is not predicted.", + "Singular", + "Plural", + "Dual" + ], + "enum": [ + "NUMBER_UNKNOWN", + "SINGULAR", + "PLURAL", + "DUAL" ], + "description": "The grammatical number." + }, + "voice": { + "enumDescriptions": [ + "Voice is not applicable in the analyzed language or is not predicted.", + "Active", + "Causative", + "Passive" + ], + "enum": [ + "VOICE_UNKNOWN", + "ACTIVE", + "CAUSATIVE", + "PASSIVE" + ], + "description": "The grammatical voice.", + "type": "string" + }, + "aspect": { "description": "The grammatical aspect.", "type": "string", "enumDescriptions": [ @@ -896,10 +714,15 @@ "Perfective", "Imperfective", "Progressive" + ], + "enum": [ + "ASPECT_UNKNOWN", + "PERFECTIVE", + "IMPERFECTIVE", + "PROGRESSIVE" ] }, "mood": { - "type": "string", "enumDescriptions": [ "Mood is not applicable in the analyzed language or is not predicted.", "Conditional", @@ -918,9 +741,11 @@ "JUSSIVE", "SUBJUNCTIVE" ], - "description": "The grammatical mood." + "description": "The grammatical mood.", + "type": "string" }, "tag": { + "type": "string", "enumDescriptions": [ "Unknown", "Adjective", @@ -953,10 +778,15 @@ "X", "AFFIX" ], - "description": "The part of speech tag.", - "type": "string" + "description": "The part of speech tag." }, "gender": { + "enumDescriptions": [ + "Gender is not applicable in the analyzed language or is not predicted.", + "Feminine", + "Masculine", + "Neuter" + ], "enum": [ "GENDER_UNKNOWN", "FEMININE", @@ -964,124 +794,31 @@ "NEUTER" ], "description": "The grammatical gender.", - "type": "string", - "enumDescriptions": [ - "Gender is not applicable in the analyzed language or is not predicted.", - "Feminine", - "Masculine", - "Neuter" - ] + "type": "string" }, "person": { - "enum": [ - "PERSON_UNKNOWN", - "FIRST", - "SECOND", - "THIRD", - "REFLEXIVE_PERSON" - ], - "description": "The grammatical person.", - "type": "string", "enumDescriptions": [ "Person is not applicable in the analyzed language or is not predicted.", "First", "Second", "Third", "Reflexive" - ] - }, - "proper": { - "enumDescriptions": [ - "Proper is not applicable in the analyzed language or is not predicted.", - "Proper", - "Not proper" - ], - "enum": [ - "PROPER_UNKNOWN", - "PROPER", - "NOT_PROPER" - ], - "description": "The grammatical properness.", - "type": "string" - }, - "case": { - "enum": [ - "CASE_UNKNOWN", - "ACCUSATIVE", - "ADVERBIAL", - "COMPLEMENTIVE", - "DATIVE", - "GENITIVE", - "INSTRUMENTAL", - "LOCATIVE", - "NOMINATIVE", - "OBLIQUE", - "PARTITIVE", - "PREPOSITIONAL", - "REFLEXIVE_CASE", - "RELATIVE_CASE", - "VOCATIVE" - ], - "description": "The grammatical case.", - "type": "string", - "enumDescriptions": [ - "Case is not applicable in the analyzed language or is not predicted.", - "Accusative", - "Adverbial", - "Complementive", - "Dative", - "Genitive", - "Instrumental", - "Locative", - "Nominative", - "Oblique", - "Partitive", - "Prepositional", - "Reflexive", - "Relative", - "Vocative" - ] - }, - "tense": { - "enum": [ - "TENSE_UNKNOWN", - "CONDITIONAL_TENSE", - "FUTURE", - "PAST", - "PRESENT", - "IMPERFECT", - "PLUPERFECT" - ], - "description": "The grammatical tense.", - "type": "string", - "enumDescriptions": [ - "Tense is not applicable in the analyzed language or is not predicted.", - "Conditional", - "Future", - "Past", - "Present", - "Imperfect", - "Pluperfect" - ] - }, - "reciprocity": { - "enumDescriptions": [ - "Reciprocity is not applicable in the analyzed language or is not\npredicted.", - "Reciprocal", - "Non-reciprocal" ], "enum": [ - "RECIPROCITY_UNKNOWN", - "RECIPROCAL", - "NON_RECIPROCAL" + "PERSON_UNKNOWN", + "FIRST", + "SECOND", + "THIRD", + "REFLEXIVE_PERSON" ], - "description": "The grammatical reciprocity.", + "description": "The grammatical person.", "type": "string" } }, "id": "PartOfSpeech" }, "AnalyzeSyntaxRequest": { + "type": "object", "properties": { "encodingType": { "enumDescriptions": [ @@ -1100,16 +837,14 @@ "type": "string" }, "document": { - "$ref": "Document", - "description": "Input document." + "description": "Input document.", + "$ref": "Document" } }, "id": "AnalyzeSyntaxRequest", - "description": "The syntax analysis request message.", - "type": "object" + "description": "The syntax analysis request message." }, "AnalyzeEntitiesResponse": { - "type": "object", "properties": { "language": { "description": "The language of the text, which will be the same as the language specified\nin the request or, if not specified, the automatically-detected language.\nSee Document.language field for more details.", @@ -1124,16 +859,25 @@ } }, "id": "AnalyzeEntitiesResponse", - "description": "The entity analysis response message." + "description": "The entity analysis response message.", + "type": "object" }, "Entity": { "type": "object", "properties": { + "mentions": { + "description": "The mentions of this entity in the input document. The API currently\nsupports proper noun mentions.", + "type": "array", + "items": { + "$ref": "EntityMention" + } + }, "name": { "description": "The representative name for the entity.", "type": "string" }, "type": { + "type": "string", "enumDescriptions": [ "Unknown", "Person", @@ -1154,38 +898,32 @@ "CONSUMER_GOOD", "OTHER" ], - "description": "The entity type.", - "type": "string" + "description": "The entity type." }, "metadata": { - "description": "Metadata associated with the entity.\n\nCurrently, Wikipedia URLs and Knowledge Graph MIDs are provided, if\navailable. The associated keys are \"wikipedia_url\" and \"mid\", respectively.", - "type": "object", "additionalProperties": { "type": "string" - } + }, + "description": "Metadata associated with the entity.\n\nCurrently, Wikipedia URLs and Knowledge Graph MIDs are provided, if\navailable. The associated keys are \"wikipedia_url\" and \"mid\", respectively.", + "type": "object" }, "salience": { - "type": "number", "description": "The salience score associated with the entity in the [0, 1.0] range.\n\nThe salience score for an entity provides information about the\nimportance or centrality of that entity to the entire document text.\nScores closer to 0 are less salient, while scores closer to 1.0 are highly\nsalient.", - "format": "float" + "format": "float", + "type": "number" }, "sentiment": { - "$ref": "Sentiment", - "description": "For calls to AnalyzeEntitySentiment or if\nAnnotateTextRequest.Features.extract_entity_sentiment is set to\ntrue, this field will contain the aggregate sentiment expressed for this\nentity in the provided document." - }, - "mentions": { - "description": "The mentions of this entity in the input document. The API currently\nsupports proper noun mentions.", - "type": "array", - "items": { - "$ref": "EntityMention" - } + "description": "For calls to AnalyzeEntitySentiment or if\nAnnotateTextRequest.Features.extract_entity_sentiment is set to\ntrue, this field will contain the aggregate sentiment expressed for this\nentity in the provided document.", + "$ref": "Sentiment" } }, "id": "Entity", "description": "Represents a phrase in the text that is a known entity, such as\na person, an organization, or location. The API associates information, such\nas salience and mentions, with entities." }, "AnnotateTextRequest": { - "properties": { + "description": "The request message for the text annotation API, which can perform multiple\nanalysis types (sentiment, entities, and syntax) in one call.", + "type": "object", + "properties": { "encodingType": { "enumDescriptions": [ "If `EncodingType` is not specified, encoding-dependent information (such as\n`begin_offset`) will be set at `-1`.", @@ -1207,19 +945,24 @@ "$ref": "Document" }, "features": { - "description": "The enabled features.", - "$ref": "Features" + "$ref": "Features", + "description": "The enabled features." } }, - "id": "AnnotateTextRequest", - "description": "The request message for the text annotation API, which can perform multiple\nanalysis types (sentiment, entities, and syntax) in one call.", - "type": "object" + "id": "AnnotateTextRequest" }, "AnalyzeSentimentRequest": { + "id": "AnalyzeSentimentRequest", "description": "The sentiment analysis request message.", "type": "object", "properties": { "encodingType": { + "enumDescriptions": [ + "If `EncodingType` is not specified, encoding-dependent information (such as\n`begin_offset`) will be set at `-1`.", + "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-8 encoding of the input. C++ and Go are examples of languages\nthat use this encoding natively.", + "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-16 encoding of the input. Java and Javascript are examples of\nlanguages that use this encoding natively.", + "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-32 encoding of the input. Python is an example of a language\nthat uses this encoding natively." + ], "enum": [ "NONE", "UTF8", @@ -1227,25 +970,282 @@ "UTF32" ], "description": "The encoding type used by the API to calculate sentence offsets for the\nsentence sentiment.", - "type": "string", - "enumDescriptions": [ - "If `EncodingType` is not specified, encoding-dependent information (such as\n`begin_offset`) will be set at `-1`.", - "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-8 encoding of the input. C++ and Go are examples of languages\nthat use this encoding natively.", - "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-16 encoding of the input. Java and Javascript are examples of\nlanguages that use this encoding natively.", - "Encoding-dependent information (such as `begin_offset`) is calculated based\non the UTF-32 encoding of the input. Python is an example of a language\nthat uses this encoding natively." - ] + "type": "string" }, "document": { - "description": "Input document.", - "$ref": "Document" + "$ref": "Document", + "description": "Input document." + } + } + }, + "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": "AnalyzeSentimentRequest" + "id": "Status" } }, "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" + "protocol": "rest", + "canonicalName": "Cloud Natural Language", + "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-language": { + "description": "Apply machine learning models to reveal the structure and meaning of text" + } + } + } + }, + "rootUrl": "https://language.googleapis.com/", + "ownerDomain": "google.com", + "name": "language", + "batchPath": "batch", + "title": "Cloud Natural Language API", + "ownerName": "Google", + "resources": { + "documents": { + "methods": { + "analyzeSentiment": { + "description": "Analyzes the sentiment of the provided text.", + "request": { + "$ref": "AnalyzeSentimentRequest" + }, + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "AnalyzeSentimentResponse" + }, + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-language", + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta2/documents:analyzeSentiment", + "id": "language.documents.analyzeSentiment", + "path": "v1beta2/documents:analyzeSentiment" + }, + "analyzeEntitySentiment": { + "flatPath": "v1beta2/documents:analyzeEntitySentiment", + "path": "v1beta2/documents:analyzeEntitySentiment", + "id": "language.documents.analyzeEntitySentiment", + "description": "Finds entities, similar to AnalyzeEntities in the text and analyzes\nsentiment associated with each entity and its mentions.", + "request": { + "$ref": "AnalyzeEntitySentimentRequest" + }, + "response": { + "$ref": "AnalyzeEntitySentimentResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-language", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "analyzeEntities": { + "flatPath": "v1beta2/documents:analyzeEntities", + "id": "language.documents.analyzeEntities", + "path": "v1beta2/documents:analyzeEntities", + "description": "Finds named entities (currently proper names and common nouns) in the text\nalong with entity types, salience, mentions for each entity, and\nother properties.", + "request": { + "$ref": "AnalyzeEntitiesRequest" + }, + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "AnalyzeEntitiesResponse" + }, + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-language", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "analyzeSyntax": { + "request": { + "$ref": "AnalyzeSyntaxRequest" + }, + "description": "Analyzes the syntax of the text and provides sentence boundaries and\ntokenization along with part of speech tags, dependency trees, and other\nproperties.", + "response": { + "$ref": "AnalyzeSyntaxResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-language", + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": {}, + "flatPath": "v1beta2/documents:analyzeSyntax", + "path": "v1beta2/documents:analyzeSyntax", + "id": "language.documents.analyzeSyntax" + }, + "annotateText": { + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "AnnotateTextResponse" + }, + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-language", + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta2/documents:annotateText", + "id": "language.documents.annotateText", + "path": "v1beta2/documents:annotateText", + "description": "A convenience method that provides all syntax, sentiment, entity, and\nclassification features in one call.", + "request": { + "$ref": "AnnotateTextRequest" + } + }, + "classifyText": { + "response": { + "$ref": "ClassifyTextResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-language", + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": {}, + "flatPath": "v1beta2/documents:classifyText", + "path": "v1beta2/documents:classifyText", + "id": "language.documents.classifyText", + "request": { + "$ref": "ClassifyTextRequest" + }, + "description": "Classifies a document into categories." + } + } + } + }, + "parameters": { + "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": { + "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": { + "description": "OAuth bearer token.", + "type": "string", + "location": "query" + }, + "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": { + "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" + } + }, + "version": "v1beta2", + "baseUrl": "https://language.googleapis.com/", + "servicePath": "", + "description": "Provides natural language understanding technologies to developers. Examples include sentiment analysis, entity recognition, entity sentiment analysis, and text annotations.", + "kind": "discovery#restDescription", + "basePath": "", + "id": "language:v1beta2", + "documentationLink": "https://cloud.google.com/natural-language/", + "revision": "20180507", + "discoveryVersion": "v1" } diff --git a/DiscoveryJson/logging_v2.json b/DiscoveryJson/logging_v2.json index e78a2c3a84..7e20cf953b 100644 --- a/DiscoveryJson/logging_v2.json +++ b/DiscoveryJson/logging_v2.json @@ -1,2635 +1,857 @@ { - "canonicalName": "Logging", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform.read-only": { - "description": "View your data across Google Cloud Platform services" + "version_module": true, + "schemas": { + "ListLogMetricsResponse": { + "description": "Result returned from ListLogMetrics.", + "type": "object", + "properties": { + "metrics": { + "description": "A list of logs-based metrics.", + "type": "array", + "items": { + "$ref": "LogMetric" + } }, - "https://www.googleapis.com/auth/logging.admin": { - "description": "Administrate log data for your projects" + "nextPageToken": { + "description": "If there might be more results than appear in this response, then nextPageToken is included. To get the next set of results, call this method again using the value of nextPageToken as pageToken.", + "type": "string" + } + }, + "id": "ListLogMetricsResponse" + }, + "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", + "properties": { + "description": { + "description": "A detailed description of the metric, which can be used in documentation.", + "type": "string" }, - "https://www.googleapis.com/auth/logging.read": { - "description": "View log data for your projects" + "displayName": { + "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" }, - "https://www.googleapis.com/auth/logging.write": { - "description": "Submit log data for your projects" + "unit": { + "description": "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)\nbit bit\nBy byte\ns second\nmin minute\nh hour\nd dayPrefixes (PREFIX)\nk kilo (10**3)\nM mega (10**6)\nG giga (10**9)\nT tera (10**12)\nP peta (10**15)\nE exa (10**18)\nZ zetta (10**21)\nY yotta (10**24)\nm milli (10**-3)\nu micro (10**-6)\nn nano (10**-9)\np pico (10**-12)\nf femto (10**-15)\na atto (10**-18)\nz zepto (10**-21)\ny yocto (10**-24)\nKi kibi (2**10)\nMi mebi (2**20)\nGi gibi (2**30)\nTi tebi (2**40)GrammarThe grammar also includes these connectors:\n/ division (as an infix operator, e.g. 1/s).\n. multiplication (as an infix operator, e.g. GBy.d)The grammar for a unit is as follows:\nExpression = Component { \".\" Component } { \"/\" Component } ;\n\nComponent = ( [ PREFIX ] UNIT | \"%\" ) [ Annotation ]\n | Annotation\n | \"1\"\n ;\n\nAnnotation = \"{\" NAME \"}\" ;\nNotes:\nAnnotation 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.\nNAME is a sequence of non-blank printable ASCII characters not containing '{' or '}'.\n1 represents dimensionless value 1, such as in 1/s.\n% represents dimensionless value 1/100, and annotates values giving a percentage.", + "type": "string" }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" + "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" + } + }, + "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 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" + }, + "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", + "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." + ], + "enum": [ + "VALUE_TYPE_UNSPECIFIED", + "BOOL", + "INT64", + "DOUBLE", + "STRING", + "DISTRIBUTION", + "MONEY" + ] + }, + "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." + ], + "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" } - } - } - }, - "rootUrl": "https://logging.googleapis.com/", - "ownerDomain": "google.com", - "name": "logging", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Stackdriver Logging API", - "ownerName": "Google", - "resources": { - "projects": { - "resources": { - "logs": { - "methods": { - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "logName" - ], - "httpMethod": "DELETE", - "parameters": { - "logName": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/logs/[^/]+$", - "location": "path", - "description": "Required. The resource name of the log to delete:\n\"projects/[PROJECT_ID]/logs/[LOG_ID]\"\n\"organizations/[ORGANIZATION_ID]/logs/[LOG_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]\"\n\"folders/[FOLDER_ID]/logs/[LOG_ID]\"\n[LOG_ID] must be URL-encoded. For example, \"projects/my-project-id/logs/syslog\", \"organizations/1234567890/logs/cloudresourcemanager.googleapis.com%2Factivity\". For more information about log names, see LogEntry." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "flatPath": "v2/projects/{projectsId}/logs/{logsId}", - "path": "v2/{+logName}", - "id": "logging.projects.logs.delete", - "description": "Deletes all the log entries in a log. The log reappears if it receives new entries. Log entries written shortly before the delete operation might not be deleted." - }, - "list": { - "response": { - "$ref": "ListLogsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "parameters": { - "pageToken": { - "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", - "format": "int32", - "type": "integer" - }, - "parent": { - "description": "Required. The resource name that owns the logs:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2/projects/{projectsId}/logs", - "path": "v2/{+parent}/logs", - "id": "logging.projects.logs.list", - "description": "Lists the logs in projects, organizations, folders, or billing accounts. Only logs that have entries are listed." - } + }, + "id": "MetricDescriptor" + }, + "LogEntry": { + "description": "An individual entry in a log.", + "type": "object", + "properties": { + "timestamp": { + "description": "Optional. The time the event described by the log entry occurred. This time is used to compute the log entry's age and to enforce the logs retention period. If this field is omitted in a new log entry, then Stackdriver Logging assigns it the current time. Timestamps have nanosecond accuracy, but trailing zeros in the fractional seconds might be omitted when the timestamp is displayed.Incoming log entries should have timestamps that are no more than the logs retention period in the past, and no more than 24 hours in the future. Log entries outside those time boundaries will not be available when calling entries.list, but those log entries can still be exported with LogSinks.", + "format": "google-datetime", + "type": "string" + }, + "receiveTimestamp": { + "description": "Output only. The time the log entry was received by Stackdriver Logging.", + "format": "google-datetime", + "type": "string" + }, + "logName": { + "description": "Required. The resource name of the log to which this log entry belongs:\n\"projects/[PROJECT_ID]/logs/[LOG_ID]\"\n\"organizations/[ORGANIZATION_ID]/logs/[LOG_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]\"\n\"folders/[FOLDER_ID]/logs/[LOG_ID]\"\nA project number may optionally be used in place of PROJECT_ID. The project number is translated to its corresponding PROJECT_ID internally and the log_name field will contain PROJECT_ID in queries and exports.[LOG_ID] must be URL-encoded within log_name. Example: \"organizations/1234567890/logs/cloudresourcemanager.googleapis.com%2Factivity\". [LOG_ID] must be less than 512 characters long and can only include the following characters: upper and lower case alphanumeric characters, forward-slash, underscore, hyphen, and period.For backward compatibility, if log_name begins with a forward-slash, such as /projects/..., then the log entry is ingested as usual but the forward-slash is removed. Listing the log entry will not show the leading slash and filtering for a log name with a leading slash will never return any results.", + "type": "string" + }, + "resource": { + "description": "Required. The primary monitored resource associated with this log entry. Example: a log entry that reports a database error would be associated with the monitored resource designating the particular database that reported the error.", + "$ref": "MonitoredResource" + }, + "httpRequest": { + "description": "Optional. Information about the HTTP request associated with this log entry, if applicable.", + "$ref": "HttpRequest" + }, + "jsonPayload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The log entry payload, represented as a structure that is expressed as a JSON object.", + "type": "object" + }, + "insertId": { + "description": "Optional. A unique identifier for the log entry. If you provide a value, then Stackdriver Logging considers other log entries in the same project, with the same timestamp, and with the same insert_id to be duplicates which can be removed. If omitted in new log entries, then Stackdriver Logging assigns its own unique identifier. The insert_id is also used to order log entries that have the same timestamp value.", + "type": "string" + }, + "operation": { + "$ref": "LogEntryOperation", + "description": "Optional. Information about an operation associated with the log entry, if applicable." + }, + "textPayload": { + "description": "The log entry payload, represented as a Unicode string (UTF-8).", + "type": "string" + }, + "metadata": { + "$ref": "MonitoredResourceMetadata", + "description": "Output only. Additional metadata about the monitored resource. Only k8s_container, k8s_pod, and k8s_node MonitoredResources have this field populated." + }, + "protoPayload": { + "description": "The log entry payload, represented as a protocol buffer. Some Google Cloud Platform services use this field for their log entry payloads.", + "type": "object", + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" } }, - "sinks": { - "methods": { - "update": { - "httpMethod": "PUT", - "parameterOrder": [ - "sinkName" - ], - "response": { - "$ref": "LogSink" - }, - "parameters": { - "sinkName": { - "description": "Required. The full resource name of the sink to update, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/sinks/[^/]+$", - "location": "path" - }, - "uniqueWriterIdentity": { - "location": "query", - "description": "Optional. See sinks.create for a description of this field. When updating a sink, the effect of this field on the value of writer_identity in the updated sink depends on both the old and new values of this field:\nIf the old and new values of this field are both false or both true, then there is no change to the sink's writer_identity.\nIf the old value is false and the new value is true, then writer_identity is changed to a unique service account.\nIt is an error if the old value is true and the new value is set to false or defaulted to false.", - "type": "boolean" - }, - "updateMask": { - "location": "query", - "description": "Optional. Field mask that specifies the fields in sink that need an update. A sink field will be overwritten if, and only if, it is in the update mask. name and output only fields cannot be updated.An empty updateMask is temporarily treated as using the following mask for backwards compatibility purposes: destination,filter,includeChildren At some point in the future, behavior will be removed and specifying an empty updateMask will be an error.For a detailed FieldMask definition, see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmaskExample: updateMask=filter.", - "format": "google-fieldmask", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "flatPath": "v2/projects/{projectsId}/sinks/{sinksId}", - "id": "logging.projects.sinks.update", - "path": "v2/{+sinkName}", - "description": "Updates a sink. This method replaces the following fields in the existing sink with values from the new sink: destination, and filter. The updated sink might also have a new writer_identity; see the unique_writer_identity field.", - "request": { - "$ref": "LogSink" - } - }, - "delete": { - "description": "Deletes a sink. If the sink has a unique writer_identity, then that service account is also deleted.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "sinkName" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "parameters": { - "sinkName": { - "description": "Required. The full resource name of the sink to delete, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/sinks/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2/projects/{projectsId}/sinks/{sinksId}", - "path": "v2/{+sinkName}", - "id": "logging.projects.sinks.delete" - }, - "list": { - "description": "Lists sinks.", - "response": { - "$ref": "ListSinksResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "pageSize": { - "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "parent": { - "description": "Required. The parent resource whose sinks are to be listed:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - }, - "pageToken": { - "location": "query", - "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "flatPath": "v2/projects/{projectsId}/sinks", - "path": "v2/{+parent}/sinks", - "id": "logging.projects.sinks.list" - }, - "create": { - "response": { - "$ref": "LogSink" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "parameters": { - "parent": { - "location": "path", - "description": "Required. The resource in which to create the sink:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\nExamples: \"projects/my-logging-project\", \"organizations/123456789\".", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - }, - "uniqueWriterIdentity": { - "location": "query", - "description": "Optional. Determines the kind of IAM identity returned as writer_identity in the new sink. If this value is omitted or set to false, and if the sink's parent is a project, then the value returned as writer_identity is the same group or service account used by Stackdriver Logging before the addition of writer identities to this API. The sink's destination must be in the same project as the sink itself.If this field is set to true, or if the sink is owned by a non-project resource such as an organization, then the value of writer_identity will be a unique service account used only for exports from the new sink. For more information, see writer_identity in LogSink.", - "type": "boolean" - } - }, - "flatPath": "v2/projects/{projectsId}/sinks", - "path": "v2/{+parent}/sinks", - "id": "logging.projects.sinks.create", - "request": { - "$ref": "LogSink" - }, - "description": "Creates a sink that exports specified log entries to a destination. The export of newly-ingested log entries begins immediately, unless the sink's writer_identity is not permitted to write to the destination. A sink can export log entries only from the resource owning the sink." - }, - "get": { - "httpMethod": "GET", - "parameterOrder": [ - "sinkName" - ], - "response": { - "$ref": "LogSink" - }, - "parameters": { - "sinkName": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/sinks/[^/]+$", - "location": "path", - "description": "Required. The resource name of the sink:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\"." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "flatPath": "v2/projects/{projectsId}/sinks/{sinksId}", - "id": "logging.projects.sinks.get", - "path": "v2/{+sinkName}", - "description": "Gets a sink." - }, - "patch": { - "id": "logging.projects.sinks.patch", - "path": "v2/{+sinkName}", - "description": "Updates a sink. This method replaces the following fields in the existing sink with values from the new sink: destination, and filter. The updated sink might also have a new writer_identity; see the unique_writer_identity field.", - "request": { - "$ref": "LogSink" - }, - "httpMethod": "PATCH", - "parameterOrder": [ - "sinkName" - ], - "response": { - "$ref": "LogSink" - }, - "parameters": { - "sinkName": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/sinks/[^/]+$", - "location": "path", - "description": "Required. The full resource name of the sink to update, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\"." - }, - "uniqueWriterIdentity": { - "location": "query", - "description": "Optional. See sinks.create for a description of this field. When updating a sink, the effect of this field on the value of writer_identity in the updated sink depends on both the old and new values of this field:\nIf the old and new values of this field are both false or both true, then there is no change to the sink's writer_identity.\nIf the old value is false and the new value is true, then writer_identity is changed to a unique service account.\nIt is an error if the old value is true and the new value is set to false or defaulted to false.", - "type": "boolean" - }, - "updateMask": { - "description": "Optional. Field mask that specifies the fields in sink that need an update. A sink field will be overwritten if, and only if, it is in the update mask. name and output only fields cannot be updated.An empty updateMask is temporarily treated as using the following mask for backwards compatibility purposes: destination,filter,includeChildren At some point in the future, behavior will be removed and specifying an empty updateMask will be an error.For a detailed FieldMask definition, see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmaskExample: updateMask=filter.", - "format": "google-fieldmask", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "flatPath": "v2/projects/{projectsId}/sinks/{sinksId}" - } + "labels": { + "description": "Optional. A set of user-defined (key, value) data that provides additional information about the log entry.", + "type": "object", + "additionalProperties": { + "type": "string" } }, - "exclusions": { - "methods": { - "create": { - "response": { - "$ref": "LogExclusion" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "parameters": { - "parent": { - "description": "Required. The parent resource in which to create the exclusion:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\nExamples: \"projects/my-logging-project\", \"organizations/123456789\".", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2/projects/{projectsId}/exclusions", - "path": "v2/{+parent}/exclusions", - "id": "logging.projects.exclusions.create", - "request": { - "$ref": "LogExclusion" - }, - "description": "Creates a new exclusion in a specified parent resource. Only log entries belonging to that resource can be excluded. You can have up to 10 exclusions in a resource." - }, - "delete": { - "flatPath": "v2/projects/{projectsId}/exclusions/{exclusionsId}", - "path": "v2/{+name}", - "id": "logging.projects.exclusions.delete", - "description": "Deletes an exclusion.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "description": "Required. The resource name of an existing exclusion to delete:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/exclusions/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ] - }, - "list": { - "response": { - "$ref": "ListExclusionsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "parameters": { - "pageToken": { - "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "parent": { - "description": "Required. The parent resource whose exclusions are to be listed.\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2/projects/{projectsId}/exclusions", - "path": "v2/{+parent}/exclusions", - "id": "logging.projects.exclusions.list", - "description": "Lists all the exclusions in a parent resource." - }, - "get": { - "response": { - "$ref": "LogExclusion" - }, - "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/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "parameters": { - "name": { - "description": "Required. The resource name of an existing exclusion:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/exclusions/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2/projects/{projectsId}/exclusions/{exclusionsId}", - "path": "v2/{+name}", - "id": "logging.projects.exclusions.get", - "description": "Gets the description of an exclusion." - }, - "patch": { - "path": "v2/{+name}", - "id": "logging.projects.exclusions.patch", - "description": "Changes one or more properties of an existing exclusion.", - "request": { - "$ref": "LogExclusion" - }, - "response": { - "$ref": "LogExclusion" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "parameters": { - "updateMask": { - "location": "query", - "description": "Required. A nonempty list of fields to change in the existing exclusion. New values for the fields are taken from the corresponding fields in the LogExclusion included in this request. Fields not mentioned in update_mask are not changed and are ignored in the request.For example, to change the filter and description of an exclusion, specify an update_mask of \"filter,description\".", - "format": "google-fieldmask", - "type": "string" - }, - "name": { - "description": "Required. The resource name of the exclusion to update:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/exclusions/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "flatPath": "v2/projects/{projectsId}/exclusions/{exclusionsId}" - } + "trace": { + "description": "Optional. Resource name of the trace associated with the log entry, if any. If it contains a relative resource name, the name is assumed to be relative to //tracing.googleapis.com. Example: projects/my-projectid/traces/06796866738c859f2f19b7cfb3214824", + "type": "string" + }, + "severity": { + "description": "Optional. The severity of the log entry. The default value is LogSeverity.DEFAULT.", + "type": "string", + "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 a 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" + ] + }, + "sourceLocation": { + "$ref": "LogEntrySourceLocation", + "description": "Optional. Source code location information associated with the log entry, if any." + }, + "spanId": { + "description": "Optional. The span ID within the trace associated with the log entry. For Stackdriver Trace spans, this is the same format that the Stackdriver Trace API v2 uses: a 16-character hexadecimal encoding of an 8-byte array, such as \u003ccode\u003e\"000000000000004a\"\u003c/code\u003e.", + "type": "string" + } + }, + "id": "LogEntry" + }, + "RequestLog": { + "description": "Complete log information about a single HTTP request to an App Engine application.", + "type": "object", + "properties": { + "urlMapEntry": { + "description": "File or class that handled the request.", + "type": "string" + }, + "instanceIndex": { + "description": "If the instance processing this request belongs to a manually scaled module, then this is the 0-based index of the instance. Otherwise, this value is -1.", + "format": "int32", + "type": "integer" + }, + "finished": { + "description": "Whether this request is finished or active.", + "type": "boolean" + }, + "host": { + "description": "Internet host and port number of the resource being requested.", + "type": "string" + }, + "httpVersion": { + "description": "HTTP version of request. Example: \"HTTP/1.1\".", + "type": "string" + }, + "startTime": { + "description": "Time when the request started.", + "format": "google-datetime", + "type": "string" + }, + "latency": { + "description": "Latency of the request.", + "format": "google-duration", + "type": "string" + }, + "ip": { + "description": "Origin IP address.", + "type": "string" + }, + "appId": { + "description": "Application that handled this request.", + "type": "string" + }, + "appEngineRelease": { + "description": "App Engine release version.", + "type": "string" + }, + "method": { + "description": "Request method. Example: \"GET\", \"HEAD\", \"PUT\", \"POST\", \"DELETE\".", + "type": "string" + }, + "cost": { + "description": "An indication of the relative cost of serving this request.", + "format": "double", + "type": "number" + }, + "instanceId": { + "description": "An identifier for the instance that handled the request.", + "type": "string" + }, + "megaCycles": { + "description": "Number of CPU megacycles used to process request.", + "format": "int64", + "type": "string" + }, + "first": { + "description": "Whether this is the first RequestLog entry for this request. If an active request has several RequestLog entries written to Stackdriver Logging, then this field will be set for one of them.", + "type": "boolean" + }, + "versionId": { + "description": "Version of the application that handled this request.", + "type": "string" + }, + "moduleId": { + "description": "Module of the application that handled this request.", + "type": "string" + }, + "endTime": { + "description": "Time when the request finished.", + "format": "google-datetime", + "type": "string" + }, + "userAgent": { + "description": "User agent that made the request.", + "type": "string" + }, + "wasLoadingRequest": { + "description": "Whether this was a loading request for the instance.", + "type": "boolean" + }, + "sourceReference": { + "description": "Source code for the application that handled this request. There can be more than one source reference per deployed application if source code is distributed among multiple repositories.", + "type": "array", + "items": { + "$ref": "SourceReference" } }, - "metrics": { - "methods": { - "delete": { - "id": "logging.projects.metrics.delete", - "path": "v2/{+metricName}", - "description": "Deletes a logs-based metric.", - "httpMethod": "DELETE", - "parameterOrder": [ - "metricName" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "metricName": { - "description": "The resource name of the metric to delete:\n\"projects/[PROJECT_ID]/metrics/[METRIC_ID]\"\n", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/metrics/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.write" - ], - "flatPath": "v2/projects/{projectsId}/metrics/{metricsId}" - }, - "list": { - "description": "Lists logs-based metrics.", - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListLogMetricsResponse" - }, - "parameters": { - "pageSize": { - "location": "query", - "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", - "format": "int32", - "type": "integer" - }, - "parent": { - "description": "Required. The name of the project containing the metrics:\n\"projects/[PROJECT_ID]\"\n", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - }, - "pageToken": { - "location": "query", - "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "flatPath": "v2/projects/{projectsId}/metrics", - "id": "logging.projects.metrics.list", - "path": "v2/{+parent}/metrics" - }, - "get": { - "response": { - "$ref": "LogMetric" - }, - "parameterOrder": [ - "metricName" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "parameters": { - "metricName": { - "description": "The resource name of the desired metric:\n\"projects/[PROJECT_ID]/metrics/[METRIC_ID]\"\n", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/metrics/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2/projects/{projectsId}/metrics/{metricsId}", - "path": "v2/{+metricName}", - "id": "logging.projects.metrics.get", - "description": "Gets a logs-based metric." - }, - "update": { - "response": { - "$ref": "LogMetric" - }, - "parameterOrder": [ - "metricName" - ], - "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.write" - ], - "parameters": { - "metricName": { - "location": "path", - "description": "The resource name of the metric to update:\n\"projects/[PROJECT_ID]/metrics/[METRIC_ID]\"\nThe updated metric must be provided in the request and it's name field must be the same as [METRIC_ID] If the metric does not exist in [PROJECT_ID], then a new metric is created.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/metrics/[^/]+$" - } - }, - "flatPath": "v2/projects/{projectsId}/metrics/{metricsId}", - "path": "v2/{+metricName}", - "id": "logging.projects.metrics.update", - "request": { - "$ref": "LogMetric" - }, - "description": "Creates or updates a logs-based metric." - }, - "create": { - "description": "Creates a logs-based metric.", - "request": { - "$ref": "LogMetric" - }, - "response": { - "$ref": "LogMetric" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "description": "The resource name of the project in which to create the metric:\n\"projects/[PROJECT_ID]\"\nThe new metric must be provided in the request.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.write" - ], - "flatPath": "v2/projects/{projectsId}/metrics", - "path": "v2/{+parent}/metrics", - "id": "logging.projects.metrics.create" - } + "responseSize": { + "description": "Size in bytes sent back to client by request.", + "format": "int64", + "type": "string" + }, + "traceId": { + "description": "Stackdriver Trace identifier for this request.", + "type": "string" + }, + "line": { + "description": "A list of log lines emitted by the application while serving this request.", + "type": "array", + "items": { + "$ref": "LogLine" } + }, + "referrer": { + "description": "Referrer URL of request.", + "type": "string" + }, + "taskQueueName": { + "description": "Queue name of the request, in the case of an offline request.", + "type": "string" + }, + "requestId": { + "description": "Globally unique identifier for a request, which is based on the request start time. Request IDs for requests which started later will compare greater as strings than those for requests which started earlier.", + "type": "string" + }, + "nickname": { + "description": "The logged-in user who made the request.Most likely, this is the part of the user's email before the @ sign. The field value is the same for different requests from the same user, but different users can have similar names. This information is also available to the application via the App Engine Users API.This field will be populated starting with App Engine 1.9.21.", + "type": "string" + }, + "pendingTime": { + "description": "Time this request spent in the pending request queue.", + "format": "google-duration", + "type": "string" + }, + "resource": { + "description": "Contains the path and query portion of the URL that was requested. For example, if the URL was \"http://example.com/app?name=val\", the resource would be \"/app?name=val\". The fragment identifier, which is identified by the # character, is not included.", + "type": "string" + }, + "status": { + "description": "HTTP response status code. Example: 200, 404.", + "format": "int32", + "type": "integer" + }, + "taskName": { + "description": "Task name of the request, in the case of an offline request.", + "type": "string" } - } + }, + "id": "RequestLog" }, - "billingAccounts": { - "resources": { - "logs": { - "methods": { - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "logName" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "parameters": { - "logName": { - "location": "path", - "description": "Required. The resource name of the log to delete:\n\"projects/[PROJECT_ID]/logs/[LOG_ID]\"\n\"organizations/[ORGANIZATION_ID]/logs/[LOG_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]\"\n\"folders/[FOLDER_ID]/logs/[LOG_ID]\"\n[LOG_ID] must be URL-encoded. For example, \"projects/my-project-id/logs/syslog\", \"organizations/1234567890/logs/cloudresourcemanager.googleapis.com%2Factivity\". For more information about log names, see LogEntry.", - "required": true, - "type": "string", - "pattern": "^billingAccounts/[^/]+/logs/[^/]+$" - } - }, - "flatPath": "v2/billingAccounts/{billingAccountsId}/logs/{logsId}", - "path": "v2/{+logName}", - "id": "logging.billingAccounts.logs.delete", - "description": "Deletes all the log entries in a log. The log reappears if it receives new entries. Log entries written shortly before the delete operation might not be deleted." - }, - "list": { - "response": { - "$ref": "ListLogsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "pageToken": { - "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "parent": { - "required": true, - "type": "string", - "pattern": "^billingAccounts/[^/]+$", - "location": "path", - "description": "Required. The resource name that owns the logs:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "flatPath": "v2/billingAccounts/{billingAccountsId}/logs", - "path": "v2/{+parent}/logs", - "id": "logging.billingAccounts.logs.list", - "description": "Lists the logs in projects, organizations, folders, or billing accounts. Only logs that have entries are listed." - } + "LogExclusion": { + "description": "Specifies a set of log entries that are not to be stored in Stackdriver Logging. If your project receives a large volume of logs, you might be able to use exclusions to reduce your chargeable logs. Exclusions are processed after log sinks, so you can export log entries before they are excluded. Audit log entries and log entries from Amazon Web Services are never excluded.", + "type": "object", + "properties": { + "filter": { + "description": "Required. An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. For example, the following filter matches 99% of low-severity log entries from load balancers:\n\"resource.type=http_load_balancer severity\u003cERROR sample(insertId, 0.99)\"\n", + "type": "string" + }, + "disabled": { + "description": "Optional. If set to True, then this exclusion is disabled and it does not exclude any log entries. You can use exclusions.patch to change the value of this field.", + "type": "boolean" + }, + "name": { + "description": "Required. A client-assigned identifier, such as \"load-balancer-exclusion\". Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods.", + "type": "string" + }, + "description": { + "description": "Optional. A description of this exclusion.", + "type": "string" + } + }, + "id": "LogExclusion" + }, + "ListMonitoredResourceDescriptorsResponse": { + "description": "Result returned from ListMonitoredResourceDescriptors.", + "type": "object", + "properties": { + "resourceDescriptors": { + "description": "A list of resource descriptors.", + "type": "array", + "items": { + "$ref": "MonitoredResourceDescriptor" } }, - "sinks": { - "methods": { - "delete": { - "httpMethod": "DELETE", - "parameterOrder": [ - "sinkName" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "sinkName": { - "pattern": "^billingAccounts/[^/]+/sinks/[^/]+$", - "location": "path", - "description": "Required. The full resource name of the sink to delete, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "flatPath": "v2/billingAccounts/{billingAccountsId}/sinks/{sinksId}", - "id": "logging.billingAccounts.sinks.delete", - "path": "v2/{+sinkName}", - "description": "Deletes a sink. If the sink has a unique writer_identity, then that service account is also deleted." - }, - "list": { - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "parameters": { - "parent": { - "pattern": "^billingAccounts/[^/]+$", - "location": "path", - "description": "Required. The parent resource whose sinks are to be listed:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", - "required": true, - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", - "format": "int32", - "type": "integer" - } - }, - "flatPath": "v2/billingAccounts/{billingAccountsId}/sinks", - "path": "v2/{+parent}/sinks", - "id": "logging.billingAccounts.sinks.list", - "description": "Lists sinks.", - "response": { - "$ref": "ListSinksResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET" - }, - "create": { - "path": "v2/{+parent}/sinks", - "id": "logging.billingAccounts.sinks.create", - "request": { - "$ref": "LogSink" - }, - "description": "Creates a sink that exports specified log entries to a destination. The export of newly-ingested log entries begins immediately, unless the sink's writer_identity is not permitted to write to the destination. A sink can export log entries only from the resource owning the sink.", - "response": { - "$ref": "LogSink" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "parameters": { - "parent": { - "description": "Required. The resource in which to create the sink:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\nExamples: \"projects/my-logging-project\", \"organizations/123456789\".", - "required": true, - "type": "string", - "pattern": "^billingAccounts/[^/]+$", - "location": "path" - }, - "uniqueWriterIdentity": { - "description": "Optional. Determines the kind of IAM identity returned as writer_identity in the new sink. If this value is omitted or set to false, and if the sink's parent is a project, then the value returned as writer_identity is the same group or service account used by Stackdriver Logging before the addition of writer identities to this API. The sink's destination must be in the same project as the sink itself.If this field is set to true, or if the sink is owned by a non-project resource such as an organization, then the value of writer_identity will be a unique service account used only for exports from the new sink. For more information, see writer_identity in LogSink.", - "type": "boolean", - "location": "query" - } - }, - "flatPath": "v2/billingAccounts/{billingAccountsId}/sinks" - }, - "get": { - "description": "Gets a sink.", - "response": { - "$ref": "LogSink" - }, - "parameterOrder": [ - "sinkName" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "parameters": { - "sinkName": { - "location": "path", - "description": "Required. The resource name of the sink:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", - "required": true, - "type": "string", - "pattern": "^billingAccounts/[^/]+/sinks/[^/]+$" - } - }, - "flatPath": "v2/billingAccounts/{billingAccountsId}/sinks/{sinksId}", - "path": "v2/{+sinkName}", - "id": "logging.billingAccounts.sinks.get" - }, - "patch": { - "response": { - "$ref": "LogSink" - }, - "parameterOrder": [ - "sinkName" - ], - "httpMethod": "PATCH", - "parameters": { - "sinkName": { - "pattern": "^billingAccounts/[^/]+/sinks/[^/]+$", - "location": "path", - "description": "Required. The full resource name of the sink to update, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", - "required": true, - "type": "string" - }, - "uniqueWriterIdentity": { - "location": "query", - "description": "Optional. See sinks.create for a description of this field. When updating a sink, the effect of this field on the value of writer_identity in the updated sink depends on both the old and new values of this field:\nIf the old and new values of this field are both false or both true, then there is no change to the sink's writer_identity.\nIf the old value is false and the new value is true, then writer_identity is changed to a unique service account.\nIt is an error if the old value is true and the new value is set to false or defaulted to false.", - "type": "boolean" - }, - "updateMask": { - "location": "query", - "description": "Optional. Field mask that specifies the fields in sink that need an update. A sink field will be overwritten if, and only if, it is in the update mask. name and output only fields cannot be updated.An empty updateMask is temporarily treated as using the following mask for backwards compatibility purposes: destination,filter,includeChildren At some point in the future, behavior will be removed and specifying an empty updateMask will be an error.For a detailed FieldMask definition, see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmaskExample: updateMask=filter.", - "format": "google-fieldmask", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "flatPath": "v2/billingAccounts/{billingAccountsId}/sinks/{sinksId}", - "path": "v2/{+sinkName}", - "id": "logging.billingAccounts.sinks.patch", - "description": "Updates a sink. This method replaces the following fields in the existing sink with values from the new sink: destination, and filter. The updated sink might also have a new writer_identity; see the unique_writer_identity field.", - "request": { - "$ref": "LogSink" - } - }, - "update": { - "response": { - "$ref": "LogSink" - }, - "parameterOrder": [ - "sinkName" - ], - "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "parameters": { - "sinkName": { - "description": "Required. The full resource name of the sink to update, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", - "required": true, - "type": "string", - "pattern": "^billingAccounts/[^/]+/sinks/[^/]+$", - "location": "path" - }, - "uniqueWriterIdentity": { - "description": "Optional. See sinks.create for a description of this field. When updating a sink, the effect of this field on the value of writer_identity in the updated sink depends on both the old and new values of this field:\nIf the old and new values of this field are both false or both true, then there is no change to the sink's writer_identity.\nIf the old value is false and the new value is true, then writer_identity is changed to a unique service account.\nIt is an error if the old value is true and the new value is set to false or defaulted to false.", - "type": "boolean", - "location": "query" - }, - "updateMask": { - "location": "query", - "description": "Optional. Field mask that specifies the fields in sink that need an update. A sink field will be overwritten if, and only if, it is in the update mask. name and output only fields cannot be updated.An empty updateMask is temporarily treated as using the following mask for backwards compatibility purposes: destination,filter,includeChildren At some point in the future, behavior will be removed and specifying an empty updateMask will be an error.For a detailed FieldMask definition, see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmaskExample: updateMask=filter.", - "format": "google-fieldmask", - "type": "string" - } - }, - "flatPath": "v2/billingAccounts/{billingAccountsId}/sinks/{sinksId}", - "path": "v2/{+sinkName}", - "id": "logging.billingAccounts.sinks.update", - "request": { - "$ref": "LogSink" - }, - "description": "Updates a sink. This method replaces the following fields in the existing sink with values from the new sink: destination, and filter. The updated sink might also have a new writer_identity; see the unique_writer_identity field." - } + "nextPageToken": { + "description": "If there might be more results than those appearing in this response, then nextPageToken is included. To get the next set of results, call this method again using the value of nextPageToken as pageToken.", + "type": "string" + } + }, + "id": "ListMonitoredResourceDescriptorsResponse" + }, + "ListExclusionsResponse": { + "description": "Result returned from ListExclusions.", + "type": "object", + "properties": { + "exclusions": { + "description": "A list of exclusions.", + "type": "array", + "items": { + "$ref": "LogExclusion" } }, - "exclusions": { - "methods": { - "create": { - "request": { - "$ref": "LogExclusion" - }, - "description": "Creates a new exclusion in a specified parent resource. Only log entries belonging to that resource can be excluded. You can have up to 10 exclusions in a resource.", - "response": { - "$ref": "LogExclusion" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "parameters": { - "parent": { - "pattern": "^billingAccounts/[^/]+$", - "location": "path", - "description": "Required. The parent resource in which to create the exclusion:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\nExamples: \"projects/my-logging-project\", \"organizations/123456789\".", - "required": true, - "type": "string" - } - }, - "flatPath": "v2/billingAccounts/{billingAccountsId}/exclusions", - "path": "v2/{+parent}/exclusions", - "id": "logging.billingAccounts.exclusions.create" - }, - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "description": "Required. The resource name of an existing exclusion to delete:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", - "required": true, - "type": "string", - "pattern": "^billingAccounts/[^/]+/exclusions/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "flatPath": "v2/billingAccounts/{billingAccountsId}/exclusions/{exclusionsId}", - "path": "v2/{+name}", - "id": "logging.billingAccounts.exclusions.delete", - "description": "Deletes an exclusion." - }, - "list": { - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListExclusionsResponse" - }, - "parameters": { - "pageToken": { - "location": "query", - "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", - "type": "string" - }, - "pageSize": { - "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "parent": { - "pattern": "^billingAccounts/[^/]+$", - "location": "path", - "description": "Required. The parent resource whose exclusions are to be listed.\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", - "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/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "flatPath": "v2/billingAccounts/{billingAccountsId}/exclusions", - "id": "logging.billingAccounts.exclusions.list", - "path": "v2/{+parent}/exclusions", - "description": "Lists all the exclusions in a parent resource." - }, - "get": { - "response": { - "$ref": "LogExclusion" - }, - "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/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^billingAccounts/[^/]+/exclusions/[^/]+$", - "location": "path", - "description": "Required. The resource name of an existing exclusion:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\"." - } - }, - "flatPath": "v2/billingAccounts/{billingAccountsId}/exclusions/{exclusionsId}", - "path": "v2/{+name}", - "id": "logging.billingAccounts.exclusions.get", - "description": "Gets the description of an exclusion." - }, - "patch": { - "path": "v2/{+name}", - "id": "logging.billingAccounts.exclusions.patch", - "description": "Changes one or more properties of an existing exclusion.", - "request": { - "$ref": "LogExclusion" - }, - "response": { - "$ref": "LogExclusion" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "parameters": { - "updateMask": { - "location": "query", - "description": "Required. A nonempty list of fields to change in the existing exclusion. New values for the fields are taken from the corresponding fields in the LogExclusion included in this request. Fields not mentioned in update_mask are not changed and are ignored in the request.For example, to change the filter and description of an exclusion, specify an update_mask of \"filter,description\".", - "format": "google-fieldmask", - "type": "string" - }, - "name": { - "description": "Required. The resource name of the exclusion to update:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", - "required": true, - "type": "string", - "pattern": "^billingAccounts/[^/]+/exclusions/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "flatPath": "v2/billingAccounts/{billingAccountsId}/exclusions/{exclusionsId}" - } - } + "nextPageToken": { + "description": "If there might be more results than appear in this response, then nextPageToken is included. To get the next set of results, call the same method again using the value of nextPageToken as pageToken.", + "type": "string" } - } + }, + "id": "ListExclusionsResponse" }, - "folders": { - "resources": { - "logs": { - "methods": { - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "logName" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "parameters": { - "logName": { - "pattern": "^folders/[^/]+/logs/[^/]+$", - "location": "path", - "description": "Required. The resource name of the log to delete:\n\"projects/[PROJECT_ID]/logs/[LOG_ID]\"\n\"organizations/[ORGANIZATION_ID]/logs/[LOG_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]\"\n\"folders/[FOLDER_ID]/logs/[LOG_ID]\"\n[LOG_ID] must be URL-encoded. For example, \"projects/my-project-id/logs/syslog\", \"organizations/1234567890/logs/cloudresourcemanager.googleapis.com%2Factivity\". For more information about log names, see LogEntry.", - "required": true, - "type": "string" - } - }, - "flatPath": "v2/folders/{foldersId}/logs/{logsId}", - "path": "v2/{+logName}", - "id": "logging.folders.logs.delete", - "description": "Deletes all the log entries in a log. The log reappears if it receives new entries. Log entries written shortly before the delete operation might not be deleted." - }, - "list": { - "response": { - "$ref": "ListLogsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "parameters": { - "pageToken": { - "location": "query", - "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", - "format": "int32", - "type": "integer" - }, - "parent": { - "description": "Required. The resource name that owns the logs:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", - "required": true, - "type": "string", - "pattern": "^folders/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2/folders/{foldersId}/logs", - "path": "v2/{+parent}/logs", - "id": "logging.folders.logs.list", - "description": "Lists the logs in projects, organizations, folders, or billing accounts. Only logs that have entries are listed." - } + "LogEntryOperation": { + "description": "Additional information about a potentially long-running operation with which a log entry is associated.", + "type": "object", + "properties": { + "producer": { + "description": "Optional. An arbitrary producer identifier. The combination of id and producer must be globally unique. Examples for producer: \"MyDivision.MyBigCompany.com\", \"github.com/MyProject/MyApplication\".", + "type": "string" + }, + "first": { + "description": "Optional. Set this to True if this is the first log entry in the operation.", + "type": "boolean" + }, + "last": { + "description": "Optional. Set this to True if this is the last log entry in the operation.", + "type": "boolean" + }, + "id": { + "description": "Optional. An arbitrary operation identifier. Log entries with the same identifier are assumed to be part of the same operation.", + "type": "string" + } + }, + "id": "LogEntryOperation" + }, + "LogMetric": { + "description": "Describes a logs-based metric. The value of the metric is the number of log entries that match a logs filter in a given time interval.Logs-based metric can also be used to extract values from logs and create a a distribution of the values. The distribution records the statistics of the extracted values along with an optional histogram of the values as specified by the bucket options.", + "type": "object", + "properties": { + "name": { + "description": "Required. The client-assigned metric identifier. Examples: \"error_count\", \"nginx/requests\".Metric identifiers are limited to 100 characters and can include only the following characters: A-Z, a-z, 0-9, and the special characters _-.,+!*',()%/. The forward-slash character (/) denotes a hierarchy of name pieces, and it cannot be the first character of the name.The metric identifier in this field must not be URL-encoded (https://en.wikipedia.org/wiki/Percent-encoding). However, when the metric identifier appears as the [METRIC_ID] part of a metric_name API parameter, then the metric identifier must be URL-encoded. Example: \"projects/my-project/metrics/nginx%2Frequests\".", + "type": "string" + }, + "labelExtractors": { + "description": "Optional. A map from a label key string to an extractor expression which is used to extract data from a log entry field and assign as the label value. Each label key specified in the LabelDescriptor must have an associated extractor expression in this map. The syntax of the extractor expression is the same as for the value_extractor field.The extracted value is converted to the type defined in the label descriptor. If the either the extraction or the type conversion fails, the label will have a default value. The default value for a string label is an empty string, for an integer label its 0, and for a boolean label its false.Note that there are upper bounds on the maximum number of labels and the number of active time series that are allowed in a project.", + "type": "object", + "additionalProperties": { + "type": "string" } }, - "sinks": { - "methods": { - "get": { - "path": "v2/{+sinkName}", - "id": "logging.folders.sinks.get", - "description": "Gets a sink.", - "response": { - "$ref": "LogSink" - }, - "parameterOrder": [ - "sinkName" - ], - "httpMethod": "GET", - "parameters": { - "sinkName": { - "required": true, - "type": "string", - "pattern": "^folders/[^/]+/sinks/[^/]+$", - "location": "path", - "description": "Required. The resource name of the sink:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\"." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "flatPath": "v2/folders/{foldersId}/sinks/{sinksId}" - }, - "patch": { - "response": { - "$ref": "LogSink" - }, - "parameterOrder": [ - "sinkName" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "parameters": { - "sinkName": { - "required": true, - "type": "string", - "pattern": "^folders/[^/]+/sinks/[^/]+$", - "location": "path", - "description": "Required. The full resource name of the sink to update, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\"." - }, - "uniqueWriterIdentity": { - "location": "query", - "description": "Optional. See sinks.create for a description of this field. When updating a sink, the effect of this field on the value of writer_identity in the updated sink depends on both the old and new values of this field:\nIf the old and new values of this field are both false or both true, then there is no change to the sink's writer_identity.\nIf the old value is false and the new value is true, then writer_identity is changed to a unique service account.\nIt is an error if the old value is true and the new value is set to false or defaulted to false.", - "type": "boolean" - }, - "updateMask": { - "location": "query", - "description": "Optional. Field mask that specifies the fields in sink that need an update. A sink field will be overwritten if, and only if, it is in the update mask. name and output only fields cannot be updated.An empty updateMask is temporarily treated as using the following mask for backwards compatibility purposes: destination,filter,includeChildren At some point in the future, behavior will be removed and specifying an empty updateMask will be an error.For a detailed FieldMask definition, see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmaskExample: updateMask=filter.", - "format": "google-fieldmask", - "type": "string" - } - }, - "flatPath": "v2/folders/{foldersId}/sinks/{sinksId}", - "path": "v2/{+sinkName}", - "id": "logging.folders.sinks.patch", - "request": { - "$ref": "LogSink" - }, - "description": "Updates a sink. This method replaces the following fields in the existing sink with values from the new sink: destination, and filter. The updated sink might also have a new writer_identity; see the unique_writer_identity field." - }, - "update": { - "flatPath": "v2/folders/{foldersId}/sinks/{sinksId}", - "path": "v2/{+sinkName}", - "id": "logging.folders.sinks.update", - "request": { - "$ref": "LogSink" - }, - "description": "Updates a sink. This method replaces the following fields in the existing sink with values from the new sink: destination, and filter. The updated sink might also have a new writer_identity; see the unique_writer_identity field.", - "response": { - "$ref": "LogSink" - }, - "parameterOrder": [ - "sinkName" - ], - "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "parameters": { - "sinkName": { - "description": "Required. The full resource name of the sink to update, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", - "required": true, - "type": "string", - "pattern": "^folders/[^/]+/sinks/[^/]+$", - "location": "path" - }, - "uniqueWriterIdentity": { - "description": "Optional. See sinks.create for a description of this field. When updating a sink, the effect of this field on the value of writer_identity in the updated sink depends on both the old and new values of this field:\nIf the old and new values of this field are both false or both true, then there is no change to the sink's writer_identity.\nIf the old value is false and the new value is true, then writer_identity is changed to a unique service account.\nIt is an error if the old value is true and the new value is set to false or defaulted to false.", - "type": "boolean", - "location": "query" - }, - "updateMask": { - "description": "Optional. Field mask that specifies the fields in sink that need an update. A sink field will be overwritten if, and only if, it is in the update mask. name and output only fields cannot be updated.An empty updateMask is temporarily treated as using the following mask for backwards compatibility purposes: destination,filter,includeChildren At some point in the future, behavior will be removed and specifying an empty updateMask will be an error.For a detailed FieldMask definition, see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmaskExample: updateMask=filter.", - "format": "google-fieldmask", - "type": "string", - "location": "query" - } - } - }, - "delete": { - "description": "Deletes a sink. If the sink has a unique writer_identity, then that service account is also deleted.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "sinkName" - ], - "httpMethod": "DELETE", - "parameters": { - "sinkName": { - "required": true, - "type": "string", - "pattern": "^folders/[^/]+/sinks/[^/]+$", - "location": "path", - "description": "Required. The full resource name of the sink to delete, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\"." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "flatPath": "v2/folders/{foldersId}/sinks/{sinksId}", - "path": "v2/{+sinkName}", - "id": "logging.folders.sinks.delete" - }, - "list": { - "response": { - "$ref": "ListSinksResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "pageSize": { - "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "parent": { - "description": "Required. The parent resource whose sinks are to be listed:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", - "required": true, - "type": "string", - "pattern": "^folders/[^/]+$", - "location": "path" - }, - "pageToken": { - "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "flatPath": "v2/folders/{foldersId}/sinks", - "path": "v2/{+parent}/sinks", - "id": "logging.folders.sinks.list", - "description": "Lists sinks." - }, - "create": { - "description": "Creates a sink that exports specified log entries to a destination. The export of newly-ingested log entries begins immediately, unless the sink's writer_identity is not permitted to write to the destination. A sink can export log entries only from the resource owning the sink.", - "request": { - "$ref": "LogSink" - }, - "response": { - "$ref": "LogSink" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "pattern": "^folders/[^/]+$", - "location": "path", - "description": "Required. The resource in which to create the sink:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\nExamples: \"projects/my-logging-project\", \"organizations/123456789\".", - "required": true, - "type": "string" - }, - "uniqueWriterIdentity": { - "type": "boolean", - "location": "query", - "description": "Optional. Determines the kind of IAM identity returned as writer_identity in the new sink. If this value is omitted or set to false, and if the sink's parent is a project, then the value returned as writer_identity is the same group or service account used by Stackdriver Logging before the addition of writer identities to this API. The sink's destination must be in the same project as the sink itself.If this field is set to true, or if the sink is owned by a non-project resource such as an organization, then the value of writer_identity will be a unique service account used only for exports from the new sink. For more information, see writer_identity in LogSink." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "flatPath": "v2/folders/{foldersId}/sinks", - "path": "v2/{+parent}/sinks", - "id": "logging.folders.sinks.create" - } + "metricDescriptor": { + "description": "Optional. The metric descriptor associated with the logs-based metric. If unspecified, it uses a default metric descriptor with a DELTA metric kind, INT64 value type, with no labels and a unit of \"1\". Such a metric counts the number of log entries matching the filter expression.The name, type, and description fields in the metric_descriptor are output only, and is constructed using the name and description field in the LogMetric.To create a logs-based metric that records a distribution of log values, a DELTA metric kind with a DISTRIBUTION value type must be used along with a value_extractor expression in the LogMetric.Each label in the metric descriptor must have a matching label name as the key and an extractor expression as the value in the label_extractors map.The metric_kind and value_type fields in the metric_descriptor cannot be updated once initially configured. New labels can be added in the metric_descriptor, but existing labels cannot be modified except for their description.", + "$ref": "MetricDescriptor" + }, + "version": { + "enumDescriptions": [ + "Stackdriver Logging API v2.", + "Stackdriver Logging API v1." + ], + "enum": [ + "V2", + "V1" + ], + "description": "Deprecated. The API version that created or updated this metric. The v2 format is used by default and cannot be changed.", + "type": "string" + }, + "filter": { + "description": "Required. An advanced logs filter which is used to match log entries. Example:\n\"resource.type=gae_app AND severity\u003e=ERROR\"\nThe maximum length of the filter is 20000 characters.", + "type": "string" + }, + "description": { + "description": "Optional. A description of this metric, which is used in documentation.", + "type": "string" + }, + "bucketOptions": { + "description": "Optional. The bucket_options are required when the logs-based metric is using a DISTRIBUTION value type and it describes the bucket boundaries used to create a histogram of the extracted values.", + "$ref": "BucketOptions" + }, + "valueExtractor": { + "description": "Optional. A value_extractor is required when using a distribution logs-based metric to extract the values to record from a log entry. Two functions are supported for value extraction: EXTRACT(field) or REGEXP_EXTRACT(field, regex). The argument are: 1. field: The name of the log entry field from which the value is to be extracted. 2. regex: A regular expression using the Google RE2 syntax (https://github.com/google/re2/wiki/Syntax) with a single capture group to extract data from the specified log entry field. The value of the field is converted to a string before applying the regex. It is an error to specify a regex that does not include exactly one capture group.The result of the extraction must be convertible to a double type, as the distribution always records double values. If either the extraction or the conversion to double fails, then those values are not recorded in the distribution.Example: REGEXP_EXTRACT(jsonPayload.request, \".*quantity=(\\d+).*\")", + "type": "string" + } + }, + "id": "LogMetric" + }, + "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", + "properties": { + "type": { + "description": "Required. The monitored resource type. This field must match the type field of a MonitoredResourceDescriptor object. For example, the type of a Compute Engine VM instance is gce_instance.", + "type": "string" + }, + "labels": { + "description": "Required. Values for all of the labels listed in the associated monitored resource descriptor. For example, Compute Engine VM instances use the labels \"project_id\", \"instance_id\", and \"zone\".", + "type": "object", + "additionalProperties": { + "type": "string" } + } + }, + "id": "MonitoredResource" + }, + "LogSink": { + "description": "Describes a sink used to export log entries to one of the following destinations in any project: a Cloud Storage bucket, a BigQuery dataset, or a Cloud Pub/Sub topic. A logs filter controls which log entries are exported. The sink must be created within a project, organization, billing account, or folder.", + "type": "object", + "properties": { + "name": { + "description": "Required. The client-assigned sink identifier, unique within the project. Example: \"my-syslog-errors-to-pubsub\". Sink identifiers are limited to 100 characters and can include only the following characters: upper and lower-case alphanumeric characters, underscores, hyphens, and periods.", + "type": "string" }, - "exclusions": { - "methods": { - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "parameters": { - "name": { - "description": "Required. The resource name of an existing exclusion to delete:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", - "required": true, - "type": "string", - "pattern": "^folders/[^/]+/exclusions/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2/folders/{foldersId}/exclusions/{exclusionsId}", - "path": "v2/{+name}", - "id": "logging.folders.exclusions.delete", - "description": "Deletes an exclusion." - }, - "list": { - "path": "v2/{+parent}/exclusions", - "id": "logging.folders.exclusions.list", - "description": "Lists all the exclusions in a parent resource.", - "response": { - "$ref": "ListExclusionsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "pageToken": { - "type": "string", - "location": "query", - "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call." - }, - "pageSize": { - "location": "query", - "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", - "format": "int32", - "type": "integer" - }, - "parent": { - "required": true, - "type": "string", - "pattern": "^folders/[^/]+$", - "location": "path", - "description": "Required. The parent resource whose exclusions are to be listed.\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "flatPath": "v2/folders/{foldersId}/exclusions" - }, - "get": { - "parameters": { - "name": { - "location": "path", - "description": "Required. The resource name of an existing exclusion:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", - "required": true, - "type": "string", - "pattern": "^folders/[^/]+/exclusions/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "flatPath": "v2/folders/{foldersId}/exclusions/{exclusionsId}", - "path": "v2/{+name}", - "id": "logging.folders.exclusions.get", - "description": "Gets the description of an exclusion.", - "response": { - "$ref": "LogExclusion" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET" - }, - "patch": { - "flatPath": "v2/folders/{foldersId}/exclusions/{exclusionsId}", - "path": "v2/{+name}", - "id": "logging.folders.exclusions.patch", - "description": "Changes one or more properties of an existing exclusion.", - "request": { - "$ref": "LogExclusion" - }, - "response": { - "$ref": "LogExclusion" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "parameters": { - "updateMask": { - "location": "query", - "description": "Required. A nonempty list of fields to change in the existing exclusion. New values for the fields are taken from the corresponding fields in the LogExclusion included in this request. Fields not mentioned in update_mask are not changed and are ignored in the request.For example, to change the filter and description of an exclusion, specify an update_mask of \"filter,description\".", - "format": "google-fieldmask", - "type": "string" - }, - "name": { - "pattern": "^folders/[^/]+/exclusions/[^/]+$", - "location": "path", - "description": "Required. The resource name of the exclusion to update:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ] - }, - "create": { - "response": { - "$ref": "LogExclusion" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "parameters": { - "parent": { - "description": "Required. The parent resource in which to create the exclusion:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\nExamples: \"projects/my-logging-project\", \"organizations/123456789\".", - "required": true, - "type": "string", - "pattern": "^folders/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2/folders/{foldersId}/exclusions", - "path": "v2/{+parent}/exclusions", - "id": "logging.folders.exclusions.create", - "request": { - "$ref": "LogExclusion" - }, - "description": "Creates a new exclusion in a specified parent resource. Only log entries belonging to that resource can be excluded. You can have up to 10 exclusions in a resource." - } - } - } - } - }, - "exclusions": { - "methods": { - "list": { - "description": "Lists all the exclusions in a parent resource.", - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListExclusionsResponse" - }, - "parameters": { - "pageToken": { - "location": "query", - "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", - "format": "int32", - "type": "integer" - }, - "parent": { - "description": "Required. The parent resource whose exclusions are to be listed.\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", - "required": true, - "type": "string", - "pattern": "^[^/]+/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "flatPath": "v2/{v2Id}/{v2Id1}/exclusions", - "id": "logging.exclusions.list", - "path": "v2/{+parent}/exclusions" + "includeChildren": { + "description": "Optional. This field applies only to sinks owned by organizations and folders. If the field is false, the default, only the logs owned by the sink's parent resource are available for export. If the field is true, then logs from all the projects, folders, and billing accounts contained in the sink's parent resource are also available for export. Whether a particular log entry from the children is exported depends on the sink's filter expression. For example, if this field is true, then the filter resource.type=gce_instance would export all Compute Engine VM instance log entries from all projects in the sink's parent. To only export entries from certain child projects, filter on the project part of the log name:\nlogName:(\"projects/test-project1/\" OR \"projects/test-project2/\") AND\nresource.type=gce_instance\n", + "type": "boolean" }, - "get": { - "response": { - "$ref": "LogExclusion" - }, - "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/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "parameters": { - "name": { - "pattern": "^[^/]+/[^/]+/exclusions/[^/]+$", - "location": "path", - "description": "Required. The resource name of an existing exclusion:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", - "required": true, - "type": "string" - } - }, - "flatPath": "v2/{v2Id}/{v2Id1}/exclusions/{exclusionsId}", - "path": "v2/{+name}", - "id": "logging.exclusions.get", - "description": "Gets the description of an exclusion." + "destination": { + "description": "Required. The export destination:\n\"storage.googleapis.com/[GCS_BUCKET]\"\n\"bigquery.googleapis.com/projects/[PROJECT_ID]/datasets/[DATASET]\"\n\"pubsub.googleapis.com/projects/[PROJECT_ID]/topics/[TOPIC_ID]\"\nThe sink's writer_identity, set when the sink is created, must have permission to write to the destination or else the log entries are not exported. For more information, see Exporting Logs With Sinks.", + "type": "string" }, - "patch": { - "description": "Changes one or more properties of an existing exclusion.", - "request": { - "$ref": "LogExclusion" - }, - "httpMethod": "PATCH", - "parameterOrder": [ - "name" + "filter": { + "description": "Optional. An advanced logs filter. The only exported log entries are those that are in the resource owning the sink and that match the filter. For example:\nlogName=\"projects/[PROJECT_ID]/logs/[LOG_ID]\" AND severity\u003e=ERROR\n", + "type": "string" + }, + "endTime": { + "description": "Deprecated. This field is ignored when creating or updating sinks.", + "format": "google-datetime", + "type": "string" + }, + "writerIdentity": { + "description": "Output only. An IAM identity—a service account or group—under which Stackdriver Logging writes the exported log entries to the sink's destination. This field is set by sinks.create and sinks.update, based on the setting of unique_writer_identity in those methods.Until you grant this identity write-access to the destination, log entry exports from this sink will fail. For more information, see Granting access for a resource. Consult the destination service's documentation to determine the appropriate IAM roles to assign to the identity.", + "type": "string" + }, + "startTime": { + "description": "Deprecated. This field is ignored when creating or updating sinks.", + "format": "google-datetime", + "type": "string" + }, + "outputVersionFormat": { + "enumDescriptions": [ + "An unspecified format version that will default to V2.", + "LogEntry version 2 format.", + "LogEntry version 1 format." ], - "response": { - "$ref": "LogExclusion" - }, - "parameters": { - "updateMask": { - "location": "query", - "description": "Required. A nonempty list of fields to change in the existing exclusion. New values for the fields are taken from the corresponding fields in the LogExclusion included in this request. Fields not mentioned in update_mask are not changed and are ignored in the request.For example, to change the filter and description of an exclusion, specify an update_mask of \"filter,description\".", - "format": "google-fieldmask", - "type": "string" - }, - "name": { - "description": "Required. The resource name of the exclusion to update:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", - "required": true, - "type": "string", - "pattern": "^[^/]+/[^/]+/exclusions/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" + "enum": [ + "VERSION_FORMAT_UNSPECIFIED", + "V2", + "V1" ], - "flatPath": "v2/{v2Id}/{v2Id1}/exclusions/{exclusionsId}", - "id": "logging.exclusions.patch", - "path": "v2/{+name}" + "description": "Deprecated. The log entry format to use for this sink's exported log entries. The v2 format is used by default and cannot be changed.", + "type": "string" + } + }, + "id": "LogSink" + }, + "ListLogsResponse": { + "description": "Result returned from ListLogs.", + "type": "object", + "properties": { + "nextPageToken": { + "description": "If there might be more results than those appearing in this response, then nextPageToken is included. To get the next set of results, call this method again using the value of nextPageToken as pageToken.", + "type": "string" }, - "create": { - "flatPath": "v2/{v2Id}/{v2Id1}/exclusions", - "path": "v2/{+parent}/exclusions", - "id": "logging.exclusions.create", - "request": { - "$ref": "LogExclusion" - }, - "description": "Creates a new exclusion in a specified parent resource. Only log entries belonging to that resource can be excluded. You can have up to 10 exclusions in a resource.", - "response": { - "$ref": "LogExclusion" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "parameters": { - "parent": { - "pattern": "^[^/]+/[^/]+$", - "location": "path", - "description": "Required. The parent resource in which to create the exclusion:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\nExamples: \"projects/my-logging-project\", \"organizations/123456789\".", - "required": true, - "type": "string" - } + "logNames": { + "description": "A list of log names. For example, \"projects/my-project/syslog\" or \"organizations/123/cloudresourcemanager.googleapis.com%2Factivity\".", + "type": "array", + "items": { + "type": "string" } - }, - "delete": { - "flatPath": "v2/{v2Id}/{v2Id1}/exclusions/{exclusionsId}", - "path": "v2/{+name}", - "id": "logging.exclusions.delete", - "description": "Deletes an exclusion.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "parameters": { - "name": { - "description": "Required. The resource name of an existing exclusion to delete:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", - "required": true, - "type": "string", - "pattern": "^[^/]+/[^/]+/exclusions/[^/]+$", - "location": "path" - } + } + }, + "id": "ListLogsResponse" + }, + "ListSinksResponse": { + "description": "Result returned from ListSinks.", + "type": "object", + "properties": { + "sinks": { + "description": "A list of sinks.", + "type": "array", + "items": { + "$ref": "LogSink" } + }, + "nextPageToken": { + "description": "If there might be more results than appear in this response, then nextPageToken is included. To get the next set of results, call the same method again using the value of nextPageToken as pageToken.", + "type": "string" } - } + }, + "id": "ListSinksResponse" }, - "monitoredResourceDescriptors": { - "methods": { - "list": { - "description": "Lists the descriptors for monitored resource types used by Stackdriver Logging.", - "response": { - "$ref": "ListMonitoredResourceDescriptorsResponse" - }, - "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/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "parameters": { - "pageToken": { - "location": "query", - "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", - "type": "string" - }, - "pageSize": { - "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", - "format": "int32", - "type": "integer", - "location": "query" - } - }, - "flatPath": "v2/monitoredResourceDescriptors", - "path": "v2/monitoredResourceDescriptors", - "id": "logging.monitoredResourceDescriptors.list" + "HttpRequest": { + "description": "A common proto for logging HTTP requests. Only contains semantics defined by the HTTP specification. Product-specific logging information MUST be defined in a separate message.", + "type": "object", + "properties": { + "cacheLookup": { + "description": "Whether or not a cache lookup was attempted.", + "type": "boolean" + }, + "cacheHit": { + "description": "Whether or not an entity was served from cache (with or without validation).", + "type": "boolean" + }, + "cacheValidatedWithOriginServer": { + "description": "Whether or not the response was validated with the origin server before being served from cache. This field is only meaningful if cache_hit is True.", + "type": "boolean" + }, + "status": { + "description": "The response code indicating the status of response. Examples: 200, 404.", + "format": "int32", + "type": "integer" + }, + "referer": { + "description": "The referer URL of the request, as defined in HTTP/1.1 Header Field Definitions (http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html).", + "type": "string" + }, + "latency": { + "description": "The request processing latency on the server, from the time the request was received until the response was sent.", + "format": "google-duration", + "type": "string" + }, + "userAgent": { + "description": "The user agent sent by the client. Example: \"Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Q312461; .NET CLR 1.0.3705)\".", + "type": "string" + }, + "cacheFillBytes": { + "description": "The number of HTTP response bytes inserted into cache. Set only when a cache fill was attempted.", + "format": "int64", + "type": "string" + }, + "requestMethod": { + "description": "The request method. Examples: \"GET\", \"HEAD\", \"PUT\", \"POST\".", + "type": "string" + }, + "requestSize": { + "description": "The size of the HTTP request message in bytes, including the request headers and the request body.", + "format": "int64", + "type": "string" + }, + "responseSize": { + "description": "The size of the HTTP response message sent back to the client, in bytes, including the response headers and the response body.", + "format": "int64", + "type": "string" + }, + "protocol": { + "description": "Protocol used for the request. Examples: \"HTTP/1.1\", \"HTTP/2\", \"websocket\"", + "type": "string" + }, + "requestUrl": { + "description": "The scheme (http, https), the host name, the path and the query portion of the URL that was requested. Example: \"http://example.com/some/info?color=red\".", + "type": "string" + }, + "remoteIp": { + "description": "The IP address (IPv4 or IPv6) of the client that issued the HTTP request. Examples: \"192.168.1.1\", \"FE80::0202:B3FF:FE1E:8329\".", + "type": "string" + }, + "serverIp": { + "description": "The IP address (IPv4 or IPv6) of the origin server that the request was sent to.", + "type": "string" } - } + }, + "id": "HttpRequest" }, - "organizations": { - "resources": { - "logs": { - "methods": { - "delete": { - "flatPath": "v2/organizations/{organizationsId}/logs/{logsId}", - "path": "v2/{+logName}", - "id": "logging.organizations.logs.delete", - "description": "Deletes all the log entries in a log. The log reappears if it receives new entries. Log entries written shortly before the delete operation might not be deleted.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "logName" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "parameters": { - "logName": { - "location": "path", - "description": "Required. The resource name of the log to delete:\n\"projects/[PROJECT_ID]/logs/[LOG_ID]\"\n\"organizations/[ORGANIZATION_ID]/logs/[LOG_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]\"\n\"folders/[FOLDER_ID]/logs/[LOG_ID]\"\n[LOG_ID] must be URL-encoded. For example, \"projects/my-project-id/logs/syslog\", \"organizations/1234567890/logs/cloudresourcemanager.googleapis.com%2Factivity\". For more information about log names, see LogEntry.", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+/logs/[^/]+$" - } - } - }, - "list": { - "description": "Lists the logs in projects, organizations, folders, or billing accounts. Only logs that have entries are listed.", - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListLogsResponse" - }, - "parameters": { - "pageToken": { - "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "parent": { - "pattern": "^organizations/[^/]+$", - "location": "path", - "description": "Required. The resource name that owns the logs:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", - "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/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "flatPath": "v2/organizations/{organizationsId}/logs", - "id": "logging.organizations.logs.list", - "path": "v2/{+parent}/logs" - } + "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" } }, - "sinks": { - "methods": { - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "sinkName" - ], - "httpMethod": "DELETE", - "parameters": { - "sinkName": { - "description": "Required. The full resource name of the sink to delete, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+/sinks/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "flatPath": "v2/organizations/{organizationsId}/sinks/{sinksId}", - "path": "v2/{+sinkName}", - "id": "logging.organizations.sinks.delete", - "description": "Deletes a sink. If the sink has a unique writer_identity, then that service account is also deleted." - }, - "list": { - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListSinksResponse" - }, - "parameters": { - "pageToken": { - "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "parent": { - "pattern": "^organizations/[^/]+$", - "location": "path", - "description": "Required. The parent resource whose sinks are to be listed:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", - "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/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "flatPath": "v2/organizations/{organizationsId}/sinks", - "id": "logging.organizations.sinks.list", - "path": "v2/{+parent}/sinks", - "description": "Lists sinks." - }, - "create": { - "flatPath": "v2/organizations/{organizationsId}/sinks", - "path": "v2/{+parent}/sinks", - "id": "logging.organizations.sinks.create", - "request": { - "$ref": "LogSink" - }, - "description": "Creates a sink that exports specified log entries to a destination. The export of newly-ingested log entries begins immediately, unless the sink's writer_identity is not permitted to write to the destination. A sink can export log entries only from the resource owning the sink.", - "response": { - "$ref": "LogSink" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "parameters": { - "parent": { - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+$", - "location": "path", - "description": "Required. The resource in which to create the sink:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\nExamples: \"projects/my-logging-project\", \"organizations/123456789\"." - }, - "uniqueWriterIdentity": { - "location": "query", - "description": "Optional. Determines the kind of IAM identity returned as writer_identity in the new sink. If this value is omitted or set to false, and if the sink's parent is a project, then the value returned as writer_identity is the same group or service account used by Stackdriver Logging before the addition of writer identities to this API. The sink's destination must be in the same project as the sink itself.If this field is set to true, or if the sink is owned by a non-project resource such as an organization, then the value of writer_identity will be a unique service account used only for exports from the new sink. For more information, see writer_identity in LogSink.", - "type": "boolean" - } - } - }, - "get": { - "response": { - "$ref": "LogSink" - }, - "parameterOrder": [ - "sinkName" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "parameters": { - "sinkName": { - "description": "Required. The resource name of the sink:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+/sinks/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2/organizations/{organizationsId}/sinks/{sinksId}", - "path": "v2/{+sinkName}", - "id": "logging.organizations.sinks.get", - "description": "Gets a sink." - }, - "patch": { - "httpMethod": "PATCH", - "parameterOrder": [ - "sinkName" - ], - "response": { - "$ref": "LogSink" - }, - "parameters": { - "sinkName": { - "description": "Required. The full resource name of the sink to update, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+/sinks/[^/]+$", - "location": "path" - }, - "uniqueWriterIdentity": { - "location": "query", - "description": "Optional. See sinks.create for a description of this field. When updating a sink, the effect of this field on the value of writer_identity in the updated sink depends on both the old and new values of this field:\nIf the old and new values of this field are both false or both true, then there is no change to the sink's writer_identity.\nIf the old value is false and the new value is true, then writer_identity is changed to a unique service account.\nIt is an error if the old value is true and the new value is set to false or defaulted to false.", - "type": "boolean" - }, - "updateMask": { - "description": "Optional. Field mask that specifies the fields in sink that need an update. A sink field will be overwritten if, and only if, it is in the update mask. name and output only fields cannot be updated.An empty updateMask is temporarily treated as using the following mask for backwards compatibility purposes: destination,filter,includeChildren At some point in the future, behavior will be removed and specifying an empty updateMask will be an error.For a detailed FieldMask definition, see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmaskExample: updateMask=filter.", - "format": "google-fieldmask", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "flatPath": "v2/organizations/{organizationsId}/sinks/{sinksId}", - "id": "logging.organizations.sinks.patch", - "path": "v2/{+sinkName}", - "description": "Updates a sink. This method replaces the following fields in the existing sink with values from the new sink: destination, and filter. The updated sink might also have a new writer_identity; see the unique_writer_identity field.", - "request": { - "$ref": "LogSink" - } - }, - "update": { - "flatPath": "v2/organizations/{organizationsId}/sinks/{sinksId}", - "id": "logging.organizations.sinks.update", - "path": "v2/{+sinkName}", - "description": "Updates a sink. This method replaces the following fields in the existing sink with values from the new sink: destination, and filter. The updated sink might also have a new writer_identity; see the unique_writer_identity field.", - "request": { - "$ref": "LogSink" - }, - "httpMethod": "PUT", - "parameterOrder": [ - "sinkName" - ], - "response": { - "$ref": "LogSink" - }, - "parameters": { - "sinkName": { - "description": "Required. The full resource name of the sink to update, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+/sinks/[^/]+$", - "location": "path" - }, - "uniqueWriterIdentity": { - "description": "Optional. See sinks.create for a description of this field. When updating a sink, the effect of this field on the value of writer_identity in the updated sink depends on both the old and new values of this field:\nIf the old and new values of this field are both false or both true, then there is no change to the sink's writer_identity.\nIf the old value is false and the new value is true, then writer_identity is changed to a unique service account.\nIt is an error if the old value is true and the new value is set to false or defaulted to false.", - "type": "boolean", - "location": "query" - }, - "updateMask": { - "description": "Optional. Field mask that specifies the fields in sink that need an update. A sink field will be overwritten if, and only if, it is in the update mask. name and output only fields cannot be updated.An empty updateMask is temporarily treated as using the following mask for backwards compatibility purposes: destination,filter,includeChildren At some point in the future, behavior will be removed and specifying an empty updateMask will be an error.For a detailed FieldMask definition, see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmaskExample: updateMask=filter.", - "format": "google-fieldmask", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ] - } + "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" + }, + "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" + }, + "LogEntrySourceLocation": { + "description": "Additional information about the source code location that produced the log entry.", + "type": "object", + "properties": { + "file": { + "description": "Optional. Source file name. Depending on the runtime environment, this might be a simple name or a fully-qualified name.", + "type": "string" + }, + "function": { + "description": "Optional. Human-readable name of the function or method being invoked, with optional context such as the class or package name. This information may be used in contexts such as the logs viewer, where a file and line number are less meaningful. The format can vary by language. For example: qual.if.ied.Class.method (Java), dir/package.func (Go), function (Python).", + "type": "string" + }, + "line": { + "description": "Optional. Line within the source file. 1-based; 0 indicates no line number available.", + "format": "int64", + "type": "string" + } + }, + "id": "LogEntrySourceLocation" + }, + "ListLogEntriesResponse": { + "description": "Result returned from ListLogEntries.", + "type": "object", + "properties": { + "nextPageToken": { + "description": "If there might be more results than those appearing in this response, then nextPageToken is included. To get the next set of results, call this method again using the value of nextPageToken as pageToken.If a value for next_page_token appears and the entries field is empty, it means that the search found no log entries so far but it did not have time to search all the possible log entries. Retry the method with this value for page_token to continue the search. Alternatively, consider speeding up the search by changing your filter to specify a single log name or resource type, or to narrow the time range of the search.", + "type": "string" + }, + "entries": { + "description": "A list of log entries. If entries is empty, nextPageToken may still be returned, indicating that more entries may exist. See nextPageToken for more information.", + "type": "array", + "items": { + "$ref": "LogEntry" } + } + }, + "id": "ListLogEntriesResponse" + }, + "LogLine": { + "description": "Application log line emitted while processing a request.", + "type": "object", + "properties": { + "time": { + "description": "Approximate time when this log entry was made.", + "format": "google-datetime", + "type": "string" }, - "exclusions": { - "methods": { - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "parameters": { - "name": { - "description": "Required. The resource name of an existing exclusion to delete:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+/exclusions/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2/organizations/{organizationsId}/exclusions/{exclusionsId}", - "path": "v2/{+name}", - "id": "logging.organizations.exclusions.delete", - "description": "Deletes an exclusion." - }, - "list": { - "parameters": { - "pageToken": { - "location": "query", - "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", - "type": "string" - }, - "pageSize": { - "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "parent": { - "location": "path", - "description": "Required. The parent resource whose exclusions are to be listed.\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "flatPath": "v2/organizations/{organizationsId}/exclusions", - "id": "logging.organizations.exclusions.list", - "path": "v2/{+parent}/exclusions", - "description": "Lists all the exclusions in a parent resource.", - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListExclusionsResponse" - } - }, - "get": { - "description": "Gets the description of an exclusion.", - "response": { - "$ref": "LogExclusion" - }, - "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/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "parameters": { - "name": { - "location": "path", - "description": "Required. The resource name of an existing exclusion:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+/exclusions/[^/]+$" - } - }, - "flatPath": "v2/organizations/{organizationsId}/exclusions/{exclusionsId}", - "path": "v2/{+name}", - "id": "logging.organizations.exclusions.get" - }, - "patch": { - "description": "Changes one or more properties of an existing exclusion.", - "request": { - "$ref": "LogExclusion" - }, - "response": { - "$ref": "LogExclusion" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "parameters": { - "name": { - "location": "path", - "description": "Required. The resource name of the exclusion to update:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+/exclusions/[^/]+$" - }, - "updateMask": { - "description": "Required. A nonempty list of fields to change in the existing exclusion. New values for the fields are taken from the corresponding fields in the LogExclusion included in this request. Fields not mentioned in update_mask are not changed and are ignored in the request.For example, to change the filter and description of an exclusion, specify an update_mask of \"filter,description\".", - "format": "google-fieldmask", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "flatPath": "v2/organizations/{organizationsId}/exclusions/{exclusionsId}", - "path": "v2/{+name}", - "id": "logging.organizations.exclusions.patch" - }, - "create": { - "description": "Creates a new exclusion in a specified parent resource. Only log entries belonging to that resource can be excluded. You can have up to 10 exclusions in a resource.", - "request": { - "$ref": "LogExclusion" - }, - "response": { - "$ref": "LogExclusion" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "location": "path", - "description": "Required. The parent resource in which to create the exclusion:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\nExamples: \"projects/my-logging-project\", \"organizations/123456789\".", - "required": true, - "type": "string", - "pattern": "^organizations/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "flatPath": "v2/organizations/{organizationsId}/exclusions", - "path": "v2/{+parent}/exclusions", - "id": "logging.organizations.exclusions.create" - } - } + "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 a 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": "Severity of this log entry.", + "type": "string" + }, + "logMessage": { + "description": "App-provided log message.", + "type": "string" + }, + "sourceLocation": { + "description": "Where in the source code this log message was written.", + "$ref": "SourceLocation" } - } + }, + "id": "LogLine" }, - "entries": { - "methods": { - "list": { - "response": { - "$ref": "ListLogEntriesResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "flatPath": "v2/entries:list", - "path": "v2/entries:list", - "id": "logging.entries.list", - "description": "Lists log entries. Use this method to retrieve log entries from Stackdriver Logging. For ways to export log entries, see Exporting Logs.", - "request": { - "$ref": "ListLogEntriesRequest" - } + "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", + "properties": { + "offset": { + "description": "Lower bound of the first bucket.", + "format": "double", + "type": "number" }, - "write": { - "response": { - "$ref": "WriteLogEntriesResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.write" - ], - "parameters": {}, - "flatPath": "v2/entries:write", - "path": "v2/entries:write", - "id": "logging.entries.write", - "request": { - "$ref": "WriteLogEntriesRequest" - }, - "description": "Writes log entries to Stackdriver Logging. This API method is the only way to send log entries to Stackdriver Logging. This method is used, directly or indirectly, by the Stackdriver Logging agent (fluentd) and all logging libraries configured to use Stackdriver Logging. A single request may contain log entries for a maximum of 1000 different resources (projects, organizations, billing accounts or folders)" + "numFiniteBuckets": { + "description": "Must be greater than 0.", + "format": "int32", + "type": "integer" + }, + "width": { + "description": "Must be greater than 0.", + "format": "double", + "type": "number" } - } + }, + "id": "Linear" }, - "logs": { - "methods": { - "delete": { - "httpMethod": "DELETE", - "parameterOrder": [ - "logName" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "logName": { - "required": true, - "type": "string", - "pattern": "^[^/]+/[^/]+/logs/[^/]+$", - "location": "path", - "description": "Required. The resource name of the log to delete:\n\"projects/[PROJECT_ID]/logs/[LOG_ID]\"\n\"organizations/[ORGANIZATION_ID]/logs/[LOG_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]\"\n\"folders/[FOLDER_ID]/logs/[LOG_ID]\"\n[LOG_ID] must be URL-encoded. For example, \"projects/my-project-id/logs/syslog\", \"organizations/1234567890/logs/cloudresourcemanager.googleapis.com%2Factivity\". For more information about log names, see LogEntry." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "flatPath": "v2/{v2Id}/{v2Id1}/logs/{logsId}", - "id": "logging.logs.delete", - "path": "v2/{+logName}", - "description": "Deletes all the log entries in a log. The log reappears if it receives new entries. Log entries written shortly before the delete operation might not be deleted." + "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" + }, + "SourceLocation": { + "description": "Specifies a location in a source code file.", + "type": "object", + "properties": { + "file": { + "description": "Source file name. Depending on the runtime environment, this might be a simple name or a fully-qualified name.", + "type": "string" }, - "list": { - "description": "Lists the logs in projects, organizations, folders, or billing accounts. Only logs that have entries are listed.", - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ListLogsResponse" - }, - "parameters": { - "pageToken": { - "location": "query", - "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", - "format": "int32", - "type": "integer" - }, - "parent": { - "description": "Required. The resource name that owns the logs:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", - "required": true, - "type": "string", - "pattern": "^[^/]+/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "flatPath": "v2/{v2Id}/{v2Id1}/logs", - "id": "logging.logs.list", - "path": "v2/{+parent}/logs" + "functionName": { + "description": "Human-readable name of the function or method being invoked, with optional context such as the class or package name. This information is used in contexts such as the logs viewer, where a file and line number are less meaningful. The format can vary by language. For example: qual.if.ied.Class.method (Java), dir/package.func (Go), function (Python).", + "type": "string" + }, + "line": { + "description": "Line within the source file.", + "format": "int64", + "type": "string" } - } + }, + "id": "SourceLocation" }, - "sinks": { - "methods": { - "create": { - "response": { - "$ref": "LogSink" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "parameters": { - "parent": { - "pattern": "^[^/]+/[^/]+$", - "location": "path", - "description": "Required. The resource in which to create the sink:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\nExamples: \"projects/my-logging-project\", \"organizations/123456789\".", - "required": true, - "type": "string" - }, - "uniqueWriterIdentity": { - "description": "Optional. Determines the kind of IAM identity returned as writer_identity in the new sink. If this value is omitted or set to false, and if the sink's parent is a project, then the value returned as writer_identity is the same group or service account used by Stackdriver Logging before the addition of writer identities to this API. The sink's destination must be in the same project as the sink itself.If this field is set to true, or if the sink is owned by a non-project resource such as an organization, then the value of writer_identity will be a unique service account used only for exports from the new sink. For more information, see writer_identity in LogSink.", - "type": "boolean", - "location": "query" - } - }, - "flatPath": "v2/{v2Id}/{v2Id1}/sinks", - "path": "v2/{+parent}/sinks", - "id": "logging.sinks.create", - "request": { - "$ref": "LogSink" - }, - "description": "Creates a sink that exports specified log entries to a destination. The export of newly-ingested log entries begins immediately, unless the sink's writer_identity is not permitted to write to the destination. A sink can export log entries only from the resource owning the sink." + "ListLogEntriesRequest": { + "description": "The parameters to ListLogEntries.", + "type": "object", + "properties": { + "resourceNames": { + "description": "Required. Names of one or more parent resources from which to retrieve log entries:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\nProjects listed in the project_ids field are added to this list.", + "type": "array", + "items": { + "type": "string" + } }, - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "sinkName" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "parameters": { - "sinkName": { - "description": "Required. The full resource name of the sink to delete, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", - "required": true, - "type": "string", - "pattern": "^[^/]+/[^/]+/sinks/[^/]+$", - "location": "path" - } - }, - "flatPath": "v2/{v2Id}/{v2Id1}/sinks/{sinksId}", - "path": "v2/{+sinkName}", - "id": "logging.sinks.delete", - "description": "Deletes a sink. If the sink has a unique writer_identity, then that service account is also deleted." + "filter": { + "description": "Optional. A filter that chooses which log entries to return. See Advanced Logs Filters. Only log entries that match the filter are returned. An empty filter matches all log entries in the resources listed in resource_names. Referencing a parent resource that is not listed in resource_names will cause the filter to return no results. The maximum length of the filter is 20000 characters.", + "type": "string" }, - "list": { - "response": { - "$ref": "ListSinksResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "pageToken": { - "location": "query", - "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", - "type": "string" - }, - "pageSize": { - "location": "query", - "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", - "format": "int32", - "type": "integer" - }, - "parent": { - "description": "Required. The parent resource whose sinks are to be listed:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", - "required": true, - "type": "string", - "pattern": "^[^/]+/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "flatPath": "v2/{v2Id}/{v2Id1}/sinks", - "path": "v2/{+parent}/sinks", - "id": "logging.sinks.list", - "description": "Lists sinks." + "projectIds": { + "description": "Deprecated. Use resource_names instead. One or more project identifiers or project numbers from which to retrieve log entries. Example: \"my-project-1A\". If present, these project identifiers are converted to resource name format and added to the list of resources in resource_names.", + "type": "array", + "items": { + "type": "string" + } }, - "get": { - "description": "Gets a sink.", - "response": { - "$ref": "LogSink" - }, - "parameterOrder": [ - "sinkName" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "parameters": { - "sinkName": { - "location": "path", - "description": "Required. The resource name of the sink:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", - "required": true, - "type": "string", - "pattern": "^[^/]+/[^/]+/sinks/[^/]+$" - } - }, - "flatPath": "v2/{v2Id}/{v2Id1}/sinks/{sinksId}", - "path": "v2/{+sinkName}", - "id": "logging.sinks.get" - }, - "update": { - "request": { - "$ref": "LogSink" - }, - "description": "Updates a sink. This method replaces the following fields in the existing sink with values from the new sink: destination, and filter. The updated sink might also have a new writer_identity; see the unique_writer_identity field.", - "response": { - "$ref": "LogSink" - }, - "parameterOrder": [ - "sinkName" - ], - "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "parameters": { - "sinkName": { - "location": "path", - "description": "Required. The full resource name of the sink to update, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", - "required": true, - "type": "string", - "pattern": "^[^/]+/[^/]+/sinks/[^/]+$" - }, - "uniqueWriterIdentity": { - "location": "query", - "description": "Optional. See sinks.create for a description of this field. When updating a sink, the effect of this field on the value of writer_identity in the updated sink depends on both the old and new values of this field:\nIf the old and new values of this field are both false or both true, then there is no change to the sink's writer_identity.\nIf the old value is false and the new value is true, then writer_identity is changed to a unique service account.\nIt is an error if the old value is true and the new value is set to false or defaulted to false.", - "type": "boolean" - }, - "updateMask": { - "description": "Optional. Field mask that specifies the fields in sink that need an update. A sink field will be overwritten if, and only if, it is in the update mask. name and output only fields cannot be updated.An empty updateMask is temporarily treated as using the following mask for backwards compatibility purposes: destination,filter,includeChildren At some point in the future, behavior will be removed and specifying an empty updateMask will be an error.For a detailed FieldMask definition, see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmaskExample: updateMask=filter.", - "format": "google-fieldmask", - "type": "string", - "location": "query" - } - }, - "flatPath": "v2/{v2Id}/{v2Id1}/sinks/{sinksId}", - "path": "v2/{+sinkName}", - "id": "logging.sinks.update" - } - } - } - }, - "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" - }, - "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": { - "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": { - "type": "string", - "location": "query", - "description": "OAuth bearer token." - }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - } - }, - "version": "v2", - "baseUrl": "https://logging.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Writes log entries and manages your Stackdriver Logging configuration.", - "servicePath": "", - "basePath": "", - "revision": "20180430", - "documentationLink": "https://cloud.google.com/logging/docs/", - "id": "logging:v2", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "Linear": { - "id": "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", - "properties": { - "numFiniteBuckets": { - "type": "integer", - "description": "Must be greater than 0.", - "format": "int32" - }, - "width": { - "description": "Must be greater than 0.", - "format": "double", - "type": "number" - }, - "offset": { - "description": "Lower bound of the first bucket.", - "format": "double", - "type": "number" - } - } - }, - "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 {}." - }, - "SourceLocation": { - "description": "Specifies a location in a source code file.", - "type": "object", - "properties": { - "file": { - "description": "Source file name. Depending on the runtime environment, this might be a simple name or a fully-qualified name.", - "type": "string" - }, - "functionName": { - "type": "string", - "description": "Human-readable name of the function or method being invoked, with optional context such as the class or package name. This information is used in contexts such as the logs viewer, where a file and line number are less meaningful. The format can vary by language. For example: qual.if.ied.Class.method (Java), dir/package.func (Go), function (Python)." - }, - "line": { - "description": "Line within the source file.", - "format": "int64", - "type": "string" - } - }, - "id": "SourceLocation" - }, - "ListLogEntriesRequest": { - "description": "The parameters to ListLogEntries.", - "type": "object", - "properties": { - "orderBy": { - "description": "Optional. How the results should be sorted. Presently, the only permitted values are \"timestamp asc\" (default) and \"timestamp desc\". The first option returns entries in order of increasing values of LogEntry.timestamp (oldest first), and the second option returns entries in order of decreasing timestamps (newest first). Entries with equal timestamps are returned in order of their insert_id values.", - "type": "string" - }, - "resourceNames": { - "description": "Required. Names of one or more parent resources from which to retrieve log entries:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\nProjects listed in the project_ids field are added to this list.", - "type": "array", - "items": { - "type": "string" - } - }, - "projectIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Deprecated. Use resource_names instead. One or more project identifiers or project numbers from which to retrieve log entries. Example: \"my-project-1A\". If present, these project identifiers are converted to resource name format and added to the list of resources in resource_names." - }, - "filter": { - "description": "Optional. A filter that chooses which log entries to return. See Advanced Logs Filters. Only log entries that match the filter are returned. An empty filter matches all log entries in the resources listed in resource_names. Referencing a parent resource that is not listed in resource_names will cause the filter to return no results. The maximum length of the filter is 20000 characters.", - "type": "string" - }, - "pageToken": { - "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. page_token must be the value of next_page_token from the previous response. The values of other method parameters should be identical to those in the previous call.", - "type": "string" + "pageToken": { + "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. page_token must be the value of next_page_token from the previous response. The values of other method parameters should be identical to those in the previous call.", + "type": "string" }, "pageSize": { "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of next_page_token in the response indicates that more results might be available.", "format": "int32", "type": "integer" + }, + "orderBy": { + "description": "Optional. How the results should be sorted. Presently, the only permitted values are \"timestamp asc\" (default) and \"timestamp desc\". The first option returns entries in order of increasing values of LogEntry.timestamp (oldest first), and the second option returns entries in order of decreasing timestamps (newest first). Entries with equal timestamps are returned in order of their insert_id values.", + "type": "string" } }, "id": "ListLogEntriesRequest" @@ -2653,13 +875,13 @@ "description": "A reference to a particular snapshot of the source tree used to build and deploy an application.", "type": "object", "properties": { - "repository": { - "description": "Optional. A URI string identifying the repository. Example: \"https://github.com/GoogleCloudPlatform/kubernetes.git\"", - "type": "string" - }, "revisionId": { "description": "The canonical and persistent identifier of the deployed revision. Example (git): \"0035781c50ec7aa23385dc841529ce8a4b70db1b\"", "type": "string" + }, + "repository": { + "description": "Optional. A URI string identifying the repository. Example: \"https://github.com/GoogleCloudPlatform/kubernetes.git\"", + "type": "string" } }, "id": "SourceReference" @@ -2693,7 +915,6 @@ "id": "Exponential" }, "WriteLogEntriesRequest": { - "id": "WriteLogEntriesRequest", "description": "The parameters to WriteLogEntries.", "type": "object", "properties": { @@ -2717,70 +938,72 @@ "type": "boolean" }, "labels": { + "description": "Optional. Default labels that are added to the labels field of all log entries in entries. If a log entry already has a label with the same key as a label in this parameter, then the log entry's label is not changed. See LogEntry.", + "type": "object", "additionalProperties": { "type": "string" - }, - "description": "Optional. Default labels that are added to the labels field of all log entries in entries. If a log entry already has a label with the same key as a label in this parameter, then the log entry's label is not changed. See LogEntry.", - "type": "object" + } }, "resource": { - "$ref": "MonitoredResource", - "description": "Optional. A default monitored resource object that is assigned to all log entries in entries that do not specify a value for resource. Example:\n{ \"type\": \"gce_instance\",\n \"labels\": {\n \"zone\": \"us-central1-a\", \"instance_id\": \"00000000000000000000\" }}\nSee LogEntry." + "description": "Optional. A default monitored resource object that is assigned to all log entries in entries that do not specify a value for resource. Example:\n{ \"type\": \"gce_instance\",\n \"labels\": {\n \"zone\": \"us-central1-a\", \"instance_id\": \"00000000000000000000\" }}\nSee LogEntry.", + "$ref": "MonitoredResource" } - } + }, + "id": "WriteLogEntriesRequest" }, "LabelDescriptor": { "description": "A description of a label.", "type": "object", "properties": { - "key": { - "description": "The label key.", - "type": "string" - }, "description": { "description": "A human-readable description for the label.", "type": "string" }, "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." + ], + "enum": [ + "STRING", + "BOOL", + "INT64" ] + }, + "key": { + "description": "The label key.", + "type": "string" } }, "id": "LabelDescriptor" }, "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": { "systemLabels": { + "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", "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" + } }, "userLabels": { + "description": "Output only. A map of user-defined metadata labels.", + "type": "object", "additionalProperties": { "type": "string" - }, - "description": "Output only. A map of user-defined metadata labels.", - "type": "object" + } } }, - "id": "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" + "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": { "exponentialBuckets": { @@ -2796,782 +1019,2559 @@ "$ref": "Explicit" } }, - "id": "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." - }, - "ListLogMetricsResponse": { - "properties": { - "metrics": { - "description": "A list of logs-based metrics.", - "type": "array", - "items": { - "$ref": "LogMetric" - } + "id": "BucketOptions" + } + }, + "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": "Logging", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" }, - "nextPageToken": { - "description": "If there might be more results than appear in this response, then nextPageToken is included. To get the next set of results, call this method again using the value of nextPageToken as pageToken.", - "type": "string" - } - }, - "id": "ListLogMetricsResponse", - "description": "Result returned from ListLogMetrics.", - "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", - "properties": { - "unit": { - "description": "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)\nbit bit\nBy byte\ns second\nmin minute\nh hour\nd dayPrefixes (PREFIX)\nk kilo (10**3)\nM mega (10**6)\nG giga (10**9)\nT tera (10**12)\nP peta (10**15)\nE exa (10**18)\nZ zetta (10**21)\nY yotta (10**24)\nm milli (10**-3)\nu micro (10**-6)\nn nano (10**-9)\np pico (10**-12)\nf femto (10**-15)\na atto (10**-18)\nz zepto (10**-21)\ny yocto (10**-24)\nKi kibi (2**10)\nMi mebi (2**20)\nGi gibi (2**30)\nTi tebi (2**40)GrammarThe grammar also includes these connectors:\n/ division (as an infix operator, e.g. 1/s).\n. multiplication (as an infix operator, e.g. GBy.d)The grammar for a unit is as follows:\nExpression = Component { \".\" Component } { \"/\" Component } ;\n\nComponent = ( [ PREFIX ] UNIT | \"%\" ) [ Annotation ]\n | Annotation\n | \"1\"\n ;\n\nAnnotation = \"{\" NAME \"}\" ;\nNotes:\nAnnotation 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.\nNAME is a sequence of non-blank printable ASCII characters not containing '{' or '}'.\n1 represents dimensionless value 1, such as in 1/s.\n% represents dimensionless value 1/100, and annotates values giving a percentage.", - "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" - } - }, - "name": { - "description": "The resource name of the metric descriptor.", - "type": "string" - }, - "type": { - "type": "string", - "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" - }, - "valueType": { - "type": "string", - "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." - ], - "enum": [ - "VALUE_TYPE_UNSPECIFIED", - "BOOL", - "INT64", - "DOUBLE", - "STRING", - "DISTRIBUTION", - "MONEY" - ], - "description": "Whether the measurement is an integer, a floating-point number, etc. Some combinations of metric_kind and value_type might not be supported." - }, - "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" - }, - "displayName": { - "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" - } - }, - "id": "MetricDescriptor" - }, - "LogEntry": { - "properties": { - "severity": { - "enum": [ - "DEFAULT", - "DEBUG", - "INFO", - "NOTICE", - "WARNING", - "ERROR", - "CRITICAL", - "ALERT", - "EMERGENCY" - ], - "description": "Optional. The severity of the log entry. The default value is LogSeverity.DEFAULT.", - "type": "string", - "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 a 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." - ] - }, - "sourceLocation": { - "$ref": "LogEntrySourceLocation", - "description": "Optional. Source code location information associated with the log entry, if any." - }, - "spanId": { - "description": "Optional. The span ID within the trace associated with the log entry. For Stackdriver Trace spans, this is the same format that the Stackdriver Trace API v2 uses: a 16-character hexadecimal encoding of an 8-byte array, such as \u003ccode\u003e\"000000000000004a\"\u003c/code\u003e.", - "type": "string" - }, - "receiveTimestamp": { - "description": "Output only. The time the log entry was received by Stackdriver Logging.", - "format": "google-datetime", - "type": "string" - }, - "timestamp": { - "description": "Optional. The time the event described by the log entry occurred. This time is used to compute the log entry's age and to enforce the logs retention period. If this field is omitted in a new log entry, then Stackdriver Logging assigns it the current time. Timestamps have nanosecond accuracy, but trailing zeros in the fractional seconds might be omitted when the timestamp is displayed.Incoming log entries should have timestamps that are no more than the logs retention period in the past, and no more than 24 hours in the future. Log entries outside those time boundaries will not be available when calling entries.list, but those log entries can still be exported with LogSinks.", - "format": "google-datetime", - "type": "string" - }, - "logName": { - "description": "Required. The resource name of the log to which this log entry belongs:\n\"projects/[PROJECT_ID]/logs/[LOG_ID]\"\n\"organizations/[ORGANIZATION_ID]/logs/[LOG_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]\"\n\"folders/[FOLDER_ID]/logs/[LOG_ID]\"\nA project number may optionally be used in place of PROJECT_ID. The project number is translated to its corresponding PROJECT_ID internally and the log_name field will contain PROJECT_ID in queries and exports.[LOG_ID] must be URL-encoded within log_name. Example: \"organizations/1234567890/logs/cloudresourcemanager.googleapis.com%2Factivity\". [LOG_ID] must be less than 512 characters long and can only include the following characters: upper and lower case alphanumeric characters, forward-slash, underscore, hyphen, and period.For backward compatibility, if log_name begins with a forward-slash, such as /projects/..., then the log entry is ingested as usual but the forward-slash is removed. Listing the log entry will not show the leading slash and filtering for a log name with a leading slash will never return any results.", - "type": "string" - }, - "httpRequest": { - "$ref": "HttpRequest", - "description": "Optional. Information about the HTTP request associated with this log entry, if applicable." - }, - "resource": { - "description": "Required. The primary monitored resource associated with this log entry. Example: a log entry that reports a database error would be associated with the monitored resource designating the particular database that reported the error.", - "$ref": "MonitoredResource" - }, - "jsonPayload": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "The log entry payload, represented as a structure that is expressed as a JSON object." - }, - "operation": { - "$ref": "LogEntryOperation", - "description": "Optional. Information about an operation associated with the log entry, if applicable." - }, - "insertId": { - "description": "Optional. A unique identifier for the log entry. If you provide a value, then Stackdriver Logging considers other log entries in the same project, with the same timestamp, and with the same insert_id to be duplicates which can be removed. If omitted in new log entries, then Stackdriver Logging assigns its own unique identifier. The insert_id is also used to order log entries that have the same timestamp value.", - "type": "string" - }, - "metadata": { - "$ref": "MonitoredResourceMetadata", - "description": "Output only. Additional metadata about the monitored resource. Only k8s_container, k8s_pod, and k8s_node MonitoredResources have this field populated." - }, - "textPayload": { - "description": "The log entry payload, represented as a Unicode string (UTF-8).", - "type": "string" + "https://www.googleapis.com/auth/logging.admin": { + "description": "Administrate log data for your projects" }, - "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. Some Google Cloud Platform services use this field for their log entry payloads.", - "type": "object" + "https://www.googleapis.com/auth/logging.read": { + "description": "View log data for your projects" }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Optional. A set of user-defined (key, value) data that provides additional information about the log entry.", - "type": "object" + "https://www.googleapis.com/auth/logging.write": { + "description": "Submit log data for your projects" }, - "trace": { - "description": "Optional. Resource name of the trace associated with the log entry, if any. If it contains a relative resource name, the name is assumed to be relative to //tracing.googleapis.com. Example: projects/my-projectid/traces/06796866738c859f2f19b7cfb3214824", - "type": "string" + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" } - }, - "id": "LogEntry", - "description": "An individual entry in a log.", - "type": "object" - }, - "RequestLog": { - "description": "Complete log information about a single HTTP request to an App Engine application.", - "type": "object", - "properties": { - "ip": { - "description": "Origin IP address.", - "type": "string" - }, - "appId": { - "type": "string", - "description": "Application that handled this request." - }, - "appEngineRelease": { - "description": "App Engine release version.", - "type": "string" - }, - "method": { - "description": "Request method. Example: \"GET\", \"HEAD\", \"PUT\", \"POST\", \"DELETE\".", - "type": "string" - }, - "cost": { - "type": "number", - "description": "An indication of the relative cost of serving this request.", - "format": "double" - }, - "instanceId": { - "description": "An identifier for the instance that handled the request.", - "type": "string" - }, - "megaCycles": { - "description": "Number of CPU megacycles used to process request.", - "format": "int64", - "type": "string" - }, - "first": { - "description": "Whether this is the first RequestLog entry for this request. If an active request has several RequestLog entries written to Stackdriver Logging, then this field will be set for one of them.", - "type": "boolean" - }, - "versionId": { - "description": "Version of the application that handled this request.", - "type": "string" - }, - "moduleId": { - "type": "string", - "description": "Module of the application that handled this request." - }, - "endTime": { - "description": "Time when the request finished.", - "format": "google-datetime", - "type": "string" - }, - "userAgent": { - "description": "User agent that made the request.", - "type": "string" - }, - "wasLoadingRequest": { - "description": "Whether this was a loading request for the instance.", - "type": "boolean" - }, - "sourceReference": { - "type": "array", - "items": { - "$ref": "SourceReference" - }, - "description": "Source code for the application that handled this request. There can be more than one source reference per deployed application if source code is distributed among multiple repositories." - }, - "responseSize": { - "description": "Size in bytes sent back to client by request.", - "format": "int64", - "type": "string" - }, - "traceId": { - "description": "Stackdriver Trace identifier for this request.", - "type": "string" - }, - "line": { - "description": "A list of log lines emitted by the application while serving this request.", - "type": "array", - "items": { - "$ref": "LogLine" + } + } + }, + "rootUrl": "https://logging.googleapis.com/", + "ownerDomain": "google.com", + "name": "logging", + "batchPath": "batch", + "fullyEncodeReservedExpansion": true, + "title": "Stackdriver Logging API", + "ownerName": "Google", + "resources": { + "organizations": { + "resources": { + "exclusions": { + "methods": { + "list": { + "response": { + "$ref": "ListExclusionsResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "parent": { + "location": "path", + "description": "Required. The parent resource whose exclusions are to be listed.\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", + "required": true, + "type": "string", + "pattern": "^organizations/[^/]+$" + }, + "pageToken": { + "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", + "type": "string", + "location": "query" + } + }, + "flatPath": "v2/organizations/{organizationsId}/exclusions", + "path": "v2/{+parent}/exclusions", + "id": "logging.organizations.exclusions.list", + "description": "Lists all the exclusions in a parent resource." + }, + "get": { + "flatPath": "v2/organizations/{organizationsId}/exclusions/{exclusionsId}", + "path": "v2/{+name}", + "id": "logging.organizations.exclusions.get", + "description": "Gets the description of an exclusion.", + "response": { + "$ref": "LogExclusion" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "parameters": { + "name": { + "location": "path", + "description": "Required. The resource name of an existing exclusion:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", + "required": true, + "type": "string", + "pattern": "^organizations/[^/]+/exclusions/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ] + }, + "patch": { + "description": "Changes one or more properties of an existing exclusion.", + "request": { + "$ref": "LogExclusion" + }, + "response": { + "$ref": "LogExclusion" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "PATCH", + "parameters": { + "updateMask": { + "description": "Required. A nonempty list of fields to change in the existing exclusion. New values for the fields are taken from the corresponding fields in the LogExclusion included in this request. Fields not mentioned in update_mask are not changed and are ignored in the request.For example, to change the filter and description of an exclusion, specify an update_mask of \"filter,description\".", + "format": "google-fieldmask", + "type": "string", + "location": "query" + }, + "name": { + "description": "Required. The resource name of the exclusion to update:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", + "required": true, + "type": "string", + "pattern": "^organizations/[^/]+/exclusions/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "flatPath": "v2/organizations/{organizationsId}/exclusions/{exclusionsId}", + "path": "v2/{+name}", + "id": "logging.organizations.exclusions.patch" + }, + "create": { + "description": "Creates a new exclusion in a specified parent resource. Only log entries belonging to that resource can be excluded. You can have up to 10 exclusions in a resource.", + "request": { + "$ref": "LogExclusion" + }, + "httpMethod": "POST", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "LogExclusion" + }, + "parameters": { + "parent": { + "location": "path", + "description": "Required. The parent resource in which to create the exclusion:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\nExamples: \"projects/my-logging-project\", \"organizations/123456789\".", + "required": true, + "type": "string", + "pattern": "^organizations/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "flatPath": "v2/organizations/{organizationsId}/exclusions", + "id": "logging.organizations.exclusions.create", + "path": "v2/{+parent}/exclusions" + }, + "delete": { + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "parameters": { + "name": { + "description": "Required. The resource name of an existing exclusion to delete:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", + "required": true, + "type": "string", + "pattern": "^organizations/[^/]+/exclusions/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "flatPath": "v2/organizations/{organizationsId}/exclusions/{exclusionsId}", + "path": "v2/{+name}", + "id": "logging.organizations.exclusions.delete", + "description": "Deletes an exclusion." + } + } + }, + "logs": { + "methods": { + "list": { + "description": "Lists the logs in projects, organizations, folders, or billing accounts. Only logs that have entries are listed.", + "response": { + "$ref": "ListLogsResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], + "parameters": { + "pageToken": { + "location": "query", + "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", + "type": "string" + }, + "pageSize": { + "location": "query", + "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", + "format": "int32", + "type": "integer" + }, + "parent": { + "location": "path", + "description": "Required. The resource name that owns the logs:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", + "required": true, + "type": "string", + "pattern": "^organizations/[^/]+$" + } + }, + "flatPath": "v2/organizations/{organizationsId}/logs", + "path": "v2/{+parent}/logs", + "id": "logging.organizations.logs.list" + }, + "delete": { + "description": "Deletes all the log entries in a log. The log reappears if it receives new entries. Log entries written shortly before the delete operation might not be deleted.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "logName" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "parameters": { + "logName": { + "location": "path", + "description": "Required. The resource name of the log to delete:\n\"projects/[PROJECT_ID]/logs/[LOG_ID]\"\n\"organizations/[ORGANIZATION_ID]/logs/[LOG_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]\"\n\"folders/[FOLDER_ID]/logs/[LOG_ID]\"\n[LOG_ID] must be URL-encoded. For example, \"projects/my-project-id/logs/syslog\", \"organizations/1234567890/logs/cloudresourcemanager.googleapis.com%2Factivity\". For more information about log names, see LogEntry.", + "required": true, + "type": "string", + "pattern": "^organizations/[^/]+/logs/[^/]+$" + } + }, + "flatPath": "v2/organizations/{organizationsId}/logs/{logsId}", + "path": "v2/{+logName}", + "id": "logging.organizations.logs.delete" + } + } + }, + "sinks": { + "methods": { + "get": { + "description": "Gets a sink.", + "response": { + "$ref": "LogSink" + }, + "parameterOrder": [ + "sinkName" + ], + "httpMethod": "GET", + "parameters": { + "sinkName": { + "description": "Required. The resource name of the sink:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", + "required": true, + "type": "string", + "pattern": "^organizations/[^/]+/sinks/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], + "flatPath": "v2/organizations/{organizationsId}/sinks/{sinksId}", + "path": "v2/{+sinkName}", + "id": "logging.organizations.sinks.get" + }, + "patch": { + "request": { + "$ref": "LogSink" + }, + "description": "Updates a sink. This method replaces the following fields in the existing sink with values from the new sink: destination, and filter. The updated sink might also have a new writer_identity; see the unique_writer_identity field.", + "response": { + "$ref": "LogSink" + }, + "parameterOrder": [ + "sinkName" + ], + "httpMethod": "PATCH", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "parameters": { + "sinkName": { + "location": "path", + "description": "Required. The full resource name of the sink to update, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", + "required": true, + "type": "string", + "pattern": "^organizations/[^/]+/sinks/[^/]+$" + }, + "uniqueWriterIdentity": { + "location": "query", + "description": "Optional. See sinks.create for a description of this field. When updating a sink, the effect of this field on the value of writer_identity in the updated sink depends on both the old and new values of this field:\nIf the old and new values of this field are both false or both true, then there is no change to the sink's writer_identity.\nIf the old value is false and the new value is true, then writer_identity is changed to a unique service account.\nIt is an error if the old value is true and the new value is set to false or defaulted to false.", + "type": "boolean" + }, + "updateMask": { + "description": "Optional. Field mask that specifies the fields in sink that need an update. A sink field will be overwritten if, and only if, it is in the update mask. name and output only fields cannot be updated.An empty updateMask is temporarily treated as using the following mask for backwards compatibility purposes: destination,filter,includeChildren At some point in the future, behavior will be removed and specifying an empty updateMask will be an error.For a detailed FieldMask definition, see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmaskExample: updateMask=filter.", + "format": "google-fieldmask", + "type": "string", + "location": "query" + } + }, + "flatPath": "v2/organizations/{organizationsId}/sinks/{sinksId}", + "path": "v2/{+sinkName}", + "id": "logging.organizations.sinks.patch" + }, + "update": { + "description": "Updates a sink. This method replaces the following fields in the existing sink with values from the new sink: destination, and filter. The updated sink might also have a new writer_identity; see the unique_writer_identity field.", + "request": { + "$ref": "LogSink" + }, + "httpMethod": "PUT", + "parameterOrder": [ + "sinkName" + ], + "response": { + "$ref": "LogSink" + }, + "parameters": { + "sinkName": { + "description": "Required. The full resource name of the sink to update, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", + "required": true, + "type": "string", + "pattern": "^organizations/[^/]+/sinks/[^/]+$", + "location": "path" + }, + "uniqueWriterIdentity": { + "description": "Optional. See sinks.create for a description of this field. When updating a sink, the effect of this field on the value of writer_identity in the updated sink depends on both the old and new values of this field:\nIf the old and new values of this field are both false or both true, then there is no change to the sink's writer_identity.\nIf the old value is false and the new value is true, then writer_identity is changed to a unique service account.\nIt is an error if the old value is true and the new value is set to false or defaulted to false.", + "type": "boolean", + "location": "query" + }, + "updateMask": { + "location": "query", + "description": "Optional. Field mask that specifies the fields in sink that need an update. A sink field will be overwritten if, and only if, it is in the update mask. name and output only fields cannot be updated.An empty updateMask is temporarily treated as using the following mask for backwards compatibility purposes: destination,filter,includeChildren At some point in the future, behavior will be removed and specifying an empty updateMask will be an error.For a detailed FieldMask definition, see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmaskExample: updateMask=filter.", + "format": "google-fieldmask", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "flatPath": "v2/organizations/{organizationsId}/sinks/{sinksId}", + "id": "logging.organizations.sinks.update", + "path": "v2/{+sinkName}" + }, + "delete": { + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "sinkName" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "parameters": { + "sinkName": { + "description": "Required. The full resource name of the sink to delete, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", + "required": true, + "type": "string", + "pattern": "^organizations/[^/]+/sinks/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2/organizations/{organizationsId}/sinks/{sinksId}", + "path": "v2/{+sinkName}", + "id": "logging.organizations.sinks.delete", + "description": "Deletes a sink. If the sink has a unique writer_identity, then that service account is also deleted." + }, + "list": { + "description": "Lists sinks.", + "response": { + "$ref": "ListSinksResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "parameters": { + "pageToken": { + "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", + "type": "string", + "location": "query" + }, + "pageSize": { + "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "parent": { + "location": "path", + "description": "Required. The parent resource whose sinks are to be listed:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", + "required": true, + "type": "string", + "pattern": "^organizations/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], + "flatPath": "v2/organizations/{organizationsId}/sinks", + "path": "v2/{+parent}/sinks", + "id": "logging.organizations.sinks.list" + }, + "create": { + "response": { + "$ref": "LogSink" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "parameters": { + "uniqueWriterIdentity": { + "description": "Optional. Determines the kind of IAM identity returned as writer_identity in the new sink. If this value is omitted or set to false, and if the sink's parent is a project, then the value returned as writer_identity is the same group or service account used by Stackdriver Logging before the addition of writer identities to this API. The sink's destination must be in the same project as the sink itself.If this field is set to true, or if the sink is owned by a non-project resource such as an organization, then the value of writer_identity will be a unique service account used only for exports from the new sink. For more information, see writer_identity in LogSink.", + "type": "boolean", + "location": "query" + }, + "parent": { + "location": "path", + "description": "Required. The resource in which to create the sink:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\nExamples: \"projects/my-logging-project\", \"organizations/123456789\".", + "required": true, + "type": "string", + "pattern": "^organizations/[^/]+$" + } + }, + "flatPath": "v2/organizations/{organizationsId}/sinks", + "path": "v2/{+parent}/sinks", + "id": "logging.organizations.sinks.create", + "request": { + "$ref": "LogSink" + }, + "description": "Creates a sink that exports specified log entries to a destination. The export of newly-ingested log entries begins immediately, unless the sink's writer_identity is not permitted to write to the destination. A sink can export log entries only from the resource owning the sink." + } + } + } + } + }, + "entries": { + "methods": { + "list": { + "description": "Lists log entries. Use this method to retrieve log entries from Stackdriver Logging. For ways to export log entries, see Exporting Logs.", + "request": { + "$ref": "ListLogEntriesRequest" + }, + "response": { + "$ref": "ListLogEntriesResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], + "flatPath": "v2/entries:list", + "path": "v2/entries:list", + "id": "logging.entries.list" + }, + "write": { + "description": "Writes log entries to Stackdriver Logging. This API method is the only way to send log entries to Stackdriver Logging. This method is used, directly or indirectly, by the Stackdriver Logging agent (fluentd) and all logging libraries configured to use Stackdriver Logging. A single request may contain log entries for a maximum of 1000 different resources (projects, organizations, billing accounts or folders)", + "request": { + "$ref": "WriteLogEntriesRequest" + }, + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "WriteLogEntriesResponse" + }, + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.write" + ], + "flatPath": "v2/entries:write", + "id": "logging.entries.write", + "path": "v2/entries:write" + } + } + }, + "logs": { + "methods": { + "delete": { + "flatPath": "v2/{v2Id}/{v2Id1}/logs/{logsId}", + "id": "logging.logs.delete", + "path": "v2/{+logName}", + "description": "Deletes all the log entries in a log. The log reappears if it receives new entries. Log entries written shortly before the delete operation might not be deleted.", + "httpMethod": "DELETE", + "parameterOrder": [ + "logName" + ], + "response": { + "$ref": "Empty" + }, + "parameters": { + "logName": { + "description": "Required. The resource name of the log to delete:\n\"projects/[PROJECT_ID]/logs/[LOG_ID]\"\n\"organizations/[ORGANIZATION_ID]/logs/[LOG_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]\"\n\"folders/[FOLDER_ID]/logs/[LOG_ID]\"\n[LOG_ID] must be URL-encoded. For example, \"projects/my-project-id/logs/syslog\", \"organizations/1234567890/logs/cloudresourcemanager.googleapis.com%2Factivity\". For more information about log names, see LogEntry.", + "required": true, + "type": "string", + "pattern": "^[^/]+/[^/]+/logs/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ] + }, + "list": { + "description": "Lists the logs in projects, organizations, folders, or billing accounts. Only logs that have entries are listed.", + "response": { + "$ref": "ListLogsResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "parent": { + "location": "path", + "description": "Required. The resource name that owns the logs:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", + "required": true, + "type": "string", + "pattern": "^[^/]+/[^/]+$" + }, + "pageToken": { + "location": "query", + "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", + "type": "string" + } + }, + "flatPath": "v2/{v2Id}/{v2Id1}/logs", + "path": "v2/{+parent}/logs", + "id": "logging.logs.list" + } + } + }, + "sinks": { + "methods": { + "list": { + "response": { + "$ref": "ListSinksResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "parameters": { + "pageToken": { + "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", + "type": "string", + "location": "query" + }, + "pageSize": { + "location": "query", + "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", + "format": "int32", + "type": "integer" + }, + "parent": { + "description": "Required. The parent resource whose sinks are to be listed:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", + "required": true, + "type": "string", + "pattern": "^[^/]+/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], + "flatPath": "v2/{v2Id}/{v2Id1}/sinks", + "path": "v2/{+parent}/sinks", + "id": "logging.sinks.list", + "description": "Lists sinks." + }, + "get": { + "httpMethod": "GET", + "parameterOrder": [ + "sinkName" + ], + "response": { + "$ref": "LogSink" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], + "parameters": { + "sinkName": { + "description": "Required. The resource name of the sink:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", + "required": true, + "type": "string", + "pattern": "^[^/]+/[^/]+/sinks/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2/{v2Id}/{v2Id1}/sinks/{sinksId}", + "id": "logging.sinks.get", + "path": "v2/{+sinkName}", + "description": "Gets a sink." + }, + "update": { + "request": { + "$ref": "LogSink" + }, + "description": "Updates a sink. This method replaces the following fields in the existing sink with values from the new sink: destination, and filter. The updated sink might also have a new writer_identity; see the unique_writer_identity field.", + "response": { + "$ref": "LogSink" + }, + "parameterOrder": [ + "sinkName" + ], + "httpMethod": "PUT", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "parameters": { + "sinkName": { + "description": "Required. The full resource name of the sink to update, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", + "required": true, + "type": "string", + "pattern": "^[^/]+/[^/]+/sinks/[^/]+$", + "location": "path" + }, + "uniqueWriterIdentity": { + "location": "query", + "description": "Optional. See sinks.create for a description of this field. When updating a sink, the effect of this field on the value of writer_identity in the updated sink depends on both the old and new values of this field:\nIf the old and new values of this field are both false or both true, then there is no change to the sink's writer_identity.\nIf the old value is false and the new value is true, then writer_identity is changed to a unique service account.\nIt is an error if the old value is true and the new value is set to false or defaulted to false.", + "type": "boolean" + }, + "updateMask": { + "description": "Optional. Field mask that specifies the fields in sink that need an update. A sink field will be overwritten if, and only if, it is in the update mask. name and output only fields cannot be updated.An empty updateMask is temporarily treated as using the following mask for backwards compatibility purposes: destination,filter,includeChildren At some point in the future, behavior will be removed and specifying an empty updateMask will be an error.For a detailed FieldMask definition, see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmaskExample: updateMask=filter.", + "format": "google-fieldmask", + "type": "string", + "location": "query" + } + }, + "flatPath": "v2/{v2Id}/{v2Id1}/sinks/{sinksId}", + "path": "v2/{+sinkName}", + "id": "logging.sinks.update" + }, + "create": { + "response": { + "$ref": "LogSink" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "parameters": { + "uniqueWriterIdentity": { + "description": "Optional. Determines the kind of IAM identity returned as writer_identity in the new sink. If this value is omitted or set to false, and if the sink's parent is a project, then the value returned as writer_identity is the same group or service account used by Stackdriver Logging before the addition of writer identities to this API. The sink's destination must be in the same project as the sink itself.If this field is set to true, or if the sink is owned by a non-project resource such as an organization, then the value of writer_identity will be a unique service account used only for exports from the new sink. For more information, see writer_identity in LogSink.", + "type": "boolean", + "location": "query" + }, + "parent": { + "location": "path", + "description": "Required. The resource in which to create the sink:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\nExamples: \"projects/my-logging-project\", \"organizations/123456789\".", + "required": true, + "type": "string", + "pattern": "^[^/]+/[^/]+$" + } + }, + "flatPath": "v2/{v2Id}/{v2Id1}/sinks", + "path": "v2/{+parent}/sinks", + "id": "logging.sinks.create", + "request": { + "$ref": "LogSink" + }, + "description": "Creates a sink that exports specified log entries to a destination. The export of newly-ingested log entries begins immediately, unless the sink's writer_identity is not permitted to write to the destination. A sink can export log entries only from the resource owning the sink." + }, + "delete": { + "description": "Deletes a sink. If the sink has a unique writer_identity, then that service account is also deleted.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "sinkName" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "parameters": { + "sinkName": { + "description": "Required. The full resource name of the sink to delete, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", + "required": true, + "type": "string", + "pattern": "^[^/]+/[^/]+/sinks/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2/{v2Id}/{v2Id1}/sinks/{sinksId}", + "path": "v2/{+sinkName}", + "id": "logging.sinks.delete" + } + } + }, + "projects": { + "resources": { + "logs": { + "methods": { + "delete": { + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "logName" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "parameters": { + "logName": { + "description": "Required. The resource name of the log to delete:\n\"projects/[PROJECT_ID]/logs/[LOG_ID]\"\n\"organizations/[ORGANIZATION_ID]/logs/[LOG_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]\"\n\"folders/[FOLDER_ID]/logs/[LOG_ID]\"\n[LOG_ID] must be URL-encoded. For example, \"projects/my-project-id/logs/syslog\", \"organizations/1234567890/logs/cloudresourcemanager.googleapis.com%2Factivity\". For more information about log names, see LogEntry.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/logs/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2/projects/{projectsId}/logs/{logsId}", + "path": "v2/{+logName}", + "id": "logging.projects.logs.delete", + "description": "Deletes all the log entries in a log. The log reappears if it receives new entries. Log entries written shortly before the delete operation might not be deleted." + }, + "list": { + "description": "Lists the logs in projects, organizations, folders, or billing accounts. Only logs that have entries are listed.", + "response": { + "$ref": "ListLogsResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "parent": { + "location": "path", + "description": "Required. The resource name that owns the logs:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$" + }, + "pageToken": { + "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", + "type": "string", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], + "flatPath": "v2/projects/{projectsId}/logs", + "path": "v2/{+parent}/logs", + "id": "logging.projects.logs.list" + } + } + }, + "sinks": { + "methods": { + "get": { + "response": { + "$ref": "LogSink" + }, + "parameterOrder": [ + "sinkName" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], + "parameters": { + "sinkName": { + "location": "path", + "description": "Required. The resource name of the sink:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/sinks/[^/]+$" + } + }, + "flatPath": "v2/projects/{projectsId}/sinks/{sinksId}", + "path": "v2/{+sinkName}", + "id": "logging.projects.sinks.get", + "description": "Gets a sink." + }, + "patch": { + "httpMethod": "PATCH", + "parameterOrder": [ + "sinkName" + ], + "response": { + "$ref": "LogSink" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "parameters": { + "sinkName": { + "location": "path", + "description": "Required. The full resource name of the sink to update, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/sinks/[^/]+$" + }, + "uniqueWriterIdentity": { + "description": "Optional. See sinks.create for a description of this field. When updating a sink, the effect of this field on the value of writer_identity in the updated sink depends on both the old and new values of this field:\nIf the old and new values of this field are both false or both true, then there is no change to the sink's writer_identity.\nIf the old value is false and the new value is true, then writer_identity is changed to a unique service account.\nIt is an error if the old value is true and the new value is set to false or defaulted to false.", + "type": "boolean", + "location": "query" + }, + "updateMask": { + "location": "query", + "description": "Optional. Field mask that specifies the fields in sink that need an update. A sink field will be overwritten if, and only if, it is in the update mask. name and output only fields cannot be updated.An empty updateMask is temporarily treated as using the following mask for backwards compatibility purposes: destination,filter,includeChildren At some point in the future, behavior will be removed and specifying an empty updateMask will be an error.For a detailed FieldMask definition, see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmaskExample: updateMask=filter.", + "format": "google-fieldmask", + "type": "string" + } + }, + "flatPath": "v2/projects/{projectsId}/sinks/{sinksId}", + "id": "logging.projects.sinks.patch", + "path": "v2/{+sinkName}", + "request": { + "$ref": "LogSink" + }, + "description": "Updates a sink. This method replaces the following fields in the existing sink with values from the new sink: destination, and filter. The updated sink might also have a new writer_identity; see the unique_writer_identity field." + }, + "update": { + "description": "Updates a sink. This method replaces the following fields in the existing sink with values from the new sink: destination, and filter. The updated sink might also have a new writer_identity; see the unique_writer_identity field.", + "request": { + "$ref": "LogSink" + }, + "response": { + "$ref": "LogSink" + }, + "parameterOrder": [ + "sinkName" + ], + "httpMethod": "PUT", + "parameters": { + "sinkName": { + "description": "Required. The full resource name of the sink to update, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/sinks/[^/]+$", + "location": "path" + }, + "uniqueWriterIdentity": { + "description": "Optional. See sinks.create for a description of this field. When updating a sink, the effect of this field on the value of writer_identity in the updated sink depends on both the old and new values of this field:\nIf the old and new values of this field are both false or both true, then there is no change to the sink's writer_identity.\nIf the old value is false and the new value is true, then writer_identity is changed to a unique service account.\nIt is an error if the old value is true and the new value is set to false or defaulted to false.", + "type": "boolean", + "location": "query" + }, + "updateMask": { + "location": "query", + "description": "Optional. Field mask that specifies the fields in sink that need an update. A sink field will be overwritten if, and only if, it is in the update mask. name and output only fields cannot be updated.An empty updateMask is temporarily treated as using the following mask for backwards compatibility purposes: destination,filter,includeChildren At some point in the future, behavior will be removed and specifying an empty updateMask will be an error.For a detailed FieldMask definition, see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmaskExample: updateMask=filter.", + "format": "google-fieldmask", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "flatPath": "v2/projects/{projectsId}/sinks/{sinksId}", + "path": "v2/{+sinkName}", + "id": "logging.projects.sinks.update" + }, + "delete": { + "description": "Deletes a sink. If the sink has a unique writer_identity, then that service account is also deleted.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "sinkName" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "parameters": { + "sinkName": { + "description": "Required. The full resource name of the sink to delete, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/sinks/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2/projects/{projectsId}/sinks/{sinksId}", + "path": "v2/{+sinkName}", + "id": "logging.projects.sinks.delete" + }, + "list": { + "description": "Lists sinks.", + "httpMethod": "GET", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "ListSinksResponse" + }, + "parameters": { + "pageToken": { + "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", + "type": "string", + "location": "query" + }, + "pageSize": { + "location": "query", + "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", + "format": "int32", + "type": "integer" + }, + "parent": { + "description": "Required. The parent resource whose sinks are to be listed:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], + "flatPath": "v2/projects/{projectsId}/sinks", + "id": "logging.projects.sinks.list", + "path": "v2/{+parent}/sinks" + }, + "create": { + "description": "Creates a sink that exports specified log entries to a destination. The export of newly-ingested log entries begins immediately, unless the sink's writer_identity is not permitted to write to the destination. A sink can export log entries only from the resource owning the sink.", + "request": { + "$ref": "LogSink" + }, + "httpMethod": "POST", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "LogSink" + }, + "parameters": { + "uniqueWriterIdentity": { + "location": "query", + "description": "Optional. Determines the kind of IAM identity returned as writer_identity in the new sink. If this value is omitted or set to false, and if the sink's parent is a project, then the value returned as writer_identity is the same group or service account used by Stackdriver Logging before the addition of writer identities to this API. The sink's destination must be in the same project as the sink itself.If this field is set to true, or if the sink is owned by a non-project resource such as an organization, then the value of writer_identity will be a unique service account used only for exports from the new sink. For more information, see writer_identity in LogSink.", + "type": "boolean" + }, + "parent": { + "location": "path", + "description": "Required. The resource in which to create the sink:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\nExamples: \"projects/my-logging-project\", \"organizations/123456789\".", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "flatPath": "v2/projects/{projectsId}/sinks", + "id": "logging.projects.sinks.create", + "path": "v2/{+parent}/sinks" + } + } + }, + "exclusions": { + "methods": { + "delete": { + "description": "Deletes an exclusion.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "parameters": { + "name": { + "description": "Required. The resource name of an existing exclusion to delete:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/exclusions/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2/projects/{projectsId}/exclusions/{exclusionsId}", + "path": "v2/{+name}", + "id": "logging.projects.exclusions.delete" + }, + "list": { + "httpMethod": "GET", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "ListExclusionsResponse" + }, + "parameters": { + "pageToken": { + "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", + "type": "string", + "location": "query" + }, + "pageSize": { + "location": "query", + "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", + "format": "int32", + "type": "integer" + }, + "parent": { + "location": "path", + "description": "Required. The parent resource whose exclusions are to be listed.\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], + "flatPath": "v2/projects/{projectsId}/exclusions", + "id": "logging.projects.exclusions.list", + "path": "v2/{+parent}/exclusions", + "description": "Lists all the exclusions in a parent resource." + }, + "get": { + "description": "Gets the description of an exclusion.", + "response": { + "$ref": "LogExclusion" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "parameters": { + "name": { + "description": "Required. The resource name of an existing exclusion:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/exclusions/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], + "flatPath": "v2/projects/{projectsId}/exclusions/{exclusionsId}", + "path": "v2/{+name}", + "id": "logging.projects.exclusions.get" + }, + "patch": { + "flatPath": "v2/projects/{projectsId}/exclusions/{exclusionsId}", + "id": "logging.projects.exclusions.patch", + "path": "v2/{+name}", + "description": "Changes one or more properties of an existing exclusion.", + "request": { + "$ref": "LogExclusion" + }, + "httpMethod": "PATCH", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "LogExclusion" + }, + "parameters": { + "updateMask": { + "description": "Required. A nonempty list of fields to change in the existing exclusion. New values for the fields are taken from the corresponding fields in the LogExclusion included in this request. Fields not mentioned in update_mask are not changed and are ignored in the request.For example, to change the filter and description of an exclusion, specify an update_mask of \"filter,description\".", + "format": "google-fieldmask", + "type": "string", + "location": "query" + }, + "name": { + "description": "Required. The resource name of the exclusion to update:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/exclusions/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ] + }, + "create": { + "flatPath": "v2/projects/{projectsId}/exclusions", + "path": "v2/{+parent}/exclusions", + "id": "logging.projects.exclusions.create", + "request": { + "$ref": "LogExclusion" + }, + "description": "Creates a new exclusion in a specified parent resource. Only log entries belonging to that resource can be excluded. You can have up to 10 exclusions in a resource.", + "response": { + "$ref": "LogExclusion" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "parameters": { + "parent": { + "location": "path", + "description": "Required. The parent resource in which to create the exclusion:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\nExamples: \"projects/my-logging-project\", \"organizations/123456789\".", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$" + } + } + } } }, - "referrer": { - "type": "string", - "description": "Referrer URL of request." - }, - "taskQueueName": { - "description": "Queue name of the request, in the case of an offline request.", - "type": "string" - }, - "requestId": { - "description": "Globally unique identifier for a request, which is based on the request start time. Request IDs for requests which started later will compare greater as strings than those for requests which started earlier.", - "type": "string" - }, - "nickname": { - "type": "string", - "description": "The logged-in user who made the request.Most likely, this is the part of the user's email before the @ sign. The field value is the same for different requests from the same user, but different users can have similar names. This information is also available to the application via the App Engine Users API.This field will be populated starting with App Engine 1.9.21." - }, - "status": { - "description": "HTTP response status code. Example: 200, 404.", - "format": "int32", - "type": "integer" - }, - "resource": { - "description": "Contains the path and query portion of the URL that was requested. For example, if the URL was \"http://example.com/app?name=val\", the resource would be \"/app?name=val\". The fragment identifier, which is identified by the # character, is not included.", - "type": "string" - }, - "pendingTime": { - "description": "Time this request spent in the pending request queue.", - "format": "google-duration", - "type": "string" - }, - "taskName": { - "description": "Task name of the request, in the case of an offline request.", - "type": "string" - }, - "urlMapEntry": { - "description": "File or class that handled the request.", - "type": "string" - }, - "instanceIndex": { - "description": "If the instance processing this request belongs to a manually scaled module, then this is the 0-based index of the instance. Otherwise, this value is -1.", - "format": "int32", - "type": "integer" - }, - "finished": { - "description": "Whether this request is finished or active.", - "type": "boolean" - }, - "host": { - "description": "Internet host and port number of the resource being requested.", - "type": "string" - }, - "httpVersion": { - "type": "string", - "description": "HTTP version of request. Example: \"HTTP/1.1\"." - }, - "startTime": { - "description": "Time when the request started.", - "format": "google-datetime", - "type": "string" - }, - "latency": { - "description": "Latency of the request.", - "format": "google-duration", - "type": "string" - } - }, - "id": "RequestLog" - }, - "LogExclusion": { - "description": "Specifies a set of log entries that are not to be stored in Stackdriver Logging. If your project receives a large volume of logs, you might be able to use exclusions to reduce your chargeable logs. Exclusions are processed after log sinks, so you can export log entries before they are excluded. Audit log entries and log entries from Amazon Web Services are never excluded.", - "type": "object", - "properties": { - "filter": { - "description": "Required. An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. For example, the following filter matches 99% of low-severity log entries from load balancers:\n\"resource.type=http_load_balancer severity\u003cERROR sample(insertId, 0.99)\"\n", - "type": "string" - }, - "disabled": { - "description": "Optional. If set to True, then this exclusion is disabled and it does not exclude any log entries. You can use exclusions.patch to change the value of this field.", - "type": "boolean" - }, - "name": { - "description": "Required. A client-assigned identifier, such as \"load-balancer-exclusion\". Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods.", - "type": "string" - }, - "description": { - "description": "Optional. A description of this exclusion.", - "type": "string" - } - }, - "id": "LogExclusion" - }, - "ListMonitoredResourceDescriptorsResponse": { - "description": "Result returned from ListMonitoredResourceDescriptors.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "If there might be more results than those appearing in this response, then nextPageToken is included. To get the next set of results, call this method again using the value of nextPageToken as pageToken.", - "type": "string" - }, - "resourceDescriptors": { - "description": "A list of resource descriptors.", - "type": "array", - "items": { - "$ref": "MonitoredResourceDescriptor" + "metrics": { + "methods": { + "list": { + "description": "Lists logs-based metrics.", + "response": { + "$ref": "ListLogMetricsResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], + "parameters": { + "pageToken": { + "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", + "type": "string", + "location": "query" + }, + "pageSize": { + "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "parent": { + "location": "path", + "description": "Required. The name of the project containing the metrics:\n\"projects/[PROJECT_ID]\"\n", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$" + } + }, + "flatPath": "v2/projects/{projectsId}/metrics", + "path": "v2/{+parent}/metrics", + "id": "logging.projects.metrics.list" + }, + "get": { + "description": "Gets a logs-based metric.", + "response": { + "$ref": "LogMetric" + }, + "parameterOrder": [ + "metricName" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], + "parameters": { + "metricName": { + "description": "The resource name of the desired metric:\n\"projects/[PROJECT_ID]/metrics/[METRIC_ID]\"\n", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/metrics/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2/projects/{projectsId}/metrics/{metricsId}", + "path": "v2/{+metricName}", + "id": "logging.projects.metrics.get" + }, + "update": { + "flatPath": "v2/projects/{projectsId}/metrics/{metricsId}", + "id": "logging.projects.metrics.update", + "path": "v2/{+metricName}", + "request": { + "$ref": "LogMetric" + }, + "description": "Creates or updates a logs-based metric.", + "httpMethod": "PUT", + "parameterOrder": [ + "metricName" + ], + "response": { + "$ref": "LogMetric" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.write" + ], + "parameters": { + "metricName": { + "location": "path", + "description": "The resource name of the metric to update:\n\"projects/[PROJECT_ID]/metrics/[METRIC_ID]\"\nThe updated metric must be provided in the request and it's name field must be the same as [METRIC_ID] If the metric does not exist in [PROJECT_ID], then a new metric is created.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/metrics/[^/]+$" + } + } + }, + "create": { + "flatPath": "v2/projects/{projectsId}/metrics", + "path": "v2/{+parent}/metrics", + "id": "logging.projects.metrics.create", + "description": "Creates a logs-based metric.", + "request": { + "$ref": "LogMetric" + }, + "response": { + "$ref": "LogMetric" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "parameters": { + "parent": { + "description": "The resource name of the project in which to create the metric:\n\"projects/[PROJECT_ID]\"\nThe new metric must be provided in the request.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.write" + ] + }, + "delete": { + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "metricName" + ], + "httpMethod": "DELETE", + "parameters": { + "metricName": { + "location": "path", + "description": "The resource name of the metric to delete:\n\"projects/[PROJECT_ID]/metrics/[METRIC_ID]\"\n", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/metrics/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.write" + ], + "flatPath": "v2/projects/{projectsId}/metrics/{metricsId}", + "path": "v2/{+metricName}", + "id": "logging.projects.metrics.delete", + "description": "Deletes a logs-based metric." + } } } - }, - "id": "ListMonitoredResourceDescriptorsResponse" + } }, - "ListExclusionsResponse": { - "description": "Result returned from ListExclusions.", - "type": "object", - "properties": { - "exclusions": { - "description": "A list of exclusions.", - "type": "array", - "items": { - "$ref": "LogExclusion" + "billingAccounts": { + "resources": { + "logs": { + "methods": { + "delete": { + "description": "Deletes all the log entries in a log. The log reappears if it receives new entries. Log entries written shortly before the delete operation might not be deleted.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "logName" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "parameters": { + "logName": { + "location": "path", + "description": "Required. The resource name of the log to delete:\n\"projects/[PROJECT_ID]/logs/[LOG_ID]\"\n\"organizations/[ORGANIZATION_ID]/logs/[LOG_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]\"\n\"folders/[FOLDER_ID]/logs/[LOG_ID]\"\n[LOG_ID] must be URL-encoded. For example, \"projects/my-project-id/logs/syslog\", \"organizations/1234567890/logs/cloudresourcemanager.googleapis.com%2Factivity\". For more information about log names, see LogEntry.", + "required": true, + "type": "string", + "pattern": "^billingAccounts/[^/]+/logs/[^/]+$" + } + }, + "flatPath": "v2/billingAccounts/{billingAccountsId}/logs/{logsId}", + "path": "v2/{+logName}", + "id": "logging.billingAccounts.logs.delete" + }, + "list": { + "description": "Lists the logs in projects, organizations, folders, or billing accounts. Only logs that have entries are listed.", + "httpMethod": "GET", + "response": { + "$ref": "ListLogsResponse" + }, + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "location": "query", + "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", + "format": "int32", + "type": "integer" + }, + "parent": { + "location": "path", + "description": "Required. The resource name that owns the logs:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", + "required": true, + "type": "string", + "pattern": "^billingAccounts/[^/]+$" + }, + "pageToken": { + "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", + "type": "string", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], + "flatPath": "v2/billingAccounts/{billingAccountsId}/logs", + "id": "logging.billingAccounts.logs.list", + "path": "v2/{+parent}/logs" + } + } + }, + "sinks": { + "methods": { + "get": { + "description": "Gets a sink.", + "response": { + "$ref": "LogSink" + }, + "parameterOrder": [ + "sinkName" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], + "parameters": { + "sinkName": { + "location": "path", + "description": "Required. The resource name of the sink:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", + "required": true, + "type": "string", + "pattern": "^billingAccounts/[^/]+/sinks/[^/]+$" + } + }, + "flatPath": "v2/billingAccounts/{billingAccountsId}/sinks/{sinksId}", + "path": "v2/{+sinkName}", + "id": "logging.billingAccounts.sinks.get" + }, + "patch": { + "flatPath": "v2/billingAccounts/{billingAccountsId}/sinks/{sinksId}", + "id": "logging.billingAccounts.sinks.patch", + "path": "v2/{+sinkName}", + "description": "Updates a sink. This method replaces the following fields in the existing sink with values from the new sink: destination, and filter. The updated sink might also have a new writer_identity; see the unique_writer_identity field.", + "request": { + "$ref": "LogSink" + }, + "httpMethod": "PATCH", + "parameterOrder": [ + "sinkName" + ], + "response": { + "$ref": "LogSink" + }, + "parameters": { + "sinkName": { + "location": "path", + "description": "Required. The full resource name of the sink to update, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", + "required": true, + "type": "string", + "pattern": "^billingAccounts/[^/]+/sinks/[^/]+$" + }, + "uniqueWriterIdentity": { + "description": "Optional. See sinks.create for a description of this field. When updating a sink, the effect of this field on the value of writer_identity in the updated sink depends on both the old and new values of this field:\nIf the old and new values of this field are both false or both true, then there is no change to the sink's writer_identity.\nIf the old value is false and the new value is true, then writer_identity is changed to a unique service account.\nIt is an error if the old value is true and the new value is set to false or defaulted to false.", + "type": "boolean", + "location": "query" + }, + "updateMask": { + "location": "query", + "description": "Optional. Field mask that specifies the fields in sink that need an update. A sink field will be overwritten if, and only if, it is in the update mask. name and output only fields cannot be updated.An empty updateMask is temporarily treated as using the following mask for backwards compatibility purposes: destination,filter,includeChildren At some point in the future, behavior will be removed and specifying an empty updateMask will be an error.For a detailed FieldMask definition, see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmaskExample: updateMask=filter.", + "format": "google-fieldmask", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ] + }, + "update": { + "request": { + "$ref": "LogSink" + }, + "description": "Updates a sink. This method replaces the following fields in the existing sink with values from the new sink: destination, and filter. The updated sink might also have a new writer_identity; see the unique_writer_identity field.", + "response": { + "$ref": "LogSink" + }, + "parameterOrder": [ + "sinkName" + ], + "httpMethod": "PUT", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "parameters": { + "sinkName": { + "description": "Required. The full resource name of the sink to update, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", + "required": true, + "type": "string", + "pattern": "^billingAccounts/[^/]+/sinks/[^/]+$", + "location": "path" + }, + "uniqueWriterIdentity": { + "description": "Optional. See sinks.create for a description of this field. When updating a sink, the effect of this field on the value of writer_identity in the updated sink depends on both the old and new values of this field:\nIf the old and new values of this field are both false or both true, then there is no change to the sink's writer_identity.\nIf the old value is false and the new value is true, then writer_identity is changed to a unique service account.\nIt is an error if the old value is true and the new value is set to false or defaulted to false.", + "type": "boolean", + "location": "query" + }, + "updateMask": { + "location": "query", + "description": "Optional. Field mask that specifies the fields in sink that need an update. A sink field will be overwritten if, and only if, it is in the update mask. name and output only fields cannot be updated.An empty updateMask is temporarily treated as using the following mask for backwards compatibility purposes: destination,filter,includeChildren At some point in the future, behavior will be removed and specifying an empty updateMask will be an error.For a detailed FieldMask definition, see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmaskExample: updateMask=filter.", + "format": "google-fieldmask", + "type": "string" + } + }, + "flatPath": "v2/billingAccounts/{billingAccountsId}/sinks/{sinksId}", + "path": "v2/{+sinkName}", + "id": "logging.billingAccounts.sinks.update" + }, + "delete": { + "description": "Deletes a sink. If the sink has a unique writer_identity, then that service account is also deleted.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "sinkName" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "parameters": { + "sinkName": { + "description": "Required. The full resource name of the sink to delete, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", + "required": true, + "type": "string", + "pattern": "^billingAccounts/[^/]+/sinks/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2/billingAccounts/{billingAccountsId}/sinks/{sinksId}", + "path": "v2/{+sinkName}", + "id": "logging.billingAccounts.sinks.delete" + }, + "list": { + "description": "Lists sinks.", + "response": { + "$ref": "ListSinksResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "parameters": { + "pageToken": { + "location": "query", + "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "parent": { + "location": "path", + "description": "Required. The parent resource whose sinks are to be listed:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", + "required": true, + "type": "string", + "pattern": "^billingAccounts/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], + "flatPath": "v2/billingAccounts/{billingAccountsId}/sinks", + "path": "v2/{+parent}/sinks", + "id": "logging.billingAccounts.sinks.list" + }, + "create": { + "request": { + "$ref": "LogSink" + }, + "description": "Creates a sink that exports specified log entries to a destination. The export of newly-ingested log entries begins immediately, unless the sink's writer_identity is not permitted to write to the destination. A sink can export log entries only from the resource owning the sink.", + "response": { + "$ref": "LogSink" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "parameters": { + "uniqueWriterIdentity": { + "description": "Optional. Determines the kind of IAM identity returned as writer_identity in the new sink. If this value is omitted or set to false, and if the sink's parent is a project, then the value returned as writer_identity is the same group or service account used by Stackdriver Logging before the addition of writer identities to this API. The sink's destination must be in the same project as the sink itself.If this field is set to true, or if the sink is owned by a non-project resource such as an organization, then the value of writer_identity will be a unique service account used only for exports from the new sink. For more information, see writer_identity in LogSink.", + "type": "boolean", + "location": "query" + }, + "parent": { + "description": "Required. The resource in which to create the sink:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\nExamples: \"projects/my-logging-project\", \"organizations/123456789\".", + "required": true, + "type": "string", + "pattern": "^billingAccounts/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2/billingAccounts/{billingAccountsId}/sinks", + "path": "v2/{+parent}/sinks", + "id": "logging.billingAccounts.sinks.create" + } } }, - "nextPageToken": { - "description": "If there might be more results than appear in this response, then nextPageToken is included. To get the next set of results, call the same method again using the value of nextPageToken as pageToken.", - "type": "string" - } - }, - "id": "ListExclusionsResponse" - }, - "LogEntryOperation": { - "id": "LogEntryOperation", - "description": "Additional information about a potentially long-running operation with which a log entry is associated.", - "type": "object", - "properties": { - "producer": { - "description": "Optional. An arbitrary producer identifier. The combination of id and producer must be globally unique. Examples for producer: \"MyDivision.MyBigCompany.com\", \"github.com/MyProject/MyApplication\".", - "type": "string" - }, - "first": { - "description": "Optional. Set this to True if this is the first log entry in the operation.", - "type": "boolean" - }, - "last": { - "description": "Optional. Set this to True if this is the last log entry in the operation.", - "type": "boolean" - }, - "id": { - "description": "Optional. An arbitrary operation identifier. Log entries with the same identifier are assumed to be part of the same operation.", - "type": "string" + "exclusions": { + "methods": { + "list": { + "description": "Lists all the exclusions in a parent resource.", + "response": { + "$ref": "ListExclusionsResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], + "parameters": { + "pageSize": { + "location": "query", + "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", + "format": "int32", + "type": "integer" + }, + "parent": { + "description": "Required. The parent resource whose exclusions are to be listed.\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", + "required": true, + "type": "string", + "pattern": "^billingAccounts/[^/]+$", + "location": "path" + }, + "pageToken": { + "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", + "type": "string", + "location": "query" + } + }, + "flatPath": "v2/billingAccounts/{billingAccountsId}/exclusions", + "path": "v2/{+parent}/exclusions", + "id": "logging.billingAccounts.exclusions.list" + }, + "get": { + "description": "Gets the description of an exclusion.", + "httpMethod": "GET", + "response": { + "$ref": "LogExclusion" + }, + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "location": "path", + "description": "Required. The resource name of an existing exclusion:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", + "required": true, + "type": "string", + "pattern": "^billingAccounts/[^/]+/exclusions/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], + "flatPath": "v2/billingAccounts/{billingAccountsId}/exclusions/{exclusionsId}", + "id": "logging.billingAccounts.exclusions.get", + "path": "v2/{+name}" + }, + "patch": { + "description": "Changes one or more properties of an existing exclusion.", + "request": { + "$ref": "LogExclusion" + }, + "response": { + "$ref": "LogExclusion" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "PATCH", + "parameters": { + "updateMask": { + "description": "Required. A nonempty list of fields to change in the existing exclusion. New values for the fields are taken from the corresponding fields in the LogExclusion included in this request. Fields not mentioned in update_mask are not changed and are ignored in the request.For example, to change the filter and description of an exclusion, specify an update_mask of \"filter,description\".", + "format": "google-fieldmask", + "type": "string", + "location": "query" + }, + "name": { + "location": "path", + "description": "Required. The resource name of the exclusion to update:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", + "required": true, + "type": "string", + "pattern": "^billingAccounts/[^/]+/exclusions/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "flatPath": "v2/billingAccounts/{billingAccountsId}/exclusions/{exclusionsId}", + "path": "v2/{+name}", + "id": "logging.billingAccounts.exclusions.patch" + }, + "create": { + "request": { + "$ref": "LogExclusion" + }, + "description": "Creates a new exclusion in a specified parent resource. Only log entries belonging to that resource can be excluded. You can have up to 10 exclusions in a resource.", + "response": { + "$ref": "LogExclusion" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "parameters": { + "parent": { + "location": "path", + "description": "Required. The parent resource in which to create the exclusion:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\nExamples: \"projects/my-logging-project\", \"organizations/123456789\".", + "required": true, + "type": "string", + "pattern": "^billingAccounts/[^/]+$" + } + }, + "flatPath": "v2/billingAccounts/{billingAccountsId}/exclusions", + "path": "v2/{+parent}/exclusions", + "id": "logging.billingAccounts.exclusions.create" + }, + "delete": { + "description": "Deletes an exclusion.", + "httpMethod": "DELETE", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "parameters": { + "name": { + "description": "Required. The resource name of an existing exclusion to delete:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", + "required": true, + "type": "string", + "pattern": "^billingAccounts/[^/]+/exclusions/[^/]+$", + "location": "path" + } + }, + "flatPath": "v2/billingAccounts/{billingAccountsId}/exclusions/{exclusionsId}", + "id": "logging.billingAccounts.exclusions.delete", + "path": "v2/{+name}" + } + } } } }, - "LogMetric": { - "description": "Describes a logs-based metric. The value of the metric is the number of log entries that match a logs filter in a given time interval.Logs-based metric can also be used to extract values from logs and create a a distribution of the values. The distribution records the statistics of the extracted values along with an optional histogram of the values as specified by the bucket options.", - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Required. The client-assigned metric identifier. Examples: \"error_count\", \"nginx/requests\".Metric identifiers are limited to 100 characters and can include only the following characters: A-Z, a-z, 0-9, and the special characters _-.,+!*',()%/. The forward-slash character (/) denotes a hierarchy of name pieces, and it cannot be the first character of the name.The metric identifier in this field must not be URL-encoded (https://en.wikipedia.org/wiki/Percent-encoding). However, when the metric identifier appears as the [METRIC_ID] part of a metric_name API parameter, then the metric identifier must be URL-encoded. Example: \"projects/my-project/metrics/nginx%2Frequests\"." - }, - "labelExtractors": { - "additionalProperties": { - "type": "string" - }, - "description": "Optional. A map from a label key string to an extractor expression which is used to extract data from a log entry field and assign as the label value. Each label key specified in the LabelDescriptor must have an associated extractor expression in this map. The syntax of the extractor expression is the same as for the value_extractor field.The extracted value is converted to the type defined in the label descriptor. If the either the extraction or the type conversion fails, the label will have a default value. The default value for a string label is an empty string, for an integer label its 0, and for a boolean label its false.Note that there are upper bounds on the maximum number of labels and the number of active time series that are allowed in a project.", - "type": "object" - }, - "metricDescriptor": { - "$ref": "MetricDescriptor", - "description": "Optional. The metric descriptor associated with the logs-based metric. If unspecified, it uses a default metric descriptor with a DELTA metric kind, INT64 value type, with no labels and a unit of \"1\". Such a metric counts the number of log entries matching the filter expression.The name, type, and description fields in the metric_descriptor are output only, and is constructed using the name and description field in the LogMetric.To create a logs-based metric that records a distribution of log values, a DELTA metric kind with a DISTRIBUTION value type must be used along with a value_extractor expression in the LogMetric.Each label in the metric descriptor must have a matching label name as the key and an extractor expression as the value in the label_extractors map.The metric_kind and value_type fields in the metric_descriptor cannot be updated once initially configured. New labels can be added in the metric_descriptor, but existing labels cannot be modified except for their description." - }, - "version": { - "type": "string", - "enumDescriptions": [ - "Stackdriver Logging API v2.", - "Stackdriver Logging API v1." - ], - "enum": [ - "V2", - "V1" - ], - "description": "Deprecated. The API version that created or updated this metric. The v2 format is used by default and cannot be changed." - }, - "filter": { - "type": "string", - "description": "Required. An advanced logs filter which is used to match log entries. Example:\n\"resource.type=gae_app AND severity\u003e=ERROR\"\nThe maximum length of the filter is 20000 characters." - }, - "description": { - "description": "Optional. A description of this metric, which is used in documentation.", - "type": "string" - }, - "bucketOptions": { - "$ref": "BucketOptions", - "description": "Optional. The bucket_options are required when the logs-based metric is using a DISTRIBUTION value type and it describes the bucket boundaries used to create a histogram of the extracted values." + "folders": { + "resources": { + "logs": { + "methods": { + "delete": { + "flatPath": "v2/folders/{foldersId}/logs/{logsId}", + "path": "v2/{+logName}", + "id": "logging.folders.logs.delete", + "description": "Deletes all the log entries in a log. The log reappears if it receives new entries. Log entries written shortly before the delete operation might not be deleted.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "logName" + ], + "httpMethod": "DELETE", + "parameters": { + "logName": { + "description": "Required. The resource name of the log to delete:\n\"projects/[PROJECT_ID]/logs/[LOG_ID]\"\n\"organizations/[ORGANIZATION_ID]/logs/[LOG_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]\"\n\"folders/[FOLDER_ID]/logs/[LOG_ID]\"\n[LOG_ID] must be URL-encoded. For example, \"projects/my-project-id/logs/syslog\", \"organizations/1234567890/logs/cloudresourcemanager.googleapis.com%2Factivity\". For more information about log names, see LogEntry.", + "required": true, + "type": "string", + "pattern": "^folders/[^/]+/logs/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ] + }, + "list": { + "description": "Lists the logs in projects, organizations, folders, or billing accounts. Only logs that have entries are listed.", + "response": { + "$ref": "ListLogsResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "parameters": { + "pageToken": { + "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", + "type": "string", + "location": "query" + }, + "pageSize": { + "location": "query", + "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", + "format": "int32", + "type": "integer" + }, + "parent": { + "location": "path", + "description": "Required. The resource name that owns the logs:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", + "required": true, + "type": "string", + "pattern": "^folders/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], + "flatPath": "v2/folders/{foldersId}/logs", + "path": "v2/{+parent}/logs", + "id": "logging.folders.logs.list" + } + } }, - "valueExtractor": { - "description": "Optional. A value_extractor is required when using a distribution logs-based metric to extract the values to record from a log entry. Two functions are supported for value extraction: EXTRACT(field) or REGEXP_EXTRACT(field, regex). The argument are: 1. field: The name of the log entry field from which the value is to be extracted. 2. regex: A regular expression using the Google RE2 syntax (https://github.com/google/re2/wiki/Syntax) with a single capture group to extract data from the specified log entry field. The value of the field is converted to a string before applying the regex. It is an error to specify a regex that does not include exactly one capture group.The result of the extraction must be convertible to a double type, as the distribution always records double values. If either the extraction or the conversion to double fails, then those values are not recorded in the distribution.Example: REGEXP_EXTRACT(jsonPayload.request, \".*quantity=(\\d+).*\")", - "type": "string" - } - }, - "id": "LogMetric" - }, - "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", - "properties": { - "labels": { - "description": "Required. Values for all of the labels listed in the associated monitored resource descriptor. For example, Compute Engine VM instances use the labels \"project_id\", \"instance_id\", and \"zone\".", - "type": "object", - "additionalProperties": { - "type": "string" + "sinks": { + "methods": { + "list": { + "description": "Lists sinks.", + "response": { + "$ref": "ListSinksResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "parent": { + "location": "path", + "description": "Required. The parent resource whose sinks are to be listed:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", + "required": true, + "type": "string", + "pattern": "^folders/[^/]+$" + }, + "pageToken": { + "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", + "type": "string", + "location": "query" + } + }, + "flatPath": "v2/folders/{foldersId}/sinks", + "path": "v2/{+parent}/sinks", + "id": "logging.folders.sinks.list" + }, + "create": { + "httpMethod": "POST", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "LogSink" + }, + "parameters": { + "uniqueWriterIdentity": { + "location": "query", + "description": "Optional. Determines the kind of IAM identity returned as writer_identity in the new sink. If this value is omitted or set to false, and if the sink's parent is a project, then the value returned as writer_identity is the same group or service account used by Stackdriver Logging before the addition of writer identities to this API. The sink's destination must be in the same project as the sink itself.If this field is set to true, or if the sink is owned by a non-project resource such as an organization, then the value of writer_identity will be a unique service account used only for exports from the new sink. For more information, see writer_identity in LogSink.", + "type": "boolean" + }, + "parent": { + "description": "Required. The resource in which to create the sink:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\nExamples: \"projects/my-logging-project\", \"organizations/123456789\".", + "required": true, + "type": "string", + "pattern": "^folders/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "flatPath": "v2/folders/{foldersId}/sinks", + "id": "logging.folders.sinks.create", + "path": "v2/{+parent}/sinks", + "description": "Creates a sink that exports specified log entries to a destination. The export of newly-ingested log entries begins immediately, unless the sink's writer_identity is not permitted to write to the destination. A sink can export log entries only from the resource owning the sink.", + "request": { + "$ref": "LogSink" + } + }, + "get": { + "description": "Gets a sink.", + "response": { + "$ref": "LogSink" + }, + "parameterOrder": [ + "sinkName" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], + "parameters": { + "sinkName": { + "location": "path", + "description": "Required. The resource name of the sink:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", + "required": true, + "type": "string", + "pattern": "^folders/[^/]+/sinks/[^/]+$" + } + }, + "flatPath": "v2/folders/{foldersId}/sinks/{sinksId}", + "path": "v2/{+sinkName}", + "id": "logging.folders.sinks.get" + }, + "patch": { + "request": { + "$ref": "LogSink" + }, + "description": "Updates a sink. This method replaces the following fields in the existing sink with values from the new sink: destination, and filter. The updated sink might also have a new writer_identity; see the unique_writer_identity field.", + "httpMethod": "PATCH", + "parameterOrder": [ + "sinkName" + ], + "response": { + "$ref": "LogSink" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "parameters": { + "sinkName": { + "location": "path", + "description": "Required. The full resource name of the sink to update, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", + "required": true, + "type": "string", + "pattern": "^folders/[^/]+/sinks/[^/]+$" + }, + "uniqueWriterIdentity": { + "description": "Optional. See sinks.create for a description of this field. When updating a sink, the effect of this field on the value of writer_identity in the updated sink depends on both the old and new values of this field:\nIf the old and new values of this field are both false or both true, then there is no change to the sink's writer_identity.\nIf the old value is false and the new value is true, then writer_identity is changed to a unique service account.\nIt is an error if the old value is true and the new value is set to false or defaulted to false.", + "type": "boolean", + "location": "query" + }, + "updateMask": { + "description": "Optional. Field mask that specifies the fields in sink that need an update. A sink field will be overwritten if, and only if, it is in the update mask. name and output only fields cannot be updated.An empty updateMask is temporarily treated as using the following mask for backwards compatibility purposes: destination,filter,includeChildren At some point in the future, behavior will be removed and specifying an empty updateMask will be an error.For a detailed FieldMask definition, see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmaskExample: updateMask=filter.", + "format": "google-fieldmask", + "type": "string", + "location": "query" + } + }, + "flatPath": "v2/folders/{foldersId}/sinks/{sinksId}", + "id": "logging.folders.sinks.patch", + "path": "v2/{+sinkName}" + }, + "update": { + "description": "Updates a sink. This method replaces the following fields in the existing sink with values from the new sink: destination, and filter. The updated sink might also have a new writer_identity; see the unique_writer_identity field.", + "request": { + "$ref": "LogSink" + }, + "response": { + "$ref": "LogSink" + }, + "parameterOrder": [ + "sinkName" + ], + "httpMethod": "PUT", + "parameters": { + "sinkName": { + "location": "path", + "description": "Required. The full resource name of the sink to update, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", + "required": true, + "type": "string", + "pattern": "^folders/[^/]+/sinks/[^/]+$" + }, + "uniqueWriterIdentity": { + "location": "query", + "description": "Optional. See sinks.create for a description of this field. When updating a sink, the effect of this field on the value of writer_identity in the updated sink depends on both the old and new values of this field:\nIf the old and new values of this field are both false or both true, then there is no change to the sink's writer_identity.\nIf the old value is false and the new value is true, then writer_identity is changed to a unique service account.\nIt is an error if the old value is true and the new value is set to false or defaulted to false.", + "type": "boolean" + }, + "updateMask": { + "location": "query", + "description": "Optional. Field mask that specifies the fields in sink that need an update. A sink field will be overwritten if, and only if, it is in the update mask. name and output only fields cannot be updated.An empty updateMask is temporarily treated as using the following mask for backwards compatibility purposes: destination,filter,includeChildren At some point in the future, behavior will be removed and specifying an empty updateMask will be an error.For a detailed FieldMask definition, see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmaskExample: updateMask=filter.", + "format": "google-fieldmask", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "flatPath": "v2/folders/{foldersId}/sinks/{sinksId}", + "path": "v2/{+sinkName}", + "id": "logging.folders.sinks.update" + }, + "delete": { + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "sinkName" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "parameters": { + "sinkName": { + "location": "path", + "description": "Required. The full resource name of the sink to delete, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", + "required": true, + "type": "string", + "pattern": "^folders/[^/]+/sinks/[^/]+$" + } + }, + "flatPath": "v2/folders/{foldersId}/sinks/{sinksId}", + "path": "v2/{+sinkName}", + "id": "logging.folders.sinks.delete", + "description": "Deletes a sink. If the sink has a unique writer_identity, then that service account is also deleted." + } } }, - "type": { - "type": "string", - "description": "Required. The monitored resource type. This field must match the type field of a MonitoredResourceDescriptor object. For example, the type of a Compute Engine VM instance is gce_instance." - } - }, - "id": "MonitoredResource" - }, - "LogSink": { - "description": "Describes a sink used to export log entries to one of the following destinations in any project: a Cloud Storage bucket, a BigQuery dataset, or a Cloud Pub/Sub topic. A logs filter controls which log entries are exported. The sink must be created within a project, organization, billing account, or folder.", - "type": "object", - "properties": { - "outputVersionFormat": { - "type": "string", - "enumDescriptions": [ - "An unspecified format version that will default to V2.", - "LogEntry version 2 format.", - "LogEntry version 1 format." - ], - "enum": [ - "VERSION_FORMAT_UNSPECIFIED", - "V2", - "V1" - ], - "description": "Deprecated. The log entry format to use for this sink's exported log entries. The v2 format is used by default and cannot be changed." - }, - "name": { - "description": "Required. The client-assigned sink identifier, unique within the project. Example: \"my-syslog-errors-to-pubsub\". Sink identifiers are limited to 100 characters and can include only the following characters: upper and lower-case alphanumeric characters, underscores, hyphens, and periods.", - "type": "string" - }, - "includeChildren": { - "description": "Optional. This field applies only to sinks owned by organizations and folders. If the field is false, the default, only the logs owned by the sink's parent resource are available for export. If the field is true, then logs from all the projects, folders, and billing accounts contained in the sink's parent resource are also available for export. Whether a particular log entry from the children is exported depends on the sink's filter expression. For example, if this field is true, then the filter resource.type=gce_instance would export all Compute Engine VM instance log entries from all projects in the sink's parent. To only export entries from certain child projects, filter on the project part of the log name:\nlogName:(\"projects/test-project1/\" OR \"projects/test-project2/\") AND\nresource.type=gce_instance\n", - "type": "boolean" - }, - "destination": { - "description": "Required. The export destination:\n\"storage.googleapis.com/[GCS_BUCKET]\"\n\"bigquery.googleapis.com/projects/[PROJECT_ID]/datasets/[DATASET]\"\n\"pubsub.googleapis.com/projects/[PROJECT_ID]/topics/[TOPIC_ID]\"\nThe sink's writer_identity, set when the sink is created, must have permission to write to the destination or else the log entries are not exported. For more information, see Exporting Logs With Sinks.", - "type": "string" - }, - "filter": { - "description": "Optional. An advanced logs filter. The only exported log entries are those that are in the resource owning the sink and that match the filter. For example:\nlogName=\"projects/[PROJECT_ID]/logs/[LOG_ID]\" AND severity\u003e=ERROR\n", - "type": "string" - }, - "endTime": { - "description": "Deprecated. This field is ignored when creating or updating sinks.", - "format": "google-datetime", - "type": "string" - }, - "writerIdentity": { - "description": "Output only. An IAM identity—a service account or group—under which Stackdriver Logging writes the exported log entries to the sink's destination. This field is set by sinks.create and sinks.update, based on the setting of unique_writer_identity in those methods.Until you grant this identity write-access to the destination, log entry exports from this sink will fail. For more information, see Granting access for a resource. Consult the destination service's documentation to determine the appropriate IAM roles to assign to the identity.", - "type": "string" - }, - "startTime": { - "description": "Deprecated. This field is ignored when creating or updating sinks.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "LogSink" - }, - "ListLogsResponse": { - "type": "object", - "properties": { - "logNames": { - "description": "A list of log names. For example, \"projects/my-project/syslog\" or \"organizations/123/cloudresourcemanager.googleapis.com%2Factivity\".", - "type": "array", - "items": { - "type": "string" + "exclusions": { + "methods": { + "list": { + "httpMethod": "GET", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "ListExclusionsResponse" + }, + "parameters": { + "pageSize": { + "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "parent": { + "description": "Required. The parent resource whose exclusions are to be listed.\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", + "required": true, + "type": "string", + "pattern": "^folders/[^/]+$", + "location": "path" + }, + "pageToken": { + "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", + "type": "string", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], + "flatPath": "v2/folders/{foldersId}/exclusions", + "id": "logging.folders.exclusions.list", + "path": "v2/{+parent}/exclusions", + "description": "Lists all the exclusions in a parent resource." + }, + "get": { + "description": "Gets the description of an exclusion.", + "httpMethod": "GET", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "LogExclusion" + }, + "parameters": { + "name": { + "location": "path", + "description": "Required. The resource name of an existing exclusion:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", + "required": true, + "type": "string", + "pattern": "^folders/[^/]+/exclusions/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], + "flatPath": "v2/folders/{foldersId}/exclusions/{exclusionsId}", + "id": "logging.folders.exclusions.get", + "path": "v2/{+name}" + }, + "patch": { + "description": "Changes one or more properties of an existing exclusion.", + "request": { + "$ref": "LogExclusion" + }, + "httpMethod": "PATCH", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "LogExclusion" + }, + "parameters": { + "updateMask": { + "location": "query", + "description": "Required. A nonempty list of fields to change in the existing exclusion. New values for the fields are taken from the corresponding fields in the LogExclusion included in this request. Fields not mentioned in update_mask are not changed and are ignored in the request.For example, to change the filter and description of an exclusion, specify an update_mask of \"filter,description\".", + "format": "google-fieldmask", + "type": "string" + }, + "name": { + "description": "Required. The resource name of the exclusion to update:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", + "required": true, + "type": "string", + "pattern": "^folders/[^/]+/exclusions/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "flatPath": "v2/folders/{foldersId}/exclusions/{exclusionsId}", + "id": "logging.folders.exclusions.patch", + "path": "v2/{+name}" + }, + "create": { + "flatPath": "v2/folders/{foldersId}/exclusions", + "id": "logging.folders.exclusions.create", + "path": "v2/{+parent}/exclusions", + "description": "Creates a new exclusion in a specified parent resource. Only log entries belonging to that resource can be excluded. You can have up to 10 exclusions in a resource.", + "request": { + "$ref": "LogExclusion" + }, + "httpMethod": "POST", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "LogExclusion" + }, + "parameters": { + "parent": { + "location": "path", + "description": "Required. The parent resource in which to create the exclusion:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\nExamples: \"projects/my-logging-project\", \"organizations/123456789\".", + "required": true, + "type": "string", + "pattern": "^folders/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ] + }, + "delete": { + "description": "Deletes an exclusion.", + "httpMethod": "DELETE", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of an existing exclusion to delete:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", + "required": true, + "type": "string", + "pattern": "^folders/[^/]+/exclusions/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], + "flatPath": "v2/folders/{foldersId}/exclusions/{exclusionsId}", + "id": "logging.folders.exclusions.delete", + "path": "v2/{+name}" + } } - }, - "nextPageToken": { - "description": "If there might be more results than those appearing in this response, then nextPageToken is included. To get the next set of results, call this method again using the value of nextPageToken as pageToken.", - "type": "string" - } - }, - "id": "ListLogsResponse", - "description": "Result returned from ListLogs." - }, - "HttpRequest": { - "description": "A common proto for logging HTTP requests. Only contains semantics defined by the HTTP specification. Product-specific logging information MUST be defined in a separate message.", - "type": "object", - "properties": { - "cacheValidatedWithOriginServer": { - "description": "Whether or not the response was validated with the origin server before being served from cache. This field is only meaningful if cache_hit is True.", - "type": "boolean" - }, - "status": { - "description": "The response code indicating the status of response. Examples: 200, 404.", - "format": "int32", - "type": "integer" - }, - "referer": { - "description": "The referer URL of the request, as defined in HTTP/1.1 Header Field Definitions (http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html).", - "type": "string" - }, - "latency": { - "type": "string", - "description": "The request processing latency on the server, from the time the request was received until the response was sent.", - "format": "google-duration" - }, - "userAgent": { - "description": "The user agent sent by the client. Example: \"Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Q312461; .NET CLR 1.0.3705)\".", - "type": "string" - }, - "cacheFillBytes": { - "description": "The number of HTTP response bytes inserted into cache. Set only when a cache fill was attempted.", - "format": "int64", - "type": "string" - }, - "requestMethod": { - "description": "The request method. Examples: \"GET\", \"HEAD\", \"PUT\", \"POST\".", - "type": "string" - }, - "protocol": { - "description": "Protocol used for the request. Examples: \"HTTP/1.1\", \"HTTP/2\", \"websocket\"", - "type": "string" - }, - "responseSize": { - "description": "The size of the HTTP response message sent back to the client, in bytes, including the response headers and the response body.", - "format": "int64", - "type": "string" - }, - "requestSize": { - "description": "The size of the HTTP request message in bytes, including the request headers and the request body.", - "format": "int64", - "type": "string" - }, - "requestUrl": { - "description": "The scheme (http, https), the host name, the path and the query portion of the URL that was requested. Example: \"http://example.com/some/info?color=red\".", - "type": "string" - }, - "remoteIp": { - "description": "The IP address (IPv4 or IPv6) of the client that issued the HTTP request. Examples: \"192.168.1.1\", \"FE80::0202:B3FF:FE1E:8329\".", - "type": "string" - }, - "serverIp": { - "description": "The IP address (IPv4 or IPv6) of the origin server that the request was sent to.", - "type": "string" - }, - "cacheLookup": { - "description": "Whether or not a cache lookup was attempted.", - "type": "boolean" - }, - "cacheHit": { - "description": "Whether or not an entity was served from cache (with or without validation).", - "type": "boolean" } - }, - "id": "HttpRequest" + } }, - "ListSinksResponse": { - "description": "Result returned from ListSinks.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "If there might be more results than appear in this response, then nextPageToken is included. To get the next set of results, call the same method again using the value of nextPageToken as pageToken.", - "type": "string" + "exclusions": { + "methods": { + "list": { + "flatPath": "v2/{v2Id}/{v2Id1}/exclusions", + "path": "v2/{+parent}/exclusions", + "id": "logging.exclusions.list", + "description": "Lists all the exclusions in a parent resource.", + "response": { + "$ref": "ListExclusionsResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "parameters": { + "pageSize": { + "location": "query", + "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", + "format": "int32", + "type": "integer" + }, + "parent": { + "description": "Required. The parent resource whose exclusions are to be listed.\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", + "required": true, + "type": "string", + "pattern": "^[^/]+/[^/]+$", + "location": "path" + }, + "pageToken": { + "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", + "type": "string", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ] }, - "sinks": { - "description": "A list of sinks.", - "type": "array", - "items": { - "$ref": "LogSink" + "get": { + "flatPath": "v2/{v2Id}/{v2Id1}/exclusions/{exclusionsId}", + "path": "v2/{+name}", + "id": "logging.exclusions.get", + "description": "Gets the description of an exclusion.", + "response": { + "$ref": "LogExclusion" + }, + "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/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], + "parameters": { + "name": { + "description": "Required. The resource name of an existing exclusion:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", + "required": true, + "type": "string", + "pattern": "^[^/]+/[^/]+/exclusions/[^/]+$", + "location": "path" + } } - } - }, - "id": "ListSinksResponse" - }, - "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": { - "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" - }, - "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" + "patch": { + "flatPath": "v2/{v2Id}/{v2Id1}/exclusions/{exclusionsId}", + "id": "logging.exclusions.patch", + "path": "v2/{+name}", + "description": "Changes one or more properties of an existing exclusion.", + "request": { + "$ref": "LogExclusion" + }, + "httpMethod": "PATCH", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "LogExclusion" + }, + "parameters": { + "updateMask": { + "description": "Required. A nonempty list of fields to change in the existing exclusion. New values for the fields are taken from the corresponding fields in the LogExclusion included in this request. Fields not mentioned in update_mask are not changed and are ignored in the request.For example, to change the filter and description of an exclusion, specify an update_mask of \"filter,description\".", + "format": "google-fieldmask", + "type": "string", + "location": "query" + }, + "name": { + "description": "Required. The resource name of the exclusion to update:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", + "required": true, + "type": "string", + "pattern": "^[^/]+/[^/]+/exclusions/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ] }, - "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" + "create": { + "flatPath": "v2/{v2Id}/{v2Id1}/exclusions", + "id": "logging.exclusions.create", + "path": "v2/{+parent}/exclusions", + "description": "Creates a new exclusion in a specified parent resource. Only log entries belonging to that resource can be excluded. You can have up to 10 exclusions in a resource.", + "request": { + "$ref": "LogExclusion" + }, + "httpMethod": "POST", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "LogExclusion" + }, + "parameters": { + "parent": { + "location": "path", + "description": "Required. The parent resource in which to create the exclusion:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\nExamples: \"projects/my-logging-project\", \"organizations/123456789\".", + "required": true, + "type": "string", + "pattern": "^[^/]+/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ] }, - "labels": { - "type": "array", - "items": { - "$ref": "LabelDescriptor" + "delete": { + "flatPath": "v2/{v2Id}/{v2Id1}/exclusions/{exclusionsId}", + "path": "v2/{+name}", + "id": "logging.exclusions.delete", + "description": "Deletes an exclusion.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "parameters": { + "name": { + "location": "path", + "description": "Required. The resource name of an existing exclusion to delete:\n\"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]\"\n\"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]\"\n\"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]\"\nExample: \"projects/my-project-id/exclusions/my-exclusion-id\".", + "required": true, + "type": "string", + "pattern": "^[^/]+/[^/]+/exclusions/[^/]+$" + } }, - "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\"." + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ] } - }, - "id": "MonitoredResourceDescriptor" + } }, - "LogEntrySourceLocation": { - "description": "Additional information about the source code location that produced the log entry.", - "type": "object", - "properties": { - "line": { - "description": "Optional. Line within the source file. 1-based; 0 indicates no line number available.", - "format": "int64", - "type": "string" - }, - "file": { - "description": "Optional. Source file name. Depending on the runtime environment, this might be a simple name or a fully-qualified name.", - "type": "string" - }, - "function": { - "description": "Optional. Human-readable name of the function or method being invoked, with optional context such as the class or package name. This information may be used in contexts such as the logs viewer, where a file and line number are less meaningful. The format can vary by language. For example: qual.if.ied.Class.method (Java), dir/package.func (Go), function (Python).", - "type": "string" + "monitoredResourceDescriptors": { + "methods": { + "list": { + "description": "Lists the descriptors for monitored resource types used by Stackdriver Logging.", + "response": { + "$ref": "ListMonitoredResourceDescriptorsResponse" + }, + "parameterOrder": [], + "httpMethod": "GET", + "parameters": { + "pageToken": { + "location": "query", + "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", + "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/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], + "flatPath": "v2/monitoredResourceDescriptors", + "path": "v2/monitoredResourceDescriptors", + "id": "logging.monitoredResourceDescriptors.list" } - }, - "id": "LogEntrySourceLocation" + } + } + }, + "parameters": { + "upload_protocol": { + "location": "query", + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "type": "string" }, - "ListLogEntriesResponse": { - "description": "Result returned from ListLogEntries.", - "type": "object", - "properties": { - "entries": { - "description": "A list of log entries. If entries is empty, nextPageToken may still be returned, indicating that more entries may exist. See nextPageToken for more information.", - "type": "array", - "items": { - "$ref": "LogEntry" - } - }, - "nextPageToken": { - "description": "If there might be more results than those appearing in this response, then nextPageToken is included. To get the next set of results, call this method again using the value of nextPageToken as pageToken.If a value for next_page_token appears and the entries field is empty, it means that the search found no log entries so far but it did not have time to search all the possible log entries. Retry the method with this value for page_token to continue the search. Alternatively, consider speeding up the search by changing your filter to specify a single log name or resource type, or to narrow the time range of the search.", - "type": "string" - } - }, - "id": "ListLogEntriesResponse" + "prettyPrint": { + "location": "query", + "description": "Returns response with indentations and line breaks.", + "type": "boolean", + "default": "true" }, - "LogLine": { - "description": "Application log line emitted while processing a request.", - "type": "object", - "properties": { - "sourceLocation": { - "$ref": "SourceLocation", - "description": "Where in the source code this log message was written." - }, - "time": { - "description": "Approximate time when this log entry was made.", - "format": "google-datetime", - "type": "string" - }, - "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 a 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": "Severity of this log entry.", - "type": "string" - }, - "logMessage": { - "description": "App-provided log message.", - "type": "string" - } - }, - "id": "LogLine" + "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": { + "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" + }, + "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": { + "description": "OAuth bearer token.", + "type": "string", + "location": "query" } }, - "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://logging.googleapis.com/", + "kind": "discovery#restDescription", + "description": "Writes log entries and manages your Stackdriver Logging configuration.", + "servicePath": "", + "basePath": "", + "revision": "20180430", + "documentationLink": "https://cloud.google.com/logging/docs/", + "id": "logging:v2", + "discoveryVersion": "v1" } diff --git a/DiscoveryJson/logging_v2beta1.json b/DiscoveryJson/logging_v2beta1.json index 8db876a79e..d40f8fb8b6 100644 --- a/DiscoveryJson/logging_v2beta1.json +++ b/DiscoveryJson/logging_v2beta1.json @@ -1,40 +1,46 @@ { + "rootUrl": "https://logging.googleapis.com/", + "ownerDomain": "google.com", + "name": "logging", + "batchPath": "batch", + "fullyEncodeReservedExpansion": true, + "title": "Stackdriver Logging API", "ownerName": "Google", "resources": { "projects": { "resources": { - "metrics": { + "logs": { "methods": { "delete": { - "id": "logging.projects.metrics.delete", - "path": "v2beta1/{+metricName}", - "description": "Deletes a logs-based metric.", - "httpMethod": "DELETE", - "parameterOrder": [ - "metricName" - ], "response": { "$ref": "Empty" }, + "parameterOrder": [ + "logName" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin" + ], "parameters": { - "metricName": { - "description": "The resource name of the metric to delete:\n\"projects/[PROJECT_ID]/metrics/[METRIC_ID]\"\n", + "logName": { + "description": "Required. The resource name of the log to delete:\n\"projects/[PROJECT_ID]/logs/[LOG_ID]\"\n\"organizations/[ORGANIZATION_ID]/logs/[LOG_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]\"\n\"folders/[FOLDER_ID]/logs/[LOG_ID]\"\n[LOG_ID] must be URL-encoded. For example, \"projects/my-project-id/logs/syslog\", \"organizations/1234567890/logs/cloudresourcemanager.googleapis.com%2Factivity\". For more information about log names, see LogEntry.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/metrics/[^/]+$", + "pattern": "^projects/[^/]+/logs/[^/]+$", "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.write" - ], - "flatPath": "v2beta1/projects/{projectsId}/metrics/{metricsId}" + "flatPath": "v2beta1/projects/{projectsId}/logs/{logsId}", + "path": "v2beta1/{+logName}", + "id": "logging.projects.logs.delete", + "description": "Deletes all the log entries in a log. The log reappears if it receives new entries. Log entries written shortly before the delete operation might not be deleted." }, "list": { + "description": "Lists the logs in projects, organizations, folders, or billing accounts. Only logs that have entries are listed.", "response": { - "$ref": "ListLogMetricsResponse" + "$ref": "ListLogsResponse" }, "parameterOrder": [ "parent" @@ -47,98 +53,80 @@ "https://www.googleapis.com/auth/logging.read" ], "parameters": { + "parent": { + "pattern": "^projects/[^/]+$", + "location": "path", + "description": "Required. The resource name that owns the logs:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", + "required": true, + "type": "string" + }, "pageToken": { + "location": "query", "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", - "type": "string", - "location": "query" + "type": "string" }, "pageSize": { + "location": "query", "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", "format": "int32", - "type": "integer", - "location": "query" - }, - "parent": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "Required. The name of the project containing the metrics:\n\"projects/[PROJECT_ID]\"\n", - "required": true, - "type": "string" - } - }, - "flatPath": "v2beta1/projects/{projectsId}/metrics", - "path": "v2beta1/{+parent}/metrics", - "id": "logging.projects.metrics.list", - "description": "Lists logs-based metrics." - }, - "get": { - "response": { - "$ref": "LogMetric" - }, - "parameterOrder": [ - "metricName" - ], - "httpMethod": "GET", - "parameters": { - "metricName": { - "description": "The resource name of the desired metric:\n\"projects/[PROJECT_ID]/metrics/[METRIC_ID]\"\n", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/metrics/[^/]+$", - "location": "path" + "type": "integer" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "flatPath": "v2beta1/projects/{projectsId}/metrics/{metricsId}", - "path": "v2beta1/{+metricName}", - "id": "logging.projects.metrics.get", - "description": "Gets a logs-based metric." - }, + "flatPath": "v2beta1/projects/{projectsId}/logs", + "path": "v2beta1/{+parent}/logs", + "id": "logging.projects.logs.list" + } + } + }, + "sinks": { + "methods": { "update": { + "path": "v2beta1/{+sinkName}", + "id": "logging.projects.sinks.update", + "request": { + "$ref": "LogSink" + }, + "description": "Updates a sink. This method replaces the following fields in the existing sink with values from the new sink: destination, and filter. The updated sink might also have a new writer_identity; see the unique_writer_identity field.", "response": { - "$ref": "LogMetric" + "$ref": "LogSink" }, "parameterOrder": [ - "metricName" + "sinkName" ], "httpMethod": "PUT", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.write" + "https://www.googleapis.com/auth/logging.admin" ], "parameters": { - "metricName": { - "pattern": "^projects/[^/]+/metrics/[^/]+$", - "location": "path", - "description": "The resource name of the metric to update:\n\"projects/[PROJECT_ID]/metrics/[METRIC_ID]\"\nThe updated metric must be provided in the request and it's name field must be the same as [METRIC_ID] If the metric does not exist in [PROJECT_ID], then a new metric is created.", + "sinkName": { + "description": "Required. The full resource name of the sink to update, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", "required": true, - "type": "string" + "type": "string", + "pattern": "^projects/[^/]+/sinks/[^/]+$", + "location": "path" + }, + "uniqueWriterIdentity": { + "description": "Optional. See sinks.create for a description of this field. When updating a sink, the effect of this field on the value of writer_identity in the updated sink depends on both the old and new values of this field:\nIf the old and new values of this field are both false or both true, then there is no change to the sink's writer_identity.\nIf the old value is false and the new value is true, then writer_identity is changed to a unique service account.\nIt is an error if the old value is true and the new value is set to false or defaulted to false.", + "type": "boolean", + "location": "query" + }, + "updateMask": { + "description": "Optional. Field mask that specifies the fields in sink that need an update. A sink field will be overwritten if, and only if, it is in the update mask. name and output only fields cannot be updated.An empty updateMask is temporarily treated as using the following mask for backwards compatibility purposes: destination,filter,includeChildren At some point in the future, behavior will be removed and specifying an empty updateMask will be an error.For a detailed FieldMask definition, see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmaskExample: updateMask=filter.", + "format": "google-fieldmask", + "type": "string", + "location": "query" } }, - "flatPath": "v2beta1/projects/{projectsId}/metrics/{metricsId}", - "path": "v2beta1/{+metricName}", - "id": "logging.projects.metrics.update", - "request": { - "$ref": "LogMetric" - }, - "description": "Creates or updates a logs-based metric." + "flatPath": "v2beta1/projects/{projectsId}/sinks/{sinksId}" }, "create": { - "flatPath": "v2beta1/projects/{projectsId}/metrics", - "path": "v2beta1/{+parent}/metrics", - "id": "logging.projects.metrics.create", "request": { - "$ref": "LogMetric" + "$ref": "LogSink" }, - "description": "Creates a logs-based metric.", + "description": "Creates a sink that exports specified log entries to a destination. The export of newly-ingested log entries begins immediately, unless the sink's writer_identity is not permitted to write to the destination. A sink can export log entries only from the resource owning the sink.", "response": { - "$ref": "LogMetric" + "$ref": "LogSink" }, "parameterOrder": [ "parent" @@ -146,258 +134,276 @@ "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.write" + "https://www.googleapis.com/auth/logging.admin" ], "parameters": { "parent": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "The resource name of the project in which to create the metric:\n\"projects/[PROJECT_ID]\"\nThe new metric must be provided in the request.", + "description": "Required. The resource in which to create the sink:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\nExamples: \"projects/my-logging-project\", \"organizations/123456789\".", "required": true, - "type": "string" + "type": "string", + "pattern": "^projects/[^/]+$", + "location": "path" + }, + "uniqueWriterIdentity": { + "description": "Optional. Determines the kind of IAM identity returned as writer_identity in the new sink. If this value is omitted or set to false, and if the sink's parent is a project, then the value returned as writer_identity is the same group or service account used by Stackdriver Logging before the addition of writer identities to this API. The sink's destination must be in the same project as the sink itself.If this field is set to true, or if the sink is owned by a non-project resource such as an organization, then the value of writer_identity will be a unique service account used only for exports from the new sink. For more information, see writer_identity in LogSink.", + "type": "boolean", + "location": "query" } - } - } - } - }, - "logs": { - "methods": { + }, + "flatPath": "v2beta1/projects/{projectsId}/sinks", + "path": "v2beta1/{+parent}/sinks", + "id": "logging.projects.sinks.create" + }, "delete": { + "id": "logging.projects.sinks.delete", + "path": "v2beta1/{+sinkName}", + "description": "Deletes a sink. If the sink has a unique writer_identity, then that service account is also deleted.", "httpMethod": "DELETE", - "parameterOrder": [ - "logName" - ], "response": { "$ref": "Empty" }, + "parameterOrder": [ + "sinkName" + ], "parameters": { - "logName": { - "pattern": "^projects/[^/]+/logs/[^/]+$", - "location": "path", - "description": "Required. The resource name of the log to delete:\n\"projects/[PROJECT_ID]/logs/[LOG_ID]\"\n\"organizations/[ORGANIZATION_ID]/logs/[LOG_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]\"\n\"folders/[FOLDER_ID]/logs/[LOG_ID]\"\n[LOG_ID] must be URL-encoded. For example, \"projects/my-project-id/logs/syslog\", \"organizations/1234567890/logs/cloudresourcemanager.googleapis.com%2Factivity\". For more information about log names, see LogEntry.", + "sinkName": { + "description": "Required. The full resource name of the sink to delete, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", "required": true, - "type": "string" + "type": "string", + "pattern": "^projects/[^/]+/sinks/[^/]+$", + "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/logging.admin" ], - "flatPath": "v2beta1/projects/{projectsId}/logs/{logsId}", - "id": "logging.projects.logs.delete", - "path": "v2beta1/{+logName}", - "description": "Deletes all the log entries in a log. The log reappears if it receives new entries. Log entries written shortly before the delete operation might not be deleted." + "flatPath": "v2beta1/projects/{projectsId}/sinks/{sinksId}" }, "list": { + "path": "v2beta1/{+parent}/sinks", + "id": "logging.projects.sinks.list", + "description": "Lists sinks.", "response": { - "$ref": "ListLogsResponse" + "$ref": "ListSinksResponse" }, "parameterOrder": [ "parent" ], "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], "parameters": { - "parent": { - "description": "Required. The resource name that owns the logs:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - }, "pageToken": { "location": "query", "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", "type": "string" }, "pageSize": { - "location": "query", "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", "format": "int32", - "type": "integer" + "type": "integer", + "location": "query" + }, + "parent": { + "pattern": "^projects/[^/]+$", + "location": "path", + "description": "Required. The parent resource whose sinks are to be listed:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", + "required": true, + "type": "string" } }, + "flatPath": "v2beta1/projects/{projectsId}/sinks" + }, + "get": { + "response": { + "$ref": "LogSink" + }, + "parameterOrder": [ + "sinkName" + ], + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only", "https://www.googleapis.com/auth/logging.admin", "https://www.googleapis.com/auth/logging.read" ], - "flatPath": "v2beta1/projects/{projectsId}/logs", - "path": "v2beta1/{+parent}/logs", - "id": "logging.projects.logs.list", - "description": "Lists the logs in projects, organizations, folders, or billing accounts. Only logs that have entries are listed." + "parameters": { + "sinkName": { + "pattern": "^projects/[^/]+/sinks/[^/]+$", + "location": "path", + "description": "Required. The resource name of the sink:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", + "required": true, + "type": "string" + } + }, + "flatPath": "v2beta1/projects/{projectsId}/sinks/{sinksId}", + "path": "v2beta1/{+sinkName}", + "id": "logging.projects.sinks.get", + "description": "Gets a sink." } } }, - "sinks": { + "metrics": { "methods": { - "delete": { - "response": { - "$ref": "Empty" + "update": { + "description": "Creates or updates a logs-based metric.", + "request": { + "$ref": "LogMetric" }, + "httpMethod": "PUT", "parameterOrder": [ - "sinkName" + "metricName" ], - "httpMethod": "DELETE", + "response": { + "$ref": "LogMetric" + }, "parameters": { - "sinkName": { - "description": "Required. The full resource name of the sink to delete, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", + "metricName": { + "pattern": "^projects/[^/]+/metrics/[^/]+$", + "location": "path", + "description": "The resource name of the metric to update:\n\"projects/[PROJECT_ID]/metrics/[METRIC_ID]\"\nThe updated metric must be provided in the request and it's name field must be the same as [METRIC_ID] If the metric does not exist in [PROJECT_ID], then a new metric is created.", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/sinks/[^/]+$", - "location": "path" + "type": "string" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.write" ], - "flatPath": "v2beta1/projects/{projectsId}/sinks/{sinksId}", - "path": "v2beta1/{+sinkName}", - "id": "logging.projects.sinks.delete", - "description": "Deletes a sink. If the sink has a unique writer_identity, then that service account is also deleted." + "flatPath": "v2beta1/projects/{projectsId}/metrics/{metricsId}", + "id": "logging.projects.metrics.update", + "path": "v2beta1/{+metricName}" }, - "list": { - "httpMethod": "GET", + "create": { + "httpMethod": "POST", "parameterOrder": [ "parent" ], "response": { - "$ref": "ListSinksResponse" + "$ref": "LogMetric" }, "parameters": { - "pageToken": { - "location": "query", - "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", - "type": "string" - }, - "pageSize": { - "type": "integer", - "location": "query", - "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", - "format": "int32" - }, "parent": { + "pattern": "^projects/[^/]+$", "location": "path", - "description": "Required. The parent resource whose sinks are to be listed:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", + "description": "The resource name of the project in which to create the metric:\n\"projects/[PROJECT_ID]\"\nThe new metric must be provided in the request.", "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" + "type": "string" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.read" + "https://www.googleapis.com/auth/logging.write" ], - "flatPath": "v2beta1/projects/{projectsId}/sinks", - "id": "logging.projects.sinks.list", - "path": "v2beta1/{+parent}/sinks", - "description": "Lists sinks." + "flatPath": "v2beta1/projects/{projectsId}/metrics", + "id": "logging.projects.metrics.create", + "path": "v2beta1/{+parent}/metrics", + "description": "Creates a logs-based metric.", + "request": { + "$ref": "LogMetric" + } }, - "get": { - "description": "Gets a sink.", + "delete": { + "httpMethod": "DELETE", "response": { - "$ref": "LogSink" + "$ref": "Empty" }, "parameterOrder": [ - "sinkName" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.read" + "metricName" ], "parameters": { - "sinkName": { - "description": "Required. The resource name of the sink:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", + "metricName": { + "description": "The resource name of the metric to delete:\n\"projects/[PROJECT_ID]/metrics/[METRIC_ID]\"\n", "required": true, "type": "string", - "pattern": "^projects/[^/]+/sinks/[^/]+$", + "pattern": "^projects/[^/]+/metrics/[^/]+$", "location": "path" } }, - "flatPath": "v2beta1/projects/{projectsId}/sinks/{sinksId}", - "path": "v2beta1/{+sinkName}", - "id": "logging.projects.sinks.get" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.write" + ], + "flatPath": "v2beta1/projects/{projectsId}/metrics/{metricsId}", + "id": "logging.projects.metrics.delete", + "path": "v2beta1/{+metricName}", + "description": "Deletes a logs-based metric." }, - "update": { + "list": { "response": { - "$ref": "LogSink" + "$ref": "ListLogMetricsResponse" }, "parameterOrder": [ - "sinkName" + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" ], - "httpMethod": "PUT", "parameters": { - "sinkName": { - "location": "path", - "description": "Required. The full resource name of the sink to update, including the parent resource and the sink identifier:\n\"projects/[PROJECT_ID]/sinks/[SINK_ID]\"\n\"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]\"\n\"folders/[FOLDER_ID]/sinks/[SINK_ID]\"\nExample: \"projects/my-project-id/sinks/my-sink-id\".", - "required": true, + "pageToken": { + "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", "type": "string", - "pattern": "^projects/[^/]+/sinks/[^/]+$" + "location": "query" }, - "uniqueWriterIdentity": { - "type": "boolean", + "pageSize": { "location": "query", - "description": "Optional. See sinks.create for a description of this field. When updating a sink, the effect of this field on the value of writer_identity in the updated sink depends on both the old and new values of this field:\nIf the old and new values of this field are both false or both true, then there is no change to the sink's writer_identity.\nIf the old value is false and the new value is true, then writer_identity is changed to a unique service account.\nIt is an error if the old value is true and the new value is set to false or defaulted to false." + "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", + "format": "int32", + "type": "integer" }, - "updateMask": { - "description": "Optional. Field mask that specifies the fields in sink that need an update. A sink field will be overwritten if, and only if, it is in the update mask. name and output only fields cannot be updated.An empty updateMask is temporarily treated as using the following mask for backwards compatibility purposes: destination,filter,includeChildren At some point in the future, behavior will be removed and specifying an empty updateMask will be an error.For a detailed FieldMask definition, see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmaskExample: updateMask=filter.", - "format": "google-fieldmask", + "parent": { + "description": "Required. The name of the project containing the metrics:\n\"projects/[PROJECT_ID]\"\n", + "required": true, "type": "string", - "location": "query" + "pattern": "^projects/[^/]+$", + "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "flatPath": "v2beta1/projects/{projectsId}/sinks/{sinksId}", - "path": "v2beta1/{+sinkName}", - "id": "logging.projects.sinks.update", - "description": "Updates a sink. This method replaces the following fields in the existing sink with values from the new sink: destination, and filter. The updated sink might also have a new writer_identity; see the unique_writer_identity field.", - "request": { - "$ref": "LogSink" - } + "flatPath": "v2beta1/projects/{projectsId}/metrics", + "path": "v2beta1/{+parent}/metrics", + "id": "logging.projects.metrics.list", + "description": "Lists logs-based metrics." }, - "create": { - "id": "logging.projects.sinks.create", - "path": "v2beta1/{+parent}/sinks", - "description": "Creates a sink that exports specified log entries to a destination. The export of newly-ingested log entries begins immediately, unless the sink's writer_identity is not permitted to write to the destination. A sink can export log entries only from the resource owning the sink.", - "request": { - "$ref": "LogSink" + "get": { + "description": "Gets a logs-based metric.", + "response": { + "$ref": "LogMetric" }, - "httpMethod": "POST", "parameterOrder": [ - "parent" + "metricName" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" ], - "response": { - "$ref": "LogSink" - }, "parameters": { - "parent": { - "description": "Required. The resource in which to create the sink:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\nExamples: \"projects/my-logging-project\", \"organizations/123456789\".", + "metricName": { + "pattern": "^projects/[^/]+/metrics/[^/]+$", + "location": "path", + "description": "The resource name of the desired metric:\n\"projects/[PROJECT_ID]/metrics/[METRIC_ID]\"\n", "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - }, - "uniqueWriterIdentity": { - "type": "boolean", - "location": "query", - "description": "Optional. Determines the kind of IAM identity returned as writer_identity in the new sink. If this value is omitted or set to false, and if the sink's parent is a project, then the value returned as writer_identity is the same group or service account used by Stackdriver Logging before the addition of writer identities to this API. The sink's destination must be in the same project as the sink itself.If this field is set to true, or if the sink is owned by a non-project resource such as an organization, then the value of writer_identity will be a unique service account used only for exports from the new sink. For more information, see writer_identity in LogSink." + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin" - ], - "flatPath": "v2beta1/projects/{projectsId}/sinks" + "flatPath": "v2beta1/projects/{projectsId}/metrics/{metricsId}", + "path": "v2beta1/{+metricName}", + "id": "logging.projects.metrics.get" } } } @@ -408,6 +414,8 @@ "logs": { "methods": { "delete": { + "path": "v2beta1/{+logName}", + "id": "logging.billingAccounts.logs.delete", "description": "Deletes all the log entries in a log. The log reappears if it receives new entries. Log entries written shortly before the delete operation might not be deleted.", "response": { "$ref": "Empty" @@ -429,11 +437,11 @@ "type": "string" } }, - "flatPath": "v2beta1/billingAccounts/{billingAccountsId}/logs/{logsId}", - "path": "v2beta1/{+logName}", - "id": "logging.billingAccounts.logs.delete" + "flatPath": "v2beta1/billingAccounts/{billingAccountsId}/logs/{logsId}" }, "list": { + "path": "v2beta1/{+parent}/logs", + "id": "logging.billingAccounts.logs.list", "description": "Lists the logs in projects, organizations, folders, or billing accounts. Only logs that have entries are listed.", "response": { "$ref": "ListLogsResponse" @@ -449,28 +457,26 @@ "https://www.googleapis.com/auth/logging.read" ], "parameters": { + "parent": { + "pattern": "^billingAccounts/[^/]+$", + "location": "path", + "description": "Required. The resource name that owns the logs:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", + "required": true, + "type": "string" + }, "pageToken": { - "location": "query", "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", - "type": "string" + "type": "string", + "location": "query" }, "pageSize": { - "location": "query", "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", "format": "int32", - "type": "integer" - }, - "parent": { - "location": "path", - "description": "Required. The resource name that owns the logs:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\n", - "required": true, - "type": "string", - "pattern": "^billingAccounts/[^/]+$" + "type": "integer", + "location": "query" } }, - "flatPath": "v2beta1/billingAccounts/{billingAccountsId}/logs", - "path": "v2beta1/{+parent}/logs", - "id": "logging.billingAccounts.logs.list" + "flatPath": "v2beta1/billingAccounts/{billingAccountsId}/logs" } } } @@ -479,9 +485,6 @@ "monitoredResourceDescriptors": { "methods": { "list": { - "path": "v2beta1/monitoredResourceDescriptors", - "id": "logging.monitoredResourceDescriptors.list", - "description": "Lists the descriptors for monitored resource types used by Stackdriver Logging.", "response": { "$ref": "ListMonitoredResourceDescriptorsResponse" }, @@ -495,9 +498,9 @@ ], "parameters": { "pageToken": { - "location": "query", "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", - "type": "string" + "type": "string", + "location": "query" }, "pageSize": { "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of nextPageToken in the response indicates that more results might be available.", @@ -506,7 +509,10 @@ "location": "query" } }, - "flatPath": "v2beta1/monitoredResourceDescriptors" + "flatPath": "v2beta1/monitoredResourceDescriptors", + "path": "v2beta1/monitoredResourceDescriptors", + "id": "logging.monitoredResourceDescriptors.list", + "description": "Lists the descriptors for monitored resource types used by Stackdriver Logging." } } }, @@ -515,9 +521,6 @@ "logs": { "methods": { "delete": { - "path": "v2beta1/{+logName}", - "id": "logging.organizations.logs.delete", - "description": "Deletes all the log entries in a log. The log reappears if it receives new entries. Log entries written shortly before the delete operation might not be deleted.", "response": { "$ref": "Empty" }, @@ -531,31 +534,38 @@ ], "parameters": { "logName": { + "pattern": "^organizations/[^/]+/logs/[^/]+$", "location": "path", "description": "Required. The resource name of the log to delete:\n\"projects/[PROJECT_ID]/logs/[LOG_ID]\"\n\"organizations/[ORGANIZATION_ID]/logs/[LOG_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]\"\n\"folders/[FOLDER_ID]/logs/[LOG_ID]\"\n[LOG_ID] must be URL-encoded. For example, \"projects/my-project-id/logs/syslog\", \"organizations/1234567890/logs/cloudresourcemanager.googleapis.com%2Factivity\". For more information about log names, see LogEntry.", "required": true, - "type": "string", - "pattern": "^organizations/[^/]+/logs/[^/]+$" + "type": "string" } }, - "flatPath": "v2beta1/organizations/{organizationsId}/logs/{logsId}" + "flatPath": "v2beta1/organizations/{organizationsId}/logs/{logsId}", + "path": "v2beta1/{+logName}", + "id": "logging.organizations.logs.delete", + "description": "Deletes all the log entries in a log. The log reappears if it receives new entries. Log entries written shortly before the delete operation might not be deleted." }, "list": { - "id": "logging.organizations.logs.list", - "path": "v2beta1/{+parent}/logs", "description": "Lists the logs in projects, organizations, folders, or billing accounts. Only logs that have entries are listed.", - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], "response": { "$ref": "ListLogsResponse" }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/logging.admin", + "https://www.googleapis.com/auth/logging.read" + ], "parameters": { "pageToken": { + "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call.", "type": "string", - "location": "query", - "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. pageToken must be the value of nextPageToken from the previous response. The values of other method parameters should be identical to those in the previous call." + "location": "query" }, "pageSize": { "location": "query", @@ -571,13 +581,9 @@ "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.read" - ], - "flatPath": "v2beta1/organizations/{organizationsId}/logs" + "flatPath": "v2beta1/organizations/{organizationsId}/logs", + "path": "v2beta1/{+parent}/logs", + "id": "logging.organizations.logs.list" } } } @@ -585,92 +591,80 @@ }, "entries": { "methods": { - "list": { - "response": { - "$ref": "ListLogEntriesResponse" + "write": { + "description": "Writes log entries to Stackdriver Logging. This API method is the only way to send log entries to Stackdriver Logging. This method is used, directly or indirectly, by the Stackdriver Logging agent (fluentd) and all logging libraries configured to use Stackdriver Logging. A single request may contain log entries for a maximum of 1000 different resources (projects, organizations, billing accounts or folders)", + "request": { + "$ref": "WriteLogEntriesRequest" }, - "parameterOrder": [], "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "WriteLogEntriesResponse" + }, + "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only", "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.read" + "https://www.googleapis.com/auth/logging.write" ], - "parameters": {}, - "flatPath": "v2beta1/entries:list", - "path": "v2beta1/entries:list", - "id": "logging.entries.list", - "request": { - "$ref": "ListLogEntriesRequest" - }, - "description": "Lists log entries. Use this method to retrieve log entries from Stackdriver Logging. For ways to export log entries, see Exporting Logs." - }, - "write": { - "path": "v2beta1/entries:write", + "flatPath": "v2beta1/entries:write", "id": "logging.entries.write", - "request": { - "$ref": "WriteLogEntriesRequest" - }, - "description": "Writes log entries to Stackdriver Logging. This API method is the only way to send log entries to Stackdriver Logging. This method is used, directly or indirectly, by the Stackdriver Logging agent (fluentd) and all logging libraries configured to use Stackdriver Logging. A single request may contain log entries for a maximum of 1000 different resources (projects, organizations, billing accounts or folders)", + "path": "v2beta1/entries:write" + }, + "list": { + "httpMethod": "POST", + "parameterOrder": [], "response": { - "$ref": "WriteLogEntriesResponse" + "$ref": "ListLogEntriesResponse" }, - "parameterOrder": [], - "httpMethod": "POST", + "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.write" + "https://www.googleapis.com/auth/logging.read" ], - "parameters": {}, - "flatPath": "v2beta1/entries:write" + "flatPath": "v2beta1/entries:list", + "id": "logging.entries.list", + "path": "v2beta1/entries:list", + "description": "Lists log entries. Use this method to retrieve log entries from Stackdriver Logging. For ways to export log entries, see Exporting Logs.", + "request": { + "$ref": "ListLogEntriesRequest" + } } } } }, "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": { "location": "query", "description": "Selector specifying which fields to include in a partial response.", "type": "string" }, - "uploadType": { - "type": "string", - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." - }, "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", "enum": [ "1", "2" ], "description": "V1 error format.", - "type": "string" + "type": "string", + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query" }, "callback": { + "description": "JSONP", "type": "string", - "location": "query", - "description": "JSONP" + "location": "query" }, "alt": { - "location": "query", "description": "Data format for response.", "default": "json", "enum": [ @@ -683,7 +677,8 @@ "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.", @@ -691,229 +686,299 @@ "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" + "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." + "description": "Available 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" + "default": "true", + "location": "query" }, "oauth_token": { + "location": "query", "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" + "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" } }, "version": "v2beta1", "baseUrl": "https://logging.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Writes log entries and manages your Stackdriver Logging configuration.", "servicePath": "", + "description": "Writes log entries and manages your Stackdriver Logging configuration.", + "kind": "discovery#restDescription", "basePath": "", "revision": "20180430", - "id": "logging:v2beta1", "documentationLink": "https://cloud.google.com/logging/docs/", + "id": "logging:v2beta1", "discoveryVersion": "v1", "version_module": true, "schemas": { - "LabelDescriptor": { - "description": "A description of a label.", + "LogSink": { + "description": "Describes a sink used to export log entries to one of the following destinations in any project: a Cloud Storage bucket, a BigQuery dataset, or a Cloud Pub/Sub topic. A logs filter controls which log entries are exported. The sink must be created within a project, organization, billing account, or folder.", "type": "object", "properties": { - "key": { - "description": "The label key.", + "includeChildren": { + "description": "Optional. This field applies only to sinks owned by organizations and folders. If the field is false, the default, only the logs owned by the sink's parent resource are available for export. If the field is true, then logs from all the projects, folders, and billing accounts contained in the sink's parent resource are also available for export. Whether a particular log entry from the children is exported depends on the sink's filter expression. For example, if this field is true, then the filter resource.type=gce_instance would export all Compute Engine VM instance log entries from all projects in the sink's parent. To only export entries from certain child projects, filter on the project part of the log name:\nlogName:(\"projects/test-project1/\" OR \"projects/test-project2/\") AND\nresource.type=gce_instance\n", + "type": "boolean" + }, + "filter": { + "description": "Optional. An advanced logs filter. The only exported log entries are those that are in the resource owning the sink and that match the filter. For example:\nlogName=\"projects/[PROJECT_ID]/logs/[LOG_ID]\" AND severity\u003e=ERROR\n", "type": "string" }, - "description": { - "description": "A human-readable description for the label.", + "destination": { + "description": "Required. The export destination:\n\"storage.googleapis.com/[GCS_BUCKET]\"\n\"bigquery.googleapis.com/projects/[PROJECT_ID]/datasets/[DATASET]\"\n\"pubsub.googleapis.com/projects/[PROJECT_ID]/topics/[TOPIC_ID]\"\nThe sink's writer_identity, set when the sink is created, must have permission to write to the destination or else the log entries are not exported. For more information, see Exporting Logs With Sinks.", "type": "string" }, - "valueType": { - "enumDescriptions": [ - "A variable-length string. This is the default.", - "Boolean; true or false.", - "A 64-bit signed integer." - ], + "endTime": { + "description": "Deprecated. This field is ignored when creating or updating sinks.", + "format": "google-datetime", + "type": "string" + }, + "startTime": { + "description": "Deprecated. This field is ignored when creating or updating sinks.", + "format": "google-datetime", + "type": "string" + }, + "writerIdentity": { + "description": "Output only. An IAM identity—a service account or group—under which Stackdriver Logging writes the exported log entries to the sink's destination. This field is set by sinks.create and sinks.update, based on the setting of unique_writer_identity in those methods.Until you grant this identity write-access to the destination, log entry exports from this sink will fail. For more information, see Granting access for a resource. Consult the destination service's documentation to determine the appropriate IAM roles to assign to the identity.", + "type": "string" + }, + "outputVersionFormat": { "enum": [ - "STRING", - "BOOL", - "INT64" + "VERSION_FORMAT_UNSPECIFIED", + "V2", + "V1" ], - "description": "The type of data that can be assigned to the label.", + "description": "Deprecated. The log entry format to use for this sink's exported log entries. The v2 format is used by default and cannot be changed.", + "type": "string", + "enumDescriptions": [ + "An unspecified format version that will default to V2.", + "LogEntry version 2 format.", + "LogEntry version 1 format." + ] + }, + "name": { + "description": "Required. The client-assigned sink identifier, unique within the project. Example: \"my-syslog-errors-to-pubsub\". Sink identifiers are limited to 100 characters and can include only the following characters: upper and lower-case alphanumeric characters, underscores, hyphens, and periods.", "type": "string" } }, - "id": "LabelDescriptor" + "id": "LogSink" }, - "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", + "ListLogsResponse": { "properties": { - "systemLabels": { - "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", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - } + "nextPageToken": { + "description": "If there might be more results than those appearing in this response, then nextPageToken is included. To get the next set of results, call this method again using the value of nextPageToken as pageToken.", + "type": "string" }, - "userLabels": { - "additionalProperties": { + "logNames": { + "description": "A list of log names. For example, \"projects/my-project/syslog\" or \"organizations/123/cloudresourcemanager.googleapis.com%2Factivity\".", + "type": "array", + "items": { "type": "string" - }, - "description": "Output only. A map of user-defined metadata labels.", - "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": { - "exponentialBuckets": { - "description": "The exponential buckets.", - "$ref": "Exponential" - }, - "linearBuckets": { - "$ref": "Linear", - "description": "The linear bucket." - }, - "explicitBuckets": { - "$ref": "Explicit", - "description": "The explicit buckets." + } } }, - "id": "BucketOptions" + "id": "ListLogsResponse", + "description": "Result returned from ListLogs.", + "type": "object" }, - "ListLogMetricsResponse": { - "description": "Result returned from ListLogMetrics.", - "type": "object", + "ListSinksResponse": { "properties": { - "metrics": { - "description": "A list of logs-based metrics.", + "sinks": { + "description": "A list of sinks.", "type": "array", "items": { - "$ref": "LogMetric" + "$ref": "LogSink" } }, "nextPageToken": { - "description": "If there might be more results than appear in this response, then nextPageToken is included. To get the next set of results, call this method again using the value of nextPageToken as pageToken.", + "description": "If there might be more results than appear in this response, then nextPageToken is included. To get the next set of results, call the same method again using the value of nextPageToken as pageToken.", "type": "string" } }, - "id": "ListLogMetricsResponse" + "id": "ListSinksResponse", + "description": "Result returned from ListSinks.", + "type": "object" }, - "MetricDescriptor": { + "HttpRequest": { + "description": "A common proto for logging HTTP requests. Only contains semantics defined by the HTTP specification. Product-specific logging information MUST be defined in a separate message.", "type": "object", "properties": { - "unit": { - "type": "string", - "description": "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)\nbit bit\nBy byte\ns second\nmin minute\nh hour\nd dayPrefixes (PREFIX)\nk kilo (10**3)\nM mega (10**6)\nG giga (10**9)\nT tera (10**12)\nP peta (10**15)\nE exa (10**18)\nZ zetta (10**21)\nY yotta (10**24)\nm milli (10**-3)\nu micro (10**-6)\nn nano (10**-9)\np pico (10**-12)\nf femto (10**-15)\na atto (10**-18)\nz zepto (10**-21)\ny yocto (10**-24)\nKi kibi (2**10)\nMi mebi (2**20)\nGi gibi (2**30)\nTi tebi (2**40)GrammarThe grammar also includes these connectors:\n/ division (as an infix operator, e.g. 1/s).\n. multiplication (as an infix operator, e.g. GBy.d)The grammar for a unit is as follows:\nExpression = Component { \".\" Component } { \"/\" Component } ;\n\nComponent = ( [ PREFIX ] UNIT | \"%\" ) [ Annotation ]\n | Annotation\n | \"1\"\n ;\n\nAnnotation = \"{\" NAME \"}\" ;\nNotes:\nAnnotation 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.\nNAME is a sequence of non-blank printable ASCII characters not containing '{' or '}'.\n1 represents dimensionless value 1, such as in 1/s.\n% represents dimensionless value 1/100, and annotates values giving a percentage." - }, - "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" - } + "requestUrl": { + "description": "The scheme (http, https), the host name, the path and the query portion of the URL that was requested. Example: \"http://example.com/some/info?color=red\".", + "type": "string" }, - "name": { - "description": "The resource name of the metric descriptor.", + "serverIp": { + "description": "The IP address (IPv4 or IPv6) of the origin server that the request was sent to.", "type": "string" }, - "type": { - "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", + "remoteIp": { + "description": "The IP address (IPv4 or IPv6) of the client that issued the HTTP request. Examples: \"192.168.1.1\", \"FE80::0202:B3FF:FE1E:8329\".", "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", - "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." - ], - "enum": [ - "VALUE_TYPE_UNSPECIFIED", - "BOOL", - "INT64", - "DOUBLE", - "STRING", - "DISTRIBUTION", - "MONEY" - ] + "cacheLookup": { + "description": "Whether or not a cache lookup was attempted.", + "type": "boolean" }, - "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.", - "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." - ], - "enum": [ - "METRIC_KIND_UNSPECIFIED", - "GAUGE", - "DELTA", - "CUMULATIVE" - ] + "cacheHit": { + "description": "Whether or not an entity was served from cache (with or without validation).", + "type": "boolean" + }, + "cacheValidatedWithOriginServer": { + "description": "Whether or not the response was validated with the origin server before being served from cache. This field is only meaningful if cache_hit is True.", + "type": "boolean" + }, + "status": { + "description": "The response code indicating the status of response. Examples: 200, 404.", + "format": "int32", + "type": "integer" + }, + "referer": { + "description": "The referer URL of the request, as defined in HTTP/1.1 Header Field Definitions (http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html).", + "type": "string" + }, + "userAgent": { + "description": "The user agent sent by the client. Example: \"Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Q312461; .NET CLR 1.0.3705)\".", + "type": "string" + }, + "latency": { + "description": "The request processing latency on the server, from the time the request was received until the response was sent.", + "format": "google-duration", + "type": "string" + }, + "cacheFillBytes": { + "description": "The number of HTTP response bytes inserted into cache. Set only when a cache fill was attempted.", + "format": "int64", + "type": "string" + }, + "requestMethod": { + "description": "The request method. Examples: \"GET\", \"HEAD\", \"PUT\", \"POST\".", + "type": "string" + }, + "requestSize": { + "description": "The size of the HTTP request message in bytes, including the request headers and the request body.", + "format": "int64", + "type": "string" + }, + "responseSize": { + "description": "The size of the HTTP response message sent back to the client, in bytes, including the response headers and the response body.", + "format": "int64", + "type": "string" + }, + "protocol": { + "description": "Protocol used for the request. Examples: \"HTTP/1.1\", \"HTTP/2\", \"websocket\"", + "type": "string" + } + }, + "id": "HttpRequest" + }, + "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}\".", + "type": "string" }, "displayName": { - "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.", + "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": "A detailed description of the metric, which can be used in documentation.", + "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": "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." + "id": "MonitoredResourceDescriptor" }, - "LogEntry": { - "description": "An individual entry in a log.", + "LogEntrySourceLocation": { + "description": "Additional information about the source code location that produced the log entry.", "type": "object", "properties": { - "protoPayload": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "description": "The log entry payload, represented as a protocol buffer. Some Google Cloud Platform services use this field for their log entry payloads." + "file": { + "description": "Optional. Source file name. Depending on the runtime environment, this might be a simple name or a fully-qualified name.", + "type": "string" }, - "labels": { - "description": "Optional. A set of user-defined (key, value) data that provides additional information about the log entry.", - "type": "object", - "additionalProperties": { - "type": "string" - } + "function": { + "description": "Optional. Human-readable name of the function or method being invoked, with optional context such as the class or package name. This information may be used in contexts such as the logs viewer, where a file and line number are less meaningful. The format can vary by language. For example: qual.if.ied.Class.method (Java), dir/package.func (Go), function (Python).", + "type": "string" }, - "trace": { - "description": "Optional. Resource name of the trace associated with the log entry, if any. If it contains a relative resource name, the name is assumed to be relative to //tracing.googleapis.com. Example: projects/my-projectid/traces/06796866738c859f2f19b7cfb3214824", + "line": { + "description": "Optional. Line within the source file. 1-based; 0 indicates no line number available.", + "format": "int64", + "type": "string" + } + }, + "id": "LogEntrySourceLocation" + }, + "ListLogEntriesResponse": { + "properties": { + "nextPageToken": { + "description": "If there might be more results than those appearing in this response, then nextPageToken is included. To get the next set of results, call this method again using the value of nextPageToken as pageToken.If a value for next_page_token appears and the entries field is empty, it means that the search found no log entries so far but it did not have time to search all the possible log entries. Retry the method with this value for page_token to continue the search. Alternatively, consider speeding up the search by changing your filter to specify a single log name or resource type, or to narrow the time range of the search.", "type": "string" }, + "entries": { + "description": "A list of log entries. If entries is empty, nextPageToken may still be returned, indicating that more entries may exist. See nextPageToken for more information.", + "type": "array", + "items": { + "$ref": "LogEntry" + } + } + }, + "id": "ListLogEntriesResponse", + "description": "Result returned from ListLogEntries.", + "type": "object" + }, + "LogLine": { + "description": "Application log line emitted while processing a request.", + "type": "object", + "properties": { "severity": { - "description": "Optional. The severity of the log entry. The default value is LogSeverity.DEFAULT.", + "enum": [ + "DEFAULT", + "DEBUG", + "INFO", + "NOTICE", + "WARNING", + "ERROR", + "CRITICAL", + "ALERT", + "EMERGENCY" + ], + "description": "Severity of this log entry.", "type": "string", "enumDescriptions": [ "(0) The log entry has no assigned severity level.", @@ -925,799 +990,743 @@ "(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" ] }, - "sourceLocation": { - "description": "Optional. Source code location information associated with the log entry, if any.", - "$ref": "LogEntrySourceLocation" - }, - "spanId": { - "description": "Optional. The span ID within the trace associated with the log entry. For Stackdriver Trace spans, this is the same format that the Stackdriver Trace API v2 uses: a 16-character hexadecimal encoding of an 8-byte array, such as \u003ccode\u003e\"000000000000004a\"\u003c/code\u003e.", + "logMessage": { + "description": "App-provided log message.", "type": "string" }, - "receiveTimestamp": { - "description": "Output only. The time the log entry was received by Stackdriver Logging.", - "format": "google-datetime", - "type": "string" + "sourceLocation": { + "description": "Where in the source code this log message was written.", + "$ref": "SourceLocation" }, - "timestamp": { - "description": "Optional. The time the event described by the log entry occurred. This time is used to compute the log entry's age and to enforce the logs retention period. If this field is omitted in a new log entry, then Stackdriver Logging assigns it the current time. Timestamps have nanosecond accuracy, but trailing zeros in the fractional seconds might be omitted when the timestamp is displayed.Incoming log entries should have timestamps that are no more than the logs retention period in the past, and no more than 24 hours in the future. Log entries outside those time boundaries will not be available when calling entries.list, but those log entries can still be exported with LogSinks.", + "time": { + "description": "Approximate time when this log entry was made.", "format": "google-datetime", "type": "string" + } + }, + "id": "LogLine" + }, + "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", + "properties": { + "width": { + "description": "Must be greater than 0.", + "format": "double", + "type": "number" }, - "logName": { - "description": "Required. The resource name of the log to which this log entry belongs:\n\"projects/[PROJECT_ID]/logs/[LOG_ID]\"\n\"organizations/[ORGANIZATION_ID]/logs/[LOG_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]\"\n\"folders/[FOLDER_ID]/logs/[LOG_ID]\"\nA project number may optionally be used in place of PROJECT_ID. The project number is translated to its corresponding PROJECT_ID internally and the log_name field will contain PROJECT_ID in queries and exports.[LOG_ID] must be URL-encoded within log_name. Example: \"organizations/1234567890/logs/cloudresourcemanager.googleapis.com%2Factivity\". [LOG_ID] must be less than 512 characters long and can only include the following characters: upper and lower case alphanumeric characters, forward-slash, underscore, hyphen, and period.For backward compatibility, if log_name begins with a forward-slash, such as /projects/..., then the log entry is ingested as usual but the forward-slash is removed. Listing the log entry will not show the leading slash and filtering for a log name with a leading slash will never return any results.", - "type": "string" - }, - "resource": { - "$ref": "MonitoredResource", - "description": "Required. The primary monitored resource associated with this log entry. Example: a log entry that reports a database error would be associated with the monitored resource designating the particular database that reported the error." - }, - "httpRequest": { - "$ref": "HttpRequest", - "description": "Optional. Information about the HTTP request associated with this log entry, if applicable." - }, - "jsonPayload": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "The log entry payload, represented as a structure that is expressed as a JSON object.", - "type": "object" - }, - "operation": { - "description": "Optional. Information about an operation associated with the log entry, if applicable.", - "$ref": "LogEntryOperation" + "offset": { + "description": "Lower bound of the first bucket.", + "format": "double", + "type": "number" }, - "insertId": { - "description": "Optional. A unique identifier for the log entry. If you provide a value, then Stackdriver Logging considers other log entries in the same project, with the same timestamp, and with the same insert_id to be duplicates which can be removed. If omitted in new log entries, then Stackdriver Logging assigns its own unique identifier. The insert_id is also used to order log entries that have the same timestamp value.", + "numFiniteBuckets": { + "description": "Must be greater than 0.", + "format": "int32", + "type": "integer" + } + }, + "id": "Linear" + }, + "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" + }, + "SourceLocation": { + "properties": { + "file": { + "description": "Source file name. Depending on the runtime environment, this might be a simple name or a fully-qualified name.", "type": "string" }, - "metadata": { - "$ref": "MonitoredResourceMetadata", - "description": "Output only. Additional metadata about the monitored resource. Only k8s_container, k8s_pod, and k8s_node MonitoredResources have this field populated." + "functionName": { + "description": "Human-readable name of the function or method being invoked, with optional context such as the class or package name. This information is used in contexts such as the logs viewer, where a file and line number are less meaningful. The format can vary by language. For example: qual.if.ied.Class.method (Java), dir/package.func (Go), function (Python).", + "type": "string" }, - "textPayload": { - "description": "The log entry payload, represented as a Unicode string (UTF-8).", + "line": { + "description": "Line within the source file.", + "format": "int64", "type": "string" } }, - "id": "LogEntry" + "id": "SourceLocation", + "description": "Specifies a location in a source code file.", + "type": "object" }, - "RequestLog": { + "ListLogEntriesRequest": { + "description": "The parameters to ListLogEntries.", "type": "object", "properties": { - "megaCycles": { - "description": "Number of CPU megacycles used to process request.", - "format": "int64", + "pageToken": { + "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. page_token must be the value of next_page_token from the previous response. The values of other method parameters should be identical to those in the previous call.", "type": "string" }, - "first": { - "description": "Whether this is the first RequestLog entry for this request. If an active request has several RequestLog entries written to Stackdriver Logging, then this field will be set for one of them.", - "type": "boolean" + "pageSize": { + "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of next_page_token in the response indicates that more results might be available.", + "format": "int32", + "type": "integer" }, - "versionId": { - "description": "Version of the application that handled this request.", + "orderBy": { + "description": "Optional. How the results should be sorted. Presently, the only permitted values are \"timestamp asc\" (default) and \"timestamp desc\". The first option returns entries in order of increasing values of LogEntry.timestamp (oldest first), and the second option returns entries in order of decreasing timestamps (newest first). Entries with equal timestamps are returned in order of their insert_id values.", "type": "string" }, - "moduleId": { - "description": "Module of the application that handled this request.", - "type": "string" - }, - "endTime": { - "description": "Time when the request finished.", - "format": "google-datetime", - "type": "string" - }, - "userAgent": { - "description": "User agent that made the request.", - "type": "string" - }, - "wasLoadingRequest": { - "description": "Whether this was a loading request for the instance.", - "type": "boolean" - }, - "sourceReference": { - "description": "Source code for the application that handled this request. There can be more than one source reference per deployed application if source code is distributed among multiple repositories.", + "resourceNames": { + "description": "Required. Names of one or more parent resources from which to retrieve log entries:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\nProjects listed in the project_ids field are added to this list.", "type": "array", "items": { - "$ref": "SourceReference" + "type": "string" } }, - "responseSize": { - "description": "Size in bytes sent back to client by request.", - "format": "int64", - "type": "string" - }, - "traceId": { - "description": "Stackdriver Trace identifier for this request.", + "filter": { + "description": "Optional. A filter that chooses which log entries to return. See Advanced Logs Filters. Only log entries that match the filter are returned. An empty filter matches all log entries in the resources listed in resource_names. Referencing a parent resource that is not listed in resource_names will cause the filter to return no results. The maximum length of the filter is 20000 characters.", "type": "string" }, - "line": { + "projectIds": { + "description": "Deprecated. Use resource_names instead. One or more project identifiers or project numbers from which to retrieve log entries. Example: \"my-project-1A\". If present, these project identifiers are converted to resource name format and added to the list of resources in resource_names.", "type": "array", "items": { - "$ref": "LogLine" - }, - "description": "A list of log lines emitted by the application while serving this request." - }, - "referrer": { - "description": "Referrer URL of request.", - "type": "string" - }, - "taskQueueName": { - "description": "Queue name of the request, in the case of an offline request.", - "type": "string" - }, - "requestId": { - "type": "string", - "description": "Globally unique identifier for a request, which is based on the request start time. Request IDs for requests which started later will compare greater as strings than those for requests which started earlier." - }, - "nickname": { - "description": "The logged-in user who made the request.Most likely, this is the part of the user's email before the @ sign. The field value is the same for different requests from the same user, but different users can have similar names. This information is also available to the application via the App Engine Users API.This field will be populated starting with App Engine 1.9.21.", - "type": "string" - }, - "status": { - "description": "HTTP response status code. Example: 200, 404.", - "format": "int32", - "type": "integer" - }, - "resource": { - "description": "Contains the path and query portion of the URL that was requested. For example, if the URL was \"http://example.com/app?name=val\", the resource would be \"/app?name=val\". The fragment identifier, which is identified by the # character, is not included.", - "type": "string" - }, - "pendingTime": { - "description": "Time this request spent in the pending request queue.", - "format": "google-duration", + "type": "string" + } + } + }, + "id": "ListLogEntriesRequest" + }, + "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", + "properties": { + "bounds": { + "description": "The values must be monotonically increasing.", + "type": "array", + "items": { + "format": "double", + "type": "number" + } + } + }, + "id": "Explicit" + }, + "SourceReference": { + "properties": { + "revisionId": { + "description": "The canonical and persistent identifier of the deployed revision. Example (git): \"0035781c50ec7aa23385dc841529ce8a4b70db1b\"", "type": "string" }, - "taskName": { - "type": "string", - "description": "Task name of the request, in the case of an offline request." - }, - "urlMapEntry": { - "description": "File or class that handled the request.", + "repository": { + "description": "Optional. A URI string identifying the repository. Example: \"https://github.com/GoogleCloudPlatform/kubernetes.git\"", "type": "string" + } + }, + "id": "SourceReference", + "description": "A reference to a particular snapshot of the source tree used to build and deploy an application.", + "type": "object" + }, + "WriteLogEntriesResponse": { + "description": "Result returned from WriteLogEntries. empty", + "type": "object", + "properties": {}, + "id": "WriteLogEntriesResponse" + }, + "Exponential": { + "properties": { + "scale": { + "description": "Must be greater than 0.", + "format": "double", + "type": "number" }, - "instanceIndex": { - "description": "If the instance processing this request belongs to a manually scaled module, then this is the 0-based index of the instance. Otherwise, this value is -1.", + "numFiniteBuckets": { + "description": "Must be greater than 0.", "format": "int32", "type": "integer" }, - "finished": { - "description": "Whether this request is finished or active.", - "type": "boolean" - }, - "host": { - "description": "Internet host and port number of the resource being requested.", - "type": "string" - }, - "httpVersion": { - "description": "HTTP version of request. Example: \"HTTP/1.1\".", - "type": "string" - }, - "startTime": { - "type": "string", - "description": "Time when the request started.", - "format": "google-datetime" - }, - "latency": { - "description": "Latency of the request.", - "format": "google-duration", - "type": "string" - }, - "ip": { - "description": "Origin IP address.", - "type": "string" - }, - "appId": { - "description": "Application that handled this request.", - "type": "string" - }, - "appEngineRelease": { - "type": "string", - "description": "App Engine release version." - }, - "method": { - "description": "Request method. Example: \"GET\", \"HEAD\", \"PUT\", \"POST\", \"DELETE\".", - "type": "string" - }, - "cost": { - "description": "An indication of the relative cost of serving this request.", + "growthFactor": { + "description": "Must be greater than 1.", "format": "double", "type": "number" - }, - "instanceId": { - "description": "An identifier for the instance that handled the request.", - "type": "string" } }, - "id": "RequestLog", - "description": "Complete log information about a single HTTP request to an App Engine application." + "id": "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" }, - "ListMonitoredResourceDescriptorsResponse": { - "description": "Result returned from ListMonitoredResourceDescriptors.", + "WriteLogEntriesRequest": { + "description": "The parameters to WriteLogEntries.", "type": "object", "properties": { - "nextPageToken": { - "type": "string", - "description": "If there might be more results than those appearing in this response, then nextPageToken is included. To get the next set of results, call this method again using the value of nextPageToken as pageToken." + "logName": { + "description": "Optional. A default log resource name that is assigned to all log entries in entries that do not specify a value for log_name:\n\"projects/[PROJECT_ID]/logs/[LOG_ID]\"\n\"organizations/[ORGANIZATION_ID]/logs/[LOG_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]\"\n\"folders/[FOLDER_ID]/logs/[LOG_ID]\"\n[LOG_ID] must be URL-encoded. For example, \"projects/my-project-id/logs/syslog\" or \"organizations/1234567890/logs/cloudresourcemanager.googleapis.com%2Factivity\". For more information about log names, see LogEntry.", + "type": "string" }, - "resourceDescriptors": { - "description": "A list of resource descriptors.", + "entries": { + "description": "Required. The log entries to send to Stackdriver Logging. The order of log entries in this list does not matter. Values supplied in this method's log_name, resource, and labels fields are copied into those log entries in this list that do not include values for their corresponding fields. For more information, see the LogEntry type.If the timestamp or insert_id fields are missing in log entries, then this method supplies the current time or a unique identifier, respectively. The supplied values are chosen so that, among the log entries that did not supply their own values, the entries earlier in the list will sort before the entries later in the list. See the entries.list method.Log entries with timestamps that are more than the logs retention period in the past or more than 24 hours in the future will not be available when calling entries.list. However, those log entries can still be exported with LogSinks.To improve throughput and to avoid exceeding the quota limit for calls to entries.write, you should try to include several log entries in this list, rather than calling this method for each individual log entry.", "type": "array", "items": { - "$ref": "MonitoredResourceDescriptor" + "$ref": "LogEntry" } + }, + "partialSuccess": { + "description": "Optional. Whether valid entries should be written even if some other entries fail due to INVALID_ARGUMENT or PERMISSION_DENIED errors. If any entry is not written, then the response status is the error associated with one of the failed entries and the response includes error details keyed by the entries' zero-based index in the entries.write method.", + "type": "boolean" + }, + "dryRun": { + "description": "Optional. If true, the request should expect normal response, but the entries won't be persisted nor exported. Useful for checking whether the logging API endpoints are working properly before sending valuable data.", + "type": "boolean" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Default labels that are added to the labels field of all log entries in entries. If a log entry already has a label with the same key as a label in this parameter, then the log entry's label is not changed. See LogEntry.", + "type": "object" + }, + "resource": { + "$ref": "MonitoredResource", + "description": "Optional. A default monitored resource object that is assigned to all log entries in entries that do not specify a value for resource. Example:\n{ \"type\": \"gce_instance\",\n \"labels\": {\n \"zone\": \"us-central1-a\", \"instance_id\": \"00000000000000000000\" }}\nSee LogEntry." } }, - "id": "ListMonitoredResourceDescriptorsResponse" + "id": "WriteLogEntriesRequest" }, - "LogMetric": { - "description": "Describes a logs-based metric. The value of the metric is the number of log entries that match a logs filter in a given time interval.Logs-based metric can also be used to extract values from logs and create a a distribution of the values. The distribution records the statistics of the extracted values along with an optional histogram of the values as specified by the bucket options.", + "LabelDescriptor": { + "description": "A description of a label.", "type": "object", "properties": { - "version": { + "valueType": { "enum": [ - "V2", - "V1" + "STRING", + "BOOL", + "INT64" ], - "description": "Deprecated. The API version that created or updated this metric. The v2 format is used by default and cannot be changed.", + "description": "The type of data that can be assigned to the label.", "type": "string", "enumDescriptions": [ - "Stackdriver Logging API v2.", - "Stackdriver Logging API v1." + "A variable-length string. This is the default.", + "Boolean; true or false.", + "A 64-bit signed integer." ] }, - "metricDescriptor": { - "$ref": "MetricDescriptor", - "description": "Optional. The metric descriptor associated with the logs-based metric. If unspecified, it uses a default metric descriptor with a DELTA metric kind, INT64 value type, with no labels and a unit of \"1\". Such a metric counts the number of log entries matching the filter expression.The name, type, and description fields in the metric_descriptor are output only, and is constructed using the name and description field in the LogMetric.To create a logs-based metric that records a distribution of log values, a DELTA metric kind with a DISTRIBUTION value type must be used along with a value_extractor expression in the LogMetric.Each label in the metric descriptor must have a matching label name as the key and an extractor expression as the value in the label_extractors map.The metric_kind and value_type fields in the metric_descriptor cannot be updated once initially configured. New labels can be added in the metric_descriptor, but existing labels cannot be modified except for their description." - }, - "filter": { - "description": "Required. An advanced logs filter which is used to match log entries. Example:\n\"resource.type=gae_app AND severity\u003e=ERROR\"\nThe maximum length of the filter is 20000 characters.", + "key": { + "description": "The label key.", "type": "string" }, "description": { - "description": "Optional. A description of this metric, which is used in documentation.", - "type": "string" - }, - "valueExtractor": { - "description": "Optional. A value_extractor is required when using a distribution logs-based metric to extract the values to record from a log entry. Two functions are supported for value extraction: EXTRACT(field) or REGEXP_EXTRACT(field, regex). The argument are: 1. field: The name of the log entry field from which the value is to be extracted. 2. regex: A regular expression using the Google RE2 syntax (https://github.com/google/re2/wiki/Syntax) with a single capture group to extract data from the specified log entry field. The value of the field is converted to a string before applying the regex. It is an error to specify a regex that does not include exactly one capture group.The result of the extraction must be convertible to a double type, as the distribution always records double values. If either the extraction or the conversion to double fails, then those values are not recorded in the distribution.Example: REGEXP_EXTRACT(jsonPayload.request, \".*quantity=(\\d+).*\")", - "type": "string" - }, - "bucketOptions": { - "$ref": "BucketOptions", - "description": "Optional. The bucket_options are required when the logs-based metric is using a DISTRIBUTION value type and it describes the bucket boundaries used to create a histogram of the extracted values." - }, - "name": { - "description": "Required. The client-assigned metric identifier. Examples: \"error_count\", \"nginx/requests\".Metric identifiers are limited to 100 characters and can include only the following characters: A-Z, a-z, 0-9, and the special characters _-.,+!*',()%/. The forward-slash character (/) denotes a hierarchy of name pieces, and it cannot be the first character of the name.The metric identifier in this field must not be URL-encoded (https://en.wikipedia.org/wiki/Percent-encoding). However, when the metric identifier appears as the [METRIC_ID] part of a metric_name API parameter, then the metric identifier must be URL-encoded. Example: \"projects/my-project/metrics/nginx%2Frequests\".", + "description": "A human-readable description for the label.", "type": "string" - }, - "labelExtractors": { + } + }, + "id": "LabelDescriptor" + }, + "MonitoredResourceMetadata": { + "properties": { + "userLabels": { "additionalProperties": { "type": "string" }, - "description": "Optional. A map from a label key string to an extractor expression which is used to extract data from a log entry field and assign as the label value. Each label key specified in the LabelDescriptor must have an associated extractor expression in this map. The syntax of the extractor expression is the same as for the value_extractor field.The extracted value is converted to the type defined in the label descriptor. If the either the extraction or the type conversion fails, the label will have a default value. The default value for a string label is an empty string, for an integer label its 0, and for a boolean label its false.Note that there are upper bounds on the maximum number of labels and the number of active time series that are allowed in a project.", + "description": "Output only. A map of user-defined metadata labels.", + "type": "object" + }, + "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": "LogMetric" + "id": "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" }, - "LogEntryOperation": { - "type": "object", + "BucketOptions": { "properties": { - "last": { - "description": "Optional. Set this to True if this is the last log entry in the operation.", - "type": "boolean" - }, - "id": { - "description": "Optional. An arbitrary operation identifier. Log entries with the same identifier are assumed to be part of the same operation.", - "type": "string" + "exponentialBuckets": { + "description": "The exponential buckets.", + "$ref": "Exponential" }, - "producer": { - "description": "Optional. An arbitrary producer identifier. The combination of id and producer must be globally unique. Examples for producer: \"MyDivision.MyBigCompany.com\", \"github.com/MyProject/MyApplication\".", - "type": "string" + "linearBuckets": { + "$ref": "Linear", + "description": "The linear bucket." }, - "first": { - "description": "Optional. Set this to True if this is the first log entry in the operation.", - "type": "boolean" + "explicitBuckets": { + "description": "The explicit buckets.", + "$ref": "Explicit" } }, - "id": "LogEntryOperation", - "description": "Additional information about a potentially long-running operation with which a log entry is associated." + "id": "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" }, - "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", + "ListLogMetricsResponse": { "properties": { - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Required. Values for all of the labels listed in the associated monitored resource descriptor. For example, Compute Engine VM instances use the labels \"project_id\", \"instance_id\", and \"zone\".", - "type": "object" - }, - "type": { - "description": "Required. The monitored resource type. This field must match the type field of a MonitoredResourceDescriptor object. For example, the type of a Compute Engine VM instance is gce_instance.", + "nextPageToken": { + "description": "If there might be more results than appear in this response, then nextPageToken is included. To get the next set of results, call this method again using the value of nextPageToken as pageToken.", "type": "string" + }, + "metrics": { + "description": "A list of logs-based metrics.", + "type": "array", + "items": { + "$ref": "LogMetric" + } } }, - "id": "MonitoredResource" + "id": "ListLogMetricsResponse", + "description": "Result returned from ListLogMetrics.", + "type": "object" }, - "LogSink": { - "description": "Describes a sink used to export log entries to one of the following destinations in any project: a Cloud Storage bucket, a BigQuery dataset, or a Cloud Pub/Sub topic. A logs filter controls which log entries are exported. The sink must be created within a project, organization, billing account, or folder.", + "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", "properties": { - "endTime": { - "description": "Deprecated. This field is ignored when creating or updating sinks.", - "format": "google-datetime", - "type": "string" - }, - "startTime": { - "type": "string", - "description": "Deprecated. This field is ignored when creating or updating sinks.", - "format": "google-datetime" - }, - "writerIdentity": { - "description": "Output only. An IAM identity—a service account or group—under which Stackdriver Logging writes the exported log entries to the sink's destination. This field is set by sinks.create and sinks.update, based on the setting of unique_writer_identity in those methods.Until you grant this identity write-access to the destination, log entry exports from this sink will fail. For more information, see Granting access for a resource. Consult the destination service's documentation to determine the appropriate IAM roles to assign to the identity.", + "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." + ], + "enum": [ + "VALUE_TYPE_UNSPECIFIED", + "BOOL", + "INT64", + "DOUBLE", + "STRING", + "DISTRIBUTION", + "MONEY" + ], + "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" }, - "outputVersionFormat": { - "type": "string", + "metricKind": { "enumDescriptions": [ - "An unspecified format version that will default to V2.", - "LogEntry version 2 format.", - "LogEntry version 1 format." + "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." ], "enum": [ - "VERSION_FORMAT_UNSPECIFIED", - "V2", - "V1" + "METRIC_KIND_UNSPECIFIED", + "GAUGE", + "DELTA", + "CUMULATIVE" ], - "description": "Deprecated. The log entry format to use for this sink's exported log entries. The v2 format is used by default and cannot be changed." - }, - "name": { - "type": "string", - "description": "Required. The client-assigned sink identifier, unique within the project. Example: \"my-syslog-errors-to-pubsub\". Sink identifiers are limited to 100 characters and can include only the following characters: upper and lower-case alphanumeric characters, underscores, hyphens, and periods." - }, - "includeChildren": { - "description": "Optional. This field applies only to sinks owned by organizations and folders. If the field is false, the default, only the logs owned by the sink's parent resource are available for export. If the field is true, then logs from all the projects, folders, and billing accounts contained in the sink's parent resource are also available for export. Whether a particular log entry from the children is exported depends on the sink's filter expression. For example, if this field is true, then the filter resource.type=gce_instance would export all Compute Engine VM instance log entries from all projects in the sink's parent. To only export entries from certain child projects, filter on the project part of the log name:\nlogName:(\"projects/test-project1/\" OR \"projects/test-project2/\") AND\nresource.type=gce_instance\n", - "type": "boolean" + "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" }, - "destination": { - "description": "Required. The export destination:\n\"storage.googleapis.com/[GCS_BUCKET]\"\n\"bigquery.googleapis.com/projects/[PROJECT_ID]/datasets/[DATASET]\"\n\"pubsub.googleapis.com/projects/[PROJECT_ID]/topics/[TOPIC_ID]\"\nThe sink's writer_identity, set when the sink is created, must have permission to write to the destination or else the log entries are not exported. For more information, see Exporting Logs With Sinks.", + "displayName": { + "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" }, - "filter": { - "description": "Optional. An advanced logs filter. The only exported log entries are those that are in the resource owning the sink and that match the filter. For example:\nlogName=\"projects/[PROJECT_ID]/logs/[LOG_ID]\" AND severity\u003e=ERROR\n", + "description": { + "description": "A detailed description of the metric, which can be used in documentation.", "type": "string" - } - }, - "id": "LogSink" - }, - "ListLogsResponse": { - "description": "Result returned from ListLogs.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "If there might be more results than those appearing in this response, then nextPageToken is included. To get the next set of results, call this method again using the value of nextPageToken as pageToken.", + }, + "unit": { + "description": "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)\nbit bit\nBy byte\ns second\nmin minute\nh hour\nd dayPrefixes (PREFIX)\nk kilo (10**3)\nM mega (10**6)\nG giga (10**9)\nT tera (10**12)\nP peta (10**15)\nE exa (10**18)\nZ zetta (10**21)\nY yotta (10**24)\nm milli (10**-3)\nu micro (10**-6)\nn nano (10**-9)\np pico (10**-12)\nf femto (10**-15)\na atto (10**-18)\nz zepto (10**-21)\ny yocto (10**-24)\nKi kibi (2**10)\nMi mebi (2**20)\nGi gibi (2**30)\nTi tebi (2**40)GrammarThe grammar also includes these connectors:\n/ division (as an infix operator, e.g. 1/s).\n. multiplication (as an infix operator, e.g. GBy.d)The grammar for a unit is as follows:\nExpression = Component { \".\" Component } { \"/\" Component } ;\n\nComponent = ( [ PREFIX ] UNIT | \"%\" ) [ Annotation ]\n | Annotation\n | \"1\"\n ;\n\nAnnotation = \"{\" NAME \"}\" ;\nNotes:\nAnnotation 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.\nNAME is a sequence of non-blank printable ASCII characters not containing '{' or '}'.\n1 represents dimensionless value 1, such as in 1/s.\n% represents dimensionless value 1/100, and annotates values giving a percentage.", "type": "string" }, - "logNames": { - "description": "A list of log names. For example, \"projects/my-project/syslog\" or \"organizations/123/cloudresourcemanager.googleapis.com%2Factivity\".", + "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": { - "type": "string" + "$ref": "LabelDescriptor" } + }, + "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 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" } }, - "id": "ListLogsResponse" + "id": "MetricDescriptor" }, - "HttpRequest": { - "type": "object", + "LogEntry": { "properties": { - "cacheHit": { - "description": "Whether or not an entity was served from cache (with or without validation).", - "type": "boolean" - }, - "cacheValidatedWithOriginServer": { - "description": "Whether or not the response was validated with the origin server before being served from cache. This field is only meaningful if cache_hit is True.", - "type": "boolean" + "severity": { + "enum": [ + "DEFAULT", + "DEBUG", + "INFO", + "NOTICE", + "WARNING", + "ERROR", + "CRITICAL", + "ALERT", + "EMERGENCY" + ], + "description": "Optional. The severity of the log entry. The default value is LogSeverity.DEFAULT.", + "type": "string", + "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 a 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." + ] }, - "status": { - "type": "integer", - "description": "The response code indicating the status of response. Examples: 200, 404.", - "format": "int32" + "sourceLocation": { + "$ref": "LogEntrySourceLocation", + "description": "Optional. Source code location information associated with the log entry, if any." }, - "referer": { - "description": "The referer URL of the request, as defined in HTTP/1.1 Header Field Definitions (http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html).", + "spanId": { + "description": "Optional. The span ID within the trace associated with the log entry. For Stackdriver Trace spans, this is the same format that the Stackdriver Trace API v2 uses: a 16-character hexadecimal encoding of an 8-byte array, such as \u003ccode\u003e\"000000000000004a\"\u003c/code\u003e.", "type": "string" }, - "latency": { - "description": "The request processing latency on the server, from the time the request was received until the response was sent.", - "format": "google-duration", + "receiveTimestamp": { + "description": "Output only. The time the log entry was received by Stackdriver Logging.", + "format": "google-datetime", "type": "string" }, - "userAgent": { - "description": "The user agent sent by the client. Example: \"Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Q312461; .NET CLR 1.0.3705)\".", + "timestamp": { + "description": "Optional. The time the event described by the log entry occurred. This time is used to compute the log entry's age and to enforce the logs retention period. If this field is omitted in a new log entry, then Stackdriver Logging assigns it the current time. Timestamps have nanosecond accuracy, but trailing zeros in the fractional seconds might be omitted when the timestamp is displayed.Incoming log entries should have timestamps that are no more than the logs retention period in the past, and no more than 24 hours in the future. Log entries outside those time boundaries will not be available when calling entries.list, but those log entries can still be exported with LogSinks.", + "format": "google-datetime", "type": "string" }, - "cacheFillBytes": { - "description": "The number of HTTP response bytes inserted into cache. Set only when a cache fill was attempted.", - "format": "int64", + "logName": { + "description": "Required. The resource name of the log to which this log entry belongs:\n\"projects/[PROJECT_ID]/logs/[LOG_ID]\"\n\"organizations/[ORGANIZATION_ID]/logs/[LOG_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]\"\n\"folders/[FOLDER_ID]/logs/[LOG_ID]\"\nA project number may optionally be used in place of PROJECT_ID. The project number is translated to its corresponding PROJECT_ID internally and the log_name field will contain PROJECT_ID in queries and exports.[LOG_ID] must be URL-encoded within log_name. Example: \"organizations/1234567890/logs/cloudresourcemanager.googleapis.com%2Factivity\". [LOG_ID] must be less than 512 characters long and can only include the following characters: upper and lower case alphanumeric characters, forward-slash, underscore, hyphen, and period.For backward compatibility, if log_name begins with a forward-slash, such as /projects/..., then the log entry is ingested as usual but the forward-slash is removed. Listing the log entry will not show the leading slash and filtering for a log name with a leading slash will never return any results.", "type": "string" }, - "requestMethod": { - "description": "The request method. Examples: \"GET\", \"HEAD\", \"PUT\", \"POST\".", - "type": "string" + "resource": { + "description": "Required. The primary monitored resource associated with this log entry. Example: a log entry that reports a database error would be associated with the monitored resource designating the particular database that reported the error.", + "$ref": "MonitoredResource" }, - "protocol": { - "description": "Protocol used for the request. Examples: \"HTTP/1.1\", \"HTTP/2\", \"websocket\"", - "type": "string" + "httpRequest": { + "description": "Optional. Information about the HTTP request associated with this log entry, if applicable.", + "$ref": "HttpRequest" }, - "responseSize": { - "description": "The size of the HTTP response message sent back to the client, in bytes, including the response headers and the response body.", - "format": "int64", - "type": "string" + "jsonPayload": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The log entry payload, represented as a structure that is expressed as a JSON object.", + "type": "object" }, - "requestSize": { - "description": "The size of the HTTP request message in bytes, including the request headers and the request body.", - "format": "int64", - "type": "string" + "operation": { + "$ref": "LogEntryOperation", + "description": "Optional. Information about an operation associated with the log entry, if applicable." }, - "requestUrl": { - "description": "The scheme (http, https), the host name, the path and the query portion of the URL that was requested. Example: \"http://example.com/some/info?color=red\".", + "insertId": { + "description": "Optional. A unique identifier for the log entry. If you provide a value, then Stackdriver Logging considers other log entries in the same project, with the same timestamp, and with the same insert_id to be duplicates which can be removed. If omitted in new log entries, then Stackdriver Logging assigns its own unique identifier. The insert_id is also used to order log entries that have the same timestamp value.", "type": "string" }, - "remoteIp": { - "description": "The IP address (IPv4 or IPv6) of the client that issued the HTTP request. Examples: \"192.168.1.1\", \"FE80::0202:B3FF:FE1E:8329\".", + "textPayload": { + "description": "The log entry payload, represented as a Unicode string (UTF-8).", "type": "string" }, - "serverIp": { - "description": "The IP address (IPv4 or IPv6) of the origin server that the request was sent to.", - "type": "string" + "metadata": { + "$ref": "MonitoredResourceMetadata", + "description": "Output only. Additional metadata about the monitored resource. Only k8s_container, k8s_pod, and k8s_node MonitoredResources have this field populated." }, - "cacheLookup": { - "description": "Whether or not a cache lookup was attempted.", - "type": "boolean" + "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. Some Google Cloud Platform services use this field for their log entry payloads.", + "type": "object" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. A set of user-defined (key, value) data that provides additional information about the log entry.", + "type": "object" + }, + "trace": { + "description": "Optional. Resource name of the trace associated with the log entry, if any. If it contains a relative resource name, the name is assumed to be relative to //tracing.googleapis.com. Example: projects/my-projectid/traces/06796866738c859f2f19b7cfb3214824", + "type": "string" } }, - "id": "HttpRequest", - "description": "A common proto for logging HTTP requests. Only contains semantics defined by the HTTP specification. Product-specific logging information MUST be defined in a separate message." + "id": "LogEntry", + "description": "An individual entry in a log.", + "type": "object" }, - "ListSinksResponse": { - "description": "Result returned from ListSinks.", - "type": "object", + "RequestLog": { "properties": { - "sinks": { - "description": "A list of sinks.", + "traceId": { + "description": "Stackdriver Trace identifier for this request.", + "type": "string" + }, + "line": { + "description": "A list of log lines emitted by the application while serving this request.", "type": "array", "items": { - "$ref": "LogSink" + "$ref": "LogLine" } }, - "nextPageToken": { - "description": "If there might be more results than appear in this response, then nextPageToken is included. To get the next set of results, call the same method again using the value of nextPageToken as pageToken.", + "referrer": { + "description": "Referrer URL of request.", "type": "string" - } - }, - "id": "ListSinksResponse" - }, - "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": { - "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}\".", + }, + "taskQueueName": { + "description": "Queue name of the request, in the case of an offline request.", "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\".", + "requestId": { + "description": "Globally unique identifier for a request, which is based on the request start time. Request IDs for requests which started later will compare greater as strings than those for requests which started earlier.", "type": "string" }, - "description": { - "description": "Optional. A detailed description of the monitored resource type that might be used in documentation.", + "nickname": { + "description": "The logged-in user who made the request.Most likely, this is the part of the user's email before the @ sign. The field value is the same for different requests from the same user, but different users can have similar names. This information is also available to the application via the App Engine Users API.This field will be populated starting with App Engine 1.9.21.", "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.", + "pendingTime": { + "description": "Time this request spent in the pending request queue.", + "format": "google-duration", "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\".", - "type": "array", - "items": { - "$ref": "LabelDescriptor" - } - } - }, - "id": "MonitoredResourceDescriptor" - }, - "LogEntrySourceLocation": { - "description": "Additional information about the source code location that produced the log entry.", - "type": "object", - "properties": { - "file": { - "description": "Optional. Source file name. Depending on the runtime environment, this might be a simple name or a fully-qualified name.", + "resource": { + "description": "Contains the path and query portion of the URL that was requested. For example, if the URL was \"http://example.com/app?name=val\", the resource would be \"/app?name=val\". The fragment identifier, which is identified by the # character, is not included.", "type": "string" }, - "function": { - "type": "string", - "description": "Optional. Human-readable name of the function or method being invoked, with optional context such as the class or package name. This information may be used in contexts such as the logs viewer, where a file and line number are less meaningful. The format can vary by language. For example: qual.if.ied.Class.method (Java), dir/package.func (Go), function (Python)." + "status": { + "description": "HTTP response status code. Example: 200, 404.", + "format": "int32", + "type": "integer" }, - "line": { - "description": "Optional. Line within the source file. 1-based; 0 indicates no line number available.", - "format": "int64", + "taskName": { + "description": "Task name of the request, in the case of an offline request.", "type": "string" - } - }, - "id": "LogEntrySourceLocation" - }, - "ListLogEntriesResponse": { - "description": "Result returned from ListLogEntries.", - "type": "object", - "properties": { - "entries": { - "description": "A list of log entries. If entries is empty, nextPageToken may still be returned, indicating that more entries may exist. See nextPageToken for more information.", - "type": "array", - "items": { - "$ref": "LogEntry" - } }, - "nextPageToken": { - "description": "If there might be more results than those appearing in this response, then nextPageToken is included. To get the next set of results, call this method again using the value of nextPageToken as pageToken.If a value for next_page_token appears and the entries field is empty, it means that the search found no log entries so far but it did not have time to search all the possible log entries. Retry the method with this value for page_token to continue the search. Alternatively, consider speeding up the search by changing your filter to specify a single log name or resource type, or to narrow the time range of the search.", + "urlMapEntry": { + "description": "File or class that handled the request.", "type": "string" - } - }, - "id": "ListLogEntriesResponse" - }, - "LogLine": { - "description": "Application log line emitted while processing a request.", - "type": "object", - "properties": { - "sourceLocation": { - "$ref": "SourceLocation", - "description": "Where in the source code this log message was written." }, - "time": { - "description": "Approximate time when this log entry was made.", - "format": "google-datetime", + "instanceIndex": { + "description": "If the instance processing this request belongs to a manually scaled module, then this is the 0-based index of the instance. Otherwise, this value is -1.", + "format": "int32", + "type": "integer" + }, + "finished": { + "description": "Whether this request is finished or active.", + "type": "boolean" + }, + "host": { + "description": "Internet host and port number of the resource being requested.", "type": "string" }, - "severity": { - "description": "Severity of this log entry.", - "type": "string", - "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 a 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" - ] + "httpVersion": { + "description": "HTTP version of request. Example: \"HTTP/1.1\".", + "type": "string" + }, + "startTime": { + "description": "Time when the request started.", + "format": "google-datetime", + "type": "string" }, - "logMessage": { - "description": "App-provided log message.", + "latency": { + "description": "Latency of the request.", + "format": "google-duration", "type": "string" - } - }, - "id": "LogLine" - }, - "Linear": { - "type": "object", - "properties": { - "offset": { - "type": "number", - "description": "Lower bound of the first bucket.", - "format": "double" }, - "numFiniteBuckets": { - "description": "Must be greater than 0.", - "format": "int32", - "type": "integer" + "ip": { + "description": "Origin IP address.", + "type": "string" }, - "width": { - "description": "Must be greater than 0.", + "appId": { + "description": "Application that handled this request.", + "type": "string" + }, + "appEngineRelease": { + "description": "App Engine release version.", + "type": "string" + }, + "method": { + "description": "Request method. Example: \"GET\", \"HEAD\", \"PUT\", \"POST\", \"DELETE\".", + "type": "string" + }, + "cost": { + "description": "An indication of the relative cost of serving this request.", "format": "double", "type": "number" - } - }, - "id": "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))." - }, - "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" - }, - "SourceLocation": { - "description": "Specifies a location in a source code file.", - "type": "object", - "properties": { - "file": { - "description": "Source file name. Depending on the runtime environment, this might be a simple name or a fully-qualified name.", - "type": "string" }, - "functionName": { - "description": "Human-readable name of the function or method being invoked, with optional context such as the class or package name. This information is used in contexts such as the logs viewer, where a file and line number are less meaningful. The format can vary by language. For example: qual.if.ied.Class.method (Java), dir/package.func (Go), function (Python).", + "instanceId": { + "description": "An identifier for the instance that handled the request.", "type": "string" }, - "line": { - "description": "Line within the source file.", + "megaCycles": { + "description": "Number of CPU megacycles used to process request.", "format": "int64", "type": "string" - } - }, - "id": "SourceLocation" - }, - "ListLogEntriesRequest": { - "properties": { - "pageToken": { - "description": "Optional. If present, then retrieve the next batch of results from the preceding call to this method. page_token must be the value of next_page_token from the previous response. The values of other method parameters should be identical to those in the previous call.", + }, + "first": { + "description": "Whether this is the first RequestLog entry for this request. If an active request has several RequestLog entries written to Stackdriver Logging, then this field will be set for one of them.", + "type": "boolean" + }, + "versionId": { + "description": "Version of the application that handled this request.", "type": "string" }, - "pageSize": { - "description": "Optional. The maximum number of results to return from this request. Non-positive values are ignored. The presence of next_page_token in the response indicates that more results might be available.", - "format": "int32", - "type": "integer" + "moduleId": { + "description": "Module of the application that handled this request.", + "type": "string" }, - "orderBy": { - "description": "Optional. How the results should be sorted. Presently, the only permitted values are \"timestamp asc\" (default) and \"timestamp desc\". The first option returns entries in order of increasing values of LogEntry.timestamp (oldest first), and the second option returns entries in order of decreasing timestamps (newest first). Entries with equal timestamps are returned in order of their insert_id values.", + "endTime": { + "description": "Time when the request finished.", + "format": "google-datetime", "type": "string" }, - "resourceNames": { - "description": "Required. Names of one or more parent resources from which to retrieve log entries:\n\"projects/[PROJECT_ID]\"\n\"organizations/[ORGANIZATION_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]\"\n\"folders/[FOLDER_ID]\"\nProjects listed in the project_ids field are added to this list.", - "type": "array", - "items": { - "type": "string" - } + "userAgent": { + "description": "User agent that made the request.", + "type": "string" }, - "projectIds": { - "description": "Deprecated. Use resource_names instead. One or more project identifiers or project numbers from which to retrieve log entries. Example: \"my-project-1A\". If present, these project identifiers are converted to resource name format and added to the list of resources in resource_names.", + "wasLoadingRequest": { + "description": "Whether this was a loading request for the instance.", + "type": "boolean" + }, + "sourceReference": { + "description": "Source code for the application that handled this request. There can be more than one source reference per deployed application if source code is distributed among multiple repositories.", "type": "array", "items": { - "type": "string" + "$ref": "SourceReference" } }, - "filter": { - "description": "Optional. A filter that chooses which log entries to return. See Advanced Logs Filters. Only log entries that match the filter are returned. An empty filter matches all log entries in the resources listed in resource_names. Referencing a parent resource that is not listed in resource_names will cause the filter to return no results. The maximum length of the filter is 20000 characters.", + "responseSize": { + "description": "Size in bytes sent back to client by request.", + "format": "int64", "type": "string" } }, - "id": "ListLogEntriesRequest", - "description": "The parameters to ListLogEntries.", + "id": "RequestLog", + "description": "Complete log information about a single HTTP request to an App Engine application.", "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", + "ListMonitoredResourceDescriptorsResponse": { "properties": { - "bounds": { - "description": "The values must be monotonically increasing.", + "nextPageToken": { + "description": "If there might be more results than those appearing in this response, then nextPageToken is included. To get the next set of results, call this method again using the value of nextPageToken as pageToken.", + "type": "string" + }, + "resourceDescriptors": { + "description": "A list of resource descriptors.", "type": "array", "items": { - "type": "number", - "format": "double" + "$ref": "MonitoredResourceDescriptor" } } }, - "id": "Explicit" + "id": "ListMonitoredResourceDescriptorsResponse", + "description": "Result returned from ListMonitoredResourceDescriptors.", + "type": "object" }, - "SourceReference": { + "LogEntryOperation": { + "description": "Additional information about a potentially long-running operation with which a log entry is associated.", + "type": "object", "properties": { - "repository": { - "description": "Optional. A URI string identifying the repository. Example: \"https://github.com/GoogleCloudPlatform/kubernetes.git\"", + "last": { + "description": "Optional. Set this to True if this is the last log entry in the operation.", + "type": "boolean" + }, + "id": { + "description": "Optional. An arbitrary operation identifier. Log entries with the same identifier are assumed to be part of the same operation.", "type": "string" }, - "revisionId": { - "description": "The canonical and persistent identifier of the deployed revision. Example (git): \"0035781c50ec7aa23385dc841529ce8a4b70db1b\"", + "producer": { + "description": "Optional. An arbitrary producer identifier. The combination of id and producer must be globally unique. Examples for producer: \"MyDivision.MyBigCompany.com\", \"github.com/MyProject/MyApplication\".", "type": "string" + }, + "first": { + "description": "Optional. Set this to True if this is the first log entry in the operation.", + "type": "boolean" } }, - "id": "SourceReference", - "description": "A reference to a particular snapshot of the source tree used to build and deploy an application.", - "type": "object" - }, - "WriteLogEntriesResponse": { - "description": "Result returned from WriteLogEntries. empty", - "type": "object", - "properties": {}, - "id": "WriteLogEntriesResponse" + "id": "LogEntryOperation" }, - "Exponential": { - "id": "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", + "LogMetric": { "properties": { - "growthFactor": { - "description": "Must be greater than 1.", - "format": "double", - "type": "number" + "name": { + "description": "Required. The client-assigned metric identifier. Examples: \"error_count\", \"nginx/requests\".Metric identifiers are limited to 100 characters and can include only the following characters: A-Z, a-z, 0-9, and the special characters _-.,+!*',()%/. The forward-slash character (/) denotes a hierarchy of name pieces, and it cannot be the first character of the name.The metric identifier in this field must not be URL-encoded (https://en.wikipedia.org/wiki/Percent-encoding). However, when the metric identifier appears as the [METRIC_ID] part of a metric_name API parameter, then the metric identifier must be URL-encoded. Example: \"projects/my-project/metrics/nginx%2Frequests\".", + "type": "string" }, - "scale": { - "description": "Must be greater than 0.", - "format": "double", - "type": "number" + "labelExtractors": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. A map from a label key string to an extractor expression which is used to extract data from a log entry field and assign as the label value. Each label key specified in the LabelDescriptor must have an associated extractor expression in this map. The syntax of the extractor expression is the same as for the value_extractor field.The extracted value is converted to the type defined in the label descriptor. If the either the extraction or the type conversion fails, the label will have a default value. The default value for a string label is an empty string, for an integer label its 0, and for a boolean label its false.Note that there are upper bounds on the maximum number of labels and the number of active time series that are allowed in a project.", + "type": "object" }, - "numFiniteBuckets": { - "description": "Must be greater than 0.", - "format": "int32", - "type": "integer" - } - } - }, - "WriteLogEntriesRequest": { - "description": "The parameters to WriteLogEntries.", - "type": "object", - "properties": { - "logName": { - "description": "Optional. A default log resource name that is assigned to all log entries in entries that do not specify a value for log_name:\n\"projects/[PROJECT_ID]/logs/[LOG_ID]\"\n\"organizations/[ORGANIZATION_ID]/logs/[LOG_ID]\"\n\"billingAccounts/[BILLING_ACCOUNT_ID]/logs/[LOG_ID]\"\n\"folders/[FOLDER_ID]/logs/[LOG_ID]\"\n[LOG_ID] must be URL-encoded. For example, \"projects/my-project-id/logs/syslog\" or \"organizations/1234567890/logs/cloudresourcemanager.googleapis.com%2Factivity\". For more information about log names, see LogEntry.", - "type": "string" + "metricDescriptor": { + "description": "Optional. The metric descriptor associated with the logs-based metric. If unspecified, it uses a default metric descriptor with a DELTA metric kind, INT64 value type, with no labels and a unit of \"1\". Such a metric counts the number of log entries matching the filter expression.The name, type, and description fields in the metric_descriptor are output only, and is constructed using the name and description field in the LogMetric.To create a logs-based metric that records a distribution of log values, a DELTA metric kind with a DISTRIBUTION value type must be used along with a value_extractor expression in the LogMetric.Each label in the metric descriptor must have a matching label name as the key and an extractor expression as the value in the label_extractors map.The metric_kind and value_type fields in the metric_descriptor cannot be updated once initially configured. New labels can be added in the metric_descriptor, but existing labels cannot be modified except for their description.", + "$ref": "MetricDescriptor" }, - "entries": { - "description": "Required. The log entries to send to Stackdriver Logging. The order of log entries in this list does not matter. Values supplied in this method's log_name, resource, and labels fields are copied into those log entries in this list that do not include values for their corresponding fields. For more information, see the LogEntry type.If the timestamp or insert_id fields are missing in log entries, then this method supplies the current time or a unique identifier, respectively. The supplied values are chosen so that, among the log entries that did not supply their own values, the entries earlier in the list will sort before the entries later in the list. See the entries.list method.Log entries with timestamps that are more than the logs retention period in the past or more than 24 hours in the future will not be available when calling entries.list. However, those log entries can still be exported with LogSinks.To improve throughput and to avoid exceeding the quota limit for calls to entries.write, you should try to include several log entries in this list, rather than calling this method for each individual log entry.", - "type": "array", - "items": { - "$ref": "LogEntry" - } + "version": { + "enum": [ + "V2", + "V1" + ], + "description": "Deprecated. The API version that created or updated this metric. The v2 format is used by default and cannot be changed.", + "type": "string", + "enumDescriptions": [ + "Stackdriver Logging API v2.", + "Stackdriver Logging API v1." + ] }, - "partialSuccess": { - "description": "Optional. Whether valid entries should be written even if some other entries fail due to INVALID_ARGUMENT or PERMISSION_DENIED errors. If any entry is not written, then the response status is the error associated with one of the failed entries and the response includes error details keyed by the entries' zero-based index in the entries.write method.", - "type": "boolean" + "filter": { + "description": "Required. An advanced logs filter which is used to match log entries. Example:\n\"resource.type=gae_app AND severity\u003e=ERROR\"\nThe maximum length of the filter is 20000 characters.", + "type": "string" }, - "dryRun": { - "type": "boolean", - "description": "Optional. If true, the request should expect normal response, but the entries won't be persisted nor exported. Useful for checking whether the logging API endpoints are working properly before sending valuable data." + "description": { + "description": "Optional. A description of this metric, which is used in documentation.", + "type": "string" + }, + "bucketOptions": { + "description": "Optional. The bucket_options are required when the logs-based metric is using a DISTRIBUTION value type and it describes the bucket boundaries used to create a histogram of the extracted values.", + "$ref": "BucketOptions" }, + "valueExtractor": { + "description": "Optional. A value_extractor is required when using a distribution logs-based metric to extract the values to record from a log entry. Two functions are supported for value extraction: EXTRACT(field) or REGEXP_EXTRACT(field, regex). The argument are: 1. field: The name of the log entry field from which the value is to be extracted. 2. regex: A regular expression using the Google RE2 syntax (https://github.com/google/re2/wiki/Syntax) with a single capture group to extract data from the specified log entry field. The value of the field is converted to a string before applying the regex. It is an error to specify a regex that does not include exactly one capture group.The result of the extraction must be convertible to a double type, as the distribution always records double values. If either the extraction or the conversion to double fails, then those values are not recorded in the distribution.Example: REGEXP_EXTRACT(jsonPayload.request, \".*quantity=(\\d+).*\")", + "type": "string" + } + }, + "id": "LogMetric", + "description": "Describes a logs-based metric. The value of the metric is the number of log entries that match a logs filter in a given time interval.Logs-based metric can also be used to extract values from logs and create a a distribution of the values. The distribution records the statistics of the extracted values along with an optional histogram of the values as specified by the bucket options.", + "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", + "properties": { "labels": { "additionalProperties": { "type": "string" }, - "description": "Optional. Default labels that are added to the labels field of all log entries in entries. If a log entry already has a label with the same key as a label in this parameter, then the log entry's label is not changed. See LogEntry.", + "description": "Required. Values for all of the labels listed in the associated monitored resource descriptor. For example, Compute Engine VM instances use the labels \"project_id\", \"instance_id\", and \"zone\".", "type": "object" }, - "resource": { - "description": "Optional. A default monitored resource object that is assigned to all log entries in entries that do not specify a value for resource. Example:\n{ \"type\": \"gce_instance\",\n \"labels\": {\n \"zone\": \"us-central1-a\", \"instance_id\": \"00000000000000000000\" }}\nSee LogEntry.", - "$ref": "MonitoredResource" + "type": { + "description": "Required. The monitored resource type. This field must match the type field of a MonitoredResourceDescriptor object. For example, the type of a Compute Engine VM instance is gce_instance.", + "type": "string" } }, - "id": "WriteLogEntriesRequest" + "id": "MonitoredResource" } }, "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" + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" }, "canonicalName": "Logging", "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" }, @@ -1729,17 +1738,8 @@ }, "https://www.googleapis.com/auth/logging.write": { "description": "Submit log data for your projects" - }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" } } } - }, - "rootUrl": "https://logging.googleapis.com/", - "ownerDomain": "google.com", - "name": "logging", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Stackdriver Logging API" + } } diff --git a/DiscoveryJson/manufacturers_v1.json b/DiscoveryJson/manufacturers_v1.json index a041c16e92..4e498e8e4d 100644 --- a/DiscoveryJson/manufacturers_v1.json +++ b/DiscoveryJson/manufacturers_v1.json @@ -1,31 +1,46 @@ { + "version": "v1", + "baseUrl": "https://manufacturers.googleapis.com/", + "kind": "discovery#restDescription", + "description": "Public API for managing Manufacturer Center related data.", + "servicePath": "", + "basePath": "", + "revision": "20180419", + "documentationLink": "https://developers.google.com/manufacturers/", + "id": "manufacturers:v1", + "discoveryVersion": "v1", + "version_module": true, "schemas": { - "Attributes": { - "description": "Attributes of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116.", + "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": {} + }, + "Price": { + "description": "A price.", "type": "object", "properties": { - "color": { - "description": "The color of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#color.", - "type": "string" - }, - "excludedDestination": { - "description": "A list of excluded destinations.", - "type": "array", - "items": { - "type": "string" - } - }, - "productName": { - "description": "The canonical name of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#productname.", + "currency": { + "description": "The currency in which the price is denoted.", "type": "string" }, + "amount": { + "type": "string", + "description": "The numeric value of the price." + } + }, + "id": "Price" + }, + "Attributes": { + "properties": { "sizeType": { "description": "The size type of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#sizetype.", "type": "string" }, "suggestedRetailPrice": { - "description": "The suggested retail price (MSRP) of the product. For more information,\nsee https://support.google.com/manufacturers/answer/6124116#price.", - "$ref": "Price" + "$ref": "Price", + "description": "The suggested retail price (MSRP) of the product. For more information,\nsee https://support.google.com/manufacturers/answer/6124116#price." }, "featureDescription": { "description": "The rich format description of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#featuredesc.", @@ -35,16 +50,16 @@ } }, "size": { - "description": "The size of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#size.", - "type": "string" + "type": "string", + "description": "The size of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#size." }, "title": { - "description": "The title of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#title.", - "type": "string" + "type": "string", + "description": "The title of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#title." }, "count": { - "description": "The count of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#count.", - "$ref": "Count" + "$ref": "Count", + "description": "The count of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#count." }, "brand": { "description": "The brand name of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#brand.", @@ -55,12 +70,12 @@ "type": "string" }, "disclosureDate": { - "type": "string", - "description": "The disclosure date of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#disclosure." + "description": "The disclosure date of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#disclosure.", + "type": "string" }, "scent": { - "type": "string", - "description": "The scent of the product. For more information, see\n https://support.google.com/manufacturers/answer/6124116#scent." + "description": "The scent of the product. For more information, see\n https://support.google.com/manufacturers/answer/6124116#scent.", + "type": "string" }, "ageGroup": { "description": "The target age group of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#agegroup.", @@ -74,31 +89,31 @@ } }, "flavor": { - "type": "string", - "description": "The flavor of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#flavor." + "description": "The flavor of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#flavor.", + "type": "string" }, "productPageUrl": { "description": "The URL of the detail page of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#productpage.", "type": "string" }, "mpn": { - "type": "string", - "description": "The Manufacturer Part Number (MPN) of the product. For more information,\nsee https://support.google.com/manufacturers/answer/6124116#mpn." + "description": "The Manufacturer Part Number (MPN) of the product. For more information,\nsee https://support.google.com/manufacturers/answer/6124116#mpn.", + "type": "string" }, "releaseDate": { - "type": "string", - "description": "The release date of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#release." + "description": "The release date of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#release.", + "type": "string" }, "itemGroupId": { "description": "The item group id of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#itemgroupid.", "type": "string" }, "gtin": { - "description": "The Global Trade Item Number (GTIN) of the product. For more information,\nsee https://support.google.com/manufacturers/answer/6124116#gtin.", "type": "array", "items": { "type": "string" - } + }, + "description": "The Global Trade Item Number (GTIN) of the product. For more information,\nsee https://support.google.com/manufacturers/answer/6124116#gtin." }, "productLine": { "description": "The name of the group of products related to the product. For more\ninformation, see\nhttps://support.google.com/manufacturers/answer/6124116#productline.", @@ -113,11 +128,11 @@ "type": "string" }, "includedDestination": { + "description": "A list of included destinations.", "type": "array", "items": { "type": "string" - }, - "description": "A list of included destinations." + } }, "gender": { "description": "The target gender of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#gender.", @@ -128,16 +143,16 @@ "type": "string" }, "theme": { - "description": "The theme of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#theme.", - "type": "string" + "type": "string", + "description": "The theme of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#theme." }, "targetClientId": { "description": "The target client id. Should only be used in the accounts of the data\npartners.", "type": "string" }, "pattern": { - "type": "string", - "description": "The pattern of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#pattern." + "description": "The pattern of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#pattern.", + "type": "string" }, "imageLink": { "description": "The image of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#image.", @@ -155,11 +170,11 @@ "type": "string" }, "additionalImageLink": { + "description": "The additional images of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#addlimage.", "type": "array", "items": { "$ref": "Image" - }, - "description": "The additional images of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#addlimage." + } }, "videoLink": { "description": "The videos of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#video.", @@ -167,11 +182,29 @@ "items": { "type": "string" } + }, + "color": { + "description": "The color of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#color.", + "type": "string" + }, + "excludedDestination": { + "description": "A list of excluded destinations.", + "type": "array", + "items": { + "type": "string" + } + }, + "productName": { + "description": "The canonical name of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#productname.", + "type": "string" } }, - "id": "Attributes" + "id": "Attributes", + "description": "Attributes of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116.", + "type": "object" }, "DestinationStatus": { + "id": "DestinationStatus", "description": "The destination status.", "type": "object", "properties": { @@ -195,16 +228,19 @@ "description": "The status of the destination.", "type": "string" } - }, - "id": "DestinationStatus" + } }, "Product": { "description": "Product data.", "type": "object", "properties": { + "manuallyProvidedAttributes": { + "$ref": "Attributes", + "description": "Attributes of the product provided manually via the Manufacturer Center UI.\n\nThis field is deprecated and will be removed end of July 2018. Please use\nattributes." + }, "name": { - "description": "Name in the format `{target_country}:{content_language}:{product_id}`.\n\n`target_country` - The target country of the product as a CLDR territory\n code (for example, US).\n\n`content_language` - The content language of the product as a two-letter\n ISO 639-1 language code (for example, en).\n\n`product_id` - The ID of the product. For more information, see\n https://support.google.com/manufacturers/answer/6124116#id.", - "type": "string" + "type": "string", + "description": "Name in the format `{target_country}:{content_language}:{product_id}`.\n\n`target_country` - The target country of the product as a CLDR territory\n code (for example, US).\n\n`content_language` - The content language of the product as a two-letter\n ISO 639-1 language code (for example, en).\n\n`product_id` - The ID of the product. For more information, see\n https://support.google.com/manufacturers/answer/6124116#id." }, "issues": { "description": "A server-generated list of issues associated with the product.", @@ -214,16 +250,16 @@ } }, "finalAttributes": { - "$ref": "Attributes", - "description": "Final attributes of the product. The final attributes are obtained by\noverriding the uploaded attributes with the manually provided and deleted\nattributes. Google systems only process, evaluate, review, and/or use final\nattributes.\n\nThis field is deprecated and will be removed end of July 2018. Please use\nattributes." + "description": "Final attributes of the product. The final attributes are obtained by\noverriding the uploaded attributes with the manually provided and deleted\nattributes. Google systems only process, evaluate, review, and/or use final\nattributes.\n\nThis field is deprecated and will be removed end of July 2018. Please use\nattributes.", + "$ref": "Attributes" }, "productId": { "description": "The ID of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#id.", "type": "string" }, "uploadedAttributes": { - "description": "Attributes of the product uploaded via the Manufacturer Center API or via\nfeeds.\n\nThis field is deprecated and will be removed end of July 2018. Please use\nattributes.", - "$ref": "Attributes" + "$ref": "Attributes", + "description": "Attributes of the product uploaded via the Manufacturer Center API or via\nfeeds.\n\nThis field is deprecated and will be removed end of July 2018. Please use\nattributes." }, "destinationStatuses": { "description": "The status of the destinations.", @@ -237,12 +273,12 @@ "type": "string" }, "contentLanguage": { - "type": "string", - "description": "The content language of the product as a two-letter ISO 639-1 language code\n(for example, en)." + "description": "The content language of the product as a two-letter ISO 639-1 language code\n(for example, en).", + "type": "string" }, "attributes": { - "$ref": "Attributes", - "description": "Attributes of the product uploaded to the Manufacturer Center." + "description": "Attributes of the product uploaded to the Manufacturer Center.", + "$ref": "Attributes" }, "manuallyDeletedAttributes": { "description": "Names of the attributes of the product deleted manually via the\nManufacturer Center UI.\n\nThis field is deprecated and will be removed end of July 2018. Please use\nattributes.", @@ -254,10 +290,6 @@ "parent": { "description": "Parent ID in the format `accounts/{account_id}`.\n\n`account_id` - The ID of the Manufacturer Center account.", "type": "string" - }, - "manuallyProvidedAttributes": { - "$ref": "Attributes", - "description": "Attributes of the product provided manually via the Manufacturer Center UI.\n\nThis field is deprecated and will be removed end of July 2018. Please use\nattributes." } }, "id": "Product" @@ -280,6 +312,7 @@ } }, "ProductDetail": { + "description": "A product detail of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#productdetail.", "type": "object", "properties": { "attributeValue": { @@ -291,18 +324,36 @@ "description": "A short section name that can be reused between multiple product details." }, "attributeName": { - "description": "The name of the attribute.", - "type": "string" + "type": "string", + "description": "The name of the attribute." } }, - "id": "ProductDetail", - "description": "A product detail of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#productdetail." + "id": "ProductDetail" }, "Issue": { "description": "Product issue.", "type": "object", "properties": { + "description": { + "description": "Longer description of the issue focused on how to resolve it.", + "type": "string" + }, + "resolution": { + "description": "What needs to happen to resolve the issue.", + "type": "string", + "enumDescriptions": [ + "Unspecified resolution, never used.", + "The user who provided the data must act in order to resolve the issue\n(for example by correcting some data).", + "The issue will be resolved automatically (for example image crawl or\nGoogle review). No action is required now. Resolution might lead to\nanother issue (for example if crawl fails)." + ], + "enum": [ + "RESOLUTION_UNSPECIFIED", + "USER_ACTION", + "PENDING_PROCESSING" + ] + }, "severity": { + "description": "The severity of the issue.", "type": "string", "enumDescriptions": [ "Unspecified severity, never used.", @@ -315,16 +366,15 @@ "ERROR", "WARNING", "INFO" - ], - "description": "The severity of the issue." + ] }, "type": { "description": "The server-generated type of the issue, for example,\n“INCORRECT_TEXT_FORMATTING”, “IMAGE_NOT_SERVEABLE”, etc.", "type": "string" }, "attribute": { - "type": "string", - "description": "If present, the attribute that triggered the issue. For more information\nabout attributes, see\nhttps://support.google.com/manufacturers/answer/6124116." + "description": "If present, the attribute that triggered the issue. For more information\nabout attributes, see\nhttps://support.google.com/manufacturers/answer/6124116.", + "type": "string" }, "destination": { "description": "The destination this issue applies to.", @@ -338,24 +388,6 @@ "description": "The timestamp when this issue appeared.", "format": "google-datetime", "type": "string" - }, - "description": { - "description": "Longer description of the issue focused on how to resolve it.", - "type": "string" - }, - "resolution": { - "enumDescriptions": [ - "Unspecified resolution, never used.", - "The user who provided the data must act in order to resolve the issue\n(for example by correcting some data).", - "The issue will be resolved automatically (for example image crawl or\nGoogle review). No action is required now. Resolution might lead to\nanother issue (for example if crawl fails)." - ], - "enum": [ - "RESOLUTION_UNSPECIFIED", - "USER_ACTION", - "PENDING_PROCESSING" - ], - "description": "What needs to happen to resolve the issue.", - "type": "string" } }, "id": "Issue" @@ -364,11 +396,8 @@ "description": "An image.", "type": "object", "properties": { - "imageUrl": { - "description": "The URL of the image. For crawled images, this is the provided URL. For\nuploaded images, this is a serving URL from Google if the image has been\nprocessed successfully.", - "type": "string" - }, "status": { + "description": "The status of the image.\n@OutputOnly", "type": "string", "enumDescriptions": [ "The image status is unspecified. Should not be used.", @@ -399,12 +428,9 @@ "CRAWL_SKIPPED", "HOSTLOADED", "HTTP_404" - ], - "description": "The status of the image.\n@OutputOnly" + ] }, "type": { - "description": "The type of the image, i.e., crawled or uploaded.\n@OutputOnly", - "type": "string", "enumDescriptions": [ "Type is unspecified. Should not be used.", "The image was crawled from a provided URL.", @@ -414,12 +440,19 @@ "TYPE_UNSPECIFIED", "CRAWLED", "UPLOADED" - ] + ], + "description": "The type of the image, i.e., crawled or uploaded.\n@OutputOnly", + "type": "string" + }, + "imageUrl": { + "description": "The URL of the image. For crawled images, this is the provided URL. For\nuploaded images, this is a serving URL from Google if the image has been\nprocessed successfully.", + "type": "string" } }, "id": "Image" }, "Count": { + "description": "The number of products in a single package. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#count.", "type": "object", "properties": { "value": { @@ -428,12 +461,11 @@ "type": "string" }, "unit": { - "description": "The unit in which these products are counted.", - "type": "string" + "type": "string", + "description": "The unit in which these products are counted." } }, - "id": "Count", - "description": "The number of products in a single package. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#count." + "id": "Count" }, "Capacity": { "description": "The capacity of a product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#capacity.", @@ -445,16 +477,18 @@ "type": "string" }, "unit": { - "type": "string", - "description": "The unit of the capacity, i.e., MB, GB, or TB." + "description": "The unit of the capacity, i.e., MB, GB, or TB.", + "type": "string" } }, "id": "Capacity" }, "FeatureDescription": { - "description": "A feature description of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#featuredesc.", - "type": "object", "properties": { + "text": { + "description": "A detailed description of the feature.", + "type": "string" + }, "image": { "$ref": "Image", "description": "An optional image describing the feature." @@ -462,34 +496,11 @@ "headline": { "description": "A short description of the feature.", "type": "string" - }, - "text": { - "description": "A detailed description of the feature.", - "type": "string" - } - }, - "id": "FeatureDescription" - }, - "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" - }, - "Price": { - "description": "A price.", - "type": "object", - "properties": { - "currency": { - "description": "The currency in which the price is denoted.", - "type": "string" - }, - "amount": { - "description": "The numeric value of the price.", - "type": "string" } }, - "id": "Price" + "id": "FeatureDescription", + "description": "A feature description of the product. For more information, see\nhttps://support.google.com/manufacturers/answer/6124116#featuredesc.", + "type": "object" } }, "icons": { @@ -528,19 +539,19 @@ ], "httpMethod": "DELETE", "parameters": { - "name": { - "description": "Name in the format `{target_country}:{content_language}:{product_id}`.\n\n`target_country` - The target country of the product as a CLDR territory\n code (for example, US).\n\n`content_language` - The content language of the product as a two-letter\n ISO 639-1 language code (for example, en).\n\n`product_id` - The ID of the product. For more information, see\n https://support.google.com/manufacturers/answer/6124116#id.", + "parent": { "required": true, "type": "string", - "pattern": "^[^/]+$", - "location": "path" - }, - "parent": { "pattern": "^accounts/[^/]+$", "location": "path", - "description": "Parent ID in the format `accounts/{account_id}`.\n\n`account_id` - The ID of the Manufacturer Center account.", + "description": "Parent ID in the format `accounts/{account_id}`.\n\n`account_id` - The ID of the Manufacturer Center account." + }, + "name": { "required": true, - "type": "string" + "type": "string", + "pattern": "^[^/]+$", + "location": "path", + "description": "Name in the format `{target_country}:{content_language}:{product_id}`.\n\n`target_country` - The target country of the product as a CLDR territory\n code (for example, US).\n\n`content_language` - The content language of the product as a two-letter\n ISO 639-1 language code (for example, en).\n\n`product_id` - The ID of the product. For more information, see\n https://support.google.com/manufacturers/answer/6124116#id." } }, "scopes": [ @@ -552,9 +563,6 @@ "description": "Deletes the product from a Manufacturer Center account." }, "list": { - "id": "manufacturers.accounts.products.list", - "path": "v1/{+parent}/products", - "description": "Lists all the products in a Manufacturer Center account.", "httpMethod": "GET", "parameterOrder": [ "parent" @@ -567,9 +575,9 @@ ], "parameters": { "pageToken": { - "location": "query", "description": "The token returned by the previous request.", - "type": "string" + "type": "string", + "location": "query" }, "pageSize": { "description": "Maximum number of product statuses to return in the response, used for\npaging.", @@ -578,11 +586,11 @@ "location": "query" }, "parent": { - "required": true, - "type": "string", "pattern": "^accounts/[^/]+$", "location": "path", - "description": "Parent ID in the format `accounts/{account_id}`.\n\n`account_id` - The ID of the Manufacturer Center account." + "description": "Parent ID in the format `accounts/{account_id}`.\n\n`account_id` - The ID of the Manufacturer Center account.", + "required": true, + "type": "string" }, "include": { "description": "The information to be included in the response. Only sections listed here\nwill be returned.\n\nIf this parameter is not specified, ATTRIBUTES and ISSUES are returned.\nThis behavior is temporary and will be removed once all clients are ready\nor at the latest end of July 2018. After that no sections will be returned.", @@ -597,9 +605,15 @@ ] } }, - "flatPath": "v1/accounts/{accountsId}/products" + "flatPath": "v1/accounts/{accountsId}/products", + "id": "manufacturers.accounts.products.list", + "path": "v1/{+parent}/products", + "description": "Lists all the products in a Manufacturer Center account." }, "get": { + "path": "v1/{+parent}/products/{+name}", + "id": "manufacturers.accounts.products.get", + "description": "Gets the product from a Manufacturer Center account, including product\nissues.\n\nA recently updated product takes around 15 minutes to process. Changes are\nonly visible after it has been processed. While some issues may be\navailable once the product has been processed, other issues may take days\nto appear.", "response": { "$ref": "Product" }, @@ -629,20 +643,17 @@ "type": "string" }, "name": { - "pattern": "^[^/]+$", - "location": "path", "description": "Name in the format `{target_country}:{content_language}:{product_id}`.\n\n`target_country` - The target country of the product as a CLDR territory\n code (for example, US).\n\n`content_language` - The content language of the product as a two-letter\n ISO 639-1 language code (for example, en).\n\n`product_id` - The ID of the product. For more information, see\n https://support.google.com/manufacturers/answer/6124116#id.", "required": true, - "type": "string" + "type": "string", + "pattern": "^[^/]+$", + "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/manufacturercenter" ], - "flatPath": "v1/accounts/{accountsId}/products/{productsId}", - "path": "v1/{+parent}/products/{+name}", - "id": "manufacturers.accounts.products.get", - "description": "Gets the product from a Manufacturer Center account, including product\nissues.\n\nA recently updated product takes around 15 minutes to process. Changes are\nonly visible after it has been processed. While some issues may be\navailable once the product has been processed, other issues may take days\nto appear." + "flatPath": "v1/accounts/{accountsId}/products/{productsId}" }, "update": { "request": { @@ -662,11 +673,11 @@ ], "parameters": { "name": { + "description": "Name in the format `{target_country}:{content_language}:{product_id}`.\n\n`target_country` - The target country of the product as a CLDR territory\n code (for example, US).\n\n`content_language` - The content language of the product as a two-letter\n ISO 639-1 language code (for example, en).\n\n`product_id` - The ID of the product. For more information, see\n https://support.google.com/manufacturers/answer/6124116#id.", "required": true, "type": "string", "pattern": "^[^/]+$", - "location": "path", - "description": "Name in the format `{target_country}:{content_language}:{product_id}`.\n\n`target_country` - The target country of the product as a CLDR territory\n code (for example, US).\n\n`content_language` - The content language of the product as a two-letter\n ISO 639-1 language code (for example, en).\n\n`product_id` - The ID of the product. For more information, see\n https://support.google.com/manufacturers/answer/6124116#id." + "location": "path" }, "parent": { "description": "Parent ID in the format `accounts/{account_id}`.\n\n`account_id` - The ID of the Manufacturer Center account.", @@ -686,15 +697,36 @@ } }, "parameters": { - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", + "access_token": { + "description": "OAuth access token.", "type": "string", "location": "query" }, - "bearer_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": { + "description": "Available 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." + "description": "OAuth bearer token.", + "type": "string" }, "upload_protocol": { "location": "query", @@ -708,35 +740,34 @@ "location": "query" }, "fields": { - "description": "Selector specifying which fields to include in a partial response.", "type": "string", - "location": "query" + "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", - "location": "query" + "type": "string" }, "$.xgafv": { - "location": "query", - "enum": [ - "1", - "2" - ], "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", - "type": "string" + "description": "JSONP" }, "alt": { - "location": "query", "description": "Data format for response.", "default": "json", "enum": [ @@ -749,39 +780,8 @@ "Responses with Content-Type of application/json", "Media download with context-dependent Content-Type", "Responses with Content-Type of application/x-protobuf" - ] - }, - "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": { - "type": "boolean", - "default": "true", - "location": "query", - "description": "Pretty-print response." } - }, - "version": "v1", - "baseUrl": "https://manufacturers.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Public API for managing Manufacturer Center related data.", - "servicePath": "", - "basePath": "", - "revision": "20180419", - "documentationLink": "https://developers.google.com/manufacturers/", - "id": "manufacturers:v1", - "discoveryVersion": "v1", - "version_module": true + } } diff --git a/DiscoveryJson/ml_v1.json b/DiscoveryJson/ml_v1.json index f74fc483d9..339898e074 100644 --- a/DiscoveryJson/ml_v1.json +++ b/DiscoveryJson/ml_v1.json @@ -1,994 +1,244 @@ { - "resources": { - "projects": { - "methods": { - "getConfig": { - "path": "v1/{+name}:getConfig", - "id": "ml.projects.getConfig", - "description": "Get the service account information associated with your project. You need\nthis information in order to grant the service account permissions for\nthe Google Cloud Storage location where you put your model training code\nfor training the model with Google Cloud Machine Learning.", - "response": { - "$ref": "GoogleCloudMlV1__GetConfigResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "Required. The project name." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}:getConfig" + "version": "v1", + "baseUrl": "https://ml.googleapis.com/", + "servicePath": "", + "kind": "discovery#restDescription", + "description": "An API to enable creating and using machine learning models.", + "basePath": "", + "id": "ml:v1", + "documentationLink": "https://cloud.google.com/ml/", + "revision": "20180420", + "discoveryVersion": "v1", + "version_module": true, + "schemas": { + "GoogleCloudMlV1__GetConfigResponse": { + "description": "Returns service account information associated with a project.", + "type": "object", + "properties": { + "config": { + "$ref": "GoogleCloudMlV1__Config" }, - "predict": { - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "GoogleApi__HttpBody" - }, - "parameters": { - "name": { - "pattern": "^projects/.+$", - "location": "path", - "description": "Required. The resource name of a model or a version.\n\nAuthorization: requires the `predict` permission on the specified resource.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}:predict", - "id": "ml.projects.predict", - "path": "v1/{+name}:predict", - "description": "Performs prediction on the data in the request.\nCloud ML Engine implements a custom `predict` verb on top of an HTTP POST\nmethod. \u003cp\u003eFor details of the request and response format, see the **guide\nto the [predict request format](/ml-engine/docs/v1/predict-request)**.", - "request": { - "$ref": "GoogleCloudMlV1__PredictRequest" + "serviceAccountProject": { + "description": "The project number for `service_account`.", + "format": "int64", + "type": "string" + }, + "serviceAccount": { + "description": "The service account Cloud ML uses to access resources in the project.", + "type": "string" + } + }, + "id": "GoogleCloudMlV1__GetConfigResponse" + }, + "GoogleIamV1__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" } } }, - "resources": { - "operations": { - "methods": { - "delete": { - "id": "ml.projects.operations.delete", - "path": "v1/{+name}", - "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`.", - "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "GoogleProtobuf__Empty" - }, - "parameters": { - "name": { - "location": "path", - "description": "The name of the operation resource to be deleted.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/operations/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/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.", - "httpMethod": "GET", - "response": { - "$ref": "GoogleLongrunning__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": "^projects/[^/]+$" - }, - "pageToken": { - "type": "string", - "location": "query", - "description": "The standard list page token." - }, - "pageSize": { - "location": "query", - "description": "The standard list page size.", - "format": "int32", - "type": "integer" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/operations", - "id": "ml.projects.operations.list", - "path": "v1/{+name}/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": "GoogleLongrunning__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": "^projects/[^/]+/operations/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/operations/{operationsId}", - "path": "v1/{+name}", - "id": "ml.projects.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`.", - "response": { - "$ref": "GoogleProtobuf__Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/operations/[^/]+$", - "location": "path", - "description": "The name of the operation resource to be cancelled.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{projectsId}/operations/{operationsId}:cancel", - "path": "v1/{+name}:cancel", - "id": "ml.projects.operations.cancel" - } + "id": "GoogleIamV1__TestIamPermissionsResponse" + }, + "GoogleCloudMlV1__HyperparameterOutput": { + "id": "GoogleCloudMlV1__HyperparameterOutput", + "description": "Represents the result of a single hyperparameter tuning trial from a\ntraining job. The TrainingOutput object that is returned on successful\ncompletion of a training job with hyperparameter tuning includes a list\nof HyperparameterOutput objects, one for each successful trial.", + "type": "object", + "properties": { + "hyperparameters": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The hyperparameters given to this trial." + }, + "trialId": { + "description": "The trial id for these results.", + "type": "string" + }, + "isTrialStoppedEarly": { + "type": "boolean", + "description": "True if the trial is stopped early." + }, + "allMetrics": { + "description": "All recorded object metrics for this trial. This field is not currently\npopulated.", + "type": "array", + "items": { + "$ref": "GoogleCloudMlV1_HyperparameterOutput_HyperparameterMetric" } }, - "models": { - "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.", - "response": { - "$ref": "GoogleIamV1__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/[^/]+/models/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/models/{modelsId}:getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "id": "ml.projects.models.getIamPolicy" - }, - "patch": { - "flatPath": "v1/projects/{projectsId}/models/{modelsId}", - "id": "ml.projects.models.patch", - "path": "v1/{+name}", - "description": "Updates a specific model resource.\n\nCurrently the only supported fields to update are `description` and\n`default_version.name`.", - "request": { - "$ref": "GoogleCloudMlV1__Model" - }, - "httpMethod": "PATCH", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "GoogleLongrunning__Operation" - }, - "parameters": { - "updateMask": { - "location": "query", - "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", - "type": "string" - }, - "name": { - "location": "path", - "description": "Required. The project name.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/models/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "flatPath": "v1/projects/{projectsId}/models/{modelsId}", - "path": "v1/{+name}", - "id": "ml.projects.models.get", - "description": "Gets information about a model, including its name, the description (if\nset), and the default version (if at least one version of the model has\nbeen deployed).", - "response": { - "$ref": "GoogleCloudMlV1__Model" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "description": "Required. The name of the model.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/models/[^/]+$", - "location": "path" - } - }, - "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.", - "request": { - "$ref": "GoogleIamV1__TestIamPermissionsRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "GoogleIamV1__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": "^projects/[^/]+/models/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/models/{modelsId}:testIamPermissions", - "id": "ml.projects.models.testIamPermissions", - "path": "v1/{+resource}:testIamPermissions" - }, - "delete": { - "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "GoogleLongrunning__Operation" - }, - "parameters": { - "name": { - "pattern": "^projects/[^/]+/models/[^/]+$", - "location": "path", - "description": "Required. The name of the model.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/models/{modelsId}", - "id": "ml.projects.models.delete", - "path": "v1/{+name}", - "description": "Deletes a model.\n\nYou can only delete a model if there are no versions in it. You can delete\nversions by calling\n[projects.models.versions.delete](/ml-engine/reference/rest/v1/projects.models.versions/delete)." - }, - "list": { - "response": { - "$ref": "GoogleCloudMlV1__ListModelsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "pageToken": { - "description": "Optional. A page token to request the next page of results.\n\nYou get the token from the `next_page_token` field of the response from\nthe previous call.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "Optional. The number of models to retrieve per \"page\" of results. If there\nare more remaining results than this number, the response message will\ncontain a valid value in the `next_page_token` field.\n\nThe default value is 20, and the maximum page size is 100.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "parent": { - "description": "Required. The name of the project whose models are to be listed.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - }, - "filter": { - "type": "string", - "location": "query", - "description": "Optional. Specifies the subset of models to retrieve." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/models", - "path": "v1/{+parent}/models", - "id": "ml.projects.models.list", - "description": "Lists the models in a project.\n\nEach project can contain multiple models, and each model can have multiple\nversions.\n\nIf there are no models that match the request parameters, the list request\nreturns an empty response body: {}." - }, - "setIamPolicy": { - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "GoogleIamV1__Policy" - }, - "parameters": { - "resource": { - "pattern": "^projects/[^/]+/models/[^/]+$", - "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": "v1/projects/{projectsId}/models/{modelsId}:setIamPolicy", - "id": "ml.projects.models.setIamPolicy", - "path": "v1/{+resource}:setIamPolicy", - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "request": { - "$ref": "GoogleIamV1__SetIamPolicyRequest" - } - }, - "create": { - "path": "v1/{+parent}/models", - "id": "ml.projects.models.create", - "description": "Creates a model which will later contain one or more versions.\n\nYou must add at least one version before you can request predictions from\nthe model. Add versions by calling\n[projects.models.versions.create](/ml-engine/reference/rest/v1/projects.models.versions/create).", - "request": { - "$ref": "GoogleCloudMlV1__Model" - }, - "response": { - "$ref": "GoogleCloudMlV1__Model" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "description": "Required. The project name.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/models" - } - }, - "resources": { - "versions": { - "methods": { - "create": { - "flatPath": "v1/projects/{projectsId}/models/{modelsId}/versions", - "path": "v1/{+parent}/versions", - "id": "ml.projects.models.versions.create", - "request": { - "$ref": "GoogleCloudMlV1__Version" - }, - "description": "Creates a new version of a model from a trained TensorFlow model.\n\nIf the version created in the cloud by this call is the first deployed\nversion of the specified model, it will be made the default version of the\nmodel. When you add a version to a model that already has one or more\nversions, the default version does not automatically change. If you want a\nnew version to be the default, you must call\n[projects.models.versions.setDefault](/ml-engine/reference/rest/v1/projects.models.versions/setDefault).", - "response": { - "$ref": "GoogleLongrunning__Operation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/models/[^/]+$", - "location": "path", - "description": "Required. The name of the model." - } - } - }, - "patch": { - "flatPath": "v1/projects/{projectsId}/models/{modelsId}/versions/{versionsId}", - "path": "v1/{+name}", - "id": "ml.projects.models.versions.patch", - "request": { - "$ref": "GoogleCloudMlV1__Version" - }, - "description": "Updates the specified Version resource.\n\nCurrently the only supported field to update is `description`.", - "response": { - "$ref": "GoogleLongrunning__Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "location": "path", - "description": "Required. The name of the model.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/models/[^/]+/versions/[^/]+$" - }, - "updateMask": { - "location": "query", - "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", - "type": "string" - } - } - }, - "get": { - "id": "ml.projects.models.versions.get", - "path": "v1/{+name}", - "description": "Gets information about a model version.\n\nModels can have multiple versions. You can call\n[projects.models.versions.list](/ml-engine/reference/rest/v1/projects.models.versions/list)\nto get the same information that this method returns for all of the\nversions of a model.", - "httpMethod": "GET", - "response": { - "$ref": "GoogleCloudMlV1__Version" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The name of the version.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/models/[^/]+/versions/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/models/{modelsId}/versions/{versionsId}" - }, - "setDefault": { - "description": "Designates a version to be the default for the model.\n\nThe default version is used for prediction requests made against the model\nthat don't specify a version.\n\nThe first version to be created for a model is automatically set as the\ndefault. You must make any subsequent changes to the default version\nsetting manually using this method.", - "request": { - "$ref": "GoogleCloudMlV1__SetDefaultVersionRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "GoogleCloudMlV1__Version" - }, - "parameters": { - "name": { - "description": "Required. The name of the version to make the default for the model. You\ncan get the names of all the versions of a model by calling\n[projects.models.versions.list](/ml-engine/reference/rest/v1/projects.models.versions/list).", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/models/[^/]+/versions/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/models/{modelsId}/versions/{versionsId}:setDefault", - "id": "ml.projects.models.versions.setDefault", - "path": "v1/{+name}:setDefault" - }, - "delete": { - "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "GoogleLongrunning__Operation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "description": "Required. The name of the version. You can get the names of all the\nversions of a model by calling\n[projects.models.versions.list](/ml-engine/reference/rest/v1/projects.models.versions/list).", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/models/[^/]+/versions/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/models/{modelsId}/versions/{versionsId}", - "id": "ml.projects.models.versions.delete", - "path": "v1/{+name}", - "description": "Deletes a model version.\n\nEach model can have multiple versions deployed and in use at any given\ntime. Use this method to remove a single version.\n\nNote: You cannot delete the version that is set as the default version\nof the model unless it is the only remaining version." - }, - "list": { - "path": "v1/{+parent}/versions", - "id": "ml.projects.models.versions.list", - "description": "Gets basic information about all the versions of a model.\n\nIf you expect that a model has many versions, or if you need to handle\nonly a limited number of results at a time, you can request that the list\nbe retrieved in batches (called pages).\n\nIf there are no versions that match the request parameters, the list\nrequest returns an empty response body: {}.", - "response": { - "$ref": "GoogleCloudMlV1__ListVersionsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "description": "Required. The name of the model for which to list the version.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/models/[^/]+$", - "location": "path" - }, - "filter": { - "type": "string", - "location": "query", - "description": "Optional. Specifies the subset of versions to retrieve." - }, - "pageToken": { - "description": "Optional. A page token to request the next page of results.\n\nYou get the token from the `next_page_token` field of the response from\nthe previous call.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "Optional. The number of versions to retrieve per \"page\" of results. If\nthere are more remaining results than this number, the response message\nwill contain a valid value in the `next_page_token` field.\n\nThe default value is 20, and the maximum page size is 100.", - "format": "int32", - "type": "integer" - } - }, - "flatPath": "v1/projects/{projectsId}/models/{modelsId}/versions" - } - } - } - } - }, - "locations": { - "methods": { - "get": { - "response": { - "$ref": "GoogleCloudMlV1__Location" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path", - "description": "Required. The name of the location." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations/{locationsId}", - "path": "v1/{+name}", - "id": "ml.projects.locations.get", - "description": "Get the complete list of CMLE capabilities in a location, along with their\nlocation-specific properties." - }, - "list": { - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GoogleCloudMlV1__ListLocationsResponse" - }, - "parameters": { - "pageSize": { - "description": "Optional. The number of locations to retrieve per \"page\" of results. If there\nare more remaining results than this number, the response message will\ncontain a valid value in the `next_page_token` field.\n\nThe default value is 20, and the maximum page size is 100.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "parent": { - "location": "path", - "description": "Required. The name of the project for which available locations are to be\nlisted (since some locations might be whitelisted for specific projects).", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - }, - "pageToken": { - "description": "Optional. A page token to request the next page of results.\n\nYou get the token from the `next_page_token` field of the response from\nthe previous call.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/locations", - "id": "ml.projects.locations.list", - "path": "v1/{+parent}/locations", - "description": "List all locations that provides at least one type of CMLE capability." - } - } - }, - "jobs": { - "methods": { - "cancel": { - "description": "Cancels a running job.", - "request": { - "$ref": "GoogleCloudMlV1__CancelJobRequest" - }, - "response": { - "$ref": "GoogleProtobuf__Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "parameters": { - "name": { - "pattern": "^projects/[^/]+/jobs/[^/]+$", - "location": "path", - "description": "Required. The name of the job to cancel.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/jobs/{jobsId}:cancel", - "path": "v1/{+name}:cancel", - "id": "ml.projects.jobs.cancel" - }, - "getIamPolicy": { - "response": { - "$ref": "GoogleIamV1__Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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/[^/]+/jobs/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/jobs/{jobsId}:getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "id": "ml.projects.jobs.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": "Describes a job.", - "response": { - "$ref": "GoogleCloudMlV1__Job" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "description": "Required. The name of the job to get the description of.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/jobs/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/jobs/{jobsId}", - "path": "v1/{+name}", - "id": "ml.projects.jobs.get" - }, - "testIamPermissions": { - "response": { - "$ref": "GoogleIamV1__TestIamPermissionsResponse" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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/[^/]+/jobs/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/jobs/{jobsId}:testIamPermissions", - "path": "v1/{+resource}:testIamPermissions", - "id": "ml.projects.jobs.testIamPermissions", - "request": { - "$ref": "GoogleIamV1__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." - }, - "list": { - "response": { - "$ref": "GoogleCloudMlV1__ListJobsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "filter": { - "location": "query", - "description": "Optional. Specifies the subset of jobs to retrieve.\nYou can filter on the value of one or more attributes of the job object.\nFor example, retrieve jobs with a job identifier that starts with 'census':\n\u003cp\u003e\u003ccode\u003egcloud ml-engine jobs list --filter='jobId:census*'\u003c/code\u003e\n\u003cp\u003eList all failed jobs with names that start with 'rnn':\n\u003cp\u003e\u003ccode\u003egcloud ml-engine jobs list --filter='jobId:rnn*\nAND state:FAILED'\u003c/code\u003e\n\u003cp\u003eFor more examples, see the guide to\n\u003ca href=\"/ml-engine/docs/tensorflow/monitor-training\"\u003emonitoring jobs\u003c/a\u003e.", - "type": "string" - }, - "pageToken": { - "description": "Optional. A page token to request the next page of results.\n\nYou get the token from the `next_page_token` field of the response from\nthe previous call.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "Optional. The number of jobs to retrieve per \"page\" of results. If there\nare more remaining results than this number, the response message will\ncontain a valid value in the `next_page_token` field.\n\nThe default value is 20, and the maximum page size is 100.", - "format": "int32", - "type": "integer" - }, - "parent": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "Required. The name of the project for which to list jobs." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/projects/{projectsId}/jobs", - "path": "v1/{+parent}/jobs", - "id": "ml.projects.jobs.list", - "description": "Lists the jobs in the project.\n\nIf there are no jobs that match the request parameters, the list\nrequest returns an empty response body: {}." - }, - "create": { - "flatPath": "v1/projects/{projectsId}/jobs", - "path": "v1/{+parent}/jobs", - "id": "ml.projects.jobs.create", - "request": { - "$ref": "GoogleCloudMlV1__Job" - }, - "description": "Creates a training or a batch prediction job.", - "response": { - "$ref": "GoogleCloudMlV1__Job" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "description": "Required. The project name.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - } - }, - "setIamPolicy": { - "response": { - "$ref": "GoogleIamV1__Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "resource": { - "pattern": "^projects/[^/]+/jobs/[^/]+$", - "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" - } - }, - "flatPath": "v1/projects/{projectsId}/jobs/{jobsId}:setIamPolicy", - "path": "v1/{+resource}:setIamPolicy", - "id": "ml.projects.jobs.setIamPolicy", - "request": { - "$ref": "GoogleIamV1__SetIamPolicyRequest" - }, - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy." - } - } + "finalMetric": { + "$ref": "GoogleCloudMlV1_HyperparameterOutput_HyperparameterMetric", + "description": "The final objective metric seen for this trial." } } - } - }, - "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" - }, - "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": { - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ] + "GoogleIamV1__SetIamPolicyRequest": { + "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": "GoogleIamV1__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": "GoogleIamV1__SetIamPolicyRequest", + "description": "Request message for `SetIamPolicy` method.", + "type": "object" }, - "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" + "GoogleCloudMlV1__PredictionOutput": { + "description": "Represents results of a prediction job.", + "type": "object", + "properties": { + "errorCount": { + "description": "The number of data instances which resulted in errors.", + "format": "int64", + "type": "string" + }, + "outputPath": { + "type": "string", + "description": "The output Google Cloud Storage location provided at the job creation time." + }, + "nodeHours": { + "description": "Node hours used by the batch prediction job.", + "format": "double", + "type": "number" + }, + "predictionCount": { + "description": "The number of generated predictions.", + "format": "int64", + "type": "string" + } + }, + "id": "GoogleCloudMlV1__PredictionOutput" }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" + "GoogleIamV1__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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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": "GoogleIamV1__AuditConfig" + } + }, + "bindings": { + "type": "array", + "items": { + "$ref": "GoogleIamV1__Binding" + }, + "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error." + } + }, + "id": "GoogleIamV1__Policy" }, - "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" + "GoogleLongrunning__ListOperationsResponse": { + "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": "GoogleLongrunning__Operation" + } + } + }, + "id": "GoogleLongrunning__ListOperationsResponse", + "description": "The response message for Operations.ListOperations." }, - "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" + "GoogleCloudMlV1__ManualScaling": { + "description": "Options for manually scaling a model.", + "type": "object", + "properties": { + "nodes": { + "description": "The number of nodes to allocate for this model. These nodes are always up,\nstarting from the time the model is deployed, so the cost of operating\nthis model will be proportional to `nodes` * number of hours since\nlast billing cycle plus the cost for each prediction performed.", + "format": "int32", + "type": "integer" + } + }, + "id": "GoogleCloudMlV1__ManualScaling" }, - "pp": { - "type": "boolean", - "default": "true", - "location": "query", - "description": "Pretty-print response." + "GoogleIamV1__Binding": { + "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` .\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": { + "type": "string", + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired" + } + }, + "id": "GoogleIamV1__Binding", + "description": "Associates `members` with a `role`." }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" + "GoogleCloudMlV1__TrainingOutput": { + "description": "Represents results of a training job. Output only.", + "type": "object", + "properties": { + "trials": { + "description": "Results for individual Hyperparameter trials.\nOnly set for hyperparameter tuning jobs.", + "type": "array", + "items": { + "$ref": "GoogleCloudMlV1__HyperparameterOutput" + } + }, + "completedTrialCount": { + "description": "The number of hyperparameter tuning trials that completed successfully.\nOnly set for hyperparameter tuning jobs.", + "format": "int64", + "type": "string" + }, + "isHyperparameterTuningJob": { + "description": "Whether this job is a hyperparameter tuning job.", + "type": "boolean" + }, + "consumedMLUnits": { + "description": "The amount of ML units consumed by the job.", + "format": "double", + "type": "number" + } + }, + "id": "GoogleCloudMlV1__TrainingOutput" }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - } - }, - "version": "v1", - "baseUrl": "https://ml.googleapis.com/", - "servicePath": "", - "description": "An API to enable creating and using machine learning models.", - "kind": "discovery#restDescription", - "basePath": "", - "revision": "20180420", - "documentationLink": "https://cloud.google.com/ml/", - "id": "ml:v1", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { "GoogleCloudMlV1__PredictRequest": { - "description": "Request for predictions to be issued against a trained model.", - "type": "object", "properties": { "httpBody": { "$ref": "GoogleApi__HttpBody", "description": "\nRequired. The prediction request body." } }, - "id": "GoogleCloudMlV1__PredictRequest" + "id": "GoogleCloudMlV1__PredictRequest", + "description": "Request for predictions to be issued against a trained model.", + "type": "object" }, "GoogleCloudMlV1_HyperparameterOutput_HyperparameterMetric": { + "description": "An observed value of a metric.", "type": "object", "properties": { "trainingStep": { @@ -1002,8 +252,7 @@ "type": "number" } }, - "id": "GoogleCloudMlV1_HyperparameterOutput_HyperparameterMetric", - "description": "An observed value of a metric." + "id": "GoogleCloudMlV1_HyperparameterOutput_HyperparameterMetric" }, "GoogleCloudMlV1__Config": { "type": "object", @@ -1016,52 +265,12 @@ "id": "GoogleCloudMlV1__Config" }, "GoogleCloudMlV1__Version": { + "description": "Represents a version of the model.\n\nEach version is a trained model deployed in the cloud, ready to handle\nprediction requests. A model can have multiple versions. You can get\ninformation about all of the versions of a given model by calling\n[projects.models.versions.list](/ml-engine/reference/rest/v1/projects.models.versions/list).", "type": "object", "properties": { - "state": { - "enum": [ - "UNKNOWN", - "READY", - "CREATING", - "FAILED", - "DELETING", - "UPDATING" - ], - "description": "Output only. The state of a version.", - "type": "string", - "enumDescriptions": [ - "The version state is unspecified.", - "The version is ready for prediction.", - "The version is being created. New UpdateVersion and DeleteVersion\nrequests will fail if a version is in the CREATING state.", - "The version failed to be created, possibly cancelled.\n`error_message` should contain the details of the failure.", - "The version is being deleted. New UpdateVersion and DeleteVersion\nrequests will fail if a version is in the DELETING state.", - "The version is being updated. New UpdateVersion and DeleteVersion\nrequests will fail if a version is in the UPDATING state." - ] - }, - "manualScaling": { - "description": "Manually select the number of nodes to use for serving the\nmodel. You should generally use `auto_scaling` with an appropriate\n`min_nodes` instead, but this option is available if you want more\npredictable billing. Beware that latency and error rates will increase\nif the traffic exceeds that capability of the system to serve it based\non the selected number of nodes.", - "$ref": "GoogleCloudMlV1__ManualScaling" - }, - "name": { - "description": "Required.The name specified for the version when it was created.\n\nThe version name must be unique within the model it is created in.", - "type": "string" - }, - "pythonVersion": { - "description": "Optional. The version of Python used in prediction. If not set, the default\nversion is '2.7'. Python '3.5' is available when `runtime_version` is set\nto '1.4' and above. Python '2.7' works with all supported runtime versions.", - "type": "string" - }, - "lastUseTime": { - "description": "Output only. The time the version was last used for prediction.", - "format": "google-datetime", - "type": "string" - }, - "deploymentUri": { - "description": "Required. The Google Cloud Storage location of the trained model used to\ncreate the version. See the\n[guide to model\ndeployment](/ml-engine/docs/tensorflow/deploying-models) for more\ninformation.\n\nWhen passing Version to\n[projects.models.versions.create](/ml-engine/reference/rest/v1/projects.models.versions/create)\nthe model service uses the specified location as the source of the model.\nOnce deployed, the model version is hosted by the prediction service, so\nthis location is useful only as a historical record.\nThe total number of model files can't exceed 1000.", - "type": "string" - }, "autoScaling": { - "$ref": "GoogleCloudMlV1__AutoScaling", - "description": "Automatically scale the number of nodes used to serve the model in\nresponse to increases and decreases in traffic. Care should be\ntaken to ramp up traffic according to the model's ability to scale\nor you will start seeing increases in latency and 429 response codes." + "description": "Automatically scale the number of nodes used to serve the model in\nresponse to increases and decreases in traffic. Care should be\ntaken to ramp up traffic according to the model's ability to scale\nor you will start seeing increases in latency and 429 response codes.", + "$ref": "GoogleCloudMlV1__AutoScaling" }, "createTime": { "description": "Output only. The time the version was created.", @@ -1073,15 +282,14 @@ "description": "Output only. The details of a failure or a cancellation." }, "runtimeVersion": { - "description": "Optional. The Google Cloud ML runtime version to use for this deployment.\nIf not set, Google Cloud ML will choose a version.", - "type": "string" + "type": "string", + "description": "Optional. The Google Cloud ML runtime version to use for this deployment.\nIf not set, Google Cloud ML will choose a version." }, "description": { "description": "Optional. The description specified for the version when it was created.", "type": "string" }, "framework": { - "type": "string", "enumDescriptions": [ "", "", @@ -1094,20 +302,74 @@ "SCIKIT_LEARN", "XGBOOST" ], - "description": "Optional. The machine learning framework Cloud ML Engine uses to train\nthis version of the model. Valid values are `TENSORFLOW`, `SCIKIT_LEARN`,\nand `XGBOOST`. If you do not specify a framework, Cloud ML Engine uses\nTensorFlow. If you choose `SCIKIT_LEARN` or `XGBOOST`, you must also set\nthe runtime version of the model to 1.4 or greater." + "description": "Optional. The machine learning framework Cloud ML Engine uses to train\nthis version of the model. Valid values are `TENSORFLOW`, `SCIKIT_LEARN`,\nand `XGBOOST`. If you do not specify a framework, Cloud ML Engine uses\nTensorFlow. If you choose `SCIKIT_LEARN` or `XGBOOST`, you must also set\nthe runtime version of the model to 1.4 or greater.", + "type": "string" }, "isDefault": { "description": "Output only. If true, this version will be used to handle prediction\nrequests that do not specify a version.\n\nYou can change the default version by calling\n[projects.methods.versions.setDefault](/ml-engine/reference/rest/v1/projects.models.versions/setDefault).", "type": "boolean" + }, + "state": { + "enumDescriptions": [ + "The version state is unspecified.", + "The version is ready for prediction.", + "The version is being created. New UpdateVersion and DeleteVersion\nrequests will fail if a version is in the CREATING state.", + "The version failed to be created, possibly cancelled.\n`error_message` should contain the details of the failure.", + "The version is being deleted. New UpdateVersion and DeleteVersion\nrequests will fail if a version is in the DELETING state.", + "The version is being updated. New UpdateVersion and DeleteVersion\nrequests will fail if a version is in the UPDATING state." + ], + "enum": [ + "UNKNOWN", + "READY", + "CREATING", + "FAILED", + "DELETING", + "UPDATING" + ], + "description": "Output only. The state of a version.", + "type": "string" + }, + "manualScaling": { + "description": "Manually select the number of nodes to use for serving the\nmodel. You should generally use `auto_scaling` with an appropriate\n`min_nodes` instead, but this option is available if you want more\npredictable billing. Beware that latency and error rates will increase\nif the traffic exceeds that capability of the system to serve it based\non the selected number of nodes.", + "$ref": "GoogleCloudMlV1__ManualScaling" + }, + "name": { + "description": "Required.The name specified for the version when it was created.\n\nThe version name must be unique within the model it is created in.", + "type": "string" + }, + "pythonVersion": { + "type": "string", + "description": "Optional. The version of Python used in prediction. If not set, the default\nversion is '2.7'. Python '3.5' is available when `runtime_version` is set\nto '1.4' and above. Python '2.7' works with all supported runtime versions." + }, + "lastUseTime": { + "description": "Output only. The time the version was last used for prediction.", + "format": "google-datetime", + "type": "string" + }, + "deploymentUri": { + "description": "Required. The Google Cloud Storage location of the trained model used to\ncreate the version. See the\n[guide to model\ndeployment](/ml-engine/docs/tensorflow/deploying-models) for more\ninformation.\n\nWhen passing Version to\n[projects.models.versions.create](/ml-engine/reference/rest/v1/projects.models.versions/create)\nthe model service uses the specified location as the source of the model.\nOnce deployed, the model version is hosted by the prediction service, so\nthis location is useful only as a historical record.\nThe total number of model files can't exceed 1000.", + "type": "string" } }, - "id": "GoogleCloudMlV1__Version", - "description": "Represents a version of the model.\n\nEach version is a trained model deployed in the cloud, ready to handle\nprediction requests. A model can have multiple versions. You can get\ninformation about all of the versions of a given model by calling\n[projects.models.versions.list](/ml-engine/reference/rest/v1/projects.models.versions/list)." + "id": "GoogleCloudMlV1__Version" }, "GoogleCloudMlV1__ParameterSpec": { "description": "Represents a single hyperparameter to optimize.", "type": "object", "properties": { + "minValue": { + "description": "Required if type is `DOUBLE` or `INTEGER`. This field\nshould be unset if type is `CATEGORICAL`. This value should be integers if\ntype is INTEGER.", + "format": "double", + "type": "number" + }, + "discreteValues": { + "description": "Required if type is `DISCRETE`.\nA list of feasible points.\nThe list should be in strictly increasing order. For instance, this\nparameter might have possible settings of 1.5, 2.5, and 4.0. This list\nshould not contain more than 1,000 values.", + "type": "array", + "items": { + "format": "double", + "type": "number" + } + }, "scaleType": { "enumDescriptions": [ "By default, no scaling is applied.", @@ -1130,6 +392,7 @@ "type": "number" }, "type": { + "description": "Required. The type of the parameter.", "type": "string", "enumDescriptions": [ "You must specify a valid type. Using this unspecified type will result in\nan error.", @@ -1144,8 +407,7 @@ "INTEGER", "CATEGORICAL", "DISCRETE" - ], - "description": "Required. The type of the parameter." + ] }, "categoricalValues": { "description": "Required if type is `CATEGORICAL`. The list of possible categories.", @@ -1155,27 +417,13 @@ } }, "parameterName": { - "type": "string", - "description": "Required. The parameter name must be unique amongst all ParameterConfigs in\na HyperparameterSpec message. E.g., \"learning_rate\"." - }, - "minValue": { - "description": "Required if type is `DOUBLE` or `INTEGER`. This field\nshould be unset if type is `CATEGORICAL`. This value should be integers if\ntype is INTEGER.", - "format": "double", - "type": "number" - }, - "discreteValues": { - "description": "Required if type is `DISCRETE`.\nA list of feasible points.\nThe list should be in strictly increasing order. For instance, this\nparameter might have possible settings of 1.5, 2.5, and 4.0. This list\nshould not contain more than 1,000 values.", - "type": "array", - "items": { - "format": "double", - "type": "number" - } + "description": "Required. The parameter name must be unique amongst all ParameterConfigs in\na HyperparameterSpec message. E.g., \"learning_rate\".", + "type": "string" } }, "id": "GoogleCloudMlV1__ParameterSpec" }, "GoogleCloudMlV1__Location": { - "type": "object", "properties": { "name": { "type": "string" @@ -1188,7 +436,8 @@ } } }, - "id": "GoogleCloudMlV1__Location" + "id": "GoogleCloudMlV1__Location", + "type": "object" }, "GoogleCloudMlV1__PredictionInput": { "description": "Represents input parameters for a prediction job.", @@ -1199,13 +448,6 @@ "type": "string" }, "dataFormat": { - "enumDescriptions": [ - "Unspecified format.", - "Each line of the file is a JSON dictionary representing one record.", - "Deprecated. Use JSON instead.", - "INPUT ONLY. The source file is a TFRecord file.", - "INPUT ONLY. The source file is a GZIP-compressed TFRecord file." - ], "enum": [ "DATA_FORMAT_UNSPECIFIED", "JSON", @@ -1214,16 +456,23 @@ "TF_RECORD_GZIP" ], "description": "Required. The format of the input data files.", - "type": "string" + "type": "string", + "enumDescriptions": [ + "Unspecified format.", + "Each line of the file is a JSON dictionary representing one record.", + "Deprecated. Use JSON instead.", + "INPUT ONLY. The source file is a TFRecord file.", + "INPUT ONLY. The source file is a GZIP-compressed TFRecord file." + ] }, "runtimeVersion": { "description": "Optional. The Google Cloud ML runtime version to use for this batch\nprediction. If not set, Google Cloud ML will pick the runtime version used\nduring the CreateVersion request for this model version, or choose the\nlatest stable version when model version information is not available\nsuch as when the model is specified by uri.", "type": "string" }, "batchSize": { + "type": "string", "description": "Optional. Number of records per batch, defaults to 64.\nThe service will buffer batch_size number of records in memory before\ninvoking one Tensorflow prediction call internally. So take the record\nsize and memory available into consideration when setting this parameter.", - "format": "int64", - "type": "string" + "format": "int64" }, "inputPaths": { "description": "Required. The Google Cloud Storage location of the input data files.\nMay contain wildcards.", @@ -1233,8 +482,8 @@ } }, "region": { - "type": "string", - "description": "Required. The Google Compute Engine region to run the prediction job in.\nSee the \u003ca href=\"/ml-engine/docs/tensorflow/regions\"\u003eavailable regions\u003c/a\u003e\nfor ML Engine services." + "description": "Required. The Google Compute Engine region to run the prediction job in.\nSee the \u003ca href=\"/ml-engine/docs/tensorflow/regions\"\u003eavailable regions\u003c/a\u003e\nfor ML Engine services.", + "type": "string" }, "versionName": { "description": "Use this field if you want to specify a version of the model to use. The\nstring is formatted the same way as `model_version`, with the addition\nof the version information:\n\n`\"projects/YOUR_PROJECT/models/YOUR_MODEL/versions/YOUR_VERSION\"`", @@ -1248,29 +497,41 @@ "description": "Required. The output Google Cloud Storage location.", "type": "string" }, + "uri": { + "description": "Use this field if you want to specify a Google Cloud Storage path for\nthe model to use.", + "type": "string" + }, "maxWorkerCount": { "description": "Optional. The maximum number of workers to be used for parallel processing.\nDefaults to 10 if not specified.", "format": "int64", "type": "string" - }, - "uri": { - "description": "Use this field if you want to specify a Google Cloud Storage path for\nthe model to use.", - "type": "string" } }, "id": "GoogleCloudMlV1__PredictionInput" }, "GoogleCloudMlV1__OperationMetadata": { - "description": "Represents the metadata of the long-running operation.", - "type": "object", "properties": { + "isCancellationRequested": { + "description": "Indicates whether a request to cancel this operation has been made.", + "type": "boolean" + }, + "projectNumber": { + "description": "Contains the project number associated with the operation.", + "format": "int64", + "type": "string" + }, + "createTime": { + "description": "The time the operation was submitted.", + "format": "google-datetime", + "type": "string" + }, "modelName": { - "type": "string", - "description": "Contains the name of the model associated with the operation." + "description": "Contains the name of the model associated with the operation.", + "type": "string" }, "version": { - "$ref": "GoogleCloudMlV1__Version", - "description": "Contains the version associated with the operation." + "description": "Contains the version associated with the operation.", + "$ref": "GoogleCloudMlV1__Version" }, "endTime": { "description": "The time operation processing completed.", @@ -1278,7 +539,6 @@ "type": "string" }, "operationType": { - "description": "The operation type.", "type": "string", "enumDescriptions": [ "Unspecified operation type.", @@ -1297,31 +557,21 @@ "UPDATE_MODEL", "UPDATE_VERSION", "UPDATE_CONFIG" - ] + ], + "description": "The operation type." }, "startTime": { "description": "The time operation processing started.", "format": "google-datetime", "type": "string" - }, - "isCancellationRequested": { - "description": "Indicates whether a request to cancel this operation has been made.", - "type": "boolean" - }, - "projectNumber": { - "description": "Contains the project number associated with the operation.", - "format": "int64", - "type": "string" - }, - "createTime": { - "description": "The time the operation was submitted.", - "format": "google-datetime", - "type": "string" } }, - "id": "GoogleCloudMlV1__OperationMetadata" + "id": "GoogleCloudMlV1__OperationMetadata", + "description": "Represents the metadata of the long-running operation.", + "type": "object" }, "GoogleIamV1__AuditLogConfig": { + "id": "GoogleIamV1__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": { @@ -1333,6 +583,12 @@ } }, "logType": { + "enum": [ + "LOG_TYPE_UNSPECIFIED", + "ADMIN_READ", + "DATA_WRITE", + "DATA_READ" + ], "description": "The log type that this config enables.", "type": "string", "enumDescriptions": [ @@ -1340,21 +596,34 @@ "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": "GoogleIamV1__AuditLogConfig" + } }, "GoogleCloudMlV1__HyperparameterSpec": { "description": "Represents a set of hyperparameters to optimize.", "type": "object", "properties": { + "params": { + "description": "Required. The set of parameters to tune.", + "type": "array", + "items": { + "$ref": "GoogleCloudMlV1__ParameterSpec" + } + }, + "enableTrialEarlyStopping": { + "description": "Optional. Indicates if the hyperparameter tuning job enables auto trial\nearly stopping.", + "type": "boolean" + }, + "resumePreviousJobId": { + "description": "Optional. The prior hyperparameter tuning job id that users hope to\ncontinue with. The job id will be used to find the corresponding vizier\nstudy guid and resume the study.", + "type": "string" + }, + "maxParallelTrials": { + "description": "Optional. The number of training trials to run concurrently.\nYou can reduce the time it takes to perform hyperparameter tuning by adding\ntrials in parallel. However, each trail only benefits from the information\ngained in completed trials. That means that a trial does not get access to\nthe results of trials running at the same time, which could reduce the\nquality of the overall optimization.\n\nEach trial will use the same scale tier and machine types.\n\nDefaults to one.", + "format": "int32", + "type": "integer" + }, "goal": { "enumDescriptions": [ "Goal Type will default to maximize.", @@ -1370,9 +639,9 @@ "type": "string" }, "maxTrials": { - "type": "integer", "description": "Optional. How many training trials should be attempted to optimize\nthe specified hyperparameters.\n\nDefaults to one.", - "format": "int32" + "format": "int32", + "type": "integer" }, "algorithm": { "enum": [ @@ -1389,28 +658,8 @@ ] }, "hyperparameterMetricTag": { - "description": "Optional. The Tensorflow summary tag name to use for optimizing trials. For\ncurrent versions of Tensorflow, this tag name should exactly match what is\nshown in Tensorboard, including all scopes. For versions of Tensorflow\nprior to 0.12, this should be only the tag passed to tf.Summary.\nBy default, \"training/hptuning/metric\" will be used.", - "type": "string" - }, - "params": { - "description": "Required. The set of parameters to tune.", - "type": "array", - "items": { - "$ref": "GoogleCloudMlV1__ParameterSpec" - } - }, - "enableTrialEarlyStopping": { - "description": "Optional. Indicates if the hyperparameter tuning job enables auto trial\nearly stopping.", - "type": "boolean" - }, - "resumePreviousJobId": { - "description": "Optional. The prior hyperparameter tuning job id that users hope to\ncontinue with. The job id will be used to find the corresponding vizier\nstudy guid and resume the study.", - "type": "string" - }, - "maxParallelTrials": { - "description": "Optional. The number of training trials to run concurrently.\nYou can reduce the time it takes to perform hyperparameter tuning by adding\ntrials in parallel. However, each trail only benefits from the information\ngained in completed trials. That means that a trial does not get access to\nthe results of trials running at the same time, which could reduce the\nquality of the overall optimization.\n\nEach trial will use the same scale tier and machine types.\n\nDefaults to one.", - "format": "int32", - "type": "integer" + "type": "string", + "description": "Optional. The Tensorflow summary tag name to use for optimizing trials. For\ncurrent versions of Tensorflow, this tag name should exactly match what is\nshown in Tensorboard, including all scopes. For versions of Tensorflow\nprior to 0.12, this should be only the tag passed to tf.Summary.\nBy default, \"training/hptuning/metric\" will be used." } }, "id": "GoogleCloudMlV1__HyperparameterSpec" @@ -1433,22 +682,22 @@ "id": "GoogleCloudMlV1__ListLocationsResponse" }, "GoogleCloudMlV1__ListJobsResponse": { + "id": "GoogleCloudMlV1__ListJobsResponse", + "description": "Response message for the ListJobs method.", + "type": "object", "properties": { + "nextPageToken": { + "description": "Optional. Pass this token as the `page_token` field of the request for a\nsubsequent call.", + "type": "string" + }, "jobs": { + "description": "The list of jobs.", "type": "array", "items": { "$ref": "GoogleCloudMlV1__Job" - }, - "description": "The list of jobs." - }, - "nextPageToken": { - "description": "Optional. Pass this token as the `page_token` field of the request for a\nsubsequent call.", - "type": "string" + } } - }, - "id": "GoogleCloudMlV1__ListJobsResponse", - "description": "Response message for the ListJobs method.", - "type": "object" + } }, "GoogleCloudMlV1__SetDefaultVersionRequest": { "properties": {}, @@ -1457,6 +706,8 @@ "type": "object" }, "GoogleLongrunning__Operation": { + "id": "GoogleLongrunning__Operation", + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", "type": "object", "properties": { "response": { @@ -1476,28 +727,52 @@ "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" - }, - "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" } + } + }, + "GoogleIamV1__AuditConfig": { + "properties": { + "auditLogConfigs": { + "description": "The configuration for logging of each type of permission.", + "type": "array", + "items": { + "$ref": "GoogleIamV1__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": "GoogleLongrunning__Operation", - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call." + "id": "GoogleIamV1__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.", + "type": "object" }, "GoogleCloudMlV1__Model": { + "id": "GoogleCloudMlV1__Model", "description": "Represents a machine learning solution.\n\nA model can have multiple versions, each of which is a deployed, trained\nmodel ready to receive prediction requests. The model itself is just a\ncontainer.", "type": "object", "properties": { + "regions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Optional. The list of regions where the model is going to be deployed.\nCurrently only one region per model is supported.\nDefaults to 'us-central1' if nothing is set.\nSee the \u003ca href=\"/ml-engine/docs/tensorflow/regions\"\u003eavailable regions\u003c/a\u003e\nfor ML Engine services.\nNote:\n* No matter where a model is deployed, it can always be accessed by\n users from anywhere, both for online and batch prediction.\n* The region for a batch prediction job is set by the region field when\n submitting the batch prediction job and does not take its value from\n this field." + }, "name": { - "type": "string", - "description": "Required. The name specified for the model when it was created.\n\nThe model name must be unique within the project it is created in." + "description": "Required. The name specified for the model when it was created.\n\nThe model name must be unique within the project it is created in.", + "type": "string" }, "description": { "description": "Optional. The description specified for the model when it was created.", @@ -1510,34 +785,8 @@ "defaultVersion": { "description": "Output only. The default version of the model. This version will be used to\nhandle prediction requests that do not specify a version.\n\nYou can change the default version by calling\n[projects.methods.versions.setDefault](/ml-engine/reference/rest/v1/projects.models.versions/setDefault).", "$ref": "GoogleCloudMlV1__Version" - }, - "regions": { - "description": "Optional. The list of regions where the model is going to be deployed.\nCurrently only one region per model is supported.\nDefaults to 'us-central1' if nothing is set.\nSee the \u003ca href=\"/ml-engine/docs/tensorflow/regions\"\u003eavailable regions\u003c/a\u003e\nfor ML Engine services.\nNote:\n* No matter where a model is deployed, it can always be accessed by\n users from anywhere, both for online and batch prediction.\n* The region for a batch prediction job is set by the region field when\n submitting the batch prediction job and does not take its value from\n this field.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "GoogleCloudMlV1__Model" - }, - "GoogleIamV1__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.", - "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.", - "type": "array", - "items": { - "$ref": "GoogleIamV1__AuditLogConfig" - } } - }, - "id": "GoogleIamV1__AuditConfig" + } }, "GoogleProtobuf__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 `{}`.", @@ -1546,6 +795,7 @@ "id": "GoogleProtobuf__Empty" }, "GoogleIamV1__TestIamPermissionsRequest": { + "description": "Request message for `TestIamPermissions` method.", "type": "object", "properties": { "permissions": { @@ -1556,36 +806,45 @@ } } }, - "id": "GoogleIamV1__TestIamPermissionsRequest", - "description": "Request message for `TestIamPermissions` method." + "id": "GoogleIamV1__TestIamPermissionsRequest" }, "GoogleCloudMlV1__ListVersionsResponse": { - "id": "GoogleCloudMlV1__ListVersionsResponse", "description": "Response message for the ListVersions method.", "type": "object", "properties": { "versions": { + "description": "The list of versions.", "type": "array", "items": { "$ref": "GoogleCloudMlV1__Version" - }, - "description": "The list of versions." + } }, "nextPageToken": { "description": "Optional. Pass this token as the `page_token` field of the request for a\nsubsequent call.", "type": "string" } - } + }, + "id": "GoogleCloudMlV1__ListVersionsResponse" }, "GoogleCloudMlV1__CancelJobRequest": { - "description": "Request message for the CancelJob method.", "type": "object", "properties": {}, - "id": "GoogleCloudMlV1__CancelJobRequest" + "id": "GoogleCloudMlV1__CancelJobRequest", + "description": "Request message for the CancelJob method." }, - "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.", + "GoogleCloudMlV1__AutoScaling": { + "description": "Options for automatically scaling a model.", "type": "object", + "properties": { + "minNodes": { + "description": "Optional. The minimum number of nodes to allocate for this model. These\nnodes are always up, starting from the time the model is deployed, so the\ncost of operating this model will be at least\n`rate` * `min_nodes` * number of hours since last billing cycle,\nwhere `rate` is the cost per node-hour as documented in the\n[pricing guide](/ml-engine/docs/pricing),\neven if no predictions are performed. There is additional cost for each\nprediction performed.\n\nUnlike manual scaling, if the load gets too heavy for the nodes\nthat are up, the service will automatically add nodes to handle the\nincreased load as well as scale back as traffic drops, always maintaining\nat least `min_nodes`. You will be charged for the time in which additional\nnodes are used.\n\nIf not specified, `min_nodes` defaults to 0, in which case, when traffic\nto a model stops (and after a cool-down period), nodes will be shut down\nand no charges will be incurred until traffic to the model resumes.", + "format": "int32", + "type": "integer" + } + }, + "id": "GoogleCloudMlV1__AutoScaling" + }, + "GoogleRpc__Status": { "properties": { "code": { "type": "integer", @@ -1600,41 +859,42 @@ "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": "object" + } } } }, - "id": "GoogleRpc__Status" + "id": "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" }, - "GoogleCloudMlV1__AutoScaling": { - "id": "GoogleCloudMlV1__AutoScaling", - "description": "Options for automatically scaling a model.", + "GoogleCloudMlV1__ListModelsResponse": { + "description": "Response message for the ListModels method.", "type": "object", "properties": { - "minNodes": { - "type": "integer", - "description": "Optional. The minimum number of nodes to allocate for this model. These\nnodes are always up, starting from the time the model is deployed, so the\ncost of operating this model will be at least\n`rate` * `min_nodes` * number of hours since last billing cycle,\nwhere `rate` is the cost per node-hour as documented in the\n[pricing guide](/ml-engine/docs/pricing),\neven if no predictions are performed. There is additional cost for each\nprediction performed.\n\nUnlike manual scaling, if the load gets too heavy for the nodes\nthat are up, the service will automatically add nodes to handle the\nincreased load as well as scale back as traffic drops, always maintaining\nat least `min_nodes`. You will be charged for the time in which additional\nnodes are used.\n\nIf not specified, `min_nodes` defaults to 0, in which case, when traffic\nto a model stops (and after a cool-down period), nodes will be shut down\nand no charges will be incurred until traffic to the model resumes.", - "format": "int32" + "nextPageToken": { + "description": "Optional. Pass this token as the `page_token` field of the request for a\nsubsequent call.", + "type": "string" + }, + "models": { + "description": "The list of models.", + "type": "array", + "items": { + "$ref": "GoogleCloudMlV1__Model" + } } - } + }, + "id": "GoogleCloudMlV1__ListModelsResponse" }, "GoogleCloudMlV1__TrainingInput": { + "description": "Represents input parameters for a training job. When using the\ngcloud command to submit your training job, you can specify\nthe input parameters as command-line arguments and/or in a YAML configuration\nfile referenced from the --config command-line argument. For\ndetails, see the guide to\n\u003ca href=\"/ml-engine/docs/tensorflow/training-jobs\"\u003esubmitting a training\njob\u003c/a\u003e.", "type": "object", "properties": { - "runtimeVersion": { - "description": "Optional. The Google Cloud ML runtime version to use for training. If not\nset, Google Cloud ML will choose a stable version, which is defined in the\ndocumentation of runtime version list.", - "type": "string" - }, - "pythonModule": { - "description": "Required. The Python module name to run after installing the packages.", - "type": "string" - }, - "region": { - "description": "Required. The Google Compute Engine region to run the training job in.\nSee the \u003ca href=\"/ml-engine/docs/tensorflow/regions\"\u003eavailable regions\u003c/a\u003e\nfor ML Engine services.", + "workerType": { + "description": "Optional. Specifies the type of virtual machine to use for your training\njob's worker nodes.\n\nThe supported values are the same as those described in the entry for\n`masterType`.\n\nThis value must be present when `scaleTier` is set to `CUSTOM` and\n`workerCount` is greater than zero.", "type": "string" }, "args": { @@ -1644,23 +904,15 @@ "type": "string" } }, - "workerType": { - "description": "Optional. Specifies the type of virtual machine to use for your training\njob's worker nodes.\n\nThe supported values are the same as those described in the entry for\n`masterType`.\n\nThis value must be present when `scaleTier` is set to `CUSTOM` and\n`workerCount` is greater than zero.", + "region": { + "description": "Required. The Google Compute Engine region to run the training job in.\nSee the \u003ca href=\"/ml-engine/docs/tensorflow/regions\"\u003eavailable regions\u003c/a\u003e\nfor ML Engine services.", "type": "string" }, "parameterServerType": { - "description": "Optional. Specifies the type of virtual machine to use for your training\njob's parameter server.\n\nThe supported values are the same as those described in the entry for\n`master_type`.\n\nThis value must be present when `scaleTier` is set to `CUSTOM` and\n`parameter_server_count` is greater than zero.", - "type": "string" - }, - "scaleTier": { - "enumDescriptions": [ - "A single worker instance. This tier is suitable for learning how to use\nCloud ML, and for experimenting with new models using small datasets.", - "Many workers and a few parameter servers.", - "A large number of workers with many parameter servers.", - "A single worker instance [with a\nGPU](/ml-engine/docs/tensorflow/using-gpus).", - "A single worker instance with a\n[Cloud TPU](/ml-engine/docs/tensorflow/using-tpus).\nThe availability of Cloud TPU is in \u003ci\u003eBeta\u003c/i\u003e launch stage.", - "The CUSTOM tier is not a set tier, but rather enables you to use your\nown cluster specification. When you use this tier, set values to\nconfigure your processing cluster according to these guidelines:\n\n* You _must_ set `TrainingInput.masterType` to specify the type\n of machine to use for your master node. This is the only required\n setting.\n\n* You _may_ set `TrainingInput.workerCount` to specify the number of\n workers to use. If you specify one or more workers, you _must_ also\n set `TrainingInput.workerType` to specify the type of machine to use\n for your worker nodes.\n\n* You _may_ set `TrainingInput.parameterServerCount` to specify the\n number of parameter servers to use. If you specify one or more\n parameter servers, you _must_ also set\n `TrainingInput.parameterServerType` to specify the type of machine to\n use for your parameter servers.\n\nNote that all of your workers must use the same machine type, which can\nbe different from your parameter server type and master type. Your\nparameter servers must likewise use the same machine type, which can be\ndifferent from your worker type and master type." - ], + "description": "Optional. Specifies the type of virtual machine to use for your training\njob's parameter server.\n\nThe supported values are the same as those described in the entry for\n`master_type`.\n\nThis value must be present when `scaleTier` is set to `CUSTOM` and\n`parameter_server_count` is greater than zero.", + "type": "string" + }, + "scaleTier": { "enum": [ "BASIC", "STANDARD_1", @@ -1670,15 +922,23 @@ "CUSTOM" ], "description": "Required. Specifies the machine types, the number of replicas for workers\nand parameter servers.", - "type": "string" + "type": "string", + "enumDescriptions": [ + "A single worker instance. This tier is suitable for learning how to use\nCloud ML, and for experimenting with new models using small datasets.", + "Many workers and a few parameter servers.", + "A large number of workers with many parameter servers.", + "A single worker instance [with a\nGPU](/ml-engine/docs/tensorflow/using-gpus).", + "A single worker instance with a\n[Cloud TPU](/ml-engine/docs/tensorflow/using-tpus).\nThe availability of Cloud TPU is in \u003ci\u003eBeta\u003c/i\u003e launch stage.", + "The CUSTOM tier is not a set tier, but rather enables you to use your\nown cluster specification. When you use this tier, set values to\nconfigure your processing cluster according to these guidelines:\n\n* You _must_ set `TrainingInput.masterType` to specify the type\n of machine to use for your master node. This is the only required\n setting.\n\n* You _may_ set `TrainingInput.workerCount` to specify the number of\n workers to use. If you specify one or more workers, you _must_ also\n set `TrainingInput.workerType` to specify the type of machine to use\n for your worker nodes.\n\n* You _may_ set `TrainingInput.parameterServerCount` to specify the\n number of parameter servers to use. If you specify one or more\n parameter servers, you _must_ also set\n `TrainingInput.parameterServerType` to specify the type of machine to\n use for your parameter servers.\n\nNote that all of your workers must use the same machine type, which can\nbe different from your parameter server type and master type. Your\nparameter servers must likewise use the same machine type, which can be\ndifferent from your worker type and master type." + ] }, "jobDir": { "description": "Optional. A Google Cloud Storage path in which to store training outputs\nand other data needed for training. This path is passed to your TensorFlow\nprogram as the '--job-dir' command-line argument. The benefit of specifying\nthis field is that Cloud ML validates the path for use in training.", "type": "string" }, "hyperparameters": { - "$ref": "GoogleCloudMlV1__HyperparameterSpec", - "description": "Optional. The set of Hyperparameters to tune." + "description": "Optional. The set of Hyperparameters to tune.", + "$ref": "GoogleCloudMlV1__HyperparameterSpec" }, "pythonVersion": { "description": "Optional. The version of Python used in training. If not set, the default\nversion is '2.7'. Python '3.5' is available when `runtime_version` is set\nto '1.4' and above. Python '2.7' works with all supported runtime versions.", @@ -1704,33 +964,50 @@ "masterType": { "description": "Optional. Specifies the type of virtual machine to use for your training\njob's master worker.\n\nThe following types are supported:\n\n\u003cdl\u003e\n \u003cdt\u003estandard\u003c/dt\u003e\n \u003cdd\u003e\n A basic machine configuration suitable for training simple models with\n small to moderate datasets.\n \u003c/dd\u003e\n \u003cdt\u003elarge_model\u003c/dt\u003e\n \u003cdd\u003e\n A machine with a lot of memory, specially suited for parameter servers\n when your model is large (having many hidden layers or layers with very\n large numbers of nodes).\n \u003c/dd\u003e\n \u003cdt\u003ecomplex_model_s\u003c/dt\u003e\n \u003cdd\u003e\n A machine suitable for the master and workers of the cluster when your\n model requires more computation than the standard machine can handle\n satisfactorily.\n \u003c/dd\u003e\n \u003cdt\u003ecomplex_model_m\u003c/dt\u003e\n \u003cdd\u003e\n A machine with roughly twice the number of cores and roughly double the\n memory of \u003ccode suppresswarning=\"true\"\u003ecomplex_model_s\u003c/code\u003e.\n \u003c/dd\u003e\n \u003cdt\u003ecomplex_model_l\u003c/dt\u003e\n \u003cdd\u003e\n A machine with roughly twice the number of cores and roughly double the\n memory of \u003ccode suppresswarning=\"true\"\u003ecomplex_model_m\u003c/code\u003e.\n \u003c/dd\u003e\n \u003cdt\u003estandard_gpu\u003c/dt\u003e\n \u003cdd\u003e\n A machine equivalent to \u003ccode suppresswarning=\"true\"\u003estandard\u003c/code\u003e that\n also includes a single NVIDIA Tesla K80 GPU. See more about\n \u003ca href=\"/ml-engine/docs/tensorflow/using-gpus\"\u003eusing GPUs to\n train your model\u003c/a\u003e.\n \u003c/dd\u003e\n \u003cdt\u003ecomplex_model_m_gpu\u003c/dt\u003e\n \u003cdd\u003e\n A machine equivalent to\n \u003ccode suppresswarning=\"true\"\u003ecomplex_model_m\u003c/code\u003e that also includes\n four NVIDIA Tesla K80 GPUs.\n \u003c/dd\u003e\n \u003cdt\u003ecomplex_model_l_gpu\u003c/dt\u003e\n \u003cdd\u003e\n A machine equivalent to\n \u003ccode suppresswarning=\"true\"\u003ecomplex_model_l\u003c/code\u003e that also includes\n eight NVIDIA Tesla K80 GPUs.\n \u003c/dd\u003e\n \u003cdt\u003estandard_p100\u003c/dt\u003e\n \u003cdd\u003e\n A machine equivalent to \u003ccode suppresswarning=\"true\"\u003estandard\u003c/code\u003e that\n also includes a single NVIDIA Tesla P100 GPU. The availability of these\n GPUs is in the Beta launch stage.\n \u003c/dd\u003e\n \u003cdt\u003ecomplex_model_m_p100\u003c/dt\u003e\n \u003cdd\u003e\n A machine equivalent to\n \u003ccode suppresswarning=\"true\"\u003ecomplex_model_m\u003c/code\u003e that also includes\n four NVIDIA Tesla P100 GPUs. The availability of these GPUs is in\n the Beta launch stage.\n \u003c/dd\u003e\n \u003cdt\u003estandard_tpu\u003c/dt\u003e\n \u003cdd\u003e\n A TPU VM including one Cloud TPU. The availability of Cloud TPU is in\n \u003ci\u003eBeta\u003c/i\u003e launch stage. See more about\n \u003ca href=\"/ml-engine/docs/tensorflow/using-tpus\"\u003eusing TPUs to train\n your model\u003c/a\u003e.\n \u003c/dd\u003e\n\u003c/dl\u003e\n\nYou must set this value when `scaleTier` is set to `CUSTOM`.", "type": "string" - } - }, - "id": "GoogleCloudMlV1__TrainingInput", - "description": "Represents input parameters for a training job. When using the\ngcloud command to submit your training job, you can specify\nthe input parameters as command-line arguments and/or in a YAML configuration\nfile referenced from the --config command-line argument. For\ndetails, see the guide to\n\u003ca href=\"/ml-engine/docs/tensorflow/training-jobs\"\u003esubmitting a training\njob\u003c/a\u003e." - }, - "GoogleCloudMlV1__ListModelsResponse": { - "description": "Response message for the ListModels method.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "Optional. Pass this token as the `page_token` field of the request for a\nsubsequent call.", + }, + "runtimeVersion": { + "description": "Optional. The Google Cloud ML runtime version to use for training. If not\nset, Google Cloud ML will choose a stable version, which is defined in the\ndocumentation of runtime version list.", "type": "string" }, - "models": { - "description": "The list of models.", - "type": "array", - "items": { - "$ref": "GoogleCloudMlV1__Model" - } + "pythonModule": { + "type": "string", + "description": "Required. The Python module name to run after installing the packages." } }, - "id": "GoogleCloudMlV1__ListModelsResponse" + "id": "GoogleCloudMlV1__TrainingInput" }, "GoogleCloudMlV1__Job": { "description": "Represents a training or prediction job.", "type": "object", "properties": { + "predictionInput": { + "$ref": "GoogleCloudMlV1__PredictionInput", + "description": "Input parameters to create a prediction job." + }, + "state": { + "enumDescriptions": [ + "The job state is unspecified.", + "The job has been just created and processing has not yet begun.", + "The service is preparing to run the job.", + "The job is in progress.", + "The job completed successfully.", + "The job failed.\n`error_message` should contain the details of the failure.", + "The job is being cancelled.\n`error_message` should describe the reason for the cancellation.", + "The job has been cancelled.\n`error_message` should describe the reason for the cancellation." + ], + "enum": [ + "STATE_UNSPECIFIED", + "QUEUED", + "PREPARING", + "RUNNING", + "SUCCEEDED", + "FAILED", + "CANCELLING", + "CANCELLED" + ], + "description": "Output only. The detailed state of a job.", + "type": "string" + }, "jobId": { "description": "Required. The user-specified id of the job.", "type": "string" @@ -1745,102 +1022,46 @@ "type": "string" }, "startTime": { - "type": "string", "description": "Output only. When the job processing was started.", - "format": "google-datetime" + "format": "google-datetime", + "type": "string" }, "predictionOutput": { - "$ref": "GoogleCloudMlV1__PredictionOutput", - "description": "The current prediction job result." + "description": "The current prediction job result.", + "$ref": "GoogleCloudMlV1__PredictionOutput" }, "trainingOutput": { "$ref": "GoogleCloudMlV1__TrainingOutput", "description": "The current training job result." }, "trainingInput": { - "description": "Input parameters to create a training job.", - "$ref": "GoogleCloudMlV1__TrainingInput" + "$ref": "GoogleCloudMlV1__TrainingInput", + "description": "Input parameters to create a training job." }, "createTime": { - "description": "Output only. When the job was created.", - "format": "google-datetime", - "type": "string" - }, - "state": { - "enum": [ - "STATE_UNSPECIFIED", - "QUEUED", - "PREPARING", - "RUNNING", - "SUCCEEDED", - "FAILED", - "CANCELLING", - "CANCELLED" - ], - "description": "Output only. The detailed state of a job.", "type": "string", - "enumDescriptions": [ - "The job state is unspecified.", - "The job has been just created and processing has not yet begun.", - "The service is preparing to run the job.", - "The job is in progress.", - "The job completed successfully.", - "The job failed.\n`error_message` should contain the details of the failure.", - "The job is being cancelled.\n`error_message` should describe the reason for the cancellation.", - "The job has been cancelled.\n`error_message` should describe the reason for the cancellation." - ] - }, - "predictionInput": { - "description": "Input parameters to create a prediction job.", - "$ref": "GoogleCloudMlV1__PredictionInput" + "description": "Output only. When the job was created.", + "format": "google-datetime" } }, "id": "GoogleCloudMlV1__Job" }, - "GoogleApi__HttpBody": { - "description": "Message that represents an arbitrary HTTP body. It should only be used for\npayload formats that can't be represented as JSON, such as raw binary or\nan HTML page.\n\n\nThis message can be used both in streaming and non-streaming API methods in\nthe request as well as the response.\n\nIt can be used as a top-level request field, which is convenient if one\nwants to extract parameters from either the URL or HTTP template into the\nrequest fields and also want access to the raw HTTP body.\n\nExample:\n\n message GetResourceRequest {\n // A unique request id.\n string request_id = 1;\n\n // The raw HTTP body is bound to this field.\n google.api.HttpBody http_body = 2;\n }\n\n service ResourceService {\n rpc GetResource(GetResourceRequest) returns (google.api.HttpBody);\n rpc UpdateResource(google.api.HttpBody) returns (google.protobuf.Empty);\n }\n\nExample with streaming methods:\n\n service CaldavService {\n rpc GetCalendar(stream google.api.HttpBody)\n returns (stream google.api.HttpBody);\n rpc UpdateCalendar(stream google.api.HttpBody)\n returns (stream google.api.HttpBody);\n }\n\nUse of this type only changes how the request and response bodies are\nhandled, all other features will continue to work unchanged.", - "type": "object", - "properties": { - "extensions": { - "type": "array", - "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - }, - "description": "Application specific response metadata. Must be set in the first response\nfor streaming APIs." - }, - "data": { - "type": "string", - "description": "HTTP body binary data.", - "format": "byte" - }, - "contentType": { - "description": "The HTTP Content-Type string representing the content type of the body.", - "type": "string" - } - }, - "id": "GoogleApi__HttpBody" - }, "GoogleCloudMlV1__Capability": { - "type": "object", "properties": { "type": { + "enumDescriptions": [ + "", + "", + "", + "" + ], "enum": [ "TYPE_UNSPECIFIED", "TRAINING", "BATCH_PREDICTION", "ONLINE_PREDICTION" ], - "type": "string", - "enumDescriptions": [ - "", - "", - "", - "" - ] + "type": "string" }, "availableAccelerators": { "description": "Available accelerators for the capability.", @@ -1860,244 +1081,1023 @@ ] } }, - "id": "GoogleCloudMlV1__Capability" + "id": "GoogleCloudMlV1__Capability", + "type": "object" }, - "GoogleCloudMlV1__GetConfigResponse": { - "description": "Returns service account information associated with a project.", + "GoogleApi__HttpBody": { + "description": "Message that represents an arbitrary HTTP body. It should only be used for\npayload formats that can't be represented as JSON, such as raw binary or\nan HTML page.\n\n\nThis message can be used both in streaming and non-streaming API methods in\nthe request as well as the response.\n\nIt can be used as a top-level request field, which is convenient if one\nwants to extract parameters from either the URL or HTTP template into the\nrequest fields and also want access to the raw HTTP body.\n\nExample:\n\n message GetResourceRequest {\n // A unique request id.\n string request_id = 1;\n\n // The raw HTTP body is bound to this field.\n google.api.HttpBody http_body = 2;\n }\n\n service ResourceService {\n rpc GetResource(GetResourceRequest) returns (google.api.HttpBody);\n rpc UpdateResource(google.api.HttpBody) returns (google.protobuf.Empty);\n }\n\nExample with streaming methods:\n\n service CaldavService {\n rpc GetCalendar(stream google.api.HttpBody)\n returns (stream google.api.HttpBody);\n rpc UpdateCalendar(stream google.api.HttpBody)\n returns (stream google.api.HttpBody);\n }\n\nUse of this type only changes how the request and response bodies are\nhandled, all other features will continue to work unchanged.", "type": "object", "properties": { - "serviceAccountProject": { - "description": "The project number for `service_account`.", - "format": "int64", + "extensions": { + "description": "Application specific response metadata. Must be set in the first response\nfor streaming APIs.", + "type": "array", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + } + }, + "data": { + "description": "HTTP body binary data.", + "format": "byte", "type": "string" }, - "serviceAccount": { - "description": "The service account Cloud ML uses to access resources in the project.", + "contentType": { + "description": "The HTTP Content-Type string representing the content type of the body.", "type": "string" + } + }, + "id": "GoogleApi__HttpBody" + } + }, + "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 Machine Learning Engine", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, + "rootUrl": "https://ml.googleapis.com/", + "ownerDomain": "google.com", + "name": "ml", + "batchPath": "batch", + "fullyEncodeReservedExpansion": true, + "title": "Cloud Machine Learning Engine", + "ownerName": "Google", + "resources": { + "projects": { + "methods": { + "predict": { + "request": { + "$ref": "GoogleCloudMlV1__PredictRequest" + }, + "description": "Performs prediction on the data in the request.\nCloud ML Engine implements a custom `predict` verb on top of an HTTP POST\nmethod. \u003cp\u003eFor details of the request and response format, see the **guide\nto the [predict request format](/ml-engine/docs/v1/predict-request)**.", + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "GoogleApi__HttpBody" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "description": "Required. The resource name of a model or a version.\n\nAuthorization: requires the `predict` permission on the specified resource.", + "required": true, + "type": "string", + "pattern": "^projects/.+$", + "location": "path" + } + }, + "flatPath": "v1/projects/{projectsId}:predict", + "id": "ml.projects.predict", + "path": "v1/{+name}:predict" }, - "config": { - "$ref": "GoogleCloudMlV1__Config" + "getConfig": { + "flatPath": "v1/projects/{projectsId}:getConfig", + "id": "ml.projects.getConfig", + "path": "v1/{+name}:getConfig", + "description": "Get the service account information associated with your project. You need\nthis information in order to grant the service account permissions for\nthe Google Cloud Storage location where you put your model training code\nfor training the model with Google Cloud Machine Learning.", + "httpMethod": "GET", + "response": { + "$ref": "GoogleCloudMlV1__GetConfigResponse" + }, + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The project name.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } }, - "id": "GoogleCloudMlV1__GetConfigResponse" - }, - "GoogleIamV1__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" + "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`.", + "response": { + "$ref": "GoogleProtobuf__Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/operations/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/operations/{operationsId}:cancel", + "path": "v1/{+name}:cancel", + "id": "ml.projects.operations.cancel" + }, + "delete": { + "response": { + "$ref": "GoogleProtobuf__Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "parameters": { + "name": { + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/operations/[^/]+$", + "location": "path", + "description": "The name of the operation resource to be deleted." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/operations/{operationsId}", + "path": "v1/{+name}", + "id": "ml.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`." + }, + "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": "GoogleLongrunning__ListOperationsResponse" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "parameters": { + "filter": { + "type": "string", + "location": "query", + "description": "The standard list filter." + }, + "name": { + "description": "The name of the operation's parent resource.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$", + "location": "path" + }, + "pageToken": { + "location": "query", + "description": "The standard list page token.", + "type": "string" + }, + "pageSize": { + "type": "integer", + "location": "query", + "description": "The standard list page size.", + "format": "int32" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/operations", + "path": "v1/{+name}/operations", + "id": "ml.projects.operations.list" + }, + "get": { + "id": "ml.projects.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": "GoogleLongrunning__Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "location": "path", + "description": "The name of the operation resource.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/operations/[^/]+$" + } + }, + "flatPath": "v1/projects/{projectsId}/operations/{operationsId}" + } } - } - }, - "id": "GoogleIamV1__TestIamPermissionsResponse" - }, - "GoogleCloudMlV1__HyperparameterOutput": { - "description": "Represents the result of a single hyperparameter tuning trial from a\ntraining job. The TrainingOutput object that is returned on successful\ncompletion of a training job with hyperparameter tuning includes a list\nof HyperparameterOutput objects, one for each successful trial.", - "type": "object", - "properties": { - "finalMetric": { - "$ref": "GoogleCloudMlV1_HyperparameterOutput_HyperparameterMetric", - "description": "The final objective metric seen for this trial." }, - "hyperparameters": { - "additionalProperties": { - "type": "string" + "models": { + "methods": { + "list": { + "response": { + "$ref": "GoogleCloudMlV1__ListModelsResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "pageToken": { + "location": "query", + "description": "Optional. A page token to request the next page of results.\n\nYou get the token from the `next_page_token` field of the response from\nthe previous call.", + "type": "string" + }, + "pageSize": { + "location": "query", + "description": "Optional. The number of models to retrieve per \"page\" of results. If there\nare more remaining results than this number, the response message will\ncontain a valid value in the `next_page_token` field.\n\nThe default value is 20, and the maximum page size is 100.", + "format": "int32", + "type": "integer" + }, + "parent": { + "description": "Required. The name of the project whose models are to be listed.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$", + "location": "path" + }, + "filter": { + "description": "Optional. Specifies the subset of models to retrieve.", + "type": "string", + "location": "query" + } + }, + "flatPath": "v1/projects/{projectsId}/models", + "path": "v1/{+parent}/models", + "id": "ml.projects.models.list", + "description": "Lists the models in a project.\n\nEach project can contain multiple models, and each model can have multiple\nversions.\n\nIf there are no models that match the request parameters, the list request\nreturns an empty response body: {}." + }, + "create": { + "response": { + "$ref": "GoogleCloudMlV1__Model" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "parent": { + "description": "Required. The project name.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/projects/{projectsId}/models", + "path": "v1/{+parent}/models", + "id": "ml.projects.models.create", + "request": { + "$ref": "GoogleCloudMlV1__Model" + }, + "description": "Creates a model which will later contain one or more versions.\n\nYou must add at least one version before you can request predictions from\nthe model. Add versions by calling\n[projects.models.versions.create](/ml-engine/reference/rest/v1/projects.models.versions/create)." + }, + "setIamPolicy": { + "path": "v1/{+resource}:setIamPolicy", + "id": "ml.projects.models.setIamPolicy", + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", + "request": { + "$ref": "GoogleIamV1__SetIamPolicyRequest" + }, + "response": { + "$ref": "GoogleIamV1__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/[^/]+/models/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/models/{modelsId}: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": "GoogleIamV1__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/[^/]+/models/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/models/{modelsId}:getIamPolicy", + "path": "v1/{+resource}:getIamPolicy", + "id": "ml.projects.models.getIamPolicy" + }, + "get": { + "path": "v1/{+name}", + "id": "ml.projects.models.get", + "description": "Gets information about a model, including its name, the description (if\nset), and the default version (if at least one version of the model has\nbeen deployed).", + "response": { + "$ref": "GoogleCloudMlV1__Model" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "location": "path", + "description": "Required. The name of the model.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/models/[^/]+$" + } + }, + "flatPath": "v1/projects/{projectsId}/models/{modelsId}" + }, + "patch": { + "flatPath": "v1/projects/{projectsId}/models/{modelsId}", + "id": "ml.projects.models.patch", + "path": "v1/{+name}", + "description": "Updates a specific model resource.\n\nCurrently the only supported fields to update are `description` and\n`default_version.name`.", + "request": { + "$ref": "GoogleCloudMlV1__Model" + }, + "httpMethod": "PATCH", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "GoogleLongrunning__Operation" + }, + "parameters": { + "updateMask": { + "location": "query", + "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", + "type": "string" + }, + "name": { + "description": "Required. The project name.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/models/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "testIamPermissions": { + "response": { + "$ref": "GoogleIamV1__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/[^/]+/models/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/models/{modelsId}:testIamPermissions", + "path": "v1/{+resource}:testIamPermissions", + "id": "ml.projects.models.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": "GoogleIamV1__TestIamPermissionsRequest" + } + }, + "delete": { + "description": "Deletes a model.\n\nYou can only delete a model if there are no versions in it. You can delete\nversions by calling\n[projects.models.versions.delete](/ml-engine/reference/rest/v1/projects.models.versions/delete).", + "httpMethod": "DELETE", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "GoogleLongrunning__Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/models/[^/]+$", + "location": "path", + "description": "Required. The name of the model." + } + }, + "flatPath": "v1/projects/{projectsId}/models/{modelsId}", + "id": "ml.projects.models.delete", + "path": "v1/{+name}" + } }, - "description": "The hyperparameters given to this trial.", - "type": "object" - }, - "trialId": { - "description": "The trial id for these results.", - "type": "string" + "resources": { + "versions": { + "methods": { + "setDefault": { + "flatPath": "v1/projects/{projectsId}/models/{modelsId}/versions/{versionsId}:setDefault", + "path": "v1/{+name}:setDefault", + "id": "ml.projects.models.versions.setDefault", + "request": { + "$ref": "GoogleCloudMlV1__SetDefaultVersionRequest" + }, + "description": "Designates a version to be the default for the model.\n\nThe default version is used for prediction requests made against the model\nthat don't specify a version.\n\nThe first version to be created for a model is automatically set as the\ndefault. You must make any subsequent changes to the default version\nsetting manually using this method.", + "response": { + "$ref": "GoogleCloudMlV1__Version" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "description": "Required. The name of the version to make the default for the model. You\ncan get the names of all the versions of a model by calling\n[projects.models.versions.list](/ml-engine/reference/rest/v1/projects.models.versions/list).", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/models/[^/]+/versions/[^/]+$", + "location": "path" + } + } + }, + "delete": { + "response": { + "$ref": "GoogleLongrunning__Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "parameters": { + "name": { + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/models/[^/]+/versions/[^/]+$", + "location": "path", + "description": "Required. The name of the version. You can get the names of all the\nversions of a model by calling\n[projects.models.versions.list](/ml-engine/reference/rest/v1/projects.models.versions/list)." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/models/{modelsId}/versions/{versionsId}", + "path": "v1/{+name}", + "id": "ml.projects.models.versions.delete", + "description": "Deletes a model version.\n\nEach model can have multiple versions deployed and in use at any given\ntime. Use this method to remove a single version.\n\nNote: You cannot delete the version that is set as the default version\nof the model unless it is the only remaining version." + }, + "list": { + "description": "Gets basic information about all the versions of a model.\n\nIf you expect that a model has many versions, or if you need to handle\nonly a limited number of results at a time, you can request that the list\nbe retrieved in batches (called pages).\n\nIf there are no versions that match the request parameters, the list\nrequest returns an empty response body: {}.", + "httpMethod": "GET", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "GoogleCloudMlV1__ListVersionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "parent": { + "description": "Required. The name of the model for which to list the version.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/models/[^/]+$", + "location": "path" + }, + "filter": { + "location": "query", + "description": "Optional. Specifies the subset of versions to retrieve.", + "type": "string" + }, + "pageToken": { + "location": "query", + "description": "Optional. A page token to request the next page of results.\n\nYou get the token from the `next_page_token` field of the response from\nthe previous call.", + "type": "string" + }, + "pageSize": { + "description": "Optional. The number of versions to retrieve per \"page\" of results. If\nthere are more remaining results than this number, the response message\nwill contain a valid value in the `next_page_token` field.\n\nThe default value is 20, and the maximum page size is 100.", + "format": "int32", + "type": "integer", + "location": "query" + } + }, + "flatPath": "v1/projects/{projectsId}/models/{modelsId}/versions", + "id": "ml.projects.models.versions.list", + "path": "v1/{+parent}/versions" + }, + "create": { + "response": { + "$ref": "GoogleLongrunning__Operation" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "parameters": { + "parent": { + "location": "path", + "description": "Required. The name of the model.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/models/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/models/{modelsId}/versions", + "path": "v1/{+parent}/versions", + "id": "ml.projects.models.versions.create", + "description": "Creates a new version of a model from a trained TensorFlow model.\n\nIf the version created in the cloud by this call is the first deployed\nversion of the specified model, it will be made the default version of the\nmodel. When you add a version to a model that already has one or more\nversions, the default version does not automatically change. If you want a\nnew version to be the default, you must call\n[projects.models.versions.setDefault](/ml-engine/reference/rest/v1/projects.models.versions/setDefault).", + "request": { + "$ref": "GoogleCloudMlV1__Version" + } + }, + "patch": { + "httpMethod": "PATCH", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "GoogleLongrunning__Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "updateMask": { + "location": "query", + "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", + "type": "string" + }, + "name": { + "description": "Required. The name of the model.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/models/[^/]+/versions/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/projects/{projectsId}/models/{modelsId}/versions/{versionsId}", + "id": "ml.projects.models.versions.patch", + "path": "v1/{+name}", + "request": { + "$ref": "GoogleCloudMlV1__Version" + }, + "description": "Updates the specified Version resource.\n\nCurrently the only supported field to update is `description`." + }, + "get": { + "httpMethod": "GET", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "GoogleCloudMlV1__Version" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "location": "path", + "description": "Required. The name of the version.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/models/[^/]+/versions/[^/]+$" + } + }, + "flatPath": "v1/projects/{projectsId}/models/{modelsId}/versions/{versionsId}", + "id": "ml.projects.models.versions.get", + "path": "v1/{+name}", + "description": "Gets information about a model version.\n\nModels can have multiple versions. You can call\n[projects.models.versions.list](/ml-engine/reference/rest/v1/projects.models.versions/list)\nto get the same information that this method returns for all of the\nversions of a model." + } + } + } + } }, - "isTrialStoppedEarly": { - "description": "True if the trial is stopped early.", - "type": "boolean" + "locations": { + "methods": { + "get": { + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}", + "id": "ml.projects.locations.get", + "path": "v1/{+name}", + "description": "Get the complete list of CMLE capabilities in a location, along with their\nlocation-specific properties.", + "httpMethod": "GET", + "response": { + "$ref": "GoogleCloudMlV1__Location" + }, + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "pattern": "^projects/[^/]+/locations/[^/]+$", + "location": "path", + "description": "Required. The name of the location.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "List all locations that provides at least one type of CMLE capability.", + "httpMethod": "GET", + "response": { + "$ref": "GoogleCloudMlV1__ListLocationsResponse" + }, + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "location": "query", + "description": "Optional. The number of locations to retrieve per \"page\" of results. If there\nare more remaining results than this number, the response message will\ncontain a valid value in the `next_page_token` field.\n\nThe default value is 20, and the maximum page size is 100.", + "format": "int32", + "type": "integer" + }, + "parent": { + "description": "Required. The name of the project for which available locations are to be\nlisted (since some locations might be whitelisted for specific projects).", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$", + "location": "path" + }, + "pageToken": { + "type": "string", + "location": "query", + "description": "Optional. A page token to request the next page of results.\n\nYou get the token from the `next_page_token` field of the response from\nthe previous call." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/locations", + "id": "ml.projects.locations.list", + "path": "v1/{+parent}/locations" + } + } }, - "allMetrics": { - "description": "All recorded object metrics for this trial. This field is not currently\npopulated.", - "type": "array", - "items": { - "$ref": "GoogleCloudMlV1_HyperparameterOutput_HyperparameterMetric" + "jobs": { + "methods": { + "cancel": { + "description": "Cancels a running job.", + "request": { + "$ref": "GoogleCloudMlV1__CancelJobRequest" + }, + "response": { + "$ref": "GoogleProtobuf__Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "parameters": { + "name": { + "pattern": "^projects/[^/]+/jobs/[^/]+$", + "location": "path", + "description": "Required. The name of the job to cancel.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/jobs/{jobsId}:cancel", + "path": "v1/{+name}:cancel", + "id": "ml.projects.jobs.cancel" + }, + "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": "^projects/[^/]+/jobs/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/jobs/{jobsId}:getIamPolicy", + "path": "v1/{+resource}:getIamPolicy", + "id": "ml.projects.jobs.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": "GoogleIamV1__Policy" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "GET" + }, + "get": { + "flatPath": "v1/projects/{projectsId}/jobs/{jobsId}", + "path": "v1/{+name}", + "id": "ml.projects.jobs.get", + "description": "Describes a job.", + "response": { + "$ref": "GoogleCloudMlV1__Job" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "pattern": "^projects/[^/]+/jobs/[^/]+$", + "location": "path", + "description": "Required. The name of the job to get the description of.", + "required": true, + "type": "string" + } + } + }, + "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": "GoogleIamV1__TestIamPermissionsRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "resource" + ], + "response": { + "$ref": "GoogleIamV1__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": "^projects/[^/]+/jobs/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/jobs/{jobsId}:testIamPermissions", + "id": "ml.projects.jobs.testIamPermissions", + "path": "v1/{+resource}:testIamPermissions" + }, + "list": { + "response": { + "$ref": "GoogleCloudMlV1__ListJobsResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "pageToken": { + "description": "Optional. A page token to request the next page of results.\n\nYou get the token from the `next_page_token` field of the response from\nthe previous call.", + "type": "string", + "location": "query" + }, + "pageSize": { + "location": "query", + "description": "Optional. The number of jobs to retrieve per \"page\" of results. If there\nare more remaining results than this number, the response message will\ncontain a valid value in the `next_page_token` field.\n\nThe default value is 20, and the maximum page size is 100.", + "format": "int32", + "type": "integer" + }, + "parent": { + "description": "Required. The name of the project for which to list jobs.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$", + "location": "path" + }, + "filter": { + "description": "Optional. Specifies the subset of jobs to retrieve.\nYou can filter on the value of one or more attributes of the job object.\nFor example, retrieve jobs with a job identifier that starts with 'census':\n\u003cp\u003e\u003ccode\u003egcloud ml-engine jobs list --filter='jobId:census*'\u003c/code\u003e\n\u003cp\u003eList all failed jobs with names that start with 'rnn':\n\u003cp\u003e\u003ccode\u003egcloud ml-engine jobs list --filter='jobId:rnn*\nAND state:FAILED'\u003c/code\u003e\n\u003cp\u003eFor more examples, see the guide to\n\u003ca href=\"/ml-engine/docs/tensorflow/monitor-training\"\u003emonitoring jobs\u003c/a\u003e.", + "type": "string", + "location": "query" + } + }, + "flatPath": "v1/projects/{projectsId}/jobs", + "path": "v1/{+parent}/jobs", + "id": "ml.projects.jobs.list", + "description": "Lists the jobs in the project.\n\nIf there are no jobs that match the request parameters, the list\nrequest returns an empty response body: {}." + }, + "create": { + "description": "Creates a training or a batch prediction job.", + "request": { + "$ref": "GoogleCloudMlV1__Job" + }, + "response": { + "$ref": "GoogleCloudMlV1__Job" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "parameters": { + "parent": { + "description": "Required. The project name.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/projects/{projectsId}/jobs", + "path": "v1/{+parent}/jobs", + "id": "ml.projects.jobs.create" + }, + "setIamPolicy": { + "flatPath": "v1/projects/{projectsId}/jobs/{jobsId}:setIamPolicy", + "id": "ml.projects.jobs.setIamPolicy", + "path": "v1/{+resource}:setIamPolicy", + "request": { + "$ref": "GoogleIamV1__SetIamPolicyRequest" + }, + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", + "httpMethod": "POST", + "parameterOrder": [ + "resource" + ], + "response": { + "$ref": "GoogleIamV1__Policy" + }, + "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/[^/]+/jobs/[^/]+$" + } + } + } } } - }, - "id": "GoogleCloudMlV1__HyperparameterOutput" + } + } + }, + "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" }, - "GoogleIamV1__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": { - "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": "GoogleIamV1__Policy" - } - }, - "id": "GoogleIamV1__SetIamPolicyRequest" + "pp": { + "location": "query", + "description": "Pretty-print response.", + "type": "boolean", + "default": "true" }, - "GoogleCloudMlV1__PredictionOutput": { - "description": "Represents results of a prediction job.", - "type": "object", - "properties": { - "errorCount": { - "description": "The number of data instances which resulted in errors.", - "format": "int64", - "type": "string" - }, - "outputPath": { - "description": "The output Google Cloud Storage location provided at the job creation time.", - "type": "string" - }, - "nodeHours": { - "description": "Node hours used by the batch prediction job.", - "format": "double", - "type": "number" - }, - "predictionCount": { - "description": "The number of generated predictions.", - "format": "int64", - "type": "string" - } - }, - "id": "GoogleCloudMlV1__PredictionOutput" + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "type": "string", + "location": "query" }, - "GoogleIamV1__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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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": { - "type": "array", - "items": { - "$ref": "GoogleIamV1__AuditConfig" - }, - "description": "Specifies cloud audit logging configuration for this policy." - }, - "bindings": { - "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", - "type": "array", - "items": { - "$ref": "GoogleIamV1__Binding" - } - } - }, - "id": "GoogleIamV1__Policy" + "bearer_token": { + "location": "query", + "description": "OAuth bearer token.", + "type": "string" }, - "GoogleLongrunning__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": "GoogleLongrunning__Operation" - } - } - }, - "id": "GoogleLongrunning__ListOperationsResponse" + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "type": "string", + "location": "query" }, - "GoogleCloudMlV1__ManualScaling": { - "description": "Options for manually scaling a model.", - "type": "object", - "properties": { - "nodes": { - "description": "The number of nodes to allocate for this model. These nodes are always up,\nstarting from the time the model is deployed, so the cost of operating\nthis model will be proportional to `nodes` * number of hours since\nlast billing cycle plus the cost for each prediction performed.", - "format": "int32", - "type": "integer" - } - }, - "id": "GoogleCloudMlV1__ManualScaling" + "prettyPrint": { + "description": "Returns response with indentations and line breaks.", + "type": "boolean", + "default": "true", + "location": "query" }, - "GoogleCloudMlV1__TrainingOutput": { - "id": "GoogleCloudMlV1__TrainingOutput", - "description": "Represents results of a training job. Output only.", - "type": "object", - "properties": { - "isHyperparameterTuningJob": { - "description": "Whether this job is a hyperparameter tuning job.", - "type": "boolean" - }, - "consumedMLUnits": { - "description": "The amount of ML units consumed by the job.", - "format": "double", - "type": "number" - }, - "trials": { - "description": "Results for individual Hyperparameter trials.\nOnly set for hyperparameter tuning jobs.", - "type": "array", - "items": { - "$ref": "GoogleCloudMlV1__HyperparameterOutput" - } - }, - "completedTrialCount": { - "description": "The number of hyperparameter tuning trials that completed successfully.\nOnly set for hyperparameter tuning jobs.", - "format": "int64", - "type": "string" - } - } + "fields": { + "location": "query", + "description": "Selector specifying which fields to include in a partial response.", + "type": "string" }, - "GoogleIamV1__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` .\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": "GoogleIamV1__Binding" - } - }, - "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 Machine Learning Engine", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } + "uploadType": { + "type": "string", + "location": "query", + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." + }, + "$.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": { + "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" } - }, - "rootUrl": "https://ml.googleapis.com/", - "ownerDomain": "google.com", - "name": "ml", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Cloud Machine Learning Engine", - "ownerName": "Google" + } } diff --git a/DiscoveryJson/monitoring_v3.json b/DiscoveryJson/monitoring_v3.json index e213d13392..0c9c85451b 100644 --- a/DiscoveryJson/monitoring_v3.json +++ b/DiscoveryJson/monitoring_v3.json @@ -1,302 +1,204 @@ { "resources": { + "uptimeCheckIps": { + "methods": { + "list": { + "flatPath": "v3/uptimeCheckIps", + "id": "monitoring.uptimeCheckIps.list", + "path": "v3/uptimeCheckIps", + "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": { + "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", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring", + "https://www.googleapis.com/auth/monitoring.read" + ] + } + } + }, "projects": { "resources": { - "monitoredResourceDescriptors": { + "timeSeries": { "methods": { - "list": { - "description": "Lists monitored resource descriptors that match a filter. This method does not require a Stackdriver account.", - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "ListMonitoredResourceDescriptorsResponse" - }, - "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": { - "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" - }, - "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": { - "location": "query", - "description": "A positive number that is the maximum number of results to return.", - "format": "int32", - "type": "integer" - } + "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" }, - "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" - }, - "get": { - "description": "Gets a single monitored resource descriptor. This method does not require a Stackdriver account.", "response": { - "$ref": "MonitoredResourceDescriptor" + "$ref": "Empty" }, "parameterOrder": [ "name" ], - "httpMethod": "GET", + "httpMethod": "POST", "parameters": { "name": { - "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", - "pattern": "^projects/[^/]+/monitoredResourceDescriptors/[^/]+$" + "pattern": "^projects/[^/]+$", + "location": "path", + "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\"." } }, "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/{monitoredResourceDescriptorsId}", - "path": "v3/{+name}", - "id": "monitoring.projects.monitoredResourceDescriptors.get" - } - } - }, - "notificationChannelDescriptors": { - "methods": { + "flatPath": "v3/projects/{projectsId}/timeSeries", + "path": "v3/{+name}/timeSeries", + "id": "monitoring.projects.timeSeries.create" + }, "list": { - "description": "Lists the descriptors for supported channel types. The use of descriptors makes it possible for new channel types to be dynamically added.", + "description": "Lists time series that match a filter. This method does not require a Stackdriver account.", "httpMethod": "GET", "response": { - "$ref": "ListNotificationChannelDescriptorsResponse" + "$ref": "ListTimeSeriesResponse" }, "parameterOrder": [ "name" ], "parameters": { "name": { - "pattern": "^projects/[^/]+$", - "location": "path", - "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.", + "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".", "required": true, - "type": "string" + "type": "string", + "pattern": "^projects/[^/]+$", + "location": "path" }, - "pageToken": { + "aggregation.groupByFields": { "location": "query", - "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.", + "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 + }, + "interval.endTime": { + "location": "query", + "description": "Required. The end of the time interval.", + "format": "google-datetime", "type": "string" }, + "aggregation.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", + "location": "query" + }, "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.", + "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", "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}/notificationChannelDescriptors", - "id": "monitoring.projects.notificationChannelDescriptors.list", - "path": "v3/{+name}/notificationChannelDescriptors" - }, - "get": { - "httpMethod": "GET", - "response": { - "$ref": "NotificationChannelDescriptor" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "pattern": "^projects/[^/]+/notificationChannelDescriptors/[^/]+$", - "location": "path", - "description": "The channel type for which to execute the request. The format is projects/[PROJECT_ID]/notificationChannelDescriptors/{channel_type}.", - "required": true, - "type": "string" - } - }, - "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}/notificationChannelDescriptors/{notificationChannelDescriptorsId}", - "id": "monitoring.projects.notificationChannelDescriptors.get", - "path": "v3/{+name}", - "description": "Gets a single channel descriptor. The descriptor indicates which fields are expected / permitted for a notification channel of the given type." - } - } - }, - "groups": { - "methods": { - "list": { - "description": "Lists the existing groups.", - "response": { - "$ref": "ListGroupsResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "location": "path", - "description": "The project whose groups are to be listed. The format is \"projects/{project_id_or_number}\".", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" }, - "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.", + "orderBy": { + "description": "Unsupported: must be left blank. The points in each time series are returned in reverse time order.", "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.", + "aggregation.crossSeriesReducer": { + "location": "query", + "enum": [ + "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 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" + }, + "filter": { "type": "string", - "location": "query" + "location": "query", + "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" }, - "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.", + "aggregation.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.", "type": "string", - "location": "query" + "location": "query", + "enum": [ + "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" + ] }, - "pageSize": { + "pageToken": { "location": "query", - "description": "A positive number that is the maximum number of results to return.", - "format": "int32", - "type": "integer" + "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" }, - "ancestorsOfGroup": { + "interval.startTime": { "location": "query", - "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.", + "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" - } - }, - "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" - }, - "get": { - "flatPath": "v3/projects/{projectsId}/groups/{groupsId}", - "id": "monitoring.projects.groups.get", - "path": "v3/{+name}", - "description": "Gets a single group.", - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Group" - }, - "parameters": { - "name": { - "location": "path", - "description": "The group to retrieve. The format is \"projects/{project_id_or_number}/groups/{group_id}\".", - "required": true, + }, + "view": { "type": "string", - "pattern": "^projects/[^/]+/groups/[^/]+$" + "location": "query", + "enum": [ + "FULL", + "HEADERS" + ], + "description": "Specifies which information is returned about the time series." } }, "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.", - "request": { - "$ref": "Group" - }, - "response": { - "$ref": "Group" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PUT", - "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.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/groups/[^/]+$", - "location": "path" - }, - "validateOnly": { - "location": "query", - "description": "If true, validate this request but do not update the existing group.", - "type": "boolean" - } - }, - "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.update" - }, - "create": { - "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", - "path": "v3/{+name}/groups", - "id": "monitoring.projects.groups.create", - "request": { - "$ref": "Group" - }, - "description": "Creates a new group." - }, + "flatPath": "v3/projects/{projectsId}/timeSeries", + "id": "monitoring.projects.timeSeries.list", + "path": "v3/{+name}/timeSeries" + } + } + }, + "uptimeCheckConfigs": { + "methods": { "delete": { "response": { "$ref": "Empty" @@ -307,358 +209,344 @@ "httpMethod": "DELETE", "parameters": { "name": { - "pattern": "^projects/[^/]+/groups/[^/]+$", - "location": "path", - "description": "The group to delete. The format is \"projects/{project_id_or_number}/groups/{group_id}\".", "required": true, - "type": "string" - } - }, - "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": { - "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": { - "description": "Required. The end of the time interval.", - "format": "google-datetime", - "type": "string", - "location": "query" - }, - "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": { - "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" - }, - "pageSize": { - "description": "A positive number that is the maximum number of results to return.", - "format": "int32", - "type": "integer", - "location": "query" - } - }, - "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." + "type": "string", + "pattern": "^projects/[^/]+/uptimeCheckConfigs/[^/]+$", + "location": "path", + "description": "The uptime check configuration to delete. The format is projects/[PROJECT_ID]/uptimeCheckConfigs/[UPTIME_CHECK_ID]." } - } - } - } - }, - "collectdTimeSeries": { - "methods": { - "create": { - "flatPath": "v3/projects/{projectsId}/collectdTimeSeries", - "id": "monitoring.projects.collectdTimeSeries.create", - "path": "v3/{+name}/collectdTimeSeries", - "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", - "request": { - "$ref": "CreateCollectdTimeSeriesRequest" }, - "httpMethod": "POST", + "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", + "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." + }, + "list": { + "response": { + "$ref": "ListUptimeCheckConfigsResponse" + }, "parameterOrder": [ - "name" + "parent" ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring", + "https://www.googleapis.com/auth/monitoring.read" + ], + "parameters": { + "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 more results from the previous method call.", + "type": "string" + }, + "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": { + "location": "path", + "description": "The project whose uptime check configurations are listed. The format is projects/[PROJECT_ID].", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$" + } + }, + "flatPath": "v3/projects/{projectsId}/uptimeCheckConfigs", + "path": "v3/{+parent}/uptimeCheckConfigs", + "id": "monitoring.projects.uptimeCheckConfigs.list", + "description": "Lists the existing valid uptime check configurations for the project, leaving out any invalid configurations." + }, + "get": { + "description": "Gets a single uptime check configuration.", + "httpMethod": "GET", "response": { - "$ref": "CreateCollectdTimeSeriesResponse" + "$ref": "UptimeCheckConfig" }, + "parameterOrder": [ + "name" + ], "parameters": { "name": { - "description": "The project in which to create the time series. The format is \"projects/PROJECT_ID_OR_NUMBER\".", + "description": "The uptime check configuration to retrieve. The format is projects/[PROJECT_ID]/uptimeCheckConfigs/[UPTIME_CHECK_ID].", "required": true, "type": "string", - "pattern": "^projects/[^/]+$", + "pattern": "^projects/[^/]+/uptimeCheckConfigs/[^/]+$", "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/monitoring", - "https://www.googleapis.com/auth/monitoring.write" - ] - } - } - }, - "notificationChannels": { - "methods": { - "getVerificationCode": { - "request": { - "$ref": "GetNotificationChannelVerificationCodeRequest" - }, - "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.", + "https://www.googleapis.com/auth/monitoring.read" + ], + "flatPath": "v3/projects/{projectsId}/uptimeCheckConfigs/{uptimeCheckConfigsId}", + "id": "monitoring.projects.uptimeCheckConfigs.get", + "path": "v3/{+name}" + }, + "patch": { "response": { - "$ref": "GetNotificationChannelVerificationCodeResponse" + "$ref": "UptimeCheckConfig" }, "parameterOrder": [ "name" ], - "httpMethod": "POST", + "httpMethod": "PATCH", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/monitoring" ], "parameters": { + "updateMask": { + "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", + "location": "query" + }, "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.", + "pattern": "^projects/[^/]+/uptimeCheckConfigs/[^/]+$", + "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/[^/]+/notificationChannels/[^/]+$", - "location": "path" + "type": "string" } }, - "flatPath": "v3/projects/{projectsId}/notificationChannels/{notificationChannelsId}:getVerificationCode", - "path": "v3/{+name}:getVerificationCode", - "id": "monitoring.projects.notificationChannels.getVerificationCode" + "flatPath": "v3/projects/{projectsId}/uptimeCheckConfigs/{uptimeCheckConfigsId}", + "path": "v3/{+name}", + "id": "monitoring.projects.uptimeCheckConfigs.patch", + "request": { + "$ref": "UptimeCheckConfig" + }, + "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." }, - "delete": { - "response": { - "$ref": "Empty" + "create": { + "id": "monitoring.projects.uptimeCheckConfigs.create", + "path": "v3/{+parent}/uptimeCheckConfigs", + "request": { + "$ref": "UptimeCheckConfig" }, + "description": "Creates a new uptime check configuration.", + "httpMethod": "POST", "parameterOrder": [ - "name" + "parent" ], - "httpMethod": "DELETE", + "response": { + "$ref": "UptimeCheckConfig" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/monitoring" ], "parameters": { - "force": { - "location": "query", - "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.", - "type": "boolean" - }, - "name": { + "parent": { "location": "path", - "description": "The channel for which to execute the request. The format is projects/[PROJECT_ID]/notificationChannels/[CHANNEL_ID].", + "description": "The project in which to create the uptime check. The format is projects/[PROJECT_ID].", "required": true, "type": "string", - "pattern": "^projects/[^/]+/notificationChannels/[^/]+$" + "pattern": "^projects/[^/]+$" } }, - "flatPath": "v3/projects/{projectsId}/notificationChannels/{notificationChannelsId}", - "path": "v3/{+name}", - "id": "monitoring.projects.notificationChannels.delete", - "description": "Deletes a notification channel." - }, + "flatPath": "v3/projects/{projectsId}/uptimeCheckConfigs" + } + } + }, + "monitoredResourceDescriptors": { + "methods": { "list": { - "description": "Lists the notification channels that have been created for the project.", + "path": "v3/{+name}/monitoredResourceDescriptors", + "id": "monitoring.projects.monitoredResourceDescriptors.list", + "description": "Lists monitored resource descriptors that match a filter. This method does not require a Stackdriver account.", "response": { - "$ref": "ListNotificationChannelsResponse" + "$ref": "ListMonitoredResourceDescriptorsResponse" }, "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": { - "pattern": "^projects/[^/]+$", "location": "path", - "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.", + "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".", "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.", "type": "string", - "location": "query" + "pattern": "^projects/[^/]+$" }, "pageToken": { - "location": "query", - "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.", - "type": "string" + "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": "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.", + "description": "A positive number that is the maximum number of results to return.", "format": "int32", "type": "integer", "location": "query" }, "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.", + "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", "location": "query" } }, - "flatPath": "v3/projects/{projectsId}/notificationChannels", - "path": "v3/{+name}/notificationChannels", - "id": "monitoring.projects.notificationChannels.list" + "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" }, - "create": { - "flatPath": "v3/projects/{projectsId}/notificationChannels", - "path": "v3/{+name}/notificationChannels", - "id": "monitoring.projects.notificationChannels.create", - "request": { - "$ref": "NotificationChannel" - }, - "description": "Creates a new notification channel, representing a single notification endpoint such as an email address, SMS number, or pagerduty service.", + "get": { "response": { - "$ref": "NotificationChannel" + "$ref": "MonitoredResourceDescriptor" }, "parameterOrder": [ "name" ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring" - ], + "httpMethod": "GET", "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", + "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", - "pattern": "^projects/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/monitoredResourceDescriptors/[^/]+$" } - } - }, - "verify": { - "description": "Verifies a NotificationChannel by proving receipt of the code delivered to the channel as a result of calling SendNotificationChannelVerificationCode.", - "request": { - "$ref": "VerifyNotificationChannelRequest" }, + "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/{monitoredResourceDescriptorsId}", + "path": "v3/{+name}", + "id": "monitoring.projects.monitoredResourceDescriptors.get", + "description": "Gets a single monitored resource descriptor. This method does not require a Stackdriver account." + } + } + }, + "notificationChannelDescriptors": { + "methods": { + "list": { + "path": "v3/{+name}/notificationChannelDescriptors", + "id": "monitoring.projects.notificationChannelDescriptors.list", + "description": "Lists the descriptors for supported channel types. The use of descriptors makes it possible for new channel types to be dynamically added.", "response": { - "$ref": "NotificationChannel" + "$ref": "ListNotificationChannelDescriptorsResponse" }, "parameterOrder": [ "name" ], - "httpMethod": "POST", + "httpMethod": "GET", "parameters": { "name": { - "description": "The notification channel to verify.", + "location": "path", + "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.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/notificationChannels/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+$" + }, + "pageToken": { + "location": "query", + "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.", + "type": "string" + }, + "pageSize": { + "location": "query", + "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", + "type": "integer" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring" + "https://www.googleapis.com/auth/monitoring", + "https://www.googleapis.com/auth/monitoring.read" ], - "flatPath": "v3/projects/{projectsId}/notificationChannels/{notificationChannelsId}:verify", - "path": "v3/{+name}:verify", - "id": "monitoring.projects.notificationChannels.verify" + "flatPath": "v3/projects/{projectsId}/notificationChannelDescriptors" }, - "patch": { + "get": { + "description": "Gets a single channel descriptor. The descriptor indicates which fields are expected / permitted for a notification channel of the given type.", + "httpMethod": "GET", "response": { - "$ref": "NotificationChannel" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring" + "$ref": "NotificationChannelDescriptor" + }, + "parameterOrder": [ + "name" ], "parameters": { - "updateMask": { - "location": "query", - "description": "The fields to update.", - "format": "google-fieldmask", - "type": "string" - }, "name": { - "location": "path", - "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.", + "description": "The channel type for which to execute the request. The format is projects/[PROJECT_ID]/notificationChannelDescriptors/{channel_type}.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/notificationChannels/[^/]+$" + "pattern": "^projects/[^/]+/notificationChannelDescriptors/[^/]+$", + "location": "path" } }, - "flatPath": "v3/projects/{projectsId}/notificationChannels/{notificationChannelsId}", + "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}/notificationChannelDescriptors/{notificationChannelDescriptorsId}", + "id": "monitoring.projects.notificationChannelDescriptors.get", + "path": "v3/{+name}" + } + } + }, + "groups": { + "methods": { + "update": { + "id": "monitoring.projects.groups.update", "path": "v3/{+name}", - "id": "monitoring.projects.notificationChannels.patch", + "description": "Updates an existing group. You can change any group attributes except name.", "request": { - "$ref": "NotificationChannel" - }, - "description": "Updates a notification channel. Fields not specified in the field mask remain unchanged." - }, - "get": { - "response": { - "$ref": "NotificationChannel" + "$ref": "Group" }, + "httpMethod": "PUT", "parameterOrder": [ "name" ], - "httpMethod": "GET", + "response": { + "$ref": "Group" + }, "parameters": { "name": { + "pattern": "^projects/[^/]+/groups/[^/]+$", "location": "path", - "description": "The channel for which to execute the request. The format is projects/[PROJECT_ID]/notificationChannels/[CHANNEL_ID].", + "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/[^/]+/notificationChannels/[^/]+$" + "type": "string" + }, + "validateOnly": { + "location": "query", + "description": "If true, validate this request but do not update the existing group.", + "type": "boolean" } }, "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" ], - "flatPath": "v3/projects/{projectsId}/notificationChannels/{notificationChannelsId}", - "path": "v3/{+name}", - "id": "monitoring.projects.notificationChannels.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}/groups/{groupsId}" }, - "sendVerificationCode": { - "path": "v3/{+name}:sendVerificationCode", - "id": "monitoring.projects.notificationChannels.sendVerificationCode", - "description": "Causes a verification code to be delivered to the channel. The code can then be supplied in VerifyNotificationChannel to verify the channel.", + "create": { + "flatPath": "v3/projects/{projectsId}/groups", + "path": "v3/{+name}/groups", + "id": "monitoring.projects.groups.create", + "description": "Creates a new group.", "request": { - "$ref": "SendNotificationChannelVerificationCodeRequest" + "$ref": "Group" }, "response": { - "$ref": "Empty" + "$ref": "Group" }, "parameterOrder": [ "name" @@ -666,25 +554,24 @@ "httpMethod": "POST", "parameters": { "name": { - "description": "The notification channel to which to send a verification code.", + "location": "path", + "description": "The project in which to create the group. The format is \"projects/{project_id_or_number}\".", "required": true, "type": "string", - "pattern": "^projects/[^/]+/notificationChannels/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+$" + }, + "validateOnly": { + "location": "query", + "description": "If true, validate this request but do not create the group.", + "type": "boolean" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/monitoring" - ], - "flatPath": "v3/projects/{projectsId}/notificationChannels/{notificationChannelsId}:sendVerificationCode" - } - } - }, - "alertPolicies": { - "methods": { + ] + }, "delete": { - "description": "Deletes an alerting policy.", "response": { "$ref": "Empty" }, @@ -698,423 +585,432 @@ ], "parameters": { "name": { - "pattern": "^projects/[^/]+/alertPolicies/[^/]+$", + "pattern": "^projects/[^/]+/groups/[^/]+$", "location": "path", - "description": "The alerting policy to delete. The format is:\nprojects/[PROJECT_ID]/alertPolicies/[ALERT_POLICY_ID]\nFor more information, see AlertPolicy.", + "description": "The group to delete. The format is \"projects/{project_id_or_number}/groups/{group_id}\".", "required": true, "type": "string" } }, - "flatPath": "v3/projects/{projectsId}/alertPolicies/{alertPoliciesId}", + "flatPath": "v3/projects/{projectsId}/groups/{groupsId}", "path": "v3/{+name}", - "id": "monitoring.projects.alertPolicies.delete" + "id": "monitoring.projects.groups.delete", + "description": "Deletes an existing group." }, "list": { - "flatPath": "v3/projects/{projectsId}/alertPolicies", - "path": "v3/{+name}/alertPolicies", - "id": "monitoring.projects.alertPolicies.list", - "description": "Lists the existing alerting policies for the project.", + "description": "Lists the existing groups.", "response": { - "$ref": "ListAlertPoliciesResponse" + "$ref": "ListGroupsResponse" }, "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": { - "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.", + "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": { "type": "string", - "location": "query" + "location": "query", + "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." }, "name": { "location": "path", - "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.", + "description": "The project whose groups are to be listed. The format is \"projects/{project_id_or_number}\".", "required": true, "type": "string", "pattern": "^projects/[^/]+$" }, - "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.", + "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" }, - "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.", + "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" - }, - "pageSize": { - "description": "The maximum number of results to return in a single response.", - "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" - ] + "flatPath": "v3/projects/{projectsId}/groups", + "path": "v3/{+name}/groups", + "id": "monitoring.projects.groups.list" }, "get": { - "flatPath": "v3/projects/{projectsId}/alertPolicies/{alertPoliciesId}", - "id": "monitoring.projects.alertPolicies.get", - "path": "v3/{+name}", - "description": "Gets a single alerting policy.", - "httpMethod": "GET", + "description": "Gets a single group.", + "response": { + "$ref": "Group" + }, "parameterOrder": [ "name" ], - "response": { - "$ref": "AlertPolicy" - }, + "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": { - "pattern": "^projects/[^/]+/alertPolicies/[^/]+$", "location": "path", - "description": "The alerting policy to retrieve. The format is\nprojects/[PROJECT_ID]/alertPolicies/[ALERT_POLICY_ID]\n", + "description": "The group to retrieve. The format is \"projects/{project_id_or_number}/groups/{group_id}\".", "required": true, - "type": "string" + "type": "string", + "pattern": "^projects/[^/]+/groups/[^/]+$" + } + }, + "flatPath": "v3/projects/{projectsId}/groups/{groupsId}", + "path": "v3/{+name}", + "id": "monitoring.projects.groups.get" + } + }, + "resources": { + "members": { + "methods": { + "list": { + "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.", + "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": { + "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" + }, + "pageSize": { + "location": "query", + "description": "A positive number that is the maximum number of results to return.", + "format": "int32", + "type": "integer" + }, + "name": { + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/groups/[^/]+$", + "location": "path", + "description": "The group whose members are listed. The format is \"projects/{project_id_or_number}/groups/{group_id}\"." + }, + "interval.endTime": { + "location": "query", + "description": "Required. The end of the time interval.", + "format": "google-datetime", + "type": "string" + }, + "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" + } + } } + } + } + } + }, + "collectdTimeSeries": { + "methods": { + "create": { + "response": { + "$ref": "CreateCollectdTimeSeriesResponse" }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/monitoring", - "https://www.googleapis.com/auth/monitoring.read" - ] - }, - "patch": { - "flatPath": "v3/projects/{projectsId}/alertPolicies/{alertPoliciesId}", - "id": "monitoring.projects.alertPolicies.patch", - "path": "v3/{+name}", - "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.", + "https://www.googleapis.com/auth/monitoring.write" + ], + "parameters": { + "name": { + "description": "The project in which to create the time series. The format is \"projects/PROJECT_ID_OR_NUMBER\".", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$", + "location": "path" + } + }, + "flatPath": "v3/projects/{projectsId}/collectdTimeSeries", + "path": "v3/{+name}/collectdTimeSeries", + "id": "monitoring.projects.collectdTimeSeries.create", "request": { - "$ref": "AlertPolicy" + "$ref": "CreateCollectdTimeSeriesRequest" }, - "httpMethod": "PATCH", + "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" + } + } + }, + "notificationChannels": { + "methods": { + "verify": { + "httpMethod": "POST", "parameterOrder": [ "name" ], "response": { - "$ref": "AlertPolicy" + "$ref": "NotificationChannel" }, "parameters": { "name": { + "pattern": "^projects/[^/]+/notificationChannels/[^/]+$", "location": "path", - "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.", + "description": "The notification channel to verify.", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/alertPolicies/[^/]+$" - }, - "updateMask": { - "location": "query", - "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", "type": "string" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/monitoring" - ] + ], + "flatPath": "v3/projects/{projectsId}/notificationChannels/{notificationChannelsId}:verify", + "id": "monitoring.projects.notificationChannels.verify", + "path": "v3/{+name}:verify", + "description": "Verifies a NotificationChannel by proving receipt of the code delivered to the channel as a result of calling SendNotificationChannelVerificationCode.", + "request": { + "$ref": "VerifyNotificationChannelRequest" + } }, - "create": { + "sendVerificationCode": { + "description": "Causes a verification code to be delivered to the channel. The code can then be supplied in VerifyNotificationChannel to verify the channel.", "request": { - "$ref": "AlertPolicy" + "$ref": "SendNotificationChannelVerificationCodeRequest" }, - "description": "Creates a new alerting policy.", "response": { - "$ref": "AlertPolicy" + "$ref": "Empty" }, "parameterOrder": [ "name" ], "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring" - ], "parameters": { "name": { - "pattern": "^projects/[^/]+$", + "pattern": "^projects/[^/]+/notificationChannels/[^/]+$", "location": "path", - "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.", + "description": "The notification channel to which to send a verification code.", "required": true, "type": "string" } }, - "flatPath": "v3/projects/{projectsId}/alertPolicies", - "path": "v3/{+name}/alertPolicies", - "id": "monitoring.projects.alertPolicies.create" - } - } - }, - "metricDescriptors": { - "methods": { - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/monitoring" ], - "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 of {metric_id} is: \"custom.googleapis.com/my_test_metric\".", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/metricDescriptors/.+$", - "location": "path" - } - }, - "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." + "flatPath": "v3/projects/{projectsId}/notificationChannels/{notificationChannelsId}:sendVerificationCode", + "path": "v3/{+name}:sendVerificationCode", + "id": "monitoring.projects.notificationChannels.sendVerificationCode" }, - "list": { - "path": "v3/{+name}/metricDescriptors", - "id": "monitoring.projects.metricDescriptors.list", - "description": "Lists metric descriptors that match a filter. This method does not require a Stackdriver account.", + "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.", "response": { - "$ref": "ListMetricDescriptorsResponse" + "$ref": "NotificationChannel" }, "parameterOrder": [ "name" ], "httpMethod": "GET", "parameters": { - "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", - "type": "string" - }, "name": { - "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".", + "pattern": "^projects/[^/]+/notificationChannels/[^/]+$", + "location": "path", + "description": "The channel for which to execute the request. The format is projects/[PROJECT_ID]/notificationChannels/[CHANNEL_ID].", "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - }, - "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": { - "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" + "https://www.googleapis.com/auth/monitoring.read" ], - "flatPath": "v3/projects/{projectsId}/metricDescriptors" + "flatPath": "v3/projects/{projectsId}/notificationChannels/{notificationChannelsId}", + "path": "v3/{+name}", + "id": "monitoring.projects.notificationChannels.get" }, - "get": { - "httpMethod": "GET", - "response": { - "$ref": "MetricDescriptor" - }, + "patch": { + "httpMethod": "PATCH", "parameterOrder": [ "name" ], + "response": { + "$ref": "NotificationChannel" + }, "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\".", + "pattern": "^projects/[^/]+/notificationChannels/[^/]+$", + "location": "path", + "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.", "required": true, + "type": "string" + }, + "updateMask": { "type": "string", - "pattern": "^projects/[^/]+/metricDescriptors/.+$", - "location": "path" + "location": "query", + "description": "The fields to update.", + "format": "google-fieldmask" } }, "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" + "https://www.googleapis.com/auth/monitoring" ], - "flatPath": "v3/projects/{projectsId}/metricDescriptors/{metricDescriptorsId}", - "id": "monitoring.projects.metricDescriptors.get", + "flatPath": "v3/projects/{projectsId}/notificationChannels/{notificationChannelsId}", + "id": "monitoring.projects.notificationChannels.patch", "path": "v3/{+name}", - "description": "Gets a single metric descriptor. This method does not require a Stackdriver account." + "description": "Updates a notification channel. Fields not specified in the field mask remain unchanged.", + "request": { + "$ref": "NotificationChannel" + } }, - "create": { - "description": "Creates a new metric descriptor. User-created metric descriptors define custom metrics.", + "getVerificationCode": { + "id": "monitoring.projects.notificationChannels.getVerificationCode", + "path": "v3/{+name}: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.", "request": { - "$ref": "MetricDescriptor" - }, - "response": { - "$ref": "MetricDescriptor" + "$ref": "GetNotificationChannelVerificationCodeRequest" }, + "httpMethod": "POST", "parameterOrder": [ "name" ], - "httpMethod": "POST", + "response": { + "$ref": "GetNotificationChannelVerificationCodeResponse" + }, "parameters": { "name": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".", + "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.", "required": true, - "type": "string" + "type": "string", + "pattern": "^projects/[^/]+/notificationChannels/[^/]+$", + "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring", - "https://www.googleapis.com/auth/monitoring.write" + "https://www.googleapis.com/auth/monitoring" ], - "flatPath": "v3/projects/{projectsId}/metricDescriptors", - "path": "v3/{+name}/metricDescriptors", - "id": "monitoring.projects.metricDescriptors.create" - } - } - }, - "timeSeries": { - "methods": { - "list": { - "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.", + "flatPath": "v3/projects/{projectsId}/notificationChannels/{notificationChannelsId}:getVerificationCode" + }, + "delete": { "response": { - "$ref": "ListTimeSeriesResponse" + "$ref": "Empty" }, "parameterOrder": [ "name" ], - "httpMethod": "GET", + "httpMethod": "DELETE", "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" ], "parameters": { - "interval.endTime": { - "description": "Required. The end of the time interval.", - "format": "google-datetime", - "type": "string", - "location": "query" - }, - "aggregation.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", + "name": { + "location": "path", + "description": "The channel for which to execute the request. The format is projects/[PROJECT_ID]/notificationChannels/[CHANNEL_ID].", + "required": true, "type": "string", - "location": "query" - }, - "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" + "pattern": "^projects/[^/]+/notificationChannels/[^/]+$" }, - "orderBy": { - "description": "Unsupported: must be left blank. The points in each time series are returned in reverse time order.", - "type": "string", + "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.", + "type": "boolean", "location": "query" - }, - "aggregation.crossSeriesReducer": { - "location": "query", - "enum": [ - "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 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" - }, + } + }, + "flatPath": "v3/projects/{projectsId}/notificationChannels/{notificationChannelsId}", + "path": "v3/{+name}", + "id": "monitoring.projects.notificationChannels.delete", + "description": "Deletes a notification channel." + }, + "list": { + "flatPath": "v3/projects/{projectsId}/notificationChannels", + "path": "v3/{+name}/notificationChannels", + "id": "monitoring.projects.notificationChannels.list", + "description": "Lists the notification channels that have been created for the project.", + "response": { + "$ref": "ListNotificationChannelsResponse" + }, + "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": { - "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", + "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.", "type": "string", "location": "query" }, - "aggregation.perSeriesAligner": { - "location": "query", - "enum": [ - "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" - ], - "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.", - "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" + "name": { + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$", + "location": "path", + "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." }, - "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", + "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.", "type": "string", "location": "query" }, - "view": { + "pageToken": { "location": "query", - "enum": [ - "FULL", - "HEADERS" - ], - "description": "Specifies which information is returned about the time series.", - "type": "string" - }, - "name": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".", - "required": true, + "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.", "type": "string" }, - "aggregation.groupByFields": { - "location": "query", - "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 + "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", + "type": "integer", + "location": "query" } - }, - "flatPath": "v3/projects/{projectsId}/timeSeries" + } }, "create": { + "request": { + "$ref": "NotificationChannel" + }, + "description": "Creates a new notification channel, representing a single notification endpoint such as an email address, SMS number, or pagerduty service.", "response": { - "$ref": "Empty" + "$ref": "NotificationChannel" }, "parameterOrder": [ "name" @@ -1122,82 +1018,88 @@ "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring", - "https://www.googleapis.com/auth/monitoring.write" + "https://www.googleapis.com/auth/monitoring" ], "parameters": { "name": { - "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".", + "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.", "required": true, "type": "string", "pattern": "^projects/[^/]+$", "location": "path" } }, - "flatPath": "v3/projects/{projectsId}/timeSeries", - "path": "v3/{+name}/timeSeries", - "id": "monitoring.projects.timeSeries.create", - "request": { - "$ref": "CreateTimeSeriesRequest" - }, - "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}/notificationChannels", + "path": "v3/{+name}/notificationChannels", + "id": "monitoring.projects.notificationChannels.create" } } }, - "uptimeCheckConfigs": { + "alertPolicies": { "methods": { "delete": { + "httpMethod": "DELETE", "response": { "$ref": "Empty" }, "parameterOrder": [ "name" ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring" - ], "parameters": { "name": { - "description": "The uptime check configuration to delete. The format is projects/[PROJECT_ID]/uptimeCheckConfigs/[UPTIME_CHECK_ID].", + "description": "The alerting policy to delete. The format is:\nprojects/[PROJECT_ID]/alertPolicies/[ALERT_POLICY_ID]\nFor more information, see AlertPolicy.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/uptimeCheckConfigs/[^/]+$", + "pattern": "^projects/[^/]+/alertPolicies/[^/]+$", "location": "path" } }, - "flatPath": "v3/projects/{projectsId}/uptimeCheckConfigs/{uptimeCheckConfigsId}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring" + ], + "flatPath": "v3/projects/{projectsId}/alertPolicies/{alertPoliciesId}", + "id": "monitoring.projects.alertPolicies.delete", "path": "v3/{+name}", - "id": "monitoring.projects.uptimeCheckConfigs.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." + "description": "Deletes an alerting policy." }, "list": { + "description": "Lists the existing alerting policies for the project.", "httpMethod": "GET", - "response": { - "$ref": "ListUptimeCheckConfigsResponse" - }, "parameterOrder": [ - "parent" + "name" ], + "response": { + "$ref": "ListAlertPoliciesResponse" + }, "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": { + "pattern": "^projects/[^/]+$", "location": "path", - "description": "The project whose uptime check configurations are listed. The format is projects/[PROJECT_ID].", + "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.", "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.", "type": "string", - "pattern": "^projects/[^/]+$" + "location": "query" }, "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", + "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." + }, + "pageSize": { + "description": "The maximum number of results to return in a single response.", + "format": "int32", + "type": "integer", "location": "query" + }, + "filter": { + "location": "query", + "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.", + "type": "string" } }, "scopes": [ @@ -1205,141 +1107,245 @@ "https://www.googleapis.com/auth/monitoring", "https://www.googleapis.com/auth/monitoring.read" ], - "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." + "flatPath": "v3/projects/{projectsId}/alertPolicies", + "id": "monitoring.projects.alertPolicies.list", + "path": "v3/{+name}/alertPolicies" }, "get": { - "description": "Gets a single uptime check configuration.", + "id": "monitoring.projects.alertPolicies.get", + "path": "v3/{+name}", + "description": "Gets a single alerting policy.", + "httpMethod": "GET", + "parameterOrder": [ + "name" + ], "response": { - "$ref": "UptimeCheckConfig" + "$ref": "AlertPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring", + "https://www.googleapis.com/auth/monitoring.read" + ], + "parameters": { + "name": { + "pattern": "^projects/[^/]+/alertPolicies/[^/]+$", + "location": "path", + "description": "The alerting policy to retrieve. The format is\nprojects/[PROJECT_ID]/alertPolicies/[ALERT_POLICY_ID]\n", + "required": true, + "type": "string" + } }, + "flatPath": "v3/projects/{projectsId}/alertPolicies/{alertPoliciesId}" + }, + "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.", + "request": { + "$ref": "AlertPolicy" + }, + "httpMethod": "PATCH", "parameterOrder": [ "name" ], - "httpMethod": "GET", + "response": { + "$ref": "AlertPolicy" + }, + "parameters": { + "updateMask": { + "location": "query", + "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", + "type": "string" + }, + "name": { + "location": "path", + "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.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/alertPolicies/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring" + ], + "flatPath": "v3/projects/{projectsId}/alertPolicies/{alertPoliciesId}", + "id": "monitoring.projects.alertPolicies.patch", + "path": "v3/{+name}" + }, + "create": { + "path": "v3/{+name}/alertPolicies", + "id": "monitoring.projects.alertPolicies.create", + "description": "Creates a new alerting policy.", + "request": { + "$ref": "AlertPolicy" + }, + "response": { + "$ref": "AlertPolicy" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "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.", + "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}/alertPolicies" + } + } + }, + "metricDescriptors": { + "methods": { + "delete": { + "description": "Deletes a metric descriptor. Only user-created custom metrics can be deleted.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", "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" ], "parameters": { "name": { - "pattern": "^projects/[^/]+/uptimeCheckConfigs/[^/]+$", + "pattern": "^projects/[^/]+/metricDescriptors/.+$", "location": "path", - "description": "The uptime check configuration to retrieve. The format is projects/[PROJECT_ID]/uptimeCheckConfigs/[UPTIME_CHECK_ID].", + "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\".", "required": true, "type": "string" } }, - "flatPath": "v3/projects/{projectsId}/uptimeCheckConfigs/{uptimeCheckConfigsId}", + "flatPath": "v3/projects/{projectsId}/metricDescriptors/{metricDescriptorsId}", "path": "v3/{+name}", - "id": "monitoring.projects.uptimeCheckConfigs.get" + "id": "monitoring.projects.metricDescriptors.delete" }, - "patch": { + "list": { + "path": "v3/{+name}/metricDescriptors", + "id": "monitoring.projects.metricDescriptors.list", + "description": "Lists metric descriptors that match a filter. This method does not require a Stackdriver account.", "response": { - "$ref": "UptimeCheckConfig" + "$ref": "ListMetricDescriptorsResponse" }, "parameterOrder": [ "name" ], - "httpMethod": "PATCH", + "httpMethod": "GET", "parameters": { - "updateMask": { - "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", + "pageSize": { + "type": "integer", + "location": "query", + "description": "A positive number that is the maximum number of results to return.", + "format": "int32" + }, + "filter": { + "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", "type": "string", "location": "query" }, "name": { + "pattern": "^projects/[^/]+$", "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.", + "description": "The project on which to execute the request. The format is \"projects/{project_id_or_number}\".", + "required": true, + "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" + } + }, + "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" + }, + "get": { + "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\".", "required": true, "type": "string", - "pattern": "^projects/[^/]+/uptimeCheckConfigs/[^/]+$" + "pattern": "^projects/[^/]+/metricDescriptors/.+$", + "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring" + "https://www.googleapis.com/auth/monitoring", + "https://www.googleapis.com/auth/monitoring.read", + "https://www.googleapis.com/auth/monitoring.write" ], - "flatPath": "v3/projects/{projectsId}/uptimeCheckConfigs/{uptimeCheckConfigsId}", + "flatPath": "v3/projects/{projectsId}/metricDescriptors/{metricDescriptorsId}", + "id": "monitoring.projects.metricDescriptors.get", "path": "v3/{+name}", - "id": "monitoring.projects.uptimeCheckConfigs.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" + "description": "Gets a single metric descriptor. This method does not require a Stackdriver account.", + "httpMethod": "GET", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "MetricDescriptor" } }, "create": { - "description": "Creates a new uptime check configuration.", - "request": { - "$ref": "UptimeCheckConfig" - }, "httpMethod": "POST", "parameterOrder": [ - "parent" + "name" ], "response": { - "$ref": "UptimeCheckConfig" + "$ref": "MetricDescriptor" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/monitoring", + "https://www.googleapis.com/auth/monitoring.write" + ], "parameters": { - "parent": { - "description": "The project in which to create the uptime check. The format is projects/[PROJECT_ID].", + "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/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+$" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring" - ], - "flatPath": "v3/projects/{projectsId}/uptimeCheckConfigs", - "id": "monitoring.projects.uptimeCheckConfigs.create", - "path": "v3/{+parent}/uptimeCheckConfigs" + "flatPath": "v3/projects/{projectsId}/metricDescriptors", + "id": "monitoring.projects.metricDescriptors.create", + "path": "v3/{+name}/metricDescriptors", + "request": { + "$ref": "MetricDescriptor" + }, + "description": "Creates a new metric descriptor. User-created metric descriptors define custom metrics." } } } } - }, - "uptimeCheckIps": { - "methods": { - "list": { - "flatPath": "v3/uptimeCheckIps", - "path": "v3/uptimeCheckIps", - "id": "monitoring.uptimeCheckIps.list", - "description": "Returns the list of IPs that checkers run from", - "response": { - "$ref": "ListUptimeCheckIpsResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "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": { - "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", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/monitoring", - "https://www.googleapis.com/auth/monitoring.read" - ] - } - } } }, "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.", @@ -1356,9 +1362,14 @@ "location": "query" }, "prettyPrint": { + "location": "query", "description": "Returns response with indentations and line breaks.", "type": "boolean", - "default": "true", + "default": "true" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string", "location": "query" }, "fields": { @@ -1366,12 +1377,8 @@ "type": "string", "location": "query" }, - "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" @@ -1381,8 +1388,7 @@ "1", "2" ], - "description": "V1 error format.", - "type": "string" + "description": "V1 error format." }, "callback": { "location": "query", @@ -1405,45 +1411,131 @@ "proto" ] }, - "access_token": { + "key": { + "type": "string", "location": "query", - "description": "OAuth access token.", - "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." }, - "key": { - "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", + "access_token": { + "description": "OAuth access token.", "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": "string", + "location": "query" + } + }, + "version": "v3", + "baseUrl": "https://monitoring.googleapis.com/", + "kind": "discovery#restDescription", + "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.", + "servicePath": "", + "basePath": "", + "id": "monitoring:v3", + "documentationLink": "https://cloud.google.com/monitoring/api/", + "revision": "20180504", + "discoveryVersion": "v1", + "version_module": true, + "schemas": { + "MonitoredResource": { + "id": "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", + "properties": { + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Required. Values for all of the labels listed in the associated monitored resource descriptor. For example, Compute Engine VM instances use the labels \"project_id\", \"instance_id\", and \"zone\".", + "type": "object" + }, + "type": { + "description": "Required. The monitored resource type. This field must match the type field of a MonitoredResourceDescriptor object. For example, the type of a Compute Engine VM instance is gce_instance.", + "type": "string" + } + } + }, + "ListMetricDescriptorsResponse": { + "id": "ListMetricDescriptorsResponse", + "description": "The ListMetricDescriptors response.", + "type": "object", + "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" + } + }, + "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" + } + } + }, + "CollectdPayloadError": { + "properties": { + "index": { + "description": "The zero-based index in CreateCollectdTimeSeriesRequest.collectd_payloads.", + "format": "int32", + "type": "integer" + }, + "error": { + "description": "Records the error status for the payload. If this field is present, the partial errors for nested values won't be populated.", + "$ref": "Status" + }, + "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", + "description": "Describes the error status for payloads that were not written.", + "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.", + "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}\".", + "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": { + "type": "string", + "description": "Optional. A detailed description of the monitored resource type that might be used in documentation." + }, + "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" }, - "pp": { - "description": "Pretty-print response.", - "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": "20180429", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { "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": { + "type": "string", "enumDescriptions": [ "Default value (not valid).", "A group of instances from Google Cloud Platform (GCP) or Amazon Web Services (AWS).", @@ -1454,15 +1546,28 @@ "INSTANCE", "AWS_ELB_LOAD_BALANCER" ], - "description": "The resource type of the group members.", - "type": "string" + "description": "The resource type of the group members." + } + }, + "id": "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" + }, + "CollectdValueError": { + "description": "Describes the error status for values that were not written.", + "type": "object", + "properties": { + "index": { + "description": "The zero-based index in CollectdPayload.values within the parent CreateCollectdTimeSeriesRequest.collectd_payloads.", + "format": "int32", + "type": "integer" }, - "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" + "error": { + "$ref": "Status", + "description": "Records the error status for the value." } }, - "id": "ResourceGroup" + "id": "CollectdValueError" }, "UptimeCheckIp": { "properties": { @@ -1471,6 +1576,13 @@ "type": "string" }, "region": { + "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)." + ], "enum": [ "REGION_UNSPECIFIED", "USA", @@ -1479,14 +1591,7 @@ "ASIA_PACIFIC" ], "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)." - ] + "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.", @@ -1497,21 +1602,23 @@ "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.", + "ListNotificationChannelDescriptorsResponse": { + "description": "The ListNotificationChannelDescriptors response.", "type": "object", "properties": { - "index": { - "description": "The zero-based index in CollectdPayload.values within the parent CreateCollectdTimeSeriesRequest.collectd_payloads.", - "format": "int32", - "type": "integer" + "channelDescriptors": { + "type": "array", + "items": { + "$ref": "NotificationChannelDescriptor" + }, + "description": "The monitored resource descriptors supported for the specified project, optionally filtered." }, - "error": { - "description": "Records the error status for the value.", - "$ref": "Status" + "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" } }, - "id": "CollectdValueError" + "id": "ListNotificationChannelDescriptorsResponse" }, "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)).", @@ -1535,51 +1642,46 @@ }, "id": "Linear" }, - "ListNotificationChannelDescriptorsResponse": { - "properties": { - "channelDescriptors": { - "description": "The monitored resource descriptors supported for the specified project, optionally filtered.", - "type": "array", - "items": { - "$ref": "NotificationChannelDescriptor" - } - }, - "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" - } - }, - "id": "ListNotificationChannelDescriptorsResponse", - "description": "The ListNotificationChannelDescriptors response.", - "type": "object" - }, "SendNotificationChannelVerificationCodeRequest": { "description": "The SendNotificationChannelVerificationCode request.", "type": "object", "properties": {}, "id": "SendNotificationChannelVerificationCodeRequest" }, - "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" - } - }, - "id": "VerifyNotificationChannelRequest", - "description": "The VerifyNotificationChannel request.", - "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", "properties": {}, "id": "Empty" }, + "VerifyNotificationChannelRequest": { + "description": "The VerifyNotificationChannel request.", + "type": "object", + "properties": { + "code": { + "type": "string", + "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)." + } + }, + "id": "VerifyNotificationChannelRequest" + }, "MetricThreshold": { - "description": "A condition type that compares a collection of time series against a threshold.", "type": "object", "properties": { + "thresholdValue": { + "description": "A value against which to compare the time series.", + "format": "double", + "type": "number" + }, + "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" + }, + "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" + }, "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" @@ -1623,26 +1725,12 @@ "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." - }, - "thresholdValue": { - "description": "A value against which to compare the time series.", - "format": "double", - "type": "number" - }, - "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" - }, - "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" } }, - "id": "MetricThreshold" + "id": "MetricThreshold", + "description": "A condition type that compares a collection of time series against a threshold." }, "MutationRecord": { - "description": "Describes a change made to a configuration.", "type": "object", "properties": { "mutateTime": { @@ -1655,18 +1743,12 @@ "type": "string" } }, - "id": "MutationRecord" + "id": "MutationRecord", + "description": "Describes a change made to a configuration." }, "Condition": { + "type": "object", "properties": { - "conditionThreshold": { - "$ref": "MetricThreshold", - "description": "A condition that compares a time series against a threshold." - }, - "conditionAbsent": { - "description": "A condition that checks that a time series continues to receive new data points.", - "$ref": "MetricAbsence" - }, "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" @@ -1674,11 +1756,18 @@ "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" + }, + "conditionThreshold": { + "$ref": "MetricThreshold", + "description": "A condition that compares a time series against a threshold." + }, + "conditionAbsent": { + "$ref": "MetricAbsence", + "description": "A condition that checks that a time series continues to receive new data points." } }, "id": "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.", - "type": "object" + "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." }, "Documentation": { "description": "A content string and a MIME type that describes the content string's format.", @@ -1699,9 +1788,16 @@ "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.", "type": "object", "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.", + "type": "array", + "items": { + "$ref": "Aggregation" + } + }, "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.", - "$ref": "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." }, "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.", @@ -1711,38 +1807,31 @@ "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" - }, - "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.", - "type": "array", - "items": { - "$ref": "Aggregation" - } } }, "id": "MetricAbsence" }, "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", "properties": { - "numFiniteBuckets": { - "description": "Must be greater than 0.", - "format": "int32", - "type": "integer" - }, "growthFactor": { "description": "Must be greater than 1.", "format": "double", "type": "number" }, "scale": { + "type": "number", "description": "Must be greater than 0.", - "format": "double", - "type": "number" + "format": "double" + }, + "numFiniteBuckets": { + "description": "Must be greater than 0.", + "format": "int32", + "type": "integer" } }, - "id": "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" }, "Point": { "description": "A single data point in a time series.", @@ -1753,8 +1842,8 @@ "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." + "description": "The value of the data point.", + "$ref": "TypedValue" } }, "id": "Point" @@ -1763,16 +1852,16 @@ "description": "A specific metric, identified by specifying values for all of the labels of a MetricDescriptor.", "type": "object", "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" + }, + "labels": { + "description": "The set of label values that uniquely identify this metric. All labels listed in the MetricDescriptor must be assigned values.", + "type": "object", + "additionalProperties": { + "type": "string" + } } }, "id": "Metric" @@ -1781,6 +1870,13 @@ "description": "The protocol for the ListUptimeCheckConfigs response.", "type": "object", "properties": { + "uptimeCheckConfigs": { + "description": "The returned uptime check configurations.", + "type": "array", + "items": { + "$ref": "UptimeCheckConfig" + } + }, "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" @@ -1789,13 +1885,6 @@ "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.", - "type": "array", - "items": { - "$ref": "UptimeCheckConfig" - } } }, "id": "ListUptimeCheckConfigsResponse" @@ -1804,16 +1893,16 @@ "description": "The ListTimeSeries response.", "type": "object", "properties": { + "nextPageToken": { + "type": "string", + "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." + }, "timeSeries": { "description": "One or more time series that match the filter included in the request.", "type": "array", "items": { "$ref": "TimeSeries" } - }, - "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": "ListTimeSeriesResponse" @@ -1831,17 +1920,7 @@ "id": "GetNotificationChannelVerificationCodeRequest" }, "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", "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" @@ -1853,17 +1932,27 @@ "parentName": { "description": "The name of the group's parent, if it has one. The format is \"projects/{project_id_or_number}/groups/{group_id}\". For groups with no parent, parentName is the empty string, \"\".", "type": "string" + }, + "displayName": { + "type": "string", + "description": "A user-assigned name for this group, used only for display purposes." + }, + "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" } }, - "id": "Group" + "id": "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" }, "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" + "type": "string", + "description": "The password to authenticate." }, "username": { "description": "The username to authenticate.", @@ -1891,24 +1980,25 @@ "id": "ListAlertPoliciesResponse" }, "ListNotificationChannelsResponse": { - "description": "The ListNotificationChannels response.", "type": "object", "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.", "type": "array", "items": { "$ref": "NotificationChannel" } + }, + "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" } }, - "id": "ListNotificationChannelsResponse" + "id": "ListNotificationChannelsResponse", + "description": "The ListNotificationChannels response." }, "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": { @@ -1918,8 +2008,8 @@ "items": { "type": "object", "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" + "type": "any", + "description": "Properties of the object. Contains field @type with type URL." } } }, @@ -1932,8 +2022,7 @@ "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" + } }, "Range": { "description": "The range of the population values.", @@ -1956,6 +2045,35 @@ "description": "This message configures which resources and services to monitor for availability.", "type": "object", "properties": { + "selectedRegions": { + "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)." + ], + "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": { + "type": "string", + "enum": [ + "REGION_UNSPECIFIED", + "USA", + "EUROPE", + "SOUTH_AMERICA", + "ASIA_PACIFIC" + ] + } + }, + "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 (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" + }, "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", @@ -1964,70 +2082,41 @@ } }, "timeout": { + "type": "string", "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" + "format": "google-duration" }, "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" }, + "httpCheck": { + "$ref": "HttpCheck", + "description": "Contains information needed to make an HTTP or HTTPS check." + }, "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" + "$ref": "ResourceGroup", + "description": "The group resource associated with the configuration." }, "tcpCheck": { "$ref": "TcpCheck", "description": "Contains information needed to make a TCP 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.", "type": "array", "items": { "$ref": "InternalChecker" - } + }, + "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." }, "isInternal": { "description": "Denotes whether this is a check that egresses from InternalCheckers.", "type": "boolean" - }, - "selectedRegions": { - "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)." - ], - "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" - } - }, - "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 (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" } }, "id": "UptimeCheckConfig" @@ -2047,6 +2136,7 @@ "id": "CreateTimeSeriesRequest" }, "Distribution": { + "id": "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": { @@ -2056,19 +2146,19 @@ "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." - }, - "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" + "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" }, "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" }, + "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" + }, "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", @@ -2081,38 +2171,22 @@ "$ref": "BucketOptions", "description": "Required in the Stackdriver Monitoring API v3. Defines the histogram bucket boundaries." } - }, - "id": "Distribution" + } }, "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.", "type": "object", "properties": { - "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." - }, - "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", - "type": "array", - "items": { - "type": "string" - } - }, - "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" - }, "userLabels": { + "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", "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" + } }, - "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" + "enabled": { + "type": "boolean", + "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." }, "combiner": { "enumDescriptions": [ @@ -2130,9 +2204,9 @@ "description": "How to combine the results of multiple conditions to determine if an incident should be opened.", "type": "string" }, - "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" + "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" }, "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.", @@ -2141,21 +2215,41 @@ "$ref": "Condition" } }, - "creationRecord": { - "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.", - "$ref": "MutationRecord" - }, "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." + }, + "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." + }, + "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", + "type": "array", + "items": { + "type": "string" + } + }, + "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.", + "$ref": "MutationRecord" + }, + "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" } }, "id": "AlertPolicy" }, "TypedValue": { + "id": "TypedValue", "description": "A single strongly-typed value.", "type": "object", "properties": { + "distributionValue": { + "description": "A distribution value.", + "$ref": "Distribution" + }, "boolValue": { "description": "A Boolean value: true or false.", "type": "boolean" @@ -2173,23 +2267,11 @@ "description": "A 64-bit integer. Its range is approximately ±9.2x10\u003csup\u003e18\u003c/sup\u003e.", "format": "int64", "type": "string" - }, - "distributionValue": { - "description": "A distribution value.", - "$ref": "Distribution" } - }, - "id": "TypedValue" + } }, "CollectdPayload": { - "description": "A collection of data points sent from a collectd-based plugin. See the collectd documentation for more information.", - "type": "object", "properties": { - "endTime": { - "description": "The end time of the interval.", - "format": "google-datetime", - "type": "string" - }, "startTime": { "description": "The start time of the interval.", "format": "google-datetime", @@ -2203,7 +2285,11 @@ } }, "typeInstance": { - "description": "The measurement type instance. Example: \"used\".", + "type": "string", + "description": "The measurement type instance. Example: \"used\"." + }, + "type": { + "description": "The measurement type. Example: \"memory\".", "type": "string" }, "metadata": { @@ -2213,10 +2299,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" @@ -2224,66 +2306,21 @@ "pluginInstance": { "description": "The instance name of the plugin Example: \"hdcl\".", "type": "string" - } - }, - "id": "CollectdPayload" - }, - "GetNotificationChannelVerificationCodeResponse": { - "properties": { - "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" }, - "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).", + "endTime": { + "description": "The end time of the interval.", + "format": "google-datetime", "type": "string" } }, - "id": "GetNotificationChannelVerificationCodeResponse", - "description": "The GetNotificationChannelVerificationCode request.", - "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", - "items": { - "$ref": "CollectdPayloadError" - } - } - }, - "id": "CreateCollectdTimeSeriesResponse", - "description": "The CreateCollectdTimeSeries response.", + "id": "CollectdPayload", + "description": "A collection of data points sent from a collectd-based plugin. See the collectd documentation for more information.", "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.", "type": "object", "properties": { "perSeriesAligner": { - "enum": [ - "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" - ], "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.", "type": "string", "enumDescriptions": [ @@ -2306,6 +2343,27 @@ "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." + ], + "enum": [ + "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" ] }, "alignmentPeriod": { @@ -2349,15 +2407,46 @@ "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" }, - "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": "array", - "items": { - "type": "string" - } + "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": "array", + "items": { + "type": "string" + } + } + }, + "id": "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." + }, + "CreateCollectdTimeSeriesResponse": { + "description": "The CreateCollectdTimeSeries response.", + "type": "object", + "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", + "items": { + "$ref": "CollectdPayloadError" + } + } + }, + "id": "CreateCollectdTimeSeriesResponse" + }, + "GetNotificationChannelVerificationCodeResponse": { + "type": "object", + "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" } }, - "id": "Aggregation" + "id": "GetNotificationChannelVerificationCodeResponse", + "description": "The GetNotificationChannelVerificationCode request." }, "Option": { "description": "A protocol buffer option, which can be attached to a message, field, enumeration, etc.", @@ -2368,12 +2457,12 @@ "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" - } + }, + "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." } }, "id": "Option" @@ -2393,10 +2482,14 @@ "description": "Nimbus InternalCheckers.", "type": "object", "properties": { - "network": { - "description": "The internal network to perform this uptime check on.", + "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": { + "type": "string", + "description": "The internal network to perform this uptime check on." + }, "displayName": { "description": "The checker's human-readable name.", "type": "string" @@ -2408,10 +2501,6 @@ "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" } }, "id": "InternalChecker" @@ -2429,6 +2518,8 @@ "id": "TcpCheck" }, "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", "properties": { "bounds": { "description": "The values must be monotonically increasing.", @@ -2439,11 +2530,10 @@ } } }, - "id": "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" }, "TimeInterval": { + "type": "object", "properties": { "endTime": { "description": "Required. The end of the time interval.", @@ -2457,10 +2547,11 @@ } }, "id": "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" + "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." }, "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.", @@ -2474,9 +2565,7 @@ "type": "string" } }, - "id": "ListUptimeCheckIpsResponse", - "description": "The protocol for the ListUptimeCheckIps response.", - "type": "object" + "id": "ListUptimeCheckIpsResponse" }, "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.", @@ -2496,40 +2585,9 @@ "id": "Trigger" }, "Field": { + "description": "A single field of a message type.", + "type": "object", "properties": { - "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": { - "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" - }, - "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" @@ -2539,11 +2597,8 @@ "format": "int32", "type": "integer" }, - "jsonName": { - "description": "The field JSON name.", - "type": "string" - }, "kind": { + "type": "string", "enumDescriptions": [ "Field type unknown.", "Field type double.", @@ -2586,7 +2641,10 @@ "TYPE_SINT32", "TYPE_SINT64" ], - "description": "The field type.", + "description": "The field type." + }, + "jsonName": { + "description": "The field JSON name.", "type": "string" }, "options": { @@ -2595,11 +2653,42 @@ "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" + }, + "packed": { + "type": "boolean", + "description": "Whether to use alternative packed wire representation." + }, + "cardinality": { + "description": "The field cardinality.", + "type": "string", + "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" + ] + }, + "defaultValue": { + "type": "string", + "description": "The string value of the default value of this field. Proto2 syntax only." + }, + "name": { + "type": "string", + "description": "The field name." } }, - "id": "Field", - "description": "A single field of a message type.", - "type": "object" + "id": "Field" }, "LabelDescriptor": { "description": "A description of a label.", @@ -2634,6 +2723,17 @@ "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", @@ -2641,11 +2741,9 @@ "type": "string" } }, - "sourceContext": { - "description": "The source context.", - "$ref": "SourceContext" - }, "syntax": { + "description": "The source syntax.", + "type": "string", "enumDescriptions": [ "Syntax proto2.", "Syntax proto3." @@ -2653,9 +2751,11 @@ "enum": [ "SYNTAX_PROTO2", "SYNTAX_PROTO3" - ], - "description": "The source syntax.", - "type": "string" + ] + }, + "sourceContext": { + "description": "The source context.", + "$ref": "SourceContext" }, "options": { "description": "The protocol buffer options.", @@ -2663,27 +2763,18 @@ "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" }, "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": { "systemLabels": { "additionalProperties": { - "description": "Properties of the object.", - "type": "any" + "type": "any", + "description": "Properties of the object." }, "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" @@ -2696,29 +2787,12 @@ "type": "object" } }, - "id": "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" + "id": "MonitoredResourceMetadata" }, "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.", "type": "object", "properties": { - "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.", - "type": "array", - "items": { - "$ref": "LabelDescriptor" - } - }, - "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" - }, - "type": { - "description": "The type of notification channel, such as \"email\", \"sms\", etc. Notification channel types are globally unique.", - "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" @@ -2728,21 +2802,36 @@ "type": "string" }, "supportedTiers": { + "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)." + ], "description": "The tiers that support this notification channel; the project service tier must be one of the supported_tiers.", "type": "array", "items": { - "type": "string", "enum": [ "SERVICE_TIER_UNSPECIFIED", "SERVICE_TIER_BASIC", "SERVICE_TIER_PREMIUM" - ] + ], + "type": "string" + } + }, + "labels": { + "type": "array", + "items": { + "$ref": "LabelDescriptor" }, - "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)." - ] + "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." + }, + "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" + }, + "type": { + "description": "The type of notification channel, such as \"email\", \"sms\", etc. Notification channel types are globally unique.", + "type": "string" } }, "id": "NotificationChannelDescriptor" @@ -2767,6 +2856,8 @@ "id": "BucketOptions" }, "HttpCheck": { + "description": "Information involved in an HTTP/HTTPS uptime check request.", + "type": "object", "properties": { "useSsl": { "description": "If true, use HTTPS instead of HTTP to run the check.", @@ -2781,11 +2872,11 @@ "description": "The authentication information. Optional when creating an HTTP check; defaults to empty." }, "headers": { - "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", "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. 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 \"/\").", @@ -2797,13 +2888,19 @@ "type": "integer" } }, - "id": "HttpCheck", - "description": "Information involved in an HTTP/HTTPS uptime check request.", - "type": "object" + "id": "HttpCheck" }, "CollectdValue": { + "description": "A single data point from a collectd-based plugin.", + "type": "object", "properties": { + "value": { + "$ref": "TypedValue", + "description": "The measurement value." + }, "dataSourceType": { + "description": "The type of measurement.", + "type": "string", "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.", @@ -2817,38 +2914,19 @@ "COUNTER", "DERIVE", "ABSOLUTE" - ], - "description": "The type of measurement.", - "type": "string" + ] }, "dataSourceName": { "description": "The data source for the collectd value. For example there are two data sources for network measurements: \"rx\" and \"tx\".", "type": "string" - }, - "value": { - "$ref": "TypedValue", - "description": "The measurement value." } }, - "id": "CollectdValue", - "description": "A single data point from a collectd-based plugin.", - "type": "object" + "id": "CollectdValue" }, "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", "properties": { - "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" - } - }, "name": { "description": "The resource name of the metric descriptor.", "type": "string" @@ -2858,15 +2936,6 @@ "type": "string" }, "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." - ], "enum": [ "VALUE_TYPE_UNSPECIFIED", "BOOL", @@ -2877,7 +2946,16 @@ "MONEY" ], "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" + "type": "string", + "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." + ] }, "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.", @@ -2902,11 +2980,23 @@ "displayName": { "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" + } } }, "id": "MetricDescriptor" }, "SourceContext": { + "id": "SourceContext", "description": "SourceContext represents information about the source of a protobuf element, like the file in which it is defined.", "type": "object", "properties": { @@ -2914,74 +3004,27 @@ "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" + } }, "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", "items": { "$ref": "Group" } - } - }, - "id": "ListGroupsResponse" - }, - "CreateCollectdTimeSeriesRequest": { - "description": "The CreateCollectdTimeSeries request.", - "type": "object", - "properties": { - "resource": { - "description": "The monitored resource associated with the time series.", - "$ref": "MonitoredResource" - }, - "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": { - "members": { - "description": "A set of monitored resources in the group.", - "type": "array", - "items": { - "$ref": "MonitoredResource" - } }, "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" } }, - "id": "ListGroupMembersResponse" + "id": "ListGroupsResponse", + "description": "The ListGroups response.", + "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.", "type": "object", "properties": { "labels": { @@ -2995,45 +3038,91 @@ "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" - }, "verificationStatus": { + "enum": [ + "VERIFICATION_STATUS_UNSPECIFIED", + "UNVERIFIED", + "VERIFIED" + ], "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.", "type": "string", "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." - ], - "enum": [ - "VERIFICATION_STATUS_UNSPECIFIED", - "UNVERIFIED", - "VERIFIED" ] }, + "type": { + "description": "The type of the notification channel. This field matches the value of the NotificationChannelDescriptor.type field.", + "type": "string" + }, "userLabels": { + "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", "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" + } }, - "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" + "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" }, - "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.", + "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" + } + }, + "id": "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." + }, + "ListGroupMembersResponse": { + "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", + "description": "The ListGroupMembers response.", + "type": "object" + }, + "CreateCollectdTimeSeriesRequest": { + "type": "object", + "properties": { + "resource": { + "$ref": "MonitoredResource", + "description": "The monitored resource associated with the time series." + }, + "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": "NotificationChannel" + "id": "CreateCollectdTimeSeriesRequest", + "description": "The CreateCollectdTimeSeries request." }, "ListMonitoredResourceDescriptorsResponse": { "description": "The ListMonitoredResourceDescriptors response.", @@ -3054,23 +3143,19 @@ "id": "ListMonitoredResourceDescriptorsResponse" }, "TimeSeries": { + "id": "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": { + "resource": { + "description": "The associated monitored resource. Custom metrics can use only certain monitored resource types in their time series data.", + "$ref": "MonitoredResource" + }, "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." }, "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." - ], "enum": [ "VALUE_TYPE_UNSPECIFIED", "BOOL", @@ -3081,15 +3166,18 @@ "MONEY" ], "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" + "type": "string", + "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." + ] }, "metricKind": { - "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", "enumDescriptions": [ @@ -3097,6 +3185,12 @@ "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." + ], + "enum": [ + "METRIC_KIND_UNSPECIFIED", + "GAUGE", + "DELTA", + "CUMULATIVE" ] }, "points": { @@ -3109,116 +3203,19 @@ "metric": { "$ref": "Metric", "description": "The associated metric. A fully-specified metric used to identify the time series." - }, - "resource": { - "$ref": "MonitoredResource", - "description": "The associated monitored resource. Custom metrics can use only certain monitored resource types in their time series data." - } - }, - "id": "TimeSeries" - }, - "MonitoredResource": { - "properties": { - "type": { - "description": "Required. The monitored resource type. This field must match the type field of a MonitoredResourceDescriptor object. For example, the type of a Compute Engine VM instance is gce_instance.", - "type": "string" - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Required. Values for all of the labels listed in the associated monitored resource descriptor. For example, Compute Engine VM instances use the labels \"project_id\", \"instance_id\", and \"zone\".", - "type": "object" - } - }, - "id": "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" - }, - "ListMetricDescriptorsResponse": { - "description": "The ListMetricDescriptors response.", - "type": "object", - "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" - } - }, - "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": "ListMetricDescriptorsResponse" - }, - "CollectdPayloadError": { - "description": "Describes the error status for payloads that were not written.", - "type": "object", - "properties": { - "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" - } - }, - "index": { - "description": "The zero-based index in CreateCollectdTimeSeriesRequest.collectd_payloads.", - "format": "int32", - "type": "integer" - } - }, - "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": { - "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" - }, - "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}\".", - "type": "string" } - }, - "id": "MonitoredResourceDescriptor" + } } }, "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" + "x32": "http://www.google.com/images/icons/product/search-32.gif", + "x16": "http://www.google.com/images/icons/product/search-16.gif" }, "canonicalName": "Monitoring", "auth": { "oauth2": { "scopes": { - "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" }, @@ -3227,6 +3224,9 @@ }, "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" } } } diff --git a/DiscoveryJson/oslogin_v1.json b/DiscoveryJson/oslogin_v1.json index 745d32a143..8f81995c9c 100644 --- a/DiscoveryJson/oslogin_v1.json +++ b/DiscoveryJson/oslogin_v1.json @@ -3,6 +3,10 @@ "users": { "methods": { "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" + }, "response": { "$ref": "ImportSshPublicKeyResponse" }, @@ -11,17 +15,17 @@ ], "httpMethod": "POST", "parameters": { - "projectId": { - "description": "The project ID of the Google Cloud Platform project.", - "type": "string", - "location": "query" - }, "parent": { "pattern": "^users/[^/]+$", "location": "path", "description": "The unique ID for the user in format `users/{user}`.", "required": true, "type": "string" + }, + "projectId": { + "location": "query", + "description": "The project ID of the Google Cloud Platform project.", + "type": "string" } }, "scopes": [ @@ -30,20 +34,23 @@ ], "flatPath": "v1/users/{usersId}:importSshPublicKey", "path": "v1/{+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" - } + "id": "oslogin.users.importSshPublicKey" }, "getLoginProfile": { + "httpMethod": "GET", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "LoginProfile" + }, "parameters": { "name": { + "pattern": "^users/[^/]+$", "location": "path", "description": "The unique ID for the user in format `users/{user}`.", "required": true, - "type": "string", - "pattern": "^users/[^/]+$" + "type": "string" } }, "scopes": [ @@ -53,23 +60,13 @@ "flatPath": "v1/users/{usersId}/loginProfile", "id": "oslogin.users.getLoginProfile", "path": "v1/{+name}/loginProfile", - "description": "Retrieves the profile information used for logging in to a virtual machine\non Google Compute Engine.", - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "LoginProfile" - } + "description": "Retrieves the profile information used for logging in to a virtual machine\non Google Compute Engine." } }, "resources": { "sshPublicKeys": { "methods": { "delete": { - "flatPath": "v1/users/{usersId}/sshPublicKeys/{sshPublicKeysId}", - "path": "v1/{+name}", - "id": "oslogin.users.sshPublicKeys.delete", "description": "Deletes an SSH public key.", "response": { "$ref": "Empty" @@ -78,10 +75,6 @@ "name" ], "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ], "parameters": { "name": { "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$", @@ -90,11 +83,16 @@ "required": true, "type": "string" } - } + }, + "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.delete" }, "get": { - "path": "v1/{+name}", - "id": "oslogin.users.sshPublicKeys.get", "description": "Retrieves an SSH public key.", "response": { "$ref": "SshPublicKey" @@ -109,22 +107,18 @@ ], "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" + "type": "string", + "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$", + "location": "path" } }, - "flatPath": "v1/users/{usersId}/sshPublicKeys/{sshPublicKeysId}" + "flatPath": "v1/users/{usersId}/sshPublicKeys/{sshPublicKeysId}", + "path": "v1/{+name}", + "id": "oslogin.users.sshPublicKeys.get" }, "patch": { - "path": "v1/{+name}", - "id": "oslogin.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" }, @@ -132,56 +126,62 @@ "name" ], "httpMethod": "PATCH", + "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 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/[^/]+$" - }, "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" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ], - "flatPath": "v1/users/{usersId}/sshPublicKeys/{sshPublicKeysId}" + "flatPath": "v1/users/{usersId}/sshPublicKeys/{sshPublicKeysId}", + "path": "v1/{+name}", + "id": "oslogin.users.sshPublicKeys.patch", + "request": { + "$ref": "SshPublicKey" + }, + "description": "Updates an SSH public key and returns the profile information. This method\nsupports patch semantics." } } }, "projects": { "methods": { "delete": { + "path": "v1/{+name}", + "id": "oslogin.users.projects.delete", "description": "Deletes a POSIX account.", - "httpMethod": "DELETE", "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" + "type": "string", + "pattern": "^users/[^/]+/projects/[^/]+$", + "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ], - "flatPath": "v1/users/{usersId}/projects/{projectsId}", - "id": "oslogin.users.projects.delete", - "path": "v1/{+name}" + "flatPath": "v1/users/{usersId}/projects/{projectsId}" } } } @@ -189,34 +189,6 @@ } }, "parameters": { - "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": { - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ] - }, "alt": { "description": "Data format for response.", "default": "json", @@ -233,36 +205,36 @@ ], "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": { + "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." + "description": "Available 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" + "default": "true", + "location": "query" }, "bearer_token": { + "location": "query", "description": "OAuth bearer token.", - "type": "string", - "location": "query" + "type": "string" }, "oauth_token": { - "location": "query", "description": "OAuth 2.0 token for the current user.", - "type": "string" + "type": "string", + "location": "query" }, "upload_protocol": { "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", @@ -274,13 +246,41 @@ "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": { + "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" } }, "version": "v1", "baseUrl": "https://oslogin.googleapis.com/", "servicePath": "", - "description": "Manages OS login configuration for Google account users.", "kind": "discovery#restDescription", + "description": "Manages OS login configuration for Google account users.", "basePath": "", "id": "oslogin:v1", "documentationLink": "https://cloud.google.com/compute/docs/oslogin/rest/", @@ -288,69 +288,17 @@ "discoveryVersion": "v1", "version_module": true, "schemas": { - "PosixAccount": { - "id": "PosixAccount", - "description": "The POSIX account information associated with a Google account.", - "type": "object", - "properties": { - "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": { - "type": "boolean", - "description": "Only one POSIX account can be marked as primary." - }, - "operatingSystemType": { - "enumDescriptions": [ - "The operating system type associated with the user account information is\nunspecified.", - "Linux user account information.", - "Windows user account information." - ], - "enum": [ - "OPERATING_SYSTEM_TYPE_UNSPECIFIED", - "LINUX", - "WINDOWS" - ], - "description": "The operating system type where this account applies.", - "type": "string" - }, - "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": { - "type": "string", - "description": "The username of the POSIX account." - } - } - }, "LoginProfile": { "description": "The user profile information used for logging in to a virtual machine on\nGoogle Compute Engine.", "type": "object", "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" @@ -361,29 +309,18 @@ "items": { "$ref": "PosixAccount" } - }, - "sshPublicKeys": { - "additionalProperties": { - "$ref": "SshPublicKey" - }, - "description": "A map from SSH public key fingerprint to the associated key object.", - "type": "object" } }, "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" + "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": { "properties": { - "key": { - "description": "Public key text in SSH format, defined by\n\u003ca href=\"https://www.ietf.org/rfc/rfc4253.txt\" target=\"_blank\"\u003eRFC4253\u003c/a\u003e\nsection 6.6.", - "type": "string" - }, "expirationTimeUsec": { "description": "An expiration time in microseconds since epoch.", "format": "int64", @@ -392,6 +329,10 @@ "fingerprint": { "description": "Output only. The SHA-256 fingerprint of the SSH public key.", "type": "string" + }, + "key": { + "description": "Public key text in SSH format, defined by\n\u003ca href=\"https://www.ietf.org/rfc/rfc4253.txt\" target=\"_blank\"\u003eRFC4253\u003c/a\u003e\nsection 6.6.", + "type": "string" } }, "id": "SshPublicKey", @@ -399,31 +340,90 @@ "type": "object" }, "ImportSshPublicKeyResponse": { - "id": "ImportSshPublicKeyResponse", - "description": "A response message for importing an SSH public key.", - "type": "object", "properties": { "loginProfile": { "$ref": "LoginProfile", "description": "The login profile information for the user." } - } + }, + "id": "ImportSshPublicKeyResponse", + "description": "A response message for importing an SSH public key.", + "type": "object" + }, + "PosixAccount": { + "properties": { + "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" + }, + "primary": { + "description": "Only one POSIX account can be marked as primary.", + "type": "boolean" + }, + "accountId": { + "description": "Output only. A POSIX account identifier.", + "type": "string" + }, + "operatingSystemType": { + "enum": [ + "OPERATING_SYSTEM_TYPE_UNSPECIFIED", + "LINUX", + "WINDOWS" + ], + "description": "The operating system type where this account applies.", + "type": "string", + "enumDescriptions": [ + "The operating system type associated with the user account information is\nunspecified.", + "Linux user account information.", + "Windows user account information." + ] + }, + "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" + } + }, + "id": "PosixAccount", + "description": "The POSIX account information associated with a Google account.", + "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" }, + "protocol": "rest", "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" + }, + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" } } } diff --git a/DiscoveryJson/oslogin_v1alpha.json b/DiscoveryJson/oslogin_v1alpha.json index 45b841bac7..6753eee20e 100644 --- a/DiscoveryJson/oslogin_v1alpha.json +++ b/DiscoveryJson/oslogin_v1alpha.json @@ -1,4 +1,23 @@ { + "canonicalName": "Cloud OS Login", + "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/compute.readonly": { + "description": "View your Google Compute Engine resources" + }, + "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", @@ -9,21 +28,16 @@ "resources": { "users": { "methods": { - "importSshPublicKey": { + "getLoginProfile": { "response": { - "$ref": "ImportSshPublicKeyResponse" + "$ref": "LoginProfile" }, "parameterOrder": [ - "parent" + "name" ], - "httpMethod": "POST", + "httpMethod": "GET", "parameters": { - "projectId": { - "type": "string", - "location": "query", - "description": "The project ID of the Google Cloud Platform project." - }, - "parent": { + "name": { "location": "path", "description": "The unique ID for the user in format `users/{user}`.", "required": true, @@ -33,35 +47,38 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" ], - "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.", + "flatPath": "v1alpha/users/{usersId}/loginProfile", + "path": "v1alpha/{+name}/loginProfile", + "id": "oslogin.users.getLoginProfile", + "description": "Retrieves the profile information used for logging in to a virtual machine\non Google Compute Engine." + }, + "importSshPublicKey": { "request": { "$ref": "SshPublicKey" - } - }, - "getLoginProfile": { - "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.", - "httpMethod": "GET", + }, + "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.", + "httpMethod": "POST", "parameterOrder": [ - "name" + "parent" ], "response": { - "$ref": "LoginProfile" + "$ref": "ImportSshPublicKeyResponse" }, "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/compute" ], "parameters": { - "name": { + "projectId": { + "location": "query", + "description": "The project ID of the Google Cloud Platform project.", + "type": "string" + }, + "parent": { "required": true, "type": "string", "pattern": "^users/[^/]+$", @@ -69,20 +86,23 @@ "description": "The unique ID for the user in format `users/{user}`." } }, - "flatPath": "v1alpha/users/{usersId}/loginProfile" + "flatPath": "v1alpha/users/{usersId}:importSshPublicKey", + "id": "oslogin.users.importSshPublicKey", + "path": "v1alpha/{+parent}:importSshPublicKey" } }, "resources": { "sshPublicKeys": { "methods": { - "delete": { + "get": { + "description": "Retrieves an SSH public key.", "response": { - "$ref": "Empty" + "$ref": "SshPublicKey" }, "parameterOrder": [ "name" ], - "httpMethod": "DELETE", + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" @@ -90,7 +110,7 @@ "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}`.", + "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/[^/]+$" @@ -98,25 +118,34 @@ }, "flatPath": "v1alpha/users/{usersId}/sshPublicKeys/{sshPublicKeysId}", "path": "v1alpha/{+name}", - "id": "oslogin.users.sshPublicKeys.delete", - "description": "Deletes an SSH public key." + "id": "oslogin.users.sshPublicKeys.get" }, - "get": { + "patch": { + "request": { + "$ref": "SshPublicKey" + }, + "description": "Updates an SSH public key and returns the profile information. This method\nsupports patch semantics.", "response": { "$ref": "SshPublicKey" }, "parameterOrder": [ "name" ], - "httpMethod": "GET", + "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": { "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}`.", + "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/[^/]+$" @@ -124,83 +153,73 @@ }, "flatPath": "v1alpha/users/{usersId}/sshPublicKeys/{sshPublicKeysId}", "path": "v1alpha/{+name}", - "id": "oslogin.users.sshPublicKeys.get", - "description": "Retrieves an SSH public key." + "id": "oslogin.users.sshPublicKeys.patch" }, - "patch": { - "httpMethod": "PATCH", + "delete": { + "response": { + "$ref": "Empty" + }, "parameterOrder": [ "name" ], - "response": { - "$ref": "SshPublicKey" - }, + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], "parameters": { - "updateMask": { - "type": "string", - "location": "query", - "description": "Mask to control which fields get updated. Updates all if not present.", - "format": "google-fieldmask" - }, "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/[^/]+$" + "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}", - "id": "oslogin.users.sshPublicKeys.patch", "path": "v1alpha/{+name}", - "description": "Updates an SSH public key and returns the profile information. This method\nsupports patch semantics.", - "request": { - "$ref": "SshPublicKey" - } + "id": "oslogin.users.sshPublicKeys.delete", + "description": "Deletes an SSH public key." } } }, "projects": { "methods": { "delete": { - "flatPath": "v1alpha/users/{usersId}/projects/{projectsId}", - "id": "oslogin.users.projects.delete", - "path": "v1alpha/{+name}", "description": "Deletes a POSIX account.", "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], "response": { "$ref": "Empty" }, + "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}`.", - "required": true, - "type": "string", - "pattern": "^users/[^/]+/projects/[^/]+$", - "location": "path" - }, "operatingSystemType": { - "location": "query", "enum": [ "OPERATING_SYSTEM_TYPE_UNSPECIFIED", "LINUX", "WINDOWS" ], "description": "The type of operating system associated with the account.", - "type": "string" + "type": "string", + "location": "query" + }, + "name": { + "required": true, + "type": "string", + "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}`." } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" - ] + ], + "flatPath": "v1alpha/users/{usersId}/projects/{projectsId}", + "id": "oslogin.users.projects.delete", + "path": "v1alpha/{+name}" } } } @@ -208,27 +227,6 @@ } }, "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": { - "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": { - "type": "boolean", - "default": "true", - "location": "query", - "description": "Pretty-print response." - }, "oauth_token": { "location": "query", "description": "OAuth 2.0 token for the current user.", @@ -240,9 +238,9 @@ "type": "string" }, "upload_protocol": { - "location": "query", "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" + "type": "string", + "location": "query" }, "prettyPrint": { "location": "query", @@ -250,17 +248,18 @@ "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" + "type": "string", + "location": "query" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "type": "string", + "location": "query" }, "$.xgafv": { + "location": "query", "enum": [ "1", "2" @@ -270,13 +269,12 @@ "enumDescriptions": [ "v1 error format", "v2 error format" - ], - "location": "query" + ] }, "callback": { - "location": "query", "description": "JSONP", - "type": "string" + "type": "string", + "location": "query" }, "alt": { "type": "string", @@ -293,44 +291,50 @@ "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": { + "type": "boolean", + "default": "true", + "location": "query", + "description": "Pretty-print response." } }, "version": "v1alpha", "baseUrl": "https://oslogin.googleapis.com/", - "servicePath": "", - "description": "Manages OS login configuration for Google account users.", "kind": "discovery#restDescription", + "description": "Manages OS login configuration for Google account users.", + "servicePath": "", "basePath": "", - "id": "oslogin:v1alpha", - "documentationLink": "https://cloud.google.com/compute/docs/oslogin/rest/", "revision": "20180430", + "documentationLink": "https://cloud.google.com/compute/docs/oslogin/rest/", + "id": "oslogin:v1alpha", "discoveryVersion": "v1", "version_module": true, "schemas": { - "ImportSshPublicKeyResponse": { - "properties": { - "loginProfile": { - "description": "The login profile information for the user.", - "$ref": "LoginProfile" - } - }, - "id": "ImportSshPublicKeyResponse", - "description": "A response message from 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" - }, "operatingSystemType": { + "type": "string", "enumDescriptions": [ "The operating system type associated with the user account information is\nunspecified.", "Linux user account information.", @@ -341,13 +345,16 @@ "LINUX", "WINDOWS" ], - "description": "The operating system type where this account applies.", + "description": "The operating system type where this account applies." + }, + "accountId": { + "description": "Output only. A POSIX account identifier.", "type": "string" }, "gid": { - "type": "string", "description": "The default group ID.", - "format": "int64" + "format": "int64", + "type": "string" }, "uid": { "description": "The user ID.", @@ -366,27 +373,27 @@ "description": "The path to the home directory for this account.", "type": "string" }, - "systemId": { - "type": "string", - "description": "System identifier for which account the username or uid applies to.\nBy default, the empty value is used." - }, "gecos": { - "type": "string", - "description": "The GECOS (user information) entry for this account." + "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" } }, - "id": "PosixAccount" + "id": "PosixAccount", + "description": "The POSIX account information associated with a Google account." }, "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" - }, - "description": "A map from SSH public key fingerprint to the associated key object.", - "type": "object" + } }, "name": { "description": "A unique user ID.", @@ -400,57 +407,50 @@ "description": "The list of POSIX accounts associated with the user." } }, - "id": "LoginProfile" + "id": "LoginProfile", + "description": "The user profile information used for logging in to a virtual machine on\nGoogle Compute Engine." }, "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" + "type": "object", + "properties": {}, + "id": "Empty" }, "SshPublicKey": { + "id": "SshPublicKey", "description": "The SSH public key information associated with a Google account.", "type": "object", "properties": { + "fingerprint": { + "type": "string", + "description": "Output only. The SHA-256 fingerprint of the SSH public key." + }, "key": { "description": "Public key text in SSH format, defined by\n\u003ca href=\"https://www.ietf.org/rfc/rfc4253.txt\" target=\"_blank\"\u003eRFC4253\u003c/a\u003e\nsection 6.6.", "type": "string" }, "expirationTimeUsec": { - "type": "string", "description": "An expiration time in microseconds since epoch.", - "format": "int64" - }, - "fingerprint": { - "description": "Output only. The SHA-256 fingerprint of the SSH public key.", + "format": "int64", "type": "string" } + } + }, + "ImportSshPublicKeyResponse": { + "properties": { + "loginProfile": { + "$ref": "LoginProfile", + "description": "The login profile information for the user." + } }, - "id": "SshPublicKey" + "id": "ImportSshPublicKeyResponse", + "description": "A response message from importing an SSH public key.", + "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 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" - } - } - } + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" } } diff --git a/DiscoveryJson/oslogin_v1beta.json b/DiscoveryJson/oslogin_v1beta.json index a04f9af8d1..2376524e67 100644 --- a/DiscoveryJson/oslogin_v1beta.json +++ b/DiscoveryJson/oslogin_v1beta.json @@ -1,4 +1,161 @@ { + "basePath": "", + "revision": "20180430", + "documentationLink": "https://cloud.google.com/compute/docs/oslogin/rest/", + "id": "oslogin:v1beta", + "discoveryVersion": "v1", + "version_module": true, + "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 `{}`.", + "type": "object", + "properties": {}, + "id": "Empty" + }, + "SshPublicKey": { + "description": "The SSH public key information associated with a Google account.", + "type": "object", + "properties": { + "expirationTimeUsec": { + "description": "An expiration time in microseconds since epoch.", + "format": "int64", + "type": "string" + }, + "fingerprint": { + "description": "Output only. The SHA-256 fingerprint of the SSH public key.", + "type": "string" + }, + "key": { + "description": "Public key text in SSH format, defined by\n\u003ca href=\"https://www.ietf.org/rfc/rfc4253.txt\" target=\"_blank\"\u003eRFC4253\u003c/a\u003e\nsection 6.6.", + "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" + }, + "PosixAccount": { + "description": "The POSIX account information associated with a Google account.", + "type": "object", + "properties": { + "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" + }, + "primary": { + "description": "Only one POSIX account can be marked as primary.", + "type": "boolean" + }, + "accountId": { + "description": "Output only. A POSIX account identifier.", + "type": "string" + }, + "operatingSystemType": { + "description": "The operating system type where this account applies.", + "type": "string", + "enumDescriptions": [ + "The operating system type associated with the user account information is\nunspecified.", + "Linux user account information.", + "Windows user account information." + ], + "enum": [ + "OPERATING_SYSTEM_TYPE_UNSPECIFIED", + "LINUX", + "WINDOWS" + ] + }, + "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" + } + }, + "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" + } + }, + "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.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/compute.readonly": { + "description": "View your Google Compute Engine resources" + }, + "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": "Cloud OS Login API", "ownerName": "Google", @@ -6,53 +163,51 @@ "users": { "methods": { "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" }, - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], + "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.", "response": { "$ref": "ImportSshPublicKeyResponse" }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], "parameters": { "projectId": { - "location": "query", "description": "The project ID of the Google Cloud Platform project.", - "type": "string" + "type": "string", + "location": "query" }, "parent": { + "description": "The unique ID for the user in format `users/{user}`.", "required": true, "type": "string", "pattern": "^users/[^/]+$", - "location": "path", - "description": "The unique ID for the user in format `users/{user}`." + "location": "path" } }, - "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" + "path": "v1beta/{+parent}:importSshPublicKey", + "id": "oslogin.users.importSshPublicKey" }, "getLoginProfile": { + "flatPath": "v1beta/users/{usersId}/loginProfile", + "id": "oslogin.users.getLoginProfile", + "path": "v1beta/{+name}/loginProfile", + "description": "Retrieves the profile information used for logging in to a virtual machine\non Google Compute Engine.", + "httpMethod": "GET", "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", @@ -62,17 +217,19 @@ "pattern": "^users/[^/]+$" } }, - "flatPath": "v1beta/users/{usersId}/loginProfile", - "path": "v1beta/{+name}/loginProfile", - "id": "oslogin.users.getLoginProfile", - "description": "Retrieves the profile information used for logging in to a virtual machine\non Google Compute Engine." + "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" + ] } }, "resources": { - "sshPublicKeys": { + "projects": { "methods": { "delete": { - "description": "Deletes an SSH public key.", + "description": "Deletes a POSIX account.", "response": { "$ref": "Empty" }, @@ -86,21 +243,22 @@ ], "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/[^/]+/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}`." + "pattern": "^users/[^/]+/projects/[^/]+$", + "location": "path" } }, - "flatPath": "v1beta/users/{usersId}/sshPublicKeys/{sshPublicKeysId}", + "flatPath": "v1beta/users/{usersId}/projects/{projectsId}", "path": "v1beta/{+name}", - "id": "oslogin.users.sshPublicKeys.delete" - }, + "id": "oslogin.users.projects.delete" + } + } + }, + "sshPublicKeys": { + "methods": { "get": { - "flatPath": "v1beta/users/{usersId}/sshPublicKeys/{sshPublicKeysId}", - "path": "v1beta/{+name}", - "id": "oslogin.users.sshPublicKeys.get", "description": "Retrieves an SSH public key.", "response": { "$ref": "SshPublicKey" @@ -111,23 +269,22 @@ "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" + "type": "string", + "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$" } }, "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.get" }, "patch": { - "description": "Updates an SSH public key and returns the profile information. This method\nsupports patch semantics.", - "request": { - "$ref": "SshPublicKey" - }, "response": { "$ref": "SshPublicKey" }, @@ -135,58 +292,58 @@ "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", - "location": "query" + "type": "string" }, "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" + "type": "string", + "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$" } }, - "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.patch" - } - } - }, - "projects": { - "methods": { + "id": "oslogin.users.sshPublicKeys.patch", + "request": { + "$ref": "SshPublicKey" + }, + "description": "Updates an SSH public key and returns the profile information. This method\nsupports patch semantics." + }, "delete": { - "description": "Deletes a POSIX account.", + "flatPath": "v1beta/users/{usersId}/sshPublicKeys/{sshPublicKeysId}", + "id": "oslogin.users.sshPublicKeys.delete", + "path": "v1beta/{+name}", + "description": "Deletes an SSH public key.", + "httpMethod": "DELETE", "response": { "$ref": "Empty" }, "parameterOrder": [ "name" ], - "httpMethod": "DELETE", "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", + "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/[^/]+/projects/[^/]+$", - "location": "path" + "pattern": "^users/[^/]+/sshPublicKeys/[^/]+$" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" - ], - "flatPath": "v1beta/users/{usersId}/projects/{projectsId}", - "path": "v1beta/{+name}", - "id": "oslogin.users.projects.delete" + ] } } } @@ -194,46 +351,67 @@ } }, "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": { + "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", - "location": "query" - }, - "uploadType": { - "type": "string", - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." + "default": "true" }, "fields": { + "location": "query", "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" + "type": "string" }, - "callback": { + "uploadType": { "location": "query", - "description": "JSONP", + "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", - "enumDescriptions": [ - "v1 error format", - "v2 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", @@ -242,205 +420,27 @@ "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" - ] - }, - "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": { - "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": { "type": "string", - "location": "query", - "description": "OAuth bearer token." + "location": "query" }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", + "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" } }, "version": "v1beta", "baseUrl": "https://oslogin.googleapis.com/", "kind": "discovery#restDescription", "description": "Manages OS login configuration for Google account users.", - "servicePath": "", - "basePath": "", - "id": "oslogin:v1beta", - "documentationLink": "https://cloud.google.com/compute/docs/oslogin/rest/", - "revision": "20180430", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "PosixAccount": { - "description": "The POSIX account information associated with a Google account.", - "type": "object", - "properties": { - "gid": { - "description": "The default group ID.", - "format": "int64", - "type": "string" - }, - "uid": { - "type": "string", - "description": "The user ID.", - "format": "int64" - }, - "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": { - "type": "string", - "description": "The GECOS (user information) entry for this account." - }, - "primary": { - "description": "Only one POSIX account can be marked as primary.", - "type": "boolean" - }, - "accountId": { - "description": "Output only. A POSIX account identifier.", - "type": "string" - }, - "operatingSystemType": { - "enumDescriptions": [ - "The operating system type associated with the user account information is\nunspecified.", - "Linux user account information.", - "Windows user account information." - ], - "enum": [ - "OPERATING_SYSTEM_TYPE_UNSPECIFIED", - "LINUX", - "WINDOWS" - ], - "description": "The operating system type where this account applies.", - "type": "string" - } - }, - "id": "PosixAccount" - }, - "LoginProfile": { - "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": { - "type": "array", - "items": { - "$ref": "PosixAccount" - }, - "description": "The list of POSIX accounts associated with the user." - } - }, - "id": "LoginProfile", - "description": "The user profile information used for logging in to a virtual machine on\nGoogle Compute Engine." - }, - "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" - }, - "SshPublicKey": { - "type": "object", - "properties": { - "expirationTimeUsec": { - "description": "An expiration time in microseconds since epoch.", - "format": "int64", - "type": "string" - }, - "fingerprint": { - "description": "Output only. The SHA-256 fingerprint of the SSH public key.", - "type": "string" - }, - "key": { - "description": "Public key text in SSH format, defined by\n\u003ca href=\"https://www.ietf.org/rfc/rfc4253.txt\" target=\"_blank\"\u003eRFC4253\u003c/a\u003e\nsection 6.6.", - "type": "string" - } - }, - "id": "SshPublicKey", - "description": "The SSH public key information associated with a Google account." - }, - "ImportSshPublicKeyResponse": { - "description": "A response message for importing an SSH public key.", - "type": "object", - "properties": { - "loginProfile": { - "$ref": "LoginProfile", - "description": "The login profile information for the user." - } - }, - "id": "ImportSshPublicKeyResponse" - } - }, - "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 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" + "servicePath": "" } diff --git a/DiscoveryJson/partners_v2.json b/DiscoveryJson/partners_v2.json index 638893fe81..7110576fe6 100644 --- a/DiscoveryJson/partners_v2.json +++ b/DiscoveryJson/partners_v2.json @@ -1,1428 +1,632 @@ { - "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": "20180502", - "title": "Google Partners API", - "discoveryVersion": "v1", - "ownerName": "Google", - "version_module": true, - "resources": { - "leads": { - "methods": { - "list": { - "response": { - "$ref": "ListLeadsResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { - "requestMetadata.userOverrides.userId": { - "type": "string", - "location": "query", - "description": "Logged-in user ID to impersonate instead of the user's ID." - }, - "requestMetadata.partnersSessionId": { - "type": "string", - "location": "query", - "description": "Google Partners session ID." - }, - "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.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "Requested page size. Server may return fewer leads than requested.\nIf unspecified, server picks an appropriate default.", - "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" - }, - "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": { - "description": "Experiment IDs the current request belongs to.", - "type": "string", - "repeated": true, - "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" - }, - "orderBy": { - "location": "query", - "description": "How to order Leads. Currently, only `create_time`\nand `create_time desc` are supported", - "type": "string" - } - }, - "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." - } - } + "parameters": { + "fields": { + "location": "query", + "description": "Selector specifying which fields to include in a partial response.", + "type": "string" }, - "offers": { - "methods": { - "list": { - "flatPath": "v2/offers", - "id": "partners.offers.list", - "path": "v2/offers", - "description": "Lists the Offers available for the current user", - "httpMethod": "GET", - "response": { - "$ref": "ListOffersResponse" - }, - "parameterOrder": [], - "parameters": { - "requestMetadata.experimentIds": { - "location": "query", - "description": "Experiment IDs the current request belongs to.", - "type": "string", - "repeated": true - }, - "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": { - "location": "query", - "description": "IP address to use instead of the user's geo-located IP address.", - "type": "string" - } - } - } - }, - "resources": { - "history": { - "methods": { - "list": { - "parameters": { - "requestMetadata.partnersSessionId": { - "description": "Google Partners session ID.", - "type": "string", - "location": "query" - }, - "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" - }, - "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" - }, - "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": { - "location": "query", - "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" - }, - "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/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" - } - } - } - } + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string", + "location": "query" }, - "analytics": { - "methods": { - "list": { - "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" - }, - "parameters": { - "requestMetadata.locale": { - "location": "query", - "description": "Locale to use for the current request.", - "type": "string" - }, - "requestMetadata.userOverrides.ipAddress": { - "description": "IP address to use instead of the user's geo-located IP address.", - "type": "string", - "location": "query" - }, - "requestMetadata.experimentIds": { - "description": "Experiment IDs the current request belongs to.", - "type": "string", - "repeated": true, - "location": "query" - }, - "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.partnersSessionId": { - "description": "Google Partners session ID.", - "type": "string", - "location": "query" - }, - "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.", - "type": "string", - "location": "query" - }, - "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" - } - }, - "flatPath": "v2/analytics", - "id": "partners.analytics.list", - "path": "v2/analytics" - } - } + "$.xgafv": { + "description": "V1 error format.", + "type": "string", + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "enum": [ + "1", + "2" + ] }, - "userStates": { - "methods": { - "list": { - "response": { - "$ref": "ListUserStatesResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { - "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" - }, - "requestMetadata.partnersSessionId": { - "description": "Google Partners session ID.", - "type": "string", - "location": "query" - }, - "requestMetadata.userOverrides.userId": { - "location": "query", - "description": "Logged-in user ID to impersonate instead of the user's ID.", - "type": "string" - }, - "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.", - "type": "string" - }, - "requestMetadata.userOverrides.ipAddress": { - "location": "query", - "description": "IP address to use instead of the user's geo-located IP address.", - "type": "string" - } - }, - "flatPath": "v2/userStates", - "path": "v2/userStates", - "id": "partners.userStates.list", - "description": "Lists states for current user." - } - } + "callback": { + "location": "query", + "description": "JSONP", + "type": "string" }, - "v2": { - "methods": { - "updateCompanies": { - "description": "Update company.\nShould only be called within the context of an authorized logged in user.", - "request": { - "$ref": "Company" - }, - "response": { - "$ref": "Company" - }, - "parameterOrder": [], - "httpMethod": "PATCH", - "parameters": { - "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": { - "description": "Experiment IDs the current request belongs to.", - "type": "string", - "repeated": true, - "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": { - "location": "query", - "description": "Google Partners session ID.", - "type": "string" - }, - "requestMetadata.userOverrides.userId": { - "location": "query", - "description": "Logged-in user ID to impersonate instead of the user's 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": { - "location": "query", - "description": "Locale to use for the current request.", - "type": "string" - } - }, - "flatPath": "v2/companies", - "path": "v2/companies", - "id": "partners.updateCompanies" + "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": { + "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" + } + }, + "schemas": { + "Company": { + "description": "A company resource in the Google Partners API. Once certified, it qualifies\nfor being searched by advertisers.", + "type": "object", + "properties": { + "primaryLanguageCode": { + "type": "string", + "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\")." }, - "getPartnersstatus": { - "response": { - "$ref": "GetPartnersStatusResponse" + "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" + }, + "locations": { + "description": "The list of all company locations.\nIf set, must include the\nprimary_location\nin the list.", + "type": "array", + "items": { + "$ref": "Location" + } + }, + "convertedMinMonthlyBudget": { + "description": "The minimum monthly budget that the company accepts for partner business,\nconverted to the requested currency code.", + "$ref": "Money" + }, + "industries": { + "description": "Industries the company can help with.", + "type": "array", + "items": { + "type": "string", + "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" + ] }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { - "requestMetadata.partnersSessionId": { - "location": "query", - "description": "Google Partners session ID.", - "type": "string" - }, - "requestMetadata.userOverrides.userId": { - "type": "string", - "location": "query", - "description": "Logged-in user ID to impersonate instead of the user's ID." - }, - "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.", - "type": "string" - }, - "requestMetadata.userOverrides.ipAddress": { - "description": "IP address to use instead of the user's geo-located IP address.", - "type": "string", - "location": "query" - }, - "requestMetadata.experimentIds": { - "description": "Experiment IDs the current request belongs to.", - "type": "string", - "repeated": true, - "location": "query" - }, - "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" - } + "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": { + "type": "array", + "items": { + "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." + "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." }, - "updateLeads": { - "response": { - "$ref": "Lead" + "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" + }, + "services": { + "description": "Services the company can help with.", + "type": "array", + "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" }, - "parameterOrder": [], - "httpMethod": "PATCH", - "parameters": { - "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": { - "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" - }, - "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", - "type": "string", - "location": "query" - }, - "requestMetadata.experimentIds": { - "repeated": true, - "location": "query", - "description": "Experiment IDs the current request belongs to.", - "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" - } + "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": { + "description": "The primary location of the company.", + "$ref": "Location" + }, + "originalMinMonthlyBudget": { + "description": "The unconverted minimum monthly budget that the company accepts for partner\nbusiness.", + "$ref": "Money" + }, + "publicProfile": { + "$ref": "PublicProfile", + "description": "Basic information from the company's public profile." + }, + "ranks": { + "type": "array", + "items": { + "$ref": "Rank" }, - "flatPath": "v2/leads", - "path": "v2/leads", - "id": "partners.updateLeads", - "request": { + "description": "Information related to the ranking of the company within the list of\ncompanies." + }, + "specializationStatus": { + "description": "The list of Google Partners specialization statuses for the company.", + "type": "array", + "items": { + "$ref": "SpecializationStatus" + } + }, + "badgeTier": { + "description": "Partner badge tier", + "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" + ] + }, + "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" + } + }, + "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" + } + } + }, + "id": "Company" + }, + "ListLeadsResponse": { + "id": "ListLeadsResponse", + "description": "Response message for ListLeads.", + "type": "object", + "properties": { + "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" + }, + "leads": { + "type": "array", + "items": { "$ref": "Lead" }, - "description": "Updates the specified lead." + "description": "The list of leads." } } }, - "companies": { - "methods": { - "get": { - "description": "Gets a company.", - "httpMethod": "GET", - "response": { - "$ref": "GetCompanyResponse" - }, - "parameterOrder": [ - "companyId" + "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": { + "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." ], - "parameters": { - "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.userOverrides.ipAddress": { - "description": "IP address to use instead of the user's geo-located IP address.", - "type": "string", - "location": "query" - }, - "companyId": { - "required": true, - "type": "string", - "location": "path", - "description": "The ID of the company to retrieve." - }, - "requestMetadata.experimentIds": { - "type": "string", - "repeated": true, - "location": "query", - "description": "Experiment IDs the current request belongs to." - }, - "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" - }, - "orderBy": { - "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", - "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.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" - }, - "view": { - "location": "query", - "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" - }, - "requestMetadata.locale": { - "location": "query", - "description": "Locale to use for the current request.", - "type": "string" - }, - "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.", - "type": "string", - "location": "query" - } - }, - "flatPath": "v2/companies/{companyId}", - "id": "partners.companies.get", - "path": "v2/companies/{companyId}" + "enum": [ + "RECAPTCHA_STATUS_UNSPECIFIED", + "RS_NOT_NEEDED", + "RS_PASSED", + "RS_FAILED" + ] }, - "list": { - "flatPath": "v2/companies", - "path": "v2/companies", - "id": "partners.companies.list", - "description": "Lists companies.", - "response": { - "$ref": "ListCompaniesResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "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" - }, - "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": { - "description": "Google Partners session ID.", - "type": "string", - "location": "query" - }, - "companyName": { - "location": "query", - "description": "Company name to search for.", - "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" - }, - "industries": { - "description": "List of industries the company can help with.", - "type": "string", - "repeated": true, - "location": "query", - "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" - ] - }, - "websiteUrl": { - "location": "query", - "description": "Website URL that will help to find a better matched company.\n.", - "type": "string" - }, - "gpsMotivations": { - "description": "List of reasons for using Google Partner Search to get companies.", - "type": "string", - "repeated": true, - "location": "query", - "enum": [ - "GPS_MOTIVATION_UNSPECIFIED", - "GPSM_HELP_WITH_ADVERTISING", - "GPSM_HELP_WITH_WEBSITE", - "GPSM_NO_WEBSITE" - ] - }, - "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", - "repeated": true, - "location": "query" - }, - "pageSize": { - "type": "integer", - "location": "query", - "description": "Requested page size. Server may return fewer companies than requested.\nIf unspecified, server picks an appropriate default.", - "format": "int32" - }, - "requestMetadata.userOverrides.ipAddress": { - "description": "IP address to use instead of the user's geo-located IP address.", - "type": "string", - "location": "query" - }, - "requestMetadata.experimentIds": { - "repeated": true, - "location": "query", - "description": "Experiment IDs the current request belongs to.", - "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.", - "type": "string", - "location": "query" - }, - "specializations": { - "location": "query", - "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 - }, - "maxMonthlyBudget.currencyCode": { - "location": "query", - "description": "The 3-letter currency code defined in ISO 4217.", - "type": "string" - }, - "minMonthlyBudget.currencyCode": { - "description": "The 3-letter currency code defined in ISO 4217.", - "type": "string", - "location": "query" - }, - "requestMetadata.userOverrides.userId": { - "type": "string", - "location": "query", - "description": "Logged-in user ID to impersonate instead of the user's ID." - }, - "view": { - "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`.", - "type": "string", - "location": "query" - }, - "requestMetadata.locale": { - "location": "query", - "description": "Locale to use for the current request.", - "type": "string" - }, - "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": { - "location": "query", - "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.", - "format": "int64", - "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", - "type": "integer", - "location": "query" - }, - "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": { - "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" - }, - "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" - } - } + "responseMetadata": { + "$ref": "ResponseMetadata", + "description": "Current response metadata." } }, - "resources": { - "leads": { - "methods": { - "create": { - "response": { - "$ref": "CreateLeadResponse" - }, - "parameterOrder": [ - "companyId" - ], - "httpMethod": "POST", - "parameters": { - "companyId": { - "location": "path", - "description": "The ID of the company to contact.", - "required": true, - "type": "string" - } - }, - "flatPath": "v2/companies/{companyId}/leads", - "path": "v2/companies/{companyId}/leads", - "id": "partners.companies.leads.create", - "description": "Creates an advertiser lead for the given company ID.", - "request": { - "$ref": "CreateLeadRequest" - } - } - } + "id": "CreateLeadResponse" + }, + "GetCompanyResponse": { + "id": "GetCompanyResponse", + "description": "Response message for GetCompany.", + "type": "object", + "properties": { + "responseMetadata": { + "description": "Current response metadata.", + "$ref": "ResponseMetadata" + }, + "company": { + "$ref": "Company", + "description": "The company." } } }, - "users": { - "methods": { - "createCompanyRelation": { - "response": { - "$ref": "CompanyRelation" - }, - "parameterOrder": [ - "userId" - ], - "httpMethod": "PUT", - "parameters": { - "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": { - "type": "string", - "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." - }, - "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" - }, - "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" - } - }, - "flatPath": "v2/users/{userId}/companyRelation", - "path": "v2/users/{userId}/companyRelation", - "id": "partners.users.createCompanyRelation", - "description": "Creates a user's company relation. Affiliates the user to a company.", - "request": { - "$ref": "CompanyRelation" + "Location": { + "description": "A location with address and geographic coordinates. May optionally contain a\ndetailed (multi-field) version of the address.", + "type": "object", + "properties": { + "latLng": { + "description": "The latitude and longitude of the location, in degrees.", + "$ref": "LatLng" + }, + "regionCode": { + "description": "CLDR (Common Locale Data Repository) region code .", + "type": "string" + }, + "dependentLocality": { + "description": "Dependent locality or sublocality. Used for UK dependent localities, or\nneighborhoods or boroughs in other locations.", + "type": "string" + }, + "address": { + "description": "The single string version of the address.", + "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": { + "description": "The following address lines represent the most specific part of any\naddress.", + "type": "array", + "items": { + "type": "string" } }, - "deleteCompanyRelation": { - "description": "Deletes a user's company relation. Unaffiliaites the user from a company.", - "httpMethod": "DELETE", - "parameterOrder": [ - "userId" - ], - "response": { - "$ref": "Empty" - }, - "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": { - "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": { - "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.partnersSessionId": { - "description": "Google Partners session ID.", - "type": "string", - "location": "query" - }, - "requestMetadata.userOverrides.userId": { - "description": "Logged-in user ID to impersonate instead of the user's ID.", - "type": "string", - "location": "query" - } - }, - "flatPath": "v2/users/{userId}/companyRelation", - "id": "partners.users.deleteCompanyRelation", - "path": "v2/users/{userId}/companyRelation" + "administrativeArea": { + "description": "Top-level administrative subdivision of this country.", + "type": "string" }, - "get": { - "description": "Gets a user.", - "response": { - "$ref": "User" - }, - "parameterOrder": [ - "userId" + "locality": { + "description": "Generally refers to the city/town portion of an address.", + "type": "string" + } + }, + "id": "Location" + }, + "CertificationExamStatus": { + "type": "object", + "properties": { + "type": { + "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." ], - "httpMethod": "GET", - "parameters": { - "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" - }, - "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" - }, - "userView": { - "enum": [ - "BASIC", - "PROFILE", - "PUBLIC_PROFILE" - ], - "description": "Specifies what parts of the user information to return.", - "type": "string", - "location": "query" - }, - "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" - } - }, - "flatPath": "v2/users/{userId}", - "path": "v2/users/{userId}", - "id": "partners.users.get" + "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 certification exam." }, - "updateProfile": { - "path": "v2/users/profile", - "id": "partners.users.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.", - "response": { - "$ref": "UserProfile" - }, - "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.partnersSessionId": { - "description": "Google Partners session ID.", - "type": "string", - "location": "query" - }, - "requestMetadata.trafficSource.trafficSourceId": { - "type": "string", - "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." - }, - "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": { - "description": "Experiment IDs the current request belongs to.", - "type": "string", - "repeated": true, - "location": "query" - }, - "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" - } - }, - "flatPath": "v2/users/profile" + "numberUsersPass": { + "description": "The number of people who have passed the certification exam.", + "format": "int32", + "type": "integer" } - } + }, + "id": "CertificationExamStatus", + "description": "Status for a Google Partners certification exam." }, - "userEvents": { - "methods": { - "log": { - "response": { - "$ref": "LogUserEventResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "flatPath": "v2/userEvents:log", - "path": "v2/userEvents:log", - "id": "partners.userEvents.log", - "description": "Logs a user event.", - "request": { - "$ref": "LogUserEventRequest" - } + "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" }, - "clientMessages": { - "methods": { - "log": { - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "LogMessageResponse" - }, - "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" - } + "Rank": { + "description": "Information related to ranking of results.", + "type": "object", + "properties": { + "type": { + "enumDescriptions": [ + "Unchosen.", + "Total final score." + ], + "enum": [ + "RANK_TYPE_UNSPECIFIED", + "RT_FINAL_SCORE" + ], + "description": "The type of rank.", + "type": "string" + }, + "value": { + "description": "The numerical value of the rank.", + "format": "double", + "type": "number" } - } - } - }, - "parameters": { - "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": { - "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.", - "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" + }, + "id": "Rank" }, - "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": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" - } - }, - "schemas": { - "RequestMetadata": { - "type": "object", + "UserProfile": { "properties": { - "experimentIds": { - "description": "Experiment IDs the current request belongs to.", + "givenName": { + "description": "The user's given name.", + "type": "string" + }, + "address": { + "description": "The user's mailing address, contains multiple fields.", + "$ref": "Location" + }, + "industries": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of ids representing which industries the user selected." + }, + "familyName": { + "description": "The user's family name.", + "type": "string" + }, + "languages": { + "description": "The list of languages this user understands.", "type": "array", "items": { "type": "string" } }, - "trafficSource": { - "description": "Source of traffic for the current request.", - "$ref": "TrafficSource" + "emailOptIns": { + "$ref": "OptIns", + "description": "The list of opt-ins for the user, related to communication preferences." }, - "locale": { - "type": "string", - "description": "Locale to use for the current request." + "markets": { + "description": "A list of ids representing which markets the user was interested in.", + "type": "array", + "items": { + "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." + "migrateToAfa": { + "description": "Whether or not to migrate the user's exam data to Academy for Ads.", + "type": "boolean" }, - "partnersSessionId": { + "phoneNumber": { + "description": "The user's phone number.", + "type": "string" + }, + "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" + }, + "primaryCountryCode": { "type": "string", - "description": "Google Partners session ID." - } - }, - "id": "RequestMetadata", - "description": "Common data that is in each API request." - }, - "CreateLeadRequest": { - "description": "Request message for CreateLead.", - "type": "object", - "properties": { - "lead": { - "$ref": "Lead", - "description": "The lead resource. The `LeadType` must not be `LEAD_TYPE_UNSPECIFIED`\nand either `email` or `phone_number` must be provided." + "description": "The user's primary country, an ISO 2-character code." }, - "recaptchaChallenge": { - "description": "\u003ca href=\"https://www.google.com/recaptcha/\"\u003ereCaptcha\u003c/a\u003e challenge info.", - "$ref": "RecaptchaChallenge" + "emailAddress": { + "description": "The email address the user has selected on the Partners site as primary.", + "type": "string" }, - "requestMetadata": { - "description": "Current request metadata.", - "$ref": "RequestMetadata" + "profilePublic": { + "description": "Whether the user's public profile is visible to anyone with the URL.", + "type": "boolean" + }, + "channels": { + "description": "A list of ids representing which channels the user selected they were in.", + "type": "array", + "items": { + "type": "string" + } + }, + "jobFunctions": { + "description": "A list of ids represnting which job categories the user selected.", + "type": "array", + "items": { + "type": "string" + } } }, - "id": "CreateLeadRequest" + "id": "UserProfile", + "description": "The profile information of a Partners user.", + "type": "object" }, - "EventData": { - "description": "Key value data pair for an event.", + "GetPartnersStatusResponse": { + "description": "Response message for\nGetPartnersStatus.", "type": "object", "properties": { - "values": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Data values." - }, - "key": { - "enum": [ - "EVENT_DATA_TYPE_UNSPECIFIED", - "ACTION", - "AGENCY_ID", - "AGENCY_NAME", - "AGENCY_PHONE_NUMBER", - "AGENCY_WEBSITE", - "BUDGET", - "CENTER_POINT", - "CERTIFICATION", - "COMMENT", - "COUNTRY", - "CURRENCY", - "CURRENTLY_VIEWED_AGENCY_ID", - "DISTANCE", - "DISTANCE_TYPE", - "EXAM", - "HISTORY_TOKEN", - "ID", - "INDUSTRY", - "INSIGHT_TAG", - "LANGUAGE", - "LOCATION", - "MARKETING_OPT_IN", - "QUERY", - "SEARCH_START_INDEX", - "SERVICE", - "SHOW_VOW", - "SOLUTION", - "TRAFFIC_SOURCE_ID", - "TRAFFIC_SUB_ID", - "VIEW_PORT", - "WEBSITE", - "DETAILS", - "EXPERIMENT_ID", - "GPS_MOTIVATION", - "URL", - "ELEMENT_FOCUS", - "PROGRESS" - ], - "description": "Data type.", - "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\\]." - ] + "responseMetadata": { + "$ref": "ResponseMetadata", + "description": "Current response metadata." } }, - "id": "EventData" + "id": "GetPartnersStatusResponse" }, - "ExamStatus": { - "id": "ExamStatus", - "description": "A user's information on a specific exam.", + "HistoricalOffer": { + "description": "Historical information about a Google Partners Offer.", "type": "object", "properties": { - "examType": { - "description": "The type of the 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" - ] - }, - "taken": { - "description": "The date the user last taken this exam.", + "lastModifiedTime": { + "description": "Time last action was taken.", "format": "google-datetime", "type": "string" }, - "passed": { - "description": "Whether this exam has been passed and not expired.", - "type": "boolean" - }, - "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": { - "description": "The date the user last passed this exam.", - "format": "google-datetime", - "type": "string" - } - } - }, - "ListOffersResponse": { - "description": "Response for ListOffer.", - "type": "object", - "properties": { - "responseMetadata": { - "$ref": "ResponseMetadata", - "description": "Current response metadata." - }, - "noOfferReason": { - "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" - ], - "description": "Reason why no Offers are available.", - "type": "string" - }, - "availableOffers": { - "description": "Available Offers to be distributed.", - "type": "array", - "items": { - "$ref": "AvailableOffer" - } - } - }, - "id": "ListOffersResponse" - }, - "CountryOfferInfo": { - "properties": { - "offerCountryCode": { - "description": "Country code for which offer codes may be requested.", - "type": "string" - }, - "spendXAmount": { - "description": "(localized) Spend X amount for that country's offer.", - "type": "string" + "adwordsUrl": { + "description": "Client's AdWords page URL.", + "type": "string" }, "offerType": { + "type": "string", "enumDescriptions": [ "Unset.", "AdWords spend X get Y.", @@ -1435,2096 +639,2892 @@ "OFFER_TYPE_VIDEO", "OFFER_TYPE_SPEND_MATCH" ], - "description": "Type of offer country is eligible for.", - "type": "string" - }, - "getYAmount": { - "description": "(localized) Get Y amount for that country's offer.", - "type": "string" - } - }, - "id": "CountryOfferInfo", - "description": "Offer info by country.", - "type": "object" - }, - "ListCompaniesResponse": { - "type": "object", - "properties": { - "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." - }, - "companies": { - "description": "The list of companies.", - "type": "array", - "items": { - "$ref": "Company" - } - } - }, - "id": "ListCompaniesResponse", - "description": "Response message for\nListCompanies." - }, - "OfferCustomer": { - "description": "Customers qualified for an offer.", - "type": "object", - "properties": { - "getYAmount": { - "description": "Formatted Get Y amount with currency code.", - "type": "string" + "description": "Type of offer." }, - "name": { - "description": "Name of the customer.", + "senderName": { + "description": "Name (First + Last) of the partners user to whom the incentive is allocated.", "type": "string" }, - "spendXAmount": { - "description": "Formatted Spend X amount with currency code.", + "offerCountryCode": { + "description": "Country Code for the offer country.", "type": "string" }, - "adwordsUrl": { - "description": "URL to the customer's AdWords page.", - "type": "string" + "expirationTime": { + "type": "string", + "description": "Time this offer expires.", + "format": "google-datetime" }, - "eligibilityDaysLeft": { - "description": "Days the customer is still eligible.", - "format": "int32", - "type": "integer" + "offerCode": { + "type": "string", + "description": "Offer code." }, "creationTime": { - "description": "Time the customer was created.", + "description": "Time offer was first created.", "format": "google-datetime", "type": "string" }, - "countryCode": { - "description": "Country code of the customer.", - "type": "string" - }, - "offerType": { + "status": { + "description": "Status of the offer.", + "type": "string", "enumDescriptions": [ "Unset.", - "AdWords spend X get Y.", - "Youtube video.", - "Spend Match up to Y." + "Offer distributed.", + "Offer redeemed.", + "Offer awarded.", + "Offer expired." ], "enum": [ - "OFFER_TYPE_UNSPECIFIED", - "OFFER_TYPE_SPEND_X_GET_Y", - "OFFER_TYPE_VIDEO", - "OFFER_TYPE_SPEND_MATCH" - ], - "description": "Type of the offer", + "OFFER_STATUS_UNSPECIFIED", + "OFFER_STATUS_DISTRIBUTED", + "OFFER_STATUS_REDEEMED", + "OFFER_STATUS_AWARDED", + "OFFER_STATUS_EXPIRED" + ] + }, + "clientEmail": { + "description": "Email address for client.", "type": "string" }, - "externalCid": { - "description": "External CID for the customer.", + "clientId": { + "description": "ID of client.", "format": "int64", "type": "string" - } - }, - "id": "OfferCustomer" - }, - "CertificationStatus": { - "description": "Google Partners certification status.", - "type": "object", - "properties": { - "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.", + "clientName": { + "description": "Name of the client.", "type": "string" - }, - "userCount": { - "description": "Number of people who are certified,", - "format": "int32", - "type": "integer" - }, - "isCertified": { - "description": "Whether certification is passing.", - "type": "boolean" } }, - "id": "CertificationStatus" + "id": "HistoricalOffer" }, - "LocalizedCompanyInfo": { - "description": "The localized company information.", + "UserOverrides": { + "description": "Values to use instead of the user's respective defaults. These are only\nhonored by whitelisted products.", "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.", + "userId": { + "description": "Logged-in user ID to impersonate instead of the user's ID.", "type": "string" }, - "displayName": { - "description": "Localized display name.", + "ipAddress": { + "description": "IP address to use instead of the user's geo-located IP address.", "type": "string" } }, - "id": "LocalizedCompanyInfo" - }, - "LogUserEventResponse": { - "description": "Response message for\nLogUserEvent.", - "type": "object", - "properties": { - "responseMetadata": { - "description": "Current response metadata.", - "$ref": "ResponseMetadata" - } - }, - "id": "LogUserEventResponse" + "id": "UserOverrides" }, - "ListOffersHistoryResponse": { - "description": "Response for ListOfferHistory.", - "type": "object", + "LogUserEventRequest": { "properties": { - "nextPageToken": { - "description": "Supply this token in a ListOffersHistoryRequest to retrieve the next page.", - "type": "string" - }, - "responseMetadata": { - "$ref": "ResponseMetadata", - "description": "Current response metadata." - }, - "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": { - "description": "True if this response is showing entire company history.", - "type": "boolean" - }, - "offers": { - "description": "Historical offers meeting request.", - "type": "array", - "items": { - "$ref": "HistoricalOffer" - } - } - }, - "id": "ListOffersHistoryResponse" - }, - "LogMessageResponse": { - "description": "Response message for\nLogClientMessage.", - "type": "object", - "properties": { - "responseMetadata": { - "$ref": "ResponseMetadata", - "description": "Current response metadata." - } - }, - "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": { - "description": "State of agency specialization.", - "type": "string", - "enumDescriptions": [ - "Unknown state", - "Specialization passed", - "Specialization not passed", - "Specialization in grace" - ], - "enum": [ - "BADGE_SPECIALIZATION_STATE_UNKNOWN", - "BADGE_SPECIALIZATION_STATE_PASSED", - "BADGE_SPECIALIZATION_STATE_NOT_PASSED", - "BADGE_SPECIALIZATION_STATE_IN_GRACE" - ] - } - }, - "id": "SpecializationStatus" - }, - "Certification": { - "properties": { - "certificationType": { - "description": "The type of certification, the area of expertise.", + "eventCategory": { "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." + "Google Partner Search category.", + "Google Partner sign-up flow category.", + "Google Partner portal category.", + "Google Partner portal my-profile category.", + "Google Partner portal certifications category.", + "Google Partner portal community category.", + "Google Partner portal insights category.", + "Google Partner portal clients category.", + "Google Partner portal public user profile category.", + "Google Partner panel category.", + "Google Partner portal last admin dialog category.", + "Google Partner client category.", + "Google Partner portal company profile category.", + "External links category.", + "Google Partner landing category." ], "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" - }, - "achieved": { - "description": "Whether this certification has been achieved.", - "type": "boolean" - }, - "expiration": { - "description": "Date this certification is due to expire.", - "format": "google-datetime", - "type": "string" - }, - "warning": { - "description": "Whether this certification is in the state of warning.", - "type": "boolean" - } - }, - "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": { - "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" - } - }, - "certificationStatus": { - "description": "The list of achieved certifications. These are calculated based on exam\nresults and other requirements.\n@OutputOnly", - "type": "array", - "items": { - "$ref": "Certification" - } - }, - "afaInfoShared": { - "description": "Whether or not the user has opted to share their Academy for Ads info with\nGoogle Partners.", - "type": "boolean" - }, - "profile": { - "$ref": "UserProfile", - "description": "The profile information of a Partners user, contains all the directly\neditable user information." - }, - "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" - } - }, - "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": { - "$ref": "PublicProfile", - "description": "Information about a user's external public profile outside Google Partners." - }, - "companyVerificationEmail": { - "description": "The email address used by the user used for company verification.\n@OutputOnly", - "type": "string" - } - }, - "id": "User" - }, - "ListAnalyticsResponse": { - "type": "object", - "properties": { - "analytics": { - "description": "The list of analytics.\nSorted in ascending order of\nAnalytics.event_date.", - "type": "array", - "items": { - "$ref": "Analytics" - } - }, - "nextPageToken": { - "type": "string", - "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." - }, - "responseMetadata": { - "$ref": "ResponseMetadata", - "description": "Current response metadata." - }, - "analyticsSummary": { - "$ref": "AnalyticsSummary", - "description": "Aggregated information across the response's\nanalytics." - } - }, - "id": "ListAnalyticsResponse", - "description": "Response message for\nListAnalytics." - }, - "ListLeadsResponse": { - "description": "Response message for ListLeads.", - "type": "object", - "properties": { - "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." + "EVENT_CATEGORY_UNSPECIFIED", + "GOOGLE_PARTNER_SEARCH", + "GOOGLE_PARTNER_SIGNUP_FLOW", + "GOOGLE_PARTNER_PORTAL", + "GOOGLE_PARTNER_PORTAL_MY_PROFILE", + "GOOGLE_PARTNER_PORTAL_CERTIFICATIONS", + "GOOGLE_PARTNER_PORTAL_COMMUNITY", + "GOOGLE_PARTNER_PORTAL_INSIGHTS", + "GOOGLE_PARTNER_PORTAL_CLIENTS", + "GOOGLE_PARTNER_PUBLIC_USER_PROFILE", + "GOOGLE_PARTNER_PANEL", + "GOOGLE_PARTNER_PORTAL_LAST_ADMIN_DIALOG", + "GOOGLE_PARTNER_CLIENT", + "GOOGLE_PARTNER_PORTAL_COMPANY_PROFILE", + "EXTERNAL_LINKS", + "GOOGLE_PARTNER_LANDING" + ], + "description": "The category the action belongs to." }, - "totalSize": { - "description": "The total count of leads for the given company.", - "format": "int32", - "type": "integer" + "lead": { + "$ref": "Lead", + "description": "Advertiser lead information." }, - "leads": { - "description": "The list of leads.", - "type": "array", - "items": { - "$ref": "Lead" - } - } - }, - "id": "ListLeadsResponse" - }, - "Company": { - "type": "object", - "properties": { - "publicProfile": { - "description": "Basic information from the company's public profile.", - "$ref": "PublicProfile" - }, - "originalMinMonthlyBudget": { - "$ref": "Money", - "description": "The unconverted minimum monthly budget that the company accepts for partner\nbusiness." - }, - "primaryLocation": { - "$ref": "Location", - "description": "The primary location of the company." - }, - "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" - ] - }, + "eventAction": { "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." - ] - }, - "ranks": { - "description": "Information related to the ranking of the company within the list of\ncompanies.", - "type": "array", - "items": { - "$ref": "Rank" - } - }, - "badgeTier": { - "enum": [ - "BADGE_TIER_NONE", - "BADGE_TIER_REGULAR", - "BADGE_TIER_PREMIER" + "Advertiser clicked `Find a partner` bottom button.", + "Advertiser clicked `Find a partner` top button.", + "Agency clicked `Join now` bottom button.", + "Agency clicked `Join now` top button.", + "Advertiser canceled partner contact form.", + "Advertiser started partner contact form.", + "Advertiser completed partner contact form.", + "Advertiser entered email in contact form.", + "Advertiser entered name in contact form.", + "Advertiser entered phone in contact form.", + "Advertiser failed \u003ca href=\"https://www.google.com/recaptcha/\"\u003ereCaptcha\u003c/a\u003e\nin contact form.", + "Company viewed by advertiser.", + "Advertiser canceled partner contact form on Google Partner Search.", + "Advertiser changed a top search parameter.", + "Advertiser started partner contact form on Google Partner Search.", + "Advertiser clicked `Show more partners` bottom button.", + "Advertiser completed partner contact form on Google Partner Search.", + "Advertiser saw no partners available with search criteria.", + "Advertiser performed search on Google Partner Search.", + "Advertiser viewed a partner on Google Partner Search.", + "Advertiser canceled partner contact form on profile page.", + "Advertiser started partner contact form on profile page.", + "Advertiser clicked partner website.", + "Advertiser completed contact form on profile page.", + "Advertiser viewed a partner profile.", + "Agency clicked `accept Terms Of Service` button.", + "Agency changed Terms Of Service country.", + "Agency added address in profile portal.", + "Agency added phone number in profile portal.", + "Agency changed primary account association.", + "Agency changed primary country association.", + "Agency clicked `affiliate` button in profile portal.", + "Agency clicked `give edit access` in profile portal.", + "Agency clicked `log out` in profile portal.", + "Agency clicked profile portal left nav.", + "Agency clicked `save and continue` at bottom of complete profile.", + "Agency clicked `unaffiliate` in profile portal.", + "Agency filled out company affiliation in profile portal.", + "Agency successfully connected with company in profile portal.", + "Agency clicked create MCC in profile portal.", + "Agency did not have an MCC associated on profile portal.", + "Agency had an MCC associated on profile portal.", + "Agency added job function in profile portal.", + "Agency looked at job function drop-down.", + "Agency selected `account manage` 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 profile portal.", + "Agency looked at `add channel` drop-down.", + "Agency selected `cross channel` from add channel drop-down.", + "Agency selected `display` from add channel drop-down.", + "Agency selected `mobile` from add channel drop-down.", + "Agency selected `search` from add channel drop-down.", + "Agency selected `social` from add channel drop-down.", + "Agency selected `tools` from add channel drop-down.", + "Agency selected `YouTube` from add channel drop-down.", + "Agency added industries in profile portal.", + "Agency changed `add industries` drop-down.", + "Agency added markets in profile portal.", + "Agency changed `add markets` drop-down.", + "Agency checked `recieve mail promotions` in profile portal.", + "Agency checked `recieve mail promotions` in sign-up.", + "Agency selected `opt-in beta tests and market research`.", + "Agency selected `opt-in beta tests` in profile portal.", + "Agency selected `opt-in news` in profile portal.", + "Agency selected `opt-in news invitations and promotions`.", + "Agency selected `opt-in performance SUG` in profile portal.", + "Agency selected `opt-in performance suggestions`.", + "Agency selected `opt-in select all email notifications`.", + "Agency selected `select all opt-ins` in profile portal.", + "Agency clicked back button on `connect with company`.", + "Agency clicked continue to overview on `connect with company`.", + "Agency clicked `create MCC connect with company not found`.", + "Agency clicked `give edit access connect with company not found`.", + "Agency clicked `log out connect with company not found`.", + "Agency clicked `skip for now on connect with company page`.", + "Agency closed connection to company.", + "Agency completed field connect with company.", + "Agency 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 cliecked `get certified` link in portal notifications.", + "Agency clicked `get VideoAds 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 in 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 certifications AdWords page.", + "Agency clicked `see exams` certifications main page.", + "Agency clicked `take exam` on certifications exam page.", + "Agency opened `last admin` dialog.", + "Agency opened dialog with no users.", + "Agency promoted user to admin.", + "Agency unaffiliated.", + "Agency changed roles.", + "Advertiser clicked `company name` link to profile.", + "Advertiser viewed AdWords certificate.", + "Advertiser viewed AdWords Search certificate.", + "Advertiser viewed AdWords Display certificate.", + "Advertiser clicked AdWords certificate help icon.", + "Advertiser viewed Analytics certificate.", + "Advertiser viewed DoubleClick certificate.", + "Advertiser viewed Mobile Sites certificate.", + "Advertiser viewed VideoAds certificate.", + "Advertiser clicked Shopping certificate help icon.", + "Advertiser clicked VideoAds certificate help icon.", + "Advertiser viewed Digital Sales certificate.", + "Clicked `help` at bottom.", + "Clicked `help` at top.", + "Client error occurred.", + "Agency clicked left nav `stories`.", + "Click occured.", + "Advertiser clicked Mobile certificate help icon.", + "Agency failed the company verification.", + "User visited the landing portion of Google Partners.", + "User visited the Google Partner Search portion of Google Partners.", + "User visited the agency portal portion of Google Partners.", + "User cancelled signing up.", + "User cancelled signing up their company.", + "Agency clicked `Sign in` top button.", + "Agency clicked `save and continue` at bottom of incomplete profile.", + "Agency unselected `opt-in news invitations and promotions`.", + "Agency unselected `opt-in beta tests and market research`.", + "Agency unselected `opt-in performance suggestions`.", + "Agency selected `opt-out unselect all email notifications`.", + "Agency linked their individual MCC.", + "Agency was suggested to user for affiliation.", + "Agency ignored suggested agencies and begin searching.", + "Agency picked a suggested agency.", + "Agency searched for agencies.", + "Agency picked a searched agency.", + "Agency dismissed affiliation widget.", + "Agency clicked on the download link for downloading content.", + "Agency user is maklingg progress viewing a content item.", + "Agency clicked `cancel Terms Of Service` button.", + "Advertiser entered website in contact form.", + "Agency opted in for migrating their exams to Academy for Ads.", + "Agency opted out for migrating their exams to Academy for Ads." ], - "description": "Partner badge tier", - "type": "string", - "enumDescriptions": [ - "Tier badge is not set.", - "Agency has regular partner badge.", - "Agency has premier badge." - ] - }, - "specializationStatus": { - "description": "The list of Google Partners specialization statuses for the company.", - "type": "array", - "items": { - "$ref": "SpecializationStatus" - } - }, - "companyTypes": { - "description": "Company type labels listed on the company's profile.", - "type": "array", - "items": { - "type": "string", - "enum": [ - "COMPANY_TYPE_UNSPECIFIED", - "FULL_SERVICE_AGENCY", - "MEDIA_AGENCY", - "CREATIVE_AGENCY", - "CDIGITAL_AGENCY", - "SEM_SEO", - "PERFORMANCE_MARKETING", - "ADVERTISING_TOOL_DEVELOPMENT", - "PR", - "SELF_MANAGED", - "RESELLER" - ] - }, - "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." - ] + "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" + ], + "description": "The action that occurred.", + "type": "string" }, - "autoApprovalEmailDomains": { - "description": "Email domains that allow users with a matching email address to get\nauto-approved for associating with this company.", + "url": { + "type": "string", + "description": "The URL where the event occurred." + }, + "requestMetadata": { + "$ref": "RequestMetadata", + "description": "Current request metadata." + }, + "eventDatas": { + "description": "List of event data for the event.", "type": "array", "items": { - "type": "string" + "$ref": "EventData" } }, - "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" - }, - "profileStatus": { + "eventScope": { + "description": "The scope of the event.", "type": "string", "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." + "Based on visitor.", + "Based on session.", + "Based on page visit." ], "enum": [ - "COMPANY_PROFILE_STATUS_UNSPECIFIED", - "HIDDEN", - "PUBLISHED", - "SEARCHABLE" - ], - "description": "The public viewability status of the company's profile." - }, - "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." + "EVENT_SCOPE_UNSPECIFIED", + "VISITOR", + "SESSION", + "PAGE" + ] + } + }, + "id": "LogUserEventRequest", + "description": "Request message for\nLogUserEvent.", + "type": "object" + }, + "AnalyticsDataPoint": { + "description": "Details of the analytics events for a `Company` within a single day.", + "type": "object", + "properties": { + "eventCount": { + "type": "integer", + "description": "Number of times the type of event occurred.\nMeaning depends on context (e.g. profile views, contacts, etc.).", + "format": "int32" }, - "industries": { - "description": "Industries the company can help with.", + "eventLocations": { "type": "array", "items": { - "type": "string", - "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" - ] + "$ref": "LatLng" }, - "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." - ] + "description": "Location information of where these events occurred." + } + }, + "id": "AnalyticsDataPoint" + }, + "Analytics": { + "description": "Analytics data for a `Company` within a single day.", + "type": "object", + "properties": { + "eventDate": { + "description": "Date on which these events occurred.", + "$ref": "Date" }, - "websiteUrl": { - "description": "URL of the company's website.", - "type": "string" + "profileViews": { + "description": "Instances of users viewing the `Company` profile\non the specified date.", + "$ref": "AnalyticsDataPoint" }, - "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" - } + "searchViews": { + "$ref": "AnalyticsDataPoint", + "description": "Instances of users seeing the `Company` in Google Partners Search results\non the specified date." }, - "primaryAdwordsManagerAccountId": { - "description": "The Primary AdWords Manager Account id.", - "format": "int64", + "contacts": { + "$ref": "AnalyticsDataPoint", + "description": "Instances of users contacting the `Company`\non the specified date." + } + }, + "id": "Analytics" + }, + "PublicProfile": { + "description": "Basic information from a public profile.", + "type": "object", + "properties": { + "displayName": { + "description": "The display name of the public profile.", "type": "string" }, - "name": { - "description": "The name of the company.", + "displayImageUrl": { + "description": "The URL to the main display image of the public profile. Being deprecated.", "type": "string" }, - "localizedInfos": { - "description": "The list of localized info for the company.", - "type": "array", - "items": { - "$ref": "LocalizedCompanyInfo" - } - }, "id": { - "type": "string", - "description": "The ID of the company." + "description": "The ID which can be used to retrieve more details about the public profile.", + "type": "string" }, - "certificationStatuses": { - "description": "The list of Google Partners certification statuses for the company.", - "type": "array", - "items": { - "$ref": "CertificationStatus" - } + "url": { + "description": "The URL of the public profile.", + "type": "string" + }, + "profileImage": { + "description": "The URL to the main profile image of the public profile.", + "type": "string" } }, - "id": "Company", - "description": "A company resource in the Google Partners API. Once certified, it qualifies\nfor being searched by advertisers." + "id": "PublicProfile" }, - "CreateLeadResponse": { - "id": "CreateLeadResponse", - "description": "Response message for CreateLead.", + "AdWordsManagerAccountInfo": { + "id": "AdWordsManagerAccountInfo", + "description": "Information about a particular AdWords Manager Account.\nRead more at https://support.google.com/adwords/answer/6139186", "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." - ] + "customerName": { + "description": "Name of the customer this account represents.", + "type": "string" }, - "responseMetadata": { - "description": "Current response metadata.", - "$ref": "ResponseMetadata" + "id": { + "description": "The AdWords Manager Account id.", + "format": "int64", + "type": "string" } } }, - "GetCompanyResponse": { - "description": "Response message for GetCompany.", - "type": "object", + "ResponseMetadata": { "properties": { - "responseMetadata": { - "$ref": "ResponseMetadata", - "description": "Current response metadata." - }, - "company": { - "$ref": "Company", - "description": "The company." + "debugInfo": { + "$ref": "DebugInfo", + "description": "Debug information about this request." } }, - "id": "GetCompanyResponse" + "id": "ResponseMetadata", + "description": "Common data that is in each API response.", + "type": "object" }, - "Location": { - "description": "A location with address and geographic coordinates. May optionally contain a\ndetailed (multi-field) version of the address.", + "RecaptchaChallenge": { "type": "object", "properties": { - "postalCode": { - "description": "Values are frequently alphanumeric.", + "id": { + "description": "The ID of the reCaptcha challenge.", "type": "string" }, - "sortingCode": { - "description": "Use of this code is very country-specific, but will refer to a secondary\nclassification code for sorting mail.", + "response": { + "type": "string", + "description": "The response to the reCaptcha challenge." + } + }, + "id": "RecaptchaChallenge", + "description": "\u003ca href=\"https://www.google.com/recaptcha/\"\u003ereCaptcha\u003c/a\u003e challenge info." + }, + "AvailableOffer": { + "properties": { + "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" }, - "languageCode": { - "description": "Language code of the address. Should be in BCP 47 format.", - "type": "string" + "countryOfferInfos": { + "description": "Offer info by country.", + "type": "array", + "items": { + "$ref": "CountryOfferInfo" + } + }, + "offerType": { + "description": "Type of offer.", + "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" + ] + }, + "maxAccountAge": { + "description": "The maximum age of an account [in days] to be eligible.", + "format": "int32", + "type": "integer" }, - "addressLine": { - "description": "The following address lines represent the most specific part of any\naddress.", + "qualifiedCustomer": { + "description": "Customers who qualify for this offer.", "type": "array", "items": { - "type": "string" + "$ref": "OfferCustomer" } }, - "administrativeArea": { - "description": "Top-level administrative subdivision of this country.", + "terms": { + "description": "Terms of the offer.", "type": "string" }, - "locality": { - "description": "Generally refers to the city/town portion of an address.", - "type": "string" + "showSpecialOfferCopy": { + "description": "Should special text be shown on the offers page.", + "type": "boolean" }, - "latLng": { - "$ref": "LatLng", - "description": "The latitude and longitude of the location, in degrees." + "available": { + "type": "integer", + "description": "The number of codes for this offer that are available for distribution.", + "format": "int32" }, - "regionCode": { - "description": "CLDR (Common Locale Data Repository) region code .", - "type": "string" + "description": { + "type": "string", + "description": "Description of the offer." }, - "dependentLocality": { - "description": "Dependent locality or sublocality. Used for UK dependent localities, or\nneighborhoods or boroughs in other locations.", - "type": "string" + "offerLevel": { + "description": "Level of this offer.", + "type": "string", + "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" + ] }, - "address": { - "description": "The single string version of the address.", + "name": { + "description": "Name of the offer.", "type": "string" } }, - "id": "Location" + "id": "AvailableOffer", + "description": "Available Offers to be distributed.", + "type": "object" }, - "CertificationExamStatus": { - "description": "Status for a Google Partners certification exam.", + "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": { - "numberUsersPass": { - "description": "The number of people who have passed the certification exam.", - "format": "int32", - "type": "integer" + "latitude": { + "type": "number", + "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", + "format": "double" }, - "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" - ] + "longitude": { + "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", + "format": "double", + "type": "number" } }, - "id": "CertificationExamStatus" + "id": "LatLng" }, - "OptIns": { + "Money": { + "id": "Money", + "description": "Represents an amount of money with its currency type.", "type": "object", "properties": { - "specialOffers": { - "type": "boolean", - "description": "An opt-in about receiving email regarding new features and products." + "currencyCode": { + "description": "The 3-letter currency code defined in ISO 4217.", + "type": "string" }, - "performanceSuggestions": { - "description": "An opt-in about receiving email with customized AdWords campaign management\ntips.", - "type": "boolean" + "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" }, - "physicalMail": { - "description": "An opt-in to receive special promotional gifts and material in the mail.", - "type": "boolean" + "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" + } + } + }, + "AnalyticsSummary": { + "description": "Analytics aggregated data for a `Company` for a given date range.", + "type": "object", + "properties": { + "profileViewsCount": { + "type": "integer", + "description": "Aggregated number of profile views for the `Company` for given date range.", + "format": "int32" }, - "phoneContact": { - "type": "boolean", - "description": "An opt-in to allow recieivng phone calls about their Partners account." + "searchViewsCount": { + "description": "Aggregated number of times users saw the `Company`\nin Google Partners Search results for given date range.", + "format": "int32", + "type": "integer" }, - "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" + "contactsCount": { + "description": "Aggregated number of times users contacted the `Company`\nfor given date range.", + "format": "int32", + "type": "integer" } }, - "id": "OptIns", - "description": "A set of opt-ins for a user." + "id": "AnalyticsSummary" }, - "Rank": { + "LogMessageRequest": { + "id": "LogMessageRequest", + "description": "Request message for\nLogClientMessage.", "type": "object", "properties": { - "value": { - "description": "The numerical value of the rank.", - "format": "double", - "type": "number" + "clientInfo": { + "additionalProperties": { + "type": "string" + }, + "description": "Map of client info, such as URL, browser navigator, browser platform, etc.", + "type": "object" }, - "type": { + "requestMetadata": { + "$ref": "RequestMetadata", + "description": "Current request metadata." + }, + "level": { "enum": [ - "RANK_TYPE_UNSPECIFIED", - "RT_FINAL_SCORE" + "MESSAGE_LEVEL_UNSPECIFIED", + "ML_FINE", + "ML_INFO", + "ML_WARNING", + "ML_SEVERE" ], - "description": "The type of rank.", + "description": "Message level of client message.", "type": "string", "enumDescriptions": [ "Unchosen.", - "Total final score." + "Message level for tracing information.", + "Message level for informational messages.", + "Message level for potential problems.", + "Message level for serious failures." ] + }, + "details": { + "description": "Details about the client message.", + "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": "Rank", - "description": "Information related to ranking of results." + "id": "DebugInfo" }, - "UserProfile": { - "description": "The profile information of a Partners user.", + "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", "properties": { - "profilePublic": { - "description": "Whether the user's public profile is visible to anyone with the URL.", - "type": "boolean" + "minMonthlyBudget": { + "description": "The minimum monthly budget lead source is willing to spend.", + "$ref": "Money" }, - "channels": { - "description": "A list of ids representing which channels the user selected they were in.", - "type": "array", - "items": { - "type": "string" - } + "givenName": { + "description": "First name of lead source.", + "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" + }, + "websiteUrl": { + "description": "Website URL of lead source.", + "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" + ] }, - "jobFunctions": { - "description": "A list of ids represnting which job categories the user selected.", + "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", "items": { + "enum": [ + "GPS_MOTIVATION_UNSPECIFIED", + "GPSM_HELP_WITH_ADVERTISING", + "GPSM_HELP_WITH_WEBSITE", + "GPSM_NO_WEBSITE" + ], "type": "string" } }, - "givenName": { - "description": "The user's given name.", + "email": { + "description": "Email address of lead source.", "type": "string" }, - "address": { - "description": "The user's mailing address, contains multiple fields.", - "$ref": "Location" - }, - "industries": { - "description": "A list of ids representing which industries the user selected.", - "type": "array", - "items": { - "type": "string" - } - }, - "languages": { - "description": "The list of languages this user understands.", - "type": "array", - "items": { - "type": "string" - } - }, "familyName": { - "description": "The user's family name.", + "description": "Last name of lead source.", "type": "string" }, - "emailOptIns": { - "description": "The list of opt-ins for the user, related to communication preferences.", - "$ref": "OptIns" - }, - "markets": { - "description": "A list of ids representing which markets the user was interested in.", - "type": "array", - "items": { - "type": "string" - } + "id": { + "description": "ID of the lead.", + "type": "string" }, - "migrateToAfa": { - "description": "Whether or not to migrate the user's exam data to Academy for Ads.", - "type": "boolean" + "comments": { + "description": "Comments lead source gave.", + "type": "string" }, "phoneNumber": { - "description": "The user's phone number.", + "description": "Phone number of lead source.", "type": "string" }, - "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.", + "adwordsCustomerId": { + "description": "The AdWords Customer ID of the lead.", "format": "int64", "type": "string" }, - "primaryCountryCode": { - "description": "The user's primary country, an ISO 2-character code.", + "createTime": { + "description": "Timestamp of when this lead was created.", + "format": "google-datetime", "type": "string" }, - "emailAddress": { - "description": "The email address the user has selected on the Partners site as primary.", - "type": "string" + "marketingOptIn": { + "description": "Whether or not the lead signed up for marketing emails", + "type": "boolean" + }, + "type": { + "description": "Type of lead.", + "type": "string", + "enumDescriptions": [ + "Unchosen.", + "Google Partner Search." + ], + "enum": [ + "LEAD_TYPE_UNSPECIFIED", + "LT_GPS" + ] } }, - "id": "UserProfile" + "id": "Lead" }, - "GetPartnersStatusResponse": { - "description": "Response message for\nGetPartnersStatus.", + "ListUserStatesResponse": { "type": "object", "properties": { "responseMetadata": { "$ref": "ResponseMetadata", "description": "Current response metadata." + }, + "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": "GetPartnersStatusResponse" + "id": "ListUserStatesResponse", + "description": "Response message for\nListUserStates." }, - "HistoricalOffer": { - "type": "object", + "CompanyRelation": { "properties": { - "offerCode": { - "description": "Offer code.", - "type": "string" + "companyAdmin": { + "description": "Indicates if the user is an admin for this company.", + "type": "boolean" + }, + "address": { + "type": "string", + "description": "The primary address for this company." + }, + "isPending": { + "type": "boolean", + "description": "The flag that indicates if the company is pending verification." }, "creationTime": { - "description": "Time offer was first created.", + "description": "The timestamp of when affiliation was requested.\n@OutputOnly", "format": "google-datetime", "type": "string" }, - "status": { - "description": "Status of the offer.", + "primaryAddress": { + "description": "The primary location of the company.", + "$ref": "Location" + }, + "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" + }, + "name": { "type": "string", + "description": "The name (in the company's primary language) for the company." + }, + "managerAccount": { + "description": "The AdWords manager account # associated this company.", + "format": "int64", + "type": "string" + }, + "segment": { + "type": "array", + "items": { + "enum": [ + "COMPANY_SEGMENT_UNKNOWN", + "COMPANY_SEGMENT_NAL", + "COMPANY_SEGMENT_PSP", + "COMPANY_SEGMENT_PPSP" + ], + "type": "string" + }, "enumDescriptions": [ - "Unset.", - "Offer distributed.", - "Offer redeemed.", - "Offer awarded.", - "Offer expired." + "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." + ], + "description": "The segment the company is classified as." + }, + "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": [ - "OFFER_STATUS_UNSPECIFIED", - "OFFER_STATUS_DISTRIBUTED", - "OFFER_STATUS_REDEEMED", - "OFFER_STATUS_AWARDED", - "OFFER_STATUS_EXPIRED" - ] + "BADGE_TIER_NONE", + "BADGE_TIER_REGULAR", + "BADGE_TIER_PREMIER" + ], + "description": "Whether the company is a Partner.", + "type": "string" }, - "clientEmail": { - "description": "Email address for client.", + "specializationStatus": { + "type": "array", + "items": { + "$ref": "SpecializationStatus" + }, + "description": "The list of Google Partners specialization statuses for the company." + }, + "phoneNumber": { + "description": "The phone number for the company's primary address.", "type": "string" }, - "clientId": { - "description": "ID of client.", - "format": "int64", + "website": { + "description": "The website URL for this company.", "type": "string" }, - "clientName": { - "description": "Name of the client.", + "primaryCountryCode": { + "description": "The primary country code of the company.", "type": "string" }, - "lastModifiedTime": { - "description": "Time last action was taken.", - "format": "google-datetime", + "companyId": { + "description": "The ID of the company. There may be no id if this is a\npending company.5", "type": "string" }, - "adwordsUrl": { - "description": "Client's AdWords page URL.", + "primaryLanguageCode": { + "description": "The primary language code of the company.", "type": "string" }, - "offerType": { - "description": "Type of offer.", - "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" - ] + "logoUrl": { + "description": "A URL to a profile photo, e.g. a G+ profile photo.", + "type": "string" }, - "senderName": { - "description": "Name (First + Last) of the partners user to whom the incentive is allocated.", + "resolvedTimestamp": { + "description": "The timestamp when the user was approved.\n@OutputOnly", + "format": "google-datetime", "type": "string" + } + }, + "id": "CompanyRelation", + "description": "A CompanyRelation resource representing information about a user's\naffiliation and standing with a company in Partners.", + "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": { + "month": { + "description": "Month of year. Must be from 1 to 12, or 0 if specifying a date without a\nmonth.", + "format": "int32", + "type": "integer" }, - "offerCountryCode": { - "type": "string", - "description": "Country Code for the offer country." + "year": { + "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.", + "format": "int32", + "type": "integer" }, - "expirationTime": { - "description": "Time this offer expires.", - "format": "google-datetime", - "type": "string" + "day": { + "description": "Day of month. Must be from 1 to 31 and valid for the year and month, or 0\nif specifying a year/month where the day is not significant.", + "format": "int32", + "type": "integer" } }, - "id": "HistoricalOffer", - "description": "Historical information about a Google Partners Offer." + "id": "Date" }, - "UserOverrides": { - "description": "Values to use instead of the user's respective defaults. These are only\nhonored by whitelisted products.", + "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" + }, + "TrafficSource": { + "description": "Source of traffic for the current request.", "type": "object", "properties": { - "ipAddress": { - "description": "IP address to use instead of the user's geo-located IP address.", + "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" }, - "userId": { - "description": "Logged-in user ID to impersonate instead of the user's ID.", + "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" } }, - "id": "UserOverrides" + "id": "TrafficSource" }, - "LogUserEventRequest": { + "CreateLeadRequest": { + "description": "Request message for CreateLead.", + "type": "object", "properties": { "lead": { - "description": "Advertiser lead information.", - "$ref": "Lead" + "$ref": "Lead", + "description": "The lead resource. The `LeadType` must not be `LEAD_TYPE_UNSPECIFIED`\nand either `email` or `phone_number` must be provided." }, - "eventAction": { + "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" + }, + "RequestMetadata": { + "id": "RequestMetadata", + "description": "Common data that is in each API request.", + "type": "object", + "properties": { + "locale": { + "description": "Locale to use for the current request.", + "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": { + "description": "Google Partners session ID.", + "type": "string" + }, + "experimentIds": { + "description": "Experiment IDs the current request belongs to.", + "type": "array", + "items": { + "type": "string" + } + }, + "trafficSource": { + "$ref": "TrafficSource", + "description": "Source of traffic for the current request." + } + } + }, + "EventData": { + "type": "object", + "properties": { + "key": { + "description": "Data type.", + "type": "string", "enumDescriptions": [ "Unchosen.", - "Advertiser clicked `Find a partner` bottom button.", - "Advertiser clicked `Find a partner` top button.", - "Agency clicked `Join now` bottom button.", - "Agency clicked `Join now` top button.", - "Advertiser canceled partner contact form.", - "Advertiser started partner contact form.", - "Advertiser completed partner contact form.", - "Advertiser entered email in contact form.", - "Advertiser entered name in contact form.", - "Advertiser entered phone in contact form.", - "Advertiser failed \u003ca href=\"https://www.google.com/recaptcha/\"\u003ereCaptcha\u003c/a\u003e\nin contact form.", - "Company viewed by advertiser.", - "Advertiser canceled partner contact form on Google Partner Search.", - "Advertiser changed a top search parameter.", - "Advertiser started partner contact form on Google Partner Search.", - "Advertiser clicked `Show more partners` bottom button.", - "Advertiser completed partner contact form on Google Partner Search.", - "Advertiser saw no partners available with search criteria.", - "Advertiser performed search on Google Partner Search.", - "Advertiser viewed a partner on Google Partner Search.", - "Advertiser canceled partner contact form on profile page.", - "Advertiser started partner contact form on profile page.", - "Advertiser clicked partner website.", - "Advertiser completed contact form on profile page.", - "Advertiser viewed a partner profile.", - "Agency clicked `accept Terms Of Service` button.", - "Agency changed Terms Of Service country.", - "Agency added address in profile portal.", - "Agency added phone number in profile portal.", - "Agency changed primary account association.", - "Agency changed primary country association.", - "Agency clicked `affiliate` button in profile portal.", - "Agency clicked `give edit access` in profile portal.", - "Agency clicked `log out` in profile portal.", - "Agency clicked profile portal left nav.", - "Agency clicked `save and continue` at bottom of complete profile.", - "Agency clicked `unaffiliate` in profile portal.", - "Agency filled out company affiliation in profile portal.", - "Agency successfully connected with company in profile portal.", - "Agency clicked create MCC in profile portal.", - "Agency did not have an MCC associated on profile portal.", - "Agency had an MCC associated on profile portal.", - "Agency added job function in profile portal.", - "Agency looked at job function drop-down.", - "Agency selected `account manage` 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 profile portal.", - "Agency looked at `add channel` drop-down.", - "Agency selected `cross channel` from add channel drop-down.", - "Agency selected `display` from add channel drop-down.", - "Agency selected `mobile` from add channel drop-down.", - "Agency selected `search` from add channel drop-down.", - "Agency selected `social` from add channel drop-down.", - "Agency selected `tools` from add channel drop-down.", - "Agency selected `YouTube` from add channel drop-down.", - "Agency added industries in profile portal.", - "Agency changed `add industries` drop-down.", - "Agency added markets in profile portal.", - "Agency changed `add markets` drop-down.", - "Agency checked `recieve mail promotions` in profile portal.", - "Agency checked `recieve mail promotions` in sign-up.", - "Agency selected `opt-in beta tests and market research`.", - "Agency selected `opt-in beta tests` in profile portal.", - "Agency selected `opt-in news` in profile portal.", - "Agency selected `opt-in news invitations and promotions`.", - "Agency selected `opt-in performance SUG` in profile portal.", - "Agency selected `opt-in performance suggestions`.", - "Agency selected `opt-in select all email notifications`.", - "Agency selected `select all opt-ins` in profile portal.", - "Agency clicked back button on `connect with company`.", - "Agency clicked continue to overview on `connect with company`.", - "Agency clicked `create MCC connect with company not found`.", - "Agency clicked `give edit access connect with company not found`.", - "Agency clicked `log out connect with company not found`.", - "Agency clicked `skip for now on connect with company page`.", - "Agency closed connection to company.", - "Agency completed field connect with company.", - "Agency 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 cliecked `get certified` link in portal notifications.", - "Agency clicked `get VideoAds 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 in 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 certifications AdWords page.", - "Agency clicked `see exams` certifications main page.", - "Agency clicked `take exam` on certifications exam page.", - "Agency opened `last admin` dialog.", - "Agency opened dialog with no users.", - "Agency promoted user to admin.", - "Agency unaffiliated.", - "Agency changed roles.", - "Advertiser clicked `company name` link to profile.", - "Advertiser viewed AdWords certificate.", - "Advertiser viewed AdWords Search certificate.", - "Advertiser viewed AdWords Display certificate.", - "Advertiser clicked AdWords certificate help icon.", - "Advertiser viewed Analytics certificate.", - "Advertiser viewed DoubleClick certificate.", - "Advertiser viewed Mobile Sites certificate.", - "Advertiser viewed VideoAds certificate.", - "Advertiser clicked Shopping certificate help icon.", - "Advertiser clicked VideoAds certificate help icon.", - "Advertiser viewed Digital Sales certificate.", - "Clicked `help` at bottom.", - "Clicked `help` at top.", - "Client error occurred.", - "Agency clicked left nav `stories`.", - "Click occured.", - "Advertiser clicked Mobile certificate help icon.", - "Agency failed the company verification.", - "User visited the landing portion of Google Partners.", - "User visited the Google Partner Search portion of Google Partners.", - "User visited the agency portal portion of Google Partners.", - "User cancelled signing up.", - "User cancelled signing up their company.", - "Agency clicked `Sign in` top button.", - "Agency clicked `save and continue` at bottom of incomplete profile.", - "Agency unselected `opt-in news invitations and promotions`.", - "Agency unselected `opt-in beta tests and market research`.", - "Agency unselected `opt-in performance suggestions`.", - "Agency selected `opt-out unselect all email notifications`.", - "Agency linked their individual MCC.", - "Agency was suggested to user for affiliation.", - "Agency ignored suggested agencies and begin searching.", - "Agency picked a suggested agency.", - "Agency searched for agencies.", - "Agency picked a searched agency.", - "Agency dismissed affiliation widget.", - "Agency clicked on the download link for downloading content.", - "Agency user is maklingg progress viewing a content item.", - "Agency clicked `cancel Terms Of Service` button.", - "Advertiser entered website in contact form.", - "Agency opted in for migrating their exams to Academy for Ads.", - "Agency opted out for migrating their exams to Academy for Ads." + "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\\]." ], "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" + "EVENT_DATA_TYPE_UNSPECIFIED", + "ACTION", + "AGENCY_ID", + "AGENCY_NAME", + "AGENCY_PHONE_NUMBER", + "AGENCY_WEBSITE", + "BUDGET", + "CENTER_POINT", + "CERTIFICATION", + "COMMENT", + "COUNTRY", + "CURRENCY", + "CURRENTLY_VIEWED_AGENCY_ID", + "DISTANCE", + "DISTANCE_TYPE", + "EXAM", + "HISTORY_TOKEN", + "ID", + "INDUSTRY", + "INSIGHT_TAG", + "LANGUAGE", + "LOCATION", + "MARKETING_OPT_IN", + "QUERY", + "SEARCH_START_INDEX", + "SERVICE", + "SHOW_VOW", + "SOLUTION", + "TRAFFIC_SOURCE_ID", + "TRAFFIC_SUB_ID", + "VIEW_PORT", + "WEBSITE", + "DETAILS", + "EXPERIMENT_ID", + "GPS_MOTIVATION", + "URL", + "ELEMENT_FOCUS", + "PROGRESS" + ] + }, + "values": { + "description": "Data values.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "id": "EventData", + "description": "Key value data pair for an event." + }, + "ExamStatus": { + "description": "A user's information on a specific exam.", + "type": "object", + "properties": { + "lastPassed": { + "description": "The date the user last passed this exam.", + "format": "google-datetime", + "type": "string" + }, + "examType": { + "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", + "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." + ] + }, + "taken": { + "description": "The date the user last taken this exam.", + "format": "google-datetime", + "type": "string" + }, + "passed": { + "description": "Whether this exam has been passed and not expired.", + "type": "boolean" + }, + "warning": { + "type": "boolean", + "description": "Whether this exam is in the state of warning." + }, + "expiration": { + "description": "Date this exam is due to expire.", + "format": "google-datetime", + "type": "string" + } + }, + "id": "ExamStatus" + }, + "ListOffersResponse": { + "type": "object", + "properties": { + "responseMetadata": { + "description": "Current response metadata.", + "$ref": "ResponseMetadata" + }, + "noOfferReason": { + "enumDescriptions": [ + "Unset.", + "Not an MCC.", + "Offer limit has been reached.", + "Ineligible for offers." ], - "description": "The action that occurred.", + "enum": [ + "NO_OFFER_REASON_UNSPECIFIED", + "NO_OFFER_REASON_NO_MCC", + "NO_OFFER_REASON_LIMIT_REACHED", + "NO_OFFER_REASON_INELIGIBLE" + ], + "description": "Reason why no Offers are available.", "type": "string" }, - "requestMetadata": { - "description": "Current request metadata.", - "$ref": "RequestMetadata" + "availableOffers": { + "description": "Available Offers to be distributed.", + "type": "array", + "items": { + "$ref": "AvailableOffer" + } + } + }, + "id": "ListOffersResponse", + "description": "Response for ListOffer." + }, + "CountryOfferInfo": { + "description": "Offer info by country.", + "type": "object", + "properties": { + "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" + ] }, - "url": { - "description": "The URL where the event occurred.", + "getYAmount": { + "description": "(localized) Get Y amount for that country's offer.", "type": "string" }, - "eventScope": { + "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" + } + }, + "id": "CountryOfferInfo" + }, + "ListCompaniesResponse": { + "description": "Response message for\nListCompanies.", + "type": "object", + "properties": { + "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": { + "description": "Current response metadata.", + "$ref": "ResponseMetadata" + }, + "companies": { + "description": "The list of companies.", + "type": "array", + "items": { + "$ref": "Company" + } + } + }, + "id": "ListCompaniesResponse" + }, + "OfferCustomer": { + "description": "Customers qualified for an offer.", + "type": "object", + "properties": { + "adwordsUrl": { + "description": "URL to the customer's AdWords page.", + "type": "string" + }, + "offerType": { "enumDescriptions": [ - "Unchosen.", - "Based on visitor.", - "Based on session.", - "Based on page visit." + "Unset.", + "AdWords spend X get Y.", + "Youtube video.", + "Spend Match up to Y." ], "enum": [ - "EVENT_SCOPE_UNSPECIFIED", - "VISITOR", - "SESSION", - "PAGE" + "OFFER_TYPE_UNSPECIFIED", + "OFFER_TYPE_SPEND_X_GET_Y", + "OFFER_TYPE_VIDEO", + "OFFER_TYPE_SPEND_MATCH" ], - "description": "The scope of the event.", + "description": "Type of the offer", "type": "string" }, - "eventDatas": { - "description": "List of event data for the event.", + "externalCid": { + "description": "External CID for the customer.", + "format": "int64", + "type": "string" + }, + "countryCode": { + "description": "Country code of the customer.", + "type": "string" + }, + "creationTime": { + "description": "Time the customer was created.", + "format": "google-datetime", + "type": "string" + }, + "eligibilityDaysLeft": { + "description": "Days the customer is still eligible.", + "format": "int32", + "type": "integer" + }, + "getYAmount": { + "description": "Formatted Get Y amount with currency code.", + "type": "string" + }, + "name": { + "description": "Name of the customer.", + "type": "string" + }, + "spendXAmount": { + "description": "Formatted Spend X amount with currency code.", + "type": "string" + } + }, + "id": "OfferCustomer" + }, + "CertificationStatus": { + "id": "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": "EventData" + "$ref": "CertificationExamStatus" } }, - "eventCategory": { + "type": { "enumDescriptions": [ "Unchosen.", - "Google Partner Search category.", - "Google Partner sign-up flow category.", - "Google Partner portal category.", - "Google Partner portal my-profile category.", - "Google Partner portal certifications category.", - "Google Partner portal community category.", - "Google Partner portal insights category.", - "Google Partner portal clients category.", - "Google Partner portal public user profile category.", - "Google Partner panel category.", - "Google Partner portal last admin dialog category.", - "Google Partner client category.", - "Google Partner portal company profile category.", - "External links category.", - "Google Partner landing category." + "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": [ - "EVENT_CATEGORY_UNSPECIFIED", - "GOOGLE_PARTNER_SEARCH", - "GOOGLE_PARTNER_SIGNUP_FLOW", - "GOOGLE_PARTNER_PORTAL", - "GOOGLE_PARTNER_PORTAL_MY_PROFILE", - "GOOGLE_PARTNER_PORTAL_CERTIFICATIONS", - "GOOGLE_PARTNER_PORTAL_COMMUNITY", - "GOOGLE_PARTNER_PORTAL_INSIGHTS", - "GOOGLE_PARTNER_PORTAL_CLIENTS", - "GOOGLE_PARTNER_PUBLIC_USER_PROFILE", - "GOOGLE_PARTNER_PANEL", - "GOOGLE_PARTNER_PORTAL_LAST_ADMIN_DIALOG", - "GOOGLE_PARTNER_CLIENT", - "GOOGLE_PARTNER_PORTAL_COMPANY_PROFILE", - "EXTERNAL_LINKS", - "GOOGLE_PARTNER_LANDING" + "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 category the action belongs to.", + "description": "The type of the certification.", + "type": "string" + } + } + }, + "LocalizedCompanyInfo": { + "description": "The localized company information.", + "type": "object", + "properties": { + "overview": { + "description": "Localized brief description that the company uses to advertise themselves.", + "type": "string" + }, + "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" + }, + "countryCodes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of country codes for the localized company info." } }, - "id": "LogUserEventRequest", - "description": "Request message for\nLogUserEvent.", - "type": "object" + "id": "LocalizedCompanyInfo" }, - "AnalyticsDataPoint": { - "description": "Details of the analytics events for a `Company` within a single day.", + "LogUserEventResponse": { + "description": "Response message for\nLogUserEvent.", "type": "object", "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." + } + }, + "id": "LogUserEventResponse" + }, + "ListOffersHistoryResponse": { + "description": "Response for ListOfferHistory.", + "type": "object", + "properties": { + "nextPageToken": { + "description": "Supply this token in a ListOffersHistoryRequest to retrieve the next page.", + "type": "string" + }, + "responseMetadata": { + "description": "Current response metadata.", + "$ref": "ResponseMetadata" + }, + "canShowEntireCompany": { + "type": "boolean", + "description": "True if the user has the option to show entire company history." + }, + "totalResults": { + "description": "Number of results across all pages.", "format": "int32", "type": "integer" }, - "eventLocations": { - "description": "Location information of where these events occurred.", + "showingEntireCompany": { + "description": "True if this response is showing entire company history.", + "type": "boolean" + }, + "offers": { + "description": "Historical offers meeting request.", "type": "array", "items": { - "$ref": "LatLng" + "$ref": "HistoricalOffer" } } }, - "id": "AnalyticsDataPoint" + "id": "ListOffersHistoryResponse" }, - "Analytics": { - "description": "Analytics data for a `Company` within a single day.", + "LogMessageResponse": { + "description": "Response message for\nLogClientMessage.", "type": "object", "properties": { - "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": { - "description": "Instances of users seeing the `Company` in Google Partners Search results\non the specified date.", - "$ref": "AnalyticsDataPoint" + "responseMetadata": { + "description": "Current response metadata.", + "$ref": "ResponseMetadata" } }, - "id": "Analytics" + "id": "LogMessageResponse" }, - "AdWordsManagerAccountInfo": { + "SpecializationStatus": { "type": "object", "properties": { - "id": { - "description": "The AdWords Manager Account id.", - "format": "int64", + "badgeSpecialization": { + "enumDescriptions": [ + "Unknown specialization", + "AdWords Search specialization", + "AdWords Display specialization", + "AdWords Mobile specialization", + "AdWords Video specialization", + "AdWords Shopping specialization" + ], + "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" }, - "customerName": { - "type": "string", - "description": "Name of the customer this account represents." + "badgeSpecializationState": { + "enumDescriptions": [ + "Unknown state", + "Specialization passed", + "Specialization not passed", + "Specialization in grace" + ], + "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" } }, - "id": "AdWordsManagerAccountInfo", - "description": "Information about a particular AdWords Manager Account.\nRead more at https://support.google.com/adwords/answer/6139186" + "id": "SpecializationStatus", + "description": "Agency specialization status" }, - "PublicProfile": { - "description": "Basic information from a public profile.", + "Certification": { + "description": "A user's information on a specific certification.", "type": "object", "properties": { - "displayName": { - "description": "The display name of the public profile.", + "lastAchieved": { + "description": "The date the user last achieved certification.", + "format": "google-datetime", "type": "string" }, - "displayImageUrl": { - "description": "The URL to the main display image of the public profile. Being deprecated.", + "achieved": { + "description": "Whether this certification has been achieved.", + "type": "boolean" + }, + "expiration": { + "description": "Date this certification is due to expire.", + "format": "google-datetime", + "type": "string" + }, + "warning": { + "type": "boolean", + "description": "Whether this certification is in the state of warning." + }, + "certificationType": { + "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 certification, the area of expertise.", "type": "string" + } + }, + "id": "Certification" + }, + "User": { + "description": "A resource representing a user of the Partners platform.", + "type": "object", + "properties": { + "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 which can be used to retrieve more details about the public profile.", + "description": "The ID of the user.", "type": "string" }, - "url": { - "description": "The URL of the public profile.", + "publicProfile": { + "$ref": "PublicProfile", + "description": "Information about a user's external public profile outside Google Partners." + }, + "companyVerificationEmail": { + "description": "The email address used by the user used for company verification.\n@OutputOnly", "type": "string" }, - "profileImage": { - "description": "The URL to the main profile image of the public profile.", + "company": { + "$ref": "CompanyRelation", + "description": "The company that the user is associated with.\nIf not present, the user is not associated with any company." + }, + "lastAccessTime": { + "description": "The most recent time the user interacted with the Partners site.\n@OutputOnly", + "format": "google-datetime", + "type": "string" + }, + "primaryEmails": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of emails the user has access to/can select as primary.\n@OutputOnly" + }, + "certificationStatus": { + "description": "The list of achieved certifications. These are calculated based on exam\nresults and other requirements.\n@OutputOnly", + "type": "array", + "items": { + "$ref": "Certification" + } + }, + "afaInfoShared": { + "description": "Whether or not the user has opted to share their Academy for Ads info with\nGoogle Partners.", + "type": "boolean" + }, + "profile": { + "description": "The profile information of a Partners user, contains all the directly\neditable user information.", + "$ref": "UserProfile" + }, + "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" + } + }, + "internalId": { + "description": "The internal user ID.\nOnly available for a whitelisted set of api clients.", + "type": "string" + } + }, + "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": { + "$ref": "ResponseMetadata", + "description": "Current response metadata." + }, + "analyticsSummary": { + "$ref": "AnalyticsSummary", + "description": "Aggregated information across the response's\nanalytics." } }, - "id": "PublicProfile" - }, - "ResponseMetadata": { - "description": "Common data that is in each API response.", - "type": "object", - "properties": { - "debugInfo": { - "$ref": "DebugInfo", - "description": "Debug information about this request." + "id": "ListAnalyticsResponse" + } + }, + "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": "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": "20180502", + "title": "Google Partners API", + "ownerName": "Google", + "discoveryVersion": "v1", + "version_module": true, + "resources": { + "companies": { + "methods": { + "get": { + "description": "Gets a company.", + "httpMethod": "GET", + "parameterOrder": [ + "companyId" + ], + "response": { + "$ref": "GetCompanyResponse" + }, + "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.userOverrides.ipAddress": { + "type": "string", + "location": "query", + "description": "IP address to use instead of the user's geo-located IP address." + }, + "companyId": { + "location": "path", + "description": "The ID of the company to retrieve.", + "required": true, + "type": "string" + }, + "currencyCode": { + "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", + "location": "query" + }, + "requestMetadata.experimentIds": { + "location": "query", + "description": "Experiment IDs the current request belongs to.", + "type": "string", + "repeated": true + }, + "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": { + "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", + "location": "query" + }, + "requestMetadata.partnersSessionId": { + "description": "Google Partners session ID.", + "type": "string", + "location": "query" + }, + "requestMetadata.userOverrides.userId": { + "description": "Logged-in user ID to impersonate instead of the user's ID.", + "type": "string", + "location": "query" + }, + "view": { + "location": "query", + "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" + }, + "requestMetadata.locale": { + "location": "query", + "description": "Locale to use for the current request.", + "type": "string" + }, + "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.", + "type": "string", + "location": "query" + } + }, + "flatPath": "v2/companies/{companyId}", + "id": "partners.companies.get", + "path": "v2/companies/{companyId}" + }, + "list": { + "response": { + "$ref": "ListCompaniesResponse" + }, + "parameterOrder": [], + "httpMethod": "GET", + "parameters": { + "specializations": { + "repeated": true, + "location": "query", + "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" + }, + "maxMonthlyBudget.currencyCode": { + "location": "query", + "description": "The 3-letter currency code defined in ISO 4217.", + "type": "string" + }, + "minMonthlyBudget.currencyCode": { + "description": "The 3-letter currency code defined in ISO 4217.", + "type": "string", + "location": "query" + }, + "requestMetadata.userOverrides.userId": { + "type": "string", + "location": "query", + "description": "Logged-in user ID to impersonate instead of the user's ID." + }, + "view": { + "location": "query", + "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`.", + "type": "string" + }, + "address": { + "location": "query", + "description": "The address to use when searching for companies.\nIf not given, the geo-located address of the request is used.", + "type": "string" + }, + "requestMetadata.locale": { + "description": "Locale to use for the current request.", + "type": "string", + "location": "query" + }, + "minMonthlyBudget.units": { + "location": "query", + "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.", + "format": "int64", + "type": "string" + }, + "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": { + "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" + ], + "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" + }, + "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": { + "location": "query", + "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.", + "format": "int64", + "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" + }, + "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", + "type": "integer", + "location": "query" + }, + "requestMetadata.partnersSessionId": { + "description": "Google Partners session ID.", + "type": "string", + "location": "query" + }, + "companyName": { + "location": "query", + "description": "Company name to search for.", + "type": "string" + }, + "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.", + "type": "string", + "location": "query" + }, + "industries": { + "location": "query", + "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" + ], + "description": "List of industries the company can help with.", + "type": "string", + "repeated": true + }, + "websiteUrl": { + "description": "Website URL that will help to find a better matched company.\n.", + "type": "string", + "location": "query" + }, + "gpsMotivations": { + "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.", + "type": "string", + "repeated": true, + "location": "query" + }, + "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", + "repeated": true, + "location": "query" + }, + "pageSize": { + "location": "query", + "description": "Requested page size. Server may return fewer companies than requested.\nIf unspecified, server picks an appropriate default.", + "format": "int32", + "type": "integer" + }, + "requestMetadata.userOverrides.ipAddress": { + "type": "string", + "location": "query", + "description": "IP address to use instead of the user's geo-located IP address." + }, + "requestMetadata.experimentIds": { + "description": "Experiment IDs the current request belongs to.", + "type": "string", + "repeated": true, + "location": "query" + }, + "orderBy": { + "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" + } + }, + "flatPath": "v2/companies", + "path": "v2/companies", + "id": "partners.companies.list", + "description": "Lists companies." } }, - "id": "ResponseMetadata" - }, - "RecaptchaChallenge": { - "description": "\u003ca href=\"https://www.google.com/recaptcha/\"\u003ereCaptcha\u003c/a\u003e challenge info.", - "type": "object", - "properties": { - "response": { - "description": "The response to the reCaptcha challenge.", - "type": "string" - }, - "id": { - "description": "The ID of the reCaptcha challenge.", - "type": "string" + "resources": { + "leads": { + "methods": { + "create": { + "flatPath": "v2/companies/{companyId}/leads", + "path": "v2/companies/{companyId}/leads", + "id": "partners.companies.leads.create", + "description": "Creates an advertiser lead for the given company ID.", + "request": { + "$ref": "CreateLeadRequest" + }, + "response": { + "$ref": "CreateLeadResponse" + }, + "parameterOrder": [ + "companyId" + ], + "httpMethod": "POST", + "parameters": { + "companyId": { + "required": true, + "type": "string", + "location": "path", + "description": "The ID of the company to contact." + } + } + } + } } - }, - "id": "RecaptchaChallenge" + } }, - "AvailableOffer": { - "id": "AvailableOffer", - "description": "Available Offers to be distributed.", - "type": "object", - "properties": { - "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" - }, - "id": { - "description": "ID of this offer.", - "format": "int64", - "type": "string" - }, - "qualifiedCustomersComplete": { - "description": "Whether or not the list of qualified customers is definitely complete.", - "type": "boolean" - }, - "countryOfferInfos": { - "description": "Offer info by country.", - "type": "array", - "items": { - "$ref": "CountryOfferInfo" - } + "users": { + "methods": { + "updateProfile": { + "id": "partners.users.updateProfile", + "path": "v2/users/profile", + "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.", + "request": { + "$ref": "UserProfile" + }, + "httpMethod": "PATCH", + "parameterOrder": [], + "response": { + "$ref": "UserProfile" + }, + "parameters": { + "requestMetadata.partnersSessionId": { + "description": "Google Partners session ID.", + "type": "string", + "location": "query" + }, + "requestMetadata.userOverrides.userId": { + "description": "Logged-in user ID to impersonate instead of the user's 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": { + "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 + }, + "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/profile" }, - "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" + "createCompanyRelation": { + "flatPath": "v2/users/{userId}/companyRelation", + "path": "v2/users/{userId}/companyRelation", + "id": "partners.users.createCompanyRelation", + "description": "Creates a user's company relation. Affiliates the user to a company.", + "request": { + "$ref": "CompanyRelation" + }, + "response": { + "$ref": "CompanyRelation" + }, + "parameterOrder": [ + "userId" ], - "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" + "httpMethod": "PUT", + "parameters": { + "requestMetadata.experimentIds": { + "description": "Experiment IDs the current request belongs to.", + "type": "string", + "repeated": true, + "location": "query" + }, + "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": { + "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", + "location": "path" + }, + "requestMetadata.partnersSessionId": { + "location": "query", + "description": "Google Partners session ID.", + "type": "string" + }, + "requestMetadata.userOverrides.userId": { + "type": "string", + "location": "query", + "description": "Logged-in user ID to impersonate instead of the user's ID." + }, + "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": { + "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" + } } }, - "terms": { - "type": "string", - "description": "Terms of the offer." - }, - "showSpecialOfferCopy": { - "description": "Should special text be shown on the offers page.", - "type": "boolean" - }, - "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" - } - } - }, - "LatLng": { - "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", - "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." - }, - "Money": { - "id": "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": { - "description": "The 3-letter currency code defined in ISO 4217.", - "type": "string" + "deleteCompanyRelation": { + "flatPath": "v2/users/{userId}/companyRelation", + "path": "v2/users/{userId}/companyRelation", + "id": "partners.users.deleteCompanyRelation", + "description": "Deletes a user's company relation. Unaffiliaites the user from a company.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "userId" + ], + "httpMethod": "DELETE", + "parameters": { + "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": { + "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", + "location": "path" + }, + "requestMetadata.partnersSessionId": { + "description": "Google Partners session ID.", + "type": "string", + "location": "query" + }, + "requestMetadata.userOverrides.userId": { + "type": "string", + "location": "query", + "description": "Logged-in user ID to impersonate instead of the user's ID." + }, + "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" + } + } }, - "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" + "get": { + "id": "partners.users.get", + "path": "v2/users/{userId}", + "description": "Gets a user.", + "httpMethod": "GET", + "parameterOrder": [ + "userId" + ], + "response": { + "$ref": "User" + }, + "parameters": { + "requestMetadata.experimentIds": { + "repeated": true, + "location": "query", + "description": "Experiment IDs the current request belongs to.", + "type": "string" + }, + "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": { + "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.partnersSessionId": { + "location": "query", + "description": "Google Partners session ID.", + "type": "string" + }, + "userView": { + "description": "Specifies what parts of the user information to return.", + "type": "string", + "location": "query", + "enum": [ + "BASIC", + "PROFILE", + "PUBLIC_PROFILE" + ] + }, + "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" + } + }, + "flatPath": "v2/users/{userId}" } } }, - "AnalyticsSummary": { - "description": "Analytics aggregated data for a `Company` for a given date range.", - "type": "object", - "properties": { - "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" - }, - "contactsCount": { - "description": "Aggregated number of times users contacted the `Company`\nfor given date range.", - "format": "int32", - "type": "integer" - } - }, - "id": "AnalyticsSummary" - }, - "LogMessageRequest": { - "description": "Request message for\nLogClientMessage.", - "type": "object", - "properties": { - "requestMetadata": { - "$ref": "RequestMetadata", - "description": "Current request metadata." - }, - "level": { - "type": "string", - "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." - }, - "details": { - "description": "Details about the client message.", - "type": "string" - }, - "clientInfo": { - "description": "Map of client info, such as URL, browser navigator, browser platform, etc.", - "type": "object", - "additionalProperties": { - "type": "string" + "userEvents": { + "methods": { + "log": { + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "LogUserEventResponse" + }, + "parameters": {}, + "flatPath": "v2/userEvents:log", + "id": "partners.userEvents.log", + "path": "v2/userEvents:log", + "description": "Logs a user event.", + "request": { + "$ref": "LogUserEventRequest" } } - }, - "id": "LogMessageRequest" + } }, - "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", - "properties": { - "id": { - "description": "ID of the lead.", - "type": "string" - }, - "comments": { - "description": "Comments lead source gave.", - "type": "string" - }, - "adwordsCustomerId": { - "description": "The AdWords Customer ID of the lead.", - "format": "int64", - "type": "string" - }, - "phoneNumber": { - "description": "Phone number of lead source.", - "type": "string" - }, - "createTime": { - "description": "Timestamp of when this lead was created.", - "format": "google-datetime", - "type": "string" - }, - "marketingOptIn": { - "description": "Whether or not the lead signed up for marketing emails", - "type": "boolean" - }, - "type": { - "enum": [ - "LEAD_TYPE_UNSPECIFIED", - "LT_GPS" - ], - "description": "Type of lead.", - "type": "string", - "enumDescriptions": [ - "Unchosen.", - "Google Partner Search." - ] - }, - "minMonthlyBudget": { - "$ref": "Money", - "description": "The minimum monthly budget lead source is willing to spend." - }, - "givenName": { - "type": "string", - "description": "First name of lead source." - }, - "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": { - "description": "List of reasons for using Google Partner Search and creating a lead.", - "type": "array", - "items": { - "type": "string", - "enum": [ - "GPS_MOTIVATION_UNSPECIFIED", - "GPSM_HELP_WITH_ADVERTISING", - "GPSM_HELP_WITH_WEBSITE", - "GPSM_NO_WEBSITE" - ] + "clientMessages": { + "methods": { + "log": { + "response": { + "$ref": "LogMessageResponse" }, - "enumDescriptions": [ - "Unchosen.", - "Advertiser needs help with their advertising.", - "Advertiser needs help with their website.", - "Advertiser does not have a website." - ] - }, - "state": { - "enum": [ - "LEAD_STATE_UNSPECIFIED", - "LEAD", - "CONTACTED", - "CLIENT", - "OTHER" - ], - "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." - ] - }, - "email": { - "description": "Email address of lead source.", - "type": "string" - }, - "familyName": { - "description": "Last name of lead source.", - "type": "string" + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, + "flatPath": "v2/clientMessages:log", + "path": "v2/clientMessages:log", + "id": "partners.clientMessages.log", + "request": { + "$ref": "LogMessageRequest" + }, + "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." } - }, - "id": "Lead" + } }, - "DebugInfo": { - "properties": { - "serverInfo": { - "description": "Info about the server that serviced this request.", - "type": "string" - }, - "serverTraceInfo": { - "type": "string", - "description": "Server-side debug stack trace." - }, - "serviceUrl": { - "description": "URL of the service that handled this request.", - "type": "string" + "leads": { + "methods": { + "list": { + "httpMethod": "GET", + "response": { + "$ref": "ListLeadsResponse" + }, + "parameterOrder": [], + "parameters": { + "requestMetadata.experimentIds": { + "repeated": true, + "location": "query", + "description": "Experiment IDs the current request belongs to.", + "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" + }, + "orderBy": { + "location": "query", + "description": "How to order Leads. Currently, only `create_time`\nand `create_time desc` are supported", + "type": "string" + }, + "requestMetadata.partnersSessionId": { + "location": "query", + "description": "Google Partners session ID.", + "type": "string" + }, + "requestMetadata.userOverrides.userId": { + "location": "query", + "description": "Logged-in user ID to impersonate instead of the user's ID.", + "type": "string" + }, + "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.", + "type": "string", + "location": "query" + }, + "pageSize": { + "location": "query", + "description": "Requested page size. Server may return fewer leads than requested.\nIf unspecified, server picks an appropriate default.", + "format": "int32", + "type": "integer" + }, + "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" + } + }, + "flatPath": "v2/leads", + "id": "partners.leads.list", + "path": "v2/leads", + "description": "Lists advertiser leads for a user's associated company.\nShould only be called within the context of an authorized logged in user." } - }, - "id": "DebugInfo", - "description": "Debug information about this request.", - "type": "object" + } }, - "ListUserStatesResponse": { - "id": "ListUserStatesResponse", - "description": "Response message for\nListUserStates.", - "type": "object", - "properties": { - "userStates": { - "description": "User's states.", - "type": "array", - "items": { - "type": "string", - "enum": [ - "USER_STATE_UNSPECIFIED", - "US_REQUIRES_RECAPTCHA_FOR_GPS_CONTACT" - ] + "offers": { + "methods": { + "list": { + "description": "Lists the Offers available for the current user", + "response": { + "$ref": "ListOffersResponse" }, - "enumDescriptions": [ - "Unchosen.", - "User must pass \u003ca href=\"https://www.google.com/recaptcha/\"\u003ereCaptcha\u003c/a\u003e to\ncontact a Partner via Google Partner Search." - ] - }, - "responseMetadata": { - "description": "Current response metadata.", - "$ref": "ResponseMetadata" + "parameterOrder": [], + "httpMethod": "GET", + "parameters": { + "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" + }, + "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": { + "type": "string", + "location": "query", + "description": "Locale to use for the current request." + } + }, + "flatPath": "v2/offers", + "path": "v2/offers", + "id": "partners.offers.list" } - } - }, - "CompanyRelation": { - "type": "object", - "properties": { - "logoUrl": { - "description": "A URL to a profile photo, e.g. a G+ profile photo.", - "type": "string" - }, - "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": { - "type": "boolean", - "description": "The flag that indicates if the company is pending verification." - }, - "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." - }, - "name": { - "description": "The name (in the company's primary language) for the company.", - "type": "string" - }, - "managerAccount": { - "description": "The AdWords manager account # associated this company.", - "format": "int64", - "type": "string" - }, - "segment": { - "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." - ], - "description": "The segment the company is classified as.", - "type": "array", - "items": { - "type": "string", - "enum": [ - "COMPANY_SEGMENT_UNKNOWN", - "COMPANY_SEGMENT_NAL", - "COMPANY_SEGMENT_PSP", - "COMPANY_SEGMENT_PPSP" - ] - } - }, - "internalCompanyId": { - "type": "string", - "description": "The internal company ID.\nOnly available for a whitelisted set of api clients." - }, - "specializationStatus": { - "description": "The list of Google Partners specialization statuses for the company.", - "type": "array", - "items": { - "$ref": "SpecializationStatus" + }, + "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.partnersSessionId": { + "location": "query", + "description": "Google Partners session ID.", + "type": "string" + }, + "requestMetadata.userOverrides.userId": { + "location": "query", + "description": "Logged-in user ID to impersonate instead of the user's ID.", + "type": "string" + }, + "pageToken": { + "location": "query", + "description": "Token to retrieve a specific page.", + "type": "string" + }, + "pageSize": { + "location": "query", + "description": "Maximum number of rows to return per page.", + "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.", + "type": "string" + }, + "requestMetadata.userOverrides.ipAddress": { + "location": "query", + "description": "IP address to use instead of the user's geo-located IP address.", + "type": "string" + }, + "entireCompany": { + "location": "query", + "description": "if true, show history for the entire company. Requires user to be admin.", + "type": "boolean" + }, + "requestMetadata.experimentIds": { + "location": "query", + "description": "Experiment IDs the current request belongs to.", + "type": "string", + "repeated": true + }, + "orderBy": { + "location": "query", + "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" + }, + "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" + } + } + } } - }, - "badgeTier": { - "enum": [ - "BADGE_TIER_NONE", - "BADGE_TIER_REGULAR", - "BADGE_TIER_PREMIER" - ], - "description": "Whether the company is a Partner.", - "type": "string", - "enumDescriptions": [ - "Tier badge is not set.", - "Agency has regular partner badge.", - "Agency has premier badge." - ] - }, - "phoneNumber": { - "type": "string", - "description": "The phone number for the company's primary address." - }, - "website": { - "description": "The website URL for this company.", - "type": "string" - }, - "primaryCountryCode": { - "description": "The primary country code of the company.", - "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" } - }, - "id": "CompanyRelation", - "description": "A CompanyRelation resource representing information about a user's\naffiliation and standing with a company in Partners." + } }, - "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, or 0 if specifying a date without a\nmonth.", - "format": "int32", - "type": "integer" + "analytics": { + "methods": { + "list": { + "path": "v2/analytics", + "id": "partners.analytics.list", + "description": "Lists analytics data for a user's associated company.\nShould only be called within the context of an authorized logged in user.", + "response": { + "$ref": "ListAnalyticsResponse" + }, + "parameterOrder": [], + "httpMethod": "GET", + "parameters": { + "requestMetadata.userOverrides.userId": { + "type": "string", + "location": "query", + "description": "Logged-in user ID to impersonate instead of the user's ID." + }, + "requestMetadata.partnersSessionId": { + "location": "query", + "description": "Google Partners session ID.", + "type": "string" + }, + "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.", + "type": "string", + "location": "query" + }, + "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", + "type": "integer", + "location": "query" + }, + "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": { + "repeated": true, + "location": "query", + "description": "Experiment IDs the current request belongs to.", + "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" + } + }, + "flatPath": "v2/analytics" } - }, - "id": "Date" + } }, - "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" + "userStates": { + "methods": { + "list": { + "description": "Lists states for current user.", + "httpMethod": "GET", + "parameterOrder": [], + "response": { + "$ref": "ListUserStatesResponse" + }, + "parameters": { + "requestMetadata.userOverrides.ipAddress": { + "type": "string", + "location": "query", + "description": "IP address to use instead of the user's geo-located IP address." + }, + "requestMetadata.experimentIds": { + "location": "query", + "description": "Experiment IDs the current request belongs to.", + "type": "string", + "repeated": true + }, + "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": { + "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": { + "description": "Locale to use for the current request.", + "type": "string", + "location": "query" + } + }, + "flatPath": "v2/userStates", + "id": "partners.userStates.list", + "path": "v2/userStates" + } + } }, - "TrafficSource": { - "description": "Source of traffic for the current request.", - "type": "object", - "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" + "v2": { + "methods": { + "updateLeads": { + "httpMethod": "PATCH", + "parameterOrder": [], + "response": { + "$ref": "Lead" + }, + "parameters": { + "requestMetadata.partnersSessionId": { + "type": "string", + "location": "query", + "description": "Google Partners session ID." + }, + "requestMetadata.userOverrides.userId": { + "description": "Logged-in user ID to impersonate instead of the user's 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" + }, + "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.\nOnly `state` and `adwords_customer_id` are currently supported.", + "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" + } + }, + "flatPath": "v2/leads", + "id": "partners.updateLeads", + "path": "v2/leads", + "description": "Updates the specified lead.", + "request": { + "$ref": "Lead" + } }, - "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" + "updateCompanies": { + "parameters": { + "requestMetadata.userOverrides.userId": { + "description": "Logged-in user ID to impersonate instead of the user's ID.", + "type": "string", + "location": "query" + }, + "requestMetadata.partnersSessionId": { + "type": "string", + "location": "query", + "description": "Google Partners session ID." + }, + "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.", + "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": { + "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" + } + }, + "flatPath": "v2/companies", + "path": "v2/companies", + "id": "partners.updateCompanies", + "description": "Update company.\nShould only be called within the context of an authorized logged in user.", + "request": { + "$ref": "Company" + }, + "response": { + "$ref": "Company" + }, + "parameterOrder": [], + "httpMethod": "PATCH" + }, + "getPartnersstatus": { + "response": { + "$ref": "GetPartnersStatusResponse" + }, + "parameterOrder": [], + "httpMethod": "GET", + "parameters": { + "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": { + "description": "Google Partners session ID.", + "type": "string", + "location": "query" + }, + "requestMetadata.userOverrides.userId": { + "description": "Logged-in user ID to impersonate instead of the user's ID.", + "type": "string", + "location": "query" + }, + "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": { + "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": { + "location": "query", + "description": "Experiment IDs the current request belongs to.", + "type": "string", + "repeated": true + } + }, + "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." } - }, - "id": "TrafficSource" + } } - }, - "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": "v2", - "baseUrl": "https://partners.googleapis.com/", - "canonicalName": "Partners" + } } diff --git a/DiscoveryJson/people_v1.json b/DiscoveryJson/people_v1.json index 3257aeb10a..5cc8ecb363 100644 --- a/DiscoveryJson/people_v1.json +++ b/DiscoveryJson/people_v1.json @@ -1,556 +1,691 @@ { + "version": "v1", + "baseUrl": "https://people.googleapis.com/", + "kind": "discovery#restDescription", + "description": "Provides access to information about profiles and contacts.", + "servicePath": "", "basePath": "", - "revision": "20180507", - "documentationLink": "https://developers.google.com/people/", "id": "people:v1", + "documentationLink": "https://developers.google.com/people/", + "revision": "20180508", "discoveryVersion": "v1", "version_module": true, "schemas": { - "Organization": { - "description": "A person's past or current organization. Overlapping date ranges are\npermitted.", + "ModifyContactGroupMembersResponse": { + "description": "The response to a modify contact group members request.", "type": "object", "properties": { - "metadata": { - "description": "Metadata about the organization.", - "$ref": "FieldMetadata" - }, - "title": { - "description": "The person's job title at the organization.", - "type": "string" - }, - "location": { - "description": "The location of the organization office the person works at.", - "type": "string" - }, - "current": { - "description": "True if the organization is the person's current organization;\nfalse if the organization is a past organization.", - "type": "boolean" - }, - "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" - }, - "startDate": { - "$ref": "Date", - "description": "The start date when the person joined the organization." - }, - "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" - }, - "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" - }, - "phoneticName": { - "description": "The phonetic name of the organization.", - "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" + "notFoundResourceNames": { + "description": "The contact people resource names that were not found.", + "type": "array", + "items": { + "type": "string" + } } }, - "id": "Organization" + "id": "ModifyContactGroupMembersResponse" }, - "AgeRangeType": { - "description": "A person's age range.", + "ProfileMetadata": { + "description": "The read-only metadata about a profile.", "type": "object", "properties": { - "ageRange": { + "objectType": { "enumDescriptions": [ "Unspecified.", - "Younger than eighteen.", - "Between eighteen and twenty.", - "Twenty-one and older." + "Person.", + "[Google+ Page.](http://www.google.com/+/brands/)" ], "enum": [ - "AGE_RANGE_UNSPECIFIED", - "LESS_THAN_EIGHTEEN", - "EIGHTEEN_TO_TWENTY", - "TWENTY_ONE_OR_OLDER" + "OBJECT_TYPE_UNSPECIFIED", + "PERSON", + "PAGE" ], - "description": "The age range.", + "description": "The profile object type.", + "type": "string" + }, + "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": { + "enum": [ + "USER_TYPE_UNKNOWN", + "GOOGLE_USER", + "GPLUS_USER", + "GOOGLE_APPS_USER" + ], + "type": "string" + } + } + }, + "id": "ProfileMetadata" + }, + "Gender": { + "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 age range." + "description": "Metadata about the gender." } }, - "id": "AgeRangeType" + "id": "Gender", + "description": "A person's gender.", + "type": "object" }, - "ListContactGroupsResponse": { - "description": "The response to a list contact groups request.", + "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", "properties": { - "contactGroups": { - "description": "The list of contact groups. Members of the contact groups are not\npopulated.", - "type": "array", - "items": { - "$ref": "ContactGroup" - } - }, - "nextPageToken": { - "description": "The token that can be used to retrieve the next page of results.", - "type": "string" + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the cover photo." }, - "totalItems": { - "description": "The total number of items in the list without pagination.", - "format": "int32", - "type": "integer" + "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" }, - "nextSyncToken": { - "description": "The token that can be used to retrieve changes since the last request.", + "url": { + "description": "The URL of the cover photo.", "type": "string" } }, - "id": "ListContactGroupsResponse" + "id": "CoverPhoto" }, - "PersonResponse": { - "description": "The response for a single person", + "Interest": { + "description": "One of the person's interests.", "type": "object", "properties": { - "person": { - "$ref": "Person", - "description": "The 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" + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the interest." }, - "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.", + "value": { + "description": "The interest; for example, `stargazing`.", "type": "string" } }, - "id": "PersonResponse" + "id": "Interest" }, - "Relation": { - "description": "A person's relation to another person.", + "Nickname": { + "description": "A person's nickname.", "type": "object", "properties": { - "person": { - "description": "The name of the other person this relation refers to.", + "metadata": { + "description": "Metadata about the nickname.", + "$ref": "FieldMetadata" + }, + "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" }, - "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.", + "value": { + "description": "The nickname.", + "type": "string" + } + }, + "id": "Nickname" + }, + "EmailAddress": { + "description": "A person's email address.", + "type": "object", + "properties": { + "displayName": { + "description": "The display name of the email.", "type": "string" }, "metadata": { - "$ref": "FieldMetadata", - "description": "Metadata about the relation." + "description": "Metadata about the email address.", + "$ref": "FieldMetadata" }, "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`", + "description": "The type of the email 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" + }, + "value": { + "description": "The email address.", + "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" } }, - "id": "Relation" + "id": "EmailAddress" }, - "Occupation": { - "description": "A person's occupation.", - "type": "object", + "Skill": { "properties": { "metadata": { "$ref": "FieldMetadata", - "description": "Metadata about the occupation." + "description": "Metadata about the skill." }, "value": { - "description": "The occupation; for example, `carpenter`.", + "description": "The skill; for example, `underwater basket weaving`.", "type": "string" } }, - "id": "Occupation" + "id": "Skill", + "description": "A skill that the person has.", + "type": "object" }, - "ContactGroup": { - "description": "A contact group.", + "Tagline": { + "description": "A read-only brief one-line description of the person.", "type": "object", "properties": { - "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" + "metadata": { + "description": "Metadata about the tagline.", + "$ref": "FieldMetadata" }, - "etag": { - "description": "The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the\nresource. Used for web cache validation.", + "value": { + "description": "The tagline.", "type": "string" + } + }, + "id": "Tagline" + }, + "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" }, - "groupType": { - "description": "The read-only contact group type.", - "type": "string", - "enumDescriptions": [ - "Unspecified.", - "User defined contact group.", - "System defined contact group." - ], - "enum": [ - "GROUP_TYPE_UNSPECIFIED", - "USER_CONTACT_GROUP", - "SYSTEM_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" - }, - "name": { - "description": "The contact group name set by the group owner or a system provided name\nfor system groups.", - "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" - } - }, - "memberCount": { - "description": "The total number of contacts in the group irrespective of max members in\nspecified in the request.", + "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" }, - "metadata": { - "$ref": "ContactGroupMetadata", - "description": "Metadata about the contact group." + "month": { + "description": "Month of year. Must be from 1 to 12, or 0 if specifying a date without a\nmonth.", + "format": "int32", + "type": "integer" } }, - "id": "ContactGroup" + "id": "Date" }, - "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.", + "Name": { + "description": "A person's name. If the name is a mononym, the family name is empty.", "type": "object", "properties": { - "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" - } + "honorificPrefix": { + "description": "The honorific prefixes, such as `Mrs.` or `Dr.`", + "type": "string" }, - "coverPhotos": { - "description": "The person's read-only cover photos.", - "type": "array", - "items": { - "$ref": "CoverPhoto" - } + "phoneticHonorificSuffix": { + "description": "The honorific suffixes spelled as they sound.", + "type": "string" }, - "imClients": { - "description": "The person's instant messaging clients.", - "type": "array", - "items": { - "$ref": "ImClient" - } + "middleName": { + "description": "The middle name(s).", + "type": "string" }, - "birthdays": { - "description": "The person's birthdays.", - "type": "array", - "items": { - "$ref": "Birthday" - } + "givenName": { + "description": "The given name.", + "type": "string" }, - "userDefined": { - "description": "The person's user defined data.", - "type": "array", - "items": { - "$ref": "UserDefined" - } + "phoneticHonorificPrefix": { + "description": "The honorific prefixes spelled as they sound.", + "type": "string" }, - "locales": { - "description": "The person's locale preferences.", - "type": "array", - "items": { - "$ref": "Locale" - } + "phoneticGivenName": { + "description": "The given name spelled as it sounds.", + "type": "string" }, - "relationshipInterests": { - "description": "The person's read-only relationship interests.", - "type": "array", - "items": { - "$ref": "RelationshipInterest" - } + "phoneticFamilyName": { + "description": "The family name spelled as it sounds.", + "type": "string" }, - "urls": { - "description": "The person's associated URLs.", - "type": "array", - "items": { - "$ref": "Url" - } + "familyName": { + "description": "The family name.", + "type": "string" }, - "nicknames": { - "description": "The person's nicknames.", - "type": "array", - "items": { - "$ref": "Nickname" - } + "phoneticMiddleName": { + "description": "The middle name(s) spelled as they sound.", + "type": "string" }, - "names": { - "description": "The person's names.", - "type": "array", - "items": { - "$ref": "Name" - } + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the name." }, - "relations": { - "description": "The person's relations.", - "type": "array", - "items": { - "$ref": "Relation" - } + "phoneticFullName": { + "description": "The full name spelled as it sounds.", + "type": "string" }, - "occupations": { - "description": "The person's occupations.", - "type": "array", - "items": { - "$ref": "Occupation" - } + "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" }, - "emailAddresses": { - "description": "The person's email addresses.", - "type": "array", - "items": { - "$ref": "EmailAddress" - } + "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" }, - "organizations": { - "description": "The person's past or current organizations.", - "type": "array", - "items": { - "$ref": "Organization" - } + "honorificSuffix": { + "description": "The honorific suffixes, such as `Jr.`", + "type": "string" + } + }, + "id": "Name" + }, + "Locale": { + "properties": { + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the locale." }, - "etag": { - "description": "The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the\nresource. Used for web cache validation.", + "value": { + "description": "The well-formed [IETF BCP 47](https://tools.ietf.org/html/bcp47)\nlanguage tag representing the locale.", + "type": "string" + } + }, + "id": "Locale", + "description": "A person's locale preference.", + "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" + }, + "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" }, - "braggingRights": { - "description": "The person's bragging rights.", - "type": "array", - "items": { - "$ref": "BraggingRights" - } + "key": { + "description": "The end user specified key of the user defined data.", + "type": "string" }, "metadata": { - "description": "Read-only metadata about the person.", - "$ref": "PersonMetadata" + "$ref": "FieldMetadata", + "description": "Metadata about the user defined data." + } + }, + "id": "UserDefined" + }, + "Biography": { + "description": "A person's short biography.", + "type": "object", + "properties": { + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the biography." }, - "residences": { - "description": "The person's residences.", - "type": "array", - "items": { - "$ref": "Residence" - } + "value": { + "description": "The short biography.", + "type": "string" }, - "genders": { - "description": "The person's genders.", - "type": "array", - "items": { - "$ref": "Gender" - } + "contentType": { + "enum": [ + "CONTENT_TYPE_UNSPECIFIED", + "TEXT_PLAIN", + "TEXT_HTML" + ], + "description": "The content type of the biography.", + "type": "string", + "enumDescriptions": [ + "Unspecified.", + "Plain text.", + "HTML text." + ] + } + }, + "id": "Biography" + }, + "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" }, - "interests": { - "description": "The person's interests.", - "type": "array", - "items": { - "$ref": "Interest" - } + "primary": { + "description": "True if the field is the primary field; false if the field is a secondary\nfield.", + "type": "boolean" }, - "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.", + "source": { + "$ref": "Source", + "description": "The source of the field." + } + }, + "id": "FieldMetadata" + }, + "RelationshipInterest": { + "description": "A person's read-only relationship interest .", + "type": "object", + "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" }, - "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" - } + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the relationship interest." }, - "photos": { - "description": "The person's read-only photos.", - "type": "array", - "items": { - "$ref": "Photo" - } + "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" + } + }, + "id": "RelationshipInterest" + }, + "Source": { + "properties": { + "updateTime": { + "description": "**Only populated in `person.metadata.sources`.**\n\nLast update timestamp of this source.", + "format": "google-datetime", + "type": "string" }, - "ageRange": { - "description": "**DEPRECATED** (Please use `person.ageRanges` instead)**\n\nThe person's read-only age range.", + "type": { + "description": "The source type.", "type": "string", "enumDescriptions": [ "Unspecified.", - "Younger than eighteen.", - "Between eighteen and twenty.", - "Twenty-one and older." + "[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." ], "enum": [ - "AGE_RANGE_UNSPECIFIED", - "LESS_THAN_EIGHTEEN", - "EIGHTEEN_TO_TWENTY", - "TWENTY_ONE_OR_OLDER" + "SOURCE_TYPE_UNSPECIFIED", + "ACCOUNT", + "PROFILE", + "DOMAIN_PROFILE", + "CONTACT" ] + }, + "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." } }, - "id": "Person" + "id": "Source", + "description": "The source of a field.", + "type": "object" }, - "UpdateContactGroupRequest": { - "description": "A request to update an existing user contact group. All updated fields will\nbe replaced.", + "GetPeopleResponse": { "type": "object", "properties": { - "contactGroup": { - "description": "The contact group to update.", - "$ref": "ContactGroup" + "responses": { + "description": "The response for each requested resource name.", + "type": "array", + "items": { + "$ref": "PersonResponse" + } } }, - "id": "UpdateContactGroupRequest" + "id": "GetPeopleResponse" }, - "ContactGroupMetadata": { - "description": "The read-only metadata about a contact group.", + "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": { - "updateTime": { - "description": "The time the group was last updated.", - "format": "google-datetime", + "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" }, - "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.", + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the photo." + }, + "default": { + "description": "True if the photo is a default photo;\nfalse if the photo is a user-provided photo.", "type": "boolean" } }, - "id": "ContactGroupMetadata" + "id": "Photo" }, - "Residence": { - "description": "A person's past or current residence.", + "PhoneNumber": { + "description": "A person's phone number.", "type": "object", "properties": { + "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": { - "description": "Metadata about the residence.", - "$ref": "FieldMetadata" + "$ref": "FieldMetadata", + "description": "Metadata about the phone number." }, - "current": { - "description": "True if the residence is the person's current residence;\nfalse if the residence is a past residence.", - "type": "boolean" + "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 address of the residence.", + "description": "The phone number.", "type": "string" } }, - "id": "Residence" + "id": "PhoneNumber" }, - "Event": { - "description": "An event related to the person.", + "ListConnectionsResponse": { + "type": "object", + "properties": { + "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": { + "$ref": "Person" + } + }, + "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" + } + }, + "id": "ListConnectionsResponse" + }, + "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", "properties": { "metadata": { - "description": "Metadata about the event.", - "$ref": "FieldMetadata" + "$ref": "FieldMetadata", + "description": "Metadata about the birthday." }, - "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`", + "text": { + "description": "A free-form string representing the user's birthday.", "type": "string" }, "date": { - "$ref": "Date", - "description": "The date of the event." + "description": "The date of the birthday.", + "$ref": "Date" + } + }, + "id": "Birthday" + }, + "CreateContactGroupRequest": { + "properties": { + "contactGroup": { + "description": "The contact group to create.", + "$ref": "ContactGroup" + } + }, + "id": "CreateContactGroupRequest", + "description": "A request to create a new contact group.", + "type": "object" + }, + "Address": { + "description": "A person's physical address. May be a P.O. box or street address. All fields\nare optional.", + "type": "object", + "properties": { + "poBox": { + "description": "The P.O. box of the address.", + "type": "string" + }, + "postalCode": { + "description": "The postal code of the address.", + "type": "string" + }, + "region": { + "description": "The region of the address; for example, the state or province.", + "type": "string" + }, + "streetAddress": { + "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 event translated and formatted in the\nviewer's account locale or the `Accept-Language` HTTP header locale.", + "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" + }, + "extendedAddress": { + "description": "The extended address of the address; for example, the apartment number.", "type": "string" } }, - "id": "Event" + "id": "Address" }, - "ModifyContactGroupMembersResponse": { - "description": "The response to a modify contact group members request.", + "ContactGroupMembership": { + "description": "A Google contact group membership.", "type": "object", "properties": { - "notFoundResourceNames": { - "description": "The contact people resource names that were not found.", + "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": { + "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": "string" + "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": "ModifyContactGroupMembersResponse" + "id": "Status" }, - "ProfileMetadata": { - "description": "The read-only metadata about a profile.", + "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": { - "description": "The profile object type.", + "description": "**DEPRECATED** (Please use\n`person.metadata.sources.profileMetadata.objectType` instead)\n\nThe type of the person object.", "type": "string", "enumDescriptions": [ "Unspecified.", @@ -562,836 +697,706 @@ "PERSON", "PAGE" ] - }, - "userTypes": { - "description": "The user types.", + } + }, + "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", - "enum": [ - "USER_TYPE_UNKNOWN", - "GOOGLE_USER", - "GPLUS_USER", - "GOOGLE_APPS_USER" - ] - }, - "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." - ] + "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": "ProfileMetadata" + "id": "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.", + "type": "object" }, - "Gender": { - "description": "A person's gender.", - "type": "object", + "ContactGroupResponse": { "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" + "contactGroup": { + "description": "The contact group.", + "$ref": "ContactGroup" }, - "metadata": { - "$ref": "FieldMetadata", - "description": "Metadata about the gender." + "status": { + "description": "The status of the response.", + "$ref": "Status" }, - "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`", + "requestedResourceName": { + "description": "The original requested resource name.", "type": "string" } }, - "id": "Gender" + "id": "ContactGroupResponse", + "description": "The response for a specific contact group.", + "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.", - "type": "object", + "Url": { "properties": { "metadata": { "$ref": "FieldMetadata", - "description": "Metadata about the cover photo." - }, - "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" + "description": "Metadata about the URL." }, - "url": { - "description": "The URL of the cover photo.", + "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" - } - }, - "id": "CoverPhoto" - }, - "Interest": { - "description": "One of the person's interests.", - "type": "object", - "properties": { - "metadata": { - "$ref": "FieldMetadata", - "description": "Metadata about the interest." }, "value": { - "description": "The interest; for example, `stargazing`.", + "description": "The URL.", + "type": "string" + }, + "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" } }, - "id": "Interest" + "id": "Url", + "description": "A person's associated URLs.", + "type": "object" }, - "EmailAddress": { - "description": "A person's email address.", + "ImClient": { + "description": "A person's instant messaging client.", "type": "object", "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.", + "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" }, - "displayName": { - "description": "The display name of the email.", + "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 email address.", - "$ref": "FieldMetadata" + "$ref": "FieldMetadata", + "description": "Metadata about the IM client." }, "type": { - "description": "The type of the email 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`", + "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" }, - "value": { - "description": "The email address.", + "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": "EmailAddress" + "id": "ImClient" }, - "Nickname": { - "description": "A person's nickname.", + "DomainMembership": { + "description": "A Google Apps Domain membership.", "type": "object", "properties": { - "metadata": { - "description": "Metadata about the nickname.", - "$ref": "FieldMetadata" - }, - "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" - }, - "value": { - "description": "The nickname.", - "type": "string" + "inViewerDomain": { + "description": "True if the person is in the viewer's Google Apps domain.", + "type": "boolean" } }, - "id": "Nickname" + "id": "DomainMembership" }, - "Skill": { - "description": "A skill that the person has.", + "Membership": { + "description": "A person's read-only membership in a group.", "type": "object", "properties": { + "contactGroupMembership": { + "$ref": "ContactGroupMembership", + "description": "The contact group membership." + }, + "domainMembership": { + "$ref": "DomainMembership", + "description": "The domain membership." + }, "metadata": { - "description": "Metadata about the skill.", + "description": "Metadata about the membership.", "$ref": "FieldMetadata" - }, - "value": { - "description": "The skill; for example, `underwater basket weaving`.", - "type": "string" } }, - "id": "Skill" + "id": "Membership" }, - "Tagline": { - "description": "A read-only brief one-line description of the person.", + "BatchGetContactGroupsResponse": { + "properties": { + "responses": { + "description": "The list of responses for each requested contact group resource.", + "type": "array", + "items": { + "$ref": "ContactGroupResponse" + } + } + }, + "id": "BatchGetContactGroupsResponse", + "description": "The response to a batch get contact groups request.", + "type": "object" + }, + "RelationshipStatus": { + "description": "A person's read-only relationship status.", "type": "object", "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 tagline." + "description": "Metadata about the relationship status.", + "$ref": "FieldMetadata" }, "value": { - "description": "The tagline.", + "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" } }, - "id": "Tagline" + "id": "RelationshipStatus" }, - "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.", + "BraggingRights": { + "description": "A person's bragging rights.", "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" + "metadata": { + "$ref": "FieldMetadata", + "description": "Metadata about the bragging rights." }, - "month": { - "description": "Month of year. Must be from 1 to 12, or 0 if specifying a date without a\nmonth.", - "format": "int32", - "type": "integer" + "value": { + "description": "The bragging rights; for example, `climbed mount everest`.", + "type": "string" } }, - "id": "Date" + "id": "BraggingRights" }, - "Name": { - "description": "A person's name. If the name is a mononym, the family name is empty.", + "Organization": { + "description": "A person's past or current organization. Overlapping date ranges are\npermitted.", "type": "object", "properties": { - "middleName": { - "description": "The middle name(s).", + "jobDescription": { + "description": "The person's job description at the organization.", "type": "string" }, - "givenName": { - "description": "The given name.", - "type": "string" + "endDate": { + "description": "The end date when the person left the organization.", + "$ref": "Date" }, - "phoneticHonorificPrefix": { - "description": "The honorific prefixes spelled as they sound.", + "symbol": { + "description": "The symbol associated with the organization; for example, a stock ticker\nsymbol, abbreviation, or acronym.", "type": "string" }, - "phoneticGivenName": { - "description": "The given name spelled as it sounds.", + "name": { + "description": "The name of the organization.", "type": "string" }, - "phoneticFamilyName": { - "description": "The family name spelled as it sounds.", - "type": "string" + "metadata": { + "description": "Metadata about the organization.", + "$ref": "FieldMetadata" }, - "familyName": { - "description": "The family name.", + "location": { + "description": "The location of the organization office the person works at.", "type": "string" }, - "phoneticMiddleName": { - "description": "The middle name(s) spelled as they sound.", + "title": { + "description": "The person's job title at the organization.", "type": "string" }, - "metadata": { - "$ref": "FieldMetadata", - "description": "Metadata about the name." + "current": { + "description": "True if the organization is the person's current organization;\nfalse if the organization is a past organization.", + "type": "boolean" }, - "phoneticFullName": { - "description": "The full name spelled as it sounds.", + "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" }, - "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" + "startDate": { + "$ref": "Date", + "description": "The start date when the person joined the organization." }, - "displayName": { - "description": "The read-only display name formatted according to the locale specified by\nthe viewer's account or the `Accept-Language` HTTP header.", + "domain": { + "description": "The domain name associated with the organization; for example, `google.com`.", "type": "string" }, - "honorificSuffix": { - "description": "The honorific suffixes, such as `Jr.`", + "department": { + "description": "The person's department at the organization.", "type": "string" }, - "honorificPrefix": { - "description": "The honorific prefixes, such as `Mrs.` or `Dr.`", + "phoneticName": { + "description": "The phonetic name of the organization.", "type": "string" - }, - "phoneticHonorificSuffix": { - "description": "The honorific suffixes spelled as they sound.", + }, + "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" } }, - "id": "Name" + "id": "Organization" }, - "Locale": { - "description": "A person's locale preference.", - "type": "object", + "AgeRangeType": { "properties": { "metadata": { - "$ref": "FieldMetadata", - "description": "Metadata about the locale." + "description": "Metadata about the age range.", + "$ref": "FieldMetadata" }, - "value": { - "description": "The well-formed [IETF BCP 47](https://tools.ietf.org/html/bcp47)\nlanguage tag representing the locale.", + "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": "The age range.", "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" + "id": "AgeRangeType", + "description": "A person's age range.", + "type": "object" }, - "UserDefined": { - "description": "Arbitrary user data that is populated by the end users.", + "ListContactGroupsResponse": { + "description": "The response to a list contact groups request.", "type": "object", "properties": { - "metadata": { - "description": "Metadata about the user defined data.", - "$ref": "FieldMetadata" + "contactGroups": { + "description": "The list of contact groups. Members of the contact groups are not\npopulated.", + "type": "array", + "items": { + "$ref": "ContactGroup" + } }, - "value": { - "description": "The end user specified value of the user defined data.", + "nextPageToken": { + "description": "The token that can be used to retrieve the next page of results.", "type": "string" }, - "key": { - "description": "The end user specified key of the user defined data.", + "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" } }, - "id": "UserDefined" + "id": "ListContactGroupsResponse" }, - "Biography": { - "description": "A person's short biography.", + "PersonResponse": { + "description": "The response for a single person", "type": "object", "properties": { - "contentType": { - "enumDescriptions": [ - "Unspecified.", - "Plain text.", - "HTML text." - ], - "enum": [ - "CONTENT_TYPE_UNSPECIFIED", - "TEXT_PLAIN", - "TEXT_HTML" - ], - "description": "The content type of the biography.", - "type": "string" + "person": { + "description": "The person.", + "$ref": "Person" }, - "metadata": { - "description": "Metadata about the biography.", - "$ref": "FieldMetadata" + "status": { + "description": "The status of the response.", + "$ref": "Status" }, - "value": { - "description": "The short biography.", + "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": "Biography" + "id": "PersonResponse" }, - "FieldMetadata": { - "description": "Metadata about a field.", + "Relation": { + "description": "A person's relation to another person.", "type": "object", "properties": { - "source": { - "description": "The source of the field.", - "$ref": "Source" + "person": { + "description": "The name of the other person this relation refers to.", + "type": "string" }, - "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" + "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" }, - "primary": { - "description": "True if the field is the primary field; false if the field is a secondary\nfield.", - "type": "boolean" + "metadata": { + "description": "Metadata about the relation.", + "$ref": "FieldMetadata" + }, + "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" } }, - "id": "FieldMetadata" + "id": "Relation" }, - "RelationshipInterest": { - "description": "A person's read-only relationship interest .", + "Occupation": { + "description": "A person's occupation.", "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`", + "description": "The occupation; for example, `carpenter`.", "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" + "metadata": { + "description": "Metadata about the occupation.", + "$ref": "FieldMetadata" } }, - "id": "RelationshipInterest" + "id": "Occupation" }, - "Source": { - "description": "The source of a field.", + "ContactGroup": { + "description": "A contact group.", "type": "object", "properties": { - "type": { - "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." - ], - "enum": [ - "SOURCE_TYPE_UNSPECIFIED", - "ACCOUNT", - "PROFILE", - "DOMAIN_PROFILE", - "CONTACT" - ], - "description": "The source type.", + "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" }, "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.", + "description": "The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the\nresource. Used for web cache validation.", "type": "string" }, - "id": { - "description": "The unique identifier within the source type generated by the server.", + "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" }, - "profileMetadata": { - "$ref": "ProfileMetadata", - "description": "**Only populated in `person.metadata.sources`.**\n\nMetadata about a source of type PROFILE." + "groupType": { + "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." + ] }, - "updateTime": { - "description": "**Only populated in `person.metadata.sources`.**\n\nLast update timestamp of this source.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "Source" - }, - "GetPeopleResponse": { - "type": "object", - "properties": { - "responses": { - "description": "The response for each requested resource name.", + "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": { - "$ref": "PersonResponse" + "type": "string" } - } - }, - "id": "GetPeopleResponse" - }, - "PhoneNumber": { - "description": "A person's phone number.", - "type": "object", - "properties": { - "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.", + "name": { + "description": "The contact group name set by the group owner or a system provided name\nfor system groups.", "type": "string" }, "metadata": { - "description": "Metadata about the phone number.", - "$ref": "FieldMetadata" - }, - "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" + "$ref": "ContactGroupMetadata", + "description": "Metadata about the contact group." }, - "value": { - "description": "The phone number.", - "type": "string" + "memberCount": { + "description": "The total number of contacts in the group irrespective of max members in\nspecified in the request.", + "format": "int32", + "type": "integer" } }, - "id": "PhoneNumber" + "id": "ContactGroup" }, - "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", + "Person": { "properties": { - "metadata": { - "description": "Metadata about the photo.", - "$ref": "FieldMetadata" + "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" + } }, - "default": { - "description": "True if the photo is a default photo;\nfalse if the photo is a user-provided photo.", - "type": "boolean" + "locales": { + "description": "The person's locale preferences.", + "type": "array", + "items": { + "$ref": "Locale" + } }, - "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" - } - }, - "id": "Photo" - }, - "ListConnectionsResponse": { - "type": "object", - "properties": { - "totalPeople": { - "description": "**DEPRECATED** (Please use totalItems)\nThe total number of people in the list without pagination.", - "format": "int32", - "type": "integer" + "relationshipInterests": { + "description": "The person's read-only relationship interests.", + "type": "array", + "items": { + "$ref": "RelationshipInterest" + } }, - "nextPageToken": { - "description": "The token that can be used to retrieve the next page of results.", - "type": "string" + "urls": { + "description": "The person's associated URLs.", + "type": "array", + "items": { + "$ref": "Url" + } }, - "connections": { - "description": "The list of people that the requestor is connected to.", + "nicknames": { + "description": "The person's nicknames.", "type": "array", "items": { - "$ref": "Person" + "$ref": "Nickname" } }, - "nextSyncToken": { - "description": "The token that can be used to retrieve changes since the last request.", - "type": "string" + "relations": { + "description": "The person's relations.", + "type": "array", + "items": { + "$ref": "Relation" + } }, - "totalItems": { - "description": "The total number of items in the list without pagination.", - "format": "int32", - "type": "integer" - } - }, - "id": "ListConnectionsResponse" - }, - "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", - "properties": { - "metadata": { - "description": "Metadata about the birthday.", - "$ref": "FieldMetadata" + "names": { + "description": "The person's names.", + "type": "array", + "items": { + "$ref": "Name" + } }, - "text": { - "description": "A free-form string representing the user's birthday.", - "type": "string" + "occupations": { + "description": "The person's occupations.", + "type": "array", + "items": { + "$ref": "Occupation" + } }, - "date": { - "$ref": "Date", - "description": "The date of the birthday." - } - }, - "id": "Birthday" - }, - "CreateContactGroupRequest": { - "description": "A request to create a new contact group.", - "type": "object", - "properties": { - "contactGroup": { - "description": "The contact group to create.", - "$ref": "ContactGroup" - } - }, - "id": "CreateContactGroupRequest" - }, - "Address": { - "description": "A person's physical address. May be a P.O. box or street address. All fields\nare optional.", - "type": "object", - "properties": { - "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" + "emailAddresses": { + "description": "The person's email addresses.", + "type": "array", + "items": { + "$ref": "EmailAddress" + } }, - "city": { - "description": "The city of the address.", - "type": "string" + "organizations": { + "description": "The person's past or current organizations.", + "type": "array", + "items": { + "$ref": "Organization" + } }, - "formattedValue": { - "description": "The unstructured value of the address. If this is not set by the user it\nwill be automatically constructed from structured values.", + "etag": { + "description": "The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the\nresource. Used for web cache validation.", "type": "string" }, - "country": { - "description": "The country of the address.", - "type": "string" + "braggingRights": { + "description": "The person's bragging rights.", + "type": "array", + "items": { + "$ref": "BraggingRights" + } }, - "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" + "metadata": { + "description": "Read-only metadata about the person.", + "$ref": "PersonMetadata" }, - "extendedAddress": { - "description": "The extended address of the address; for example, the apartment number.", - "type": "string" + "residences": { + "description": "The person's residences.", + "type": "array", + "items": { + "$ref": "Residence" + } }, - "poBox": { - "description": "The P.O. box of the address.", - "type": "string" + "genders": { + "description": "The person's genders.", + "type": "array", + "items": { + "$ref": "Gender" + } }, - "postalCode": { - "description": "The postal code of the address.", - "type": "string" + "interests": { + "description": "The person's interests.", + "type": "array", + "items": { + "$ref": "Interest" + } }, - "region": { - "description": "The region of the address; for example, the state or province.", + "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" }, - "streetAddress": { - "description": "The street address.", - "type": "string" + "biographies": { + "description": "The person's biographies.", + "type": "array", + "items": { + "$ref": "Biography" + } }, - "metadata": { - "$ref": "FieldMetadata", - "description": "Metadata about the address." + "skills": { + "description": "The person's skills.", + "type": "array", + "items": { + "$ref": "Skill" + } }, - "countryCode": { - "description": "The [ISO 3166-1 alpha-2](http://www.iso.org/iso/country_codes.htm) country\ncode of the address.", - "type": "string" - } - }, - "id": "Address" - }, - "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.", + "relationshipStatuses": { + "description": "The person's read-only relationship statuses.", "type": "array", "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" + "$ref": "RelationshipStatus" } }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" + "photos": { + "description": "The person's read-only photos.", + "type": "array", + "items": { + "$ref": "Photo" + } }, - "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" - }, - "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" - }, - "PersonMetadata": { - "description": "The read-only metadata about a person.", - "type": "object", - "properties": { - "sources": { - "description": "The sources of data for the person.", + "ageRange": { + "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", + "enumDescriptions": [ + "Unspecified.", + "Younger than eighteen.", + "Between eighteen and twenty.", + "Twenty-one and older." + ] + }, + "taglines": { + "description": "The person's read-only taglines.", "type": "array", "items": { - "$ref": "Source" + "$ref": "Tagline" } }, - "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.", + "ageRanges": { + "description": "The person's read-only age ranges.", "type": "array", "items": { - "type": "string" + "$ref": "AgeRangeType" } }, - "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" + "addresses": { + "description": "The person's street addresses.", + "type": "array", + "items": { + "$ref": "Address" + } }, - "linkedPeopleResourceNames": { - "description": "Resource names of people linked to this resource.", + "events": { + "description": "The person's events.", "type": "array", "items": { - "type": "string" + "$ref": "Event" } - } - }, - "id": "PersonMetadata" - }, - "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.", - "type": "object", - "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.", + }, + "memberships": { + "description": "The person's read-only group memberships.", "type": "array", "items": { - "type": "string" + "$ref": "Membership" } }, - "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.", + "phoneNumbers": { + "description": "The person's phone numbers.", "type": "array", "items": { - "type": "string" + "$ref": "PhoneNumber" } } }, - "id": "ModifyContactGroupMembersRequest" + "id": "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" }, - "ContactGroupResponse": { - "description": "The response for a specific contact group.", - "type": "object", + "UpdateContactGroupRequest": { "properties": { - "status": { - "$ref": "Status", - "description": "The status of the response." - }, - "requestedResourceName": { - "description": "The original requested resource name.", - "type": "string" - }, "contactGroup": { - "$ref": "ContactGroup", - "description": "The contact group." + "description": "The contact group to update.", + "$ref": "ContactGroup" } }, - "id": "ContactGroupResponse" + "id": "UpdateContactGroupRequest", + "description": "A request to update an existing user contact group. All updated fields will\nbe replaced.", + "type": "object" }, - "Url": { - "description": "A person's associated URLs.", + "ContactGroupMetadata": { + "description": "The read-only metadata about a contact group.", "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": { - "$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`", + "updateTime": { + "description": "The time the group was last updated.", + "format": "google-datetime", "type": "string" }, - "value": { - "description": "The URL.", - "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": "Url" + "id": "ContactGroupMetadata" }, - "ImClient": { - "description": "A person's instant messaging client.", + "Residence": { + "description": "A person's past or current residence.", "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" + "$ref": "FieldMetadata", + "description": "Metadata about the residence." }, - "username": { - "description": "The user name used in the IM client.", - "type": "string" - } - }, - "id": "ImClient" - }, - "DomainMembership": { - "description": "A Google Apps Domain membership.", - "type": "object", - "properties": { - "inViewerDomain": { - "description": "True if the person is in the viewer's Google Apps domain.", + "current": { + "description": "True if the residence is the person's current residence;\nfalse if the residence is a past residence.", "type": "boolean" - } - }, - "id": "DomainMembership" - }, - "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" - }, - "Membership": { - "description": "A person's read-only membership in a group.", - "type": "object", - "properties": { - "contactGroupMembership": { - "$ref": "ContactGroupMembership", - "description": "The contact group membership." - }, - "domainMembership": { - "$ref": "DomainMembership", - "description": "The domain membership." }, - "metadata": { - "description": "Metadata about the membership.", - "$ref": "FieldMetadata" + "value": { + "description": "The address of the residence.", + "type": "string" } }, - "id": "Membership" + "id": "Residence" }, - "RelationshipStatus": { - "description": "A person's read-only relationship status.", + "Event": { + "description": "An event related to the person.", "type": "object", "properties": { "metadata": { - "description": "Metadata about the relationship status.", - "$ref": "FieldMetadata" + "$ref": "FieldMetadata", + "description": "Metadata about the event." }, - "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": { + "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" }, - "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" - } - }, - "id": "RelationshipStatus" - }, - "BraggingRights": { - "description": "A person's bragging rights.", - "type": "object", - "properties": { - "metadata": { - "description": "Metadata about the bragging rights.", - "$ref": "FieldMetadata" + "date": { + "description": "The date of the event.", + "$ref": "Date" }, - "value": { - "description": "The bragging rights; for example, `climbed mount everest`.", + "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" } }, - "id": "BraggingRights" + "id": "Event" } }, "icons": { @@ -1403,6 +1408,15 @@ "auth": { "oauth2": { "scopes": { + "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" }, @@ -1415,20 +1429,11 @@ "https://www.googleapis.com/auth/user.emails.read": { "description": "View your email addresses" }, - "https://www.googleapis.com/auth/userinfo.email": { - "description": "View your email address" - }, "https://www.googleapis.com/auth/user.phonenumbers.read": { "description": "View your phone numbers" }, - "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.email": { + "description": "View your email address" } } } @@ -1442,31 +1447,55 @@ "resources": { "people": { "methods": { + "deleteContact": { + "description": "Delete a contact person. Any non-contact data will not be deleted.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "resourceName" + ], + "httpMethod": "DELETE", + "parameters": { + "resourceName": { + "pattern": "^people/[^/]+$", + "location": "path", + "description": "The resource name of the contact to delete.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/contacts" + ], + "flatPath": "v1/people/{peopleId}:deleteContact", + "path": "v1/{+resourceName}:deleteContact", + "id": "people.people.deleteContact" + }, "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.", "httpMethod": "GET", "response": { "$ref": "GetPeopleResponse" }, "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", + "type": "string", + "location": "query" + }, "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" - }, - "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": { + "resourceNames": { "location": "query", - "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", - "type": "string" + "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 } }, "scopes": [ @@ -1482,35 +1511,19 @@ ], "flatPath": "v1/people:batchGet", "id": "people.people.getBatchGet", - "path": "v1/people:batchGet" + "path": "v1/people:batchGet", + "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." }, "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" - }, + "httpMethod": "GET", "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" - ], + "response": { + "$ref": "Person" + }, "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, @@ -1519,54 +1532,68 @@ "location": "path" }, "personFields": { + "location": "query", "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", + "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", "type": "string", "location": "query" } }, + "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" + ], "flatPath": "v1/people/{peopleId}", - "path": "v1/{+resourceName}", - "id": "people.people.get" + "id": "people.people.get", + "path": "v1/{+resourceName}" }, "updateContact": { + "path": "v1/{+resourceName}:updateContact", + "id": "people.people.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" }, - "httpMethod": "PATCH", - "parameterOrder": [ - "resourceName" - ], "response": { "$ref": "Person" }, + "parameterOrder": [ + "resourceName" + ], + "httpMethod": "PATCH", "parameters": { - "updatePersonFields": { - "location": "query", - "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", - "type": "string" - }, "resourceName": { + "location": "path", "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" + "pattern": "^people/[^/]+$" + }, + "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", + "type": "string", + "location": "query" } }, "scopes": [ "https://www.googleapis.com/auth/contacts" ], - "flatPath": "v1/people/{peopleId}:updateContact", - "id": "people.people.updateContact", - "path": "v1/{+resourceName}:updateContact" + "flatPath": "v1/people/{peopleId}:updateContact" }, "createContact": { - "flatPath": "v1/people:createContact", - "id": "people.people.createContact", - "path": "v1/people:createContact", "description": "Create a new contact and return the person resource for that contact.", "request": { "$ref": "Person" @@ -1583,86 +1610,44 @@ "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/contacts" - ] - }, - "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": { - "location": "path", - "description": "The resource name of the contact to delete.", - "required": true, - "type": "string", - "pattern": "^people/[^/]+$" - } - }, - "flatPath": "v1/people/{peopleId}:deleteContact", - "path": "v1/{+resourceName}:deleteContact", - "id": "people.people.deleteContact" + "flatPath": "v1/people:createContact", + "id": "people.people.createContact", + "path": "v1/people:createContact" } }, "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.", - "httpMethod": "GET", - "parameterOrder": [ - "resourceName" - ], "response": { "$ref": "ListConnectionsResponse" }, + "parameterOrder": [ + "resourceName" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/contacts", + "https://www.googleapis.com/auth/contacts.readonly" + ], "parameters": { - "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": { - "location": "query", - "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" - }, - "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. 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", - "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" + "type": "string", + "location": "query" }, "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" + "type": "boolean", + "location": "query" }, "resourceName": { "description": "The resource name to return connections for. Only `people/me` is valid.", @@ -1675,55 +1660,166 @@ "description": "The token of the page to be returned.", "type": "string", "location": "query" + }, + "pageSize": { + "location": "query", + "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" + }, + "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" + }, + "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. 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", + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/contacts", - "https://www.googleapis.com/auth/contacts.readonly" - ], "flatPath": "v1/people/{peopleId}/connections", + "path": "v1/{+resourceName}/connections", "id": "people.people.connections.list", - "path": "v1/{+resourceName}/connections" + "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." + } + } + } + } + }, + "contactGroups": { + "resources": { + "members": { + "methods": { + "modify": { + "description": "Modify the members of a contact group owned by the authenticated user.", + "request": { + "$ref": "ModifyContactGroupMembersRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "resourceName" + ], + "response": { + "$ref": "ModifyContactGroupMembersResponse" + }, + "parameters": { + "resourceName": { + "description": "The resource name of the contact group to modify.", + "required": true, + "type": "string", + "pattern": "^contactGroups/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/contacts" + ], + "flatPath": "v1/contactGroups/{contactGroupsId}/members:modify", + "id": "people.contactGroups.members.modify", + "path": "v1/{+resourceName}/members:modify" + } + } + } + }, + "methods": { + "get": { + "description": "Get a specific contact group owned by the authenticated user by specifying\na contact group resource name.", + "httpMethod": "GET", + "parameterOrder": [ + "resourceName" + ], + "response": { + "$ref": "ContactGroup" + }, + "parameters": { + "maxMembers": { + "description": "Specifies the maximum number of members to return.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "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}", + "id": "people.contactGroups.get", + "path": "v1/{+resourceName}" + }, + "update": { + "flatPath": "v1/contactGroups/{contactGroupsId}", + "path": "v1/{+resourceName}", + "id": "people.contactGroups.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", + "scopes": [ + "https://www.googleapis.com/auth/contacts" + ], + "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/[^/]+$" } } - } - } - }, - "contactGroups": { - "methods": { + }, "batchGet": { + "flatPath": "v1/contactGroups:batchGet", + "path": "v1/contactGroups:batchGet", + "id": "people.contactGroups.batchGet", + "description": "Get a list of contact groups owned by the authenticated user by specifying\na list of contact group resource names.", "response": { "$ref": "BatchGetContactGroupsResponse" }, "parameterOrder": [], "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/contacts", + "https://www.googleapis.com/auth/contacts.readonly" + ], "parameters": { + "maxMembers": { + "location": "query", + "description": "Specifies the maximum number of members to return for each group.", + "format": "int32", + "type": "integer" + }, "resourceNames": { "location": "query", "description": "The resource names of the contact groups to get.", "type": "string", "repeated": true - }, - "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", - "path": "v1/contactGroups:batchGet", - "id": "people.contactGroups.batchGet", - "description": "Get a list of contact groups owned by the authenticated user by specifying\na list of contact group resource names." + } }, "delete": { - "flatPath": "v1/contactGroups/{contactGroupsId}", - "path": "v1/{+resourceName}", - "id": "people.contactGroups.delete", "description": "Delete an existing contact group owned by the authenticated user by\nspecifying a contact group resource name.", "response": { "$ref": "Empty" @@ -1732,46 +1828,48 @@ "resourceName" ], "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/contacts" - ], "parameters": { - "deleteContacts": { - "description": "Set to true to also delete the contacts in the specified group.", - "type": "boolean", - "location": "query" - }, "resourceName": { "description": "The resource name of the contact group to delete.", "required": true, "type": "string", "pattern": "^contactGroups/[^/]+$", "location": "path" + }, + "deleteContacts": { + "location": "query", + "description": "Set to true to also delete the contacts in the specified group.", + "type": "boolean" } - } + }, + "scopes": [ + "https://www.googleapis.com/auth/contacts" + ], + "flatPath": "v1/contactGroups/{contactGroupsId}", + "path": "v1/{+resourceName}", + "id": "people.contactGroups.delete" }, "list": { - "description": "List all contact groups owned by the authenticated user. Members of the\ncontact groups are not populated.", "httpMethod": "GET", + "parameterOrder": [], "response": { "$ref": "ListContactGroupsResponse" }, - "parameterOrder": [], "parameters": { - "pageSize": { - "location": "query", - "description": "The maximum number of resources to return.", - "format": "int32", - "type": "integer" - }, "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.", "type": "string", "location": "query" }, "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", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of resources to return.", + "format": "int32", + "type": "integer", "location": "query" } }, @@ -1781,129 +1879,57 @@ ], "flatPath": "v1/contactGroups", "id": "people.contactGroups.list", - "path": "v1/contactGroups" + "path": "v1/contactGroups", + "description": "List all contact groups owned by the authenticated user. Members of the\ncontact groups are not populated." }, "create": { "description": "Create a new contact group owned by the authenticated user.", "request": { "$ref": "CreateContactGroupRequest" }, - "httpMethod": "POST", - "parameterOrder": [], "response": { "$ref": "ContactGroup" }, + "parameterOrder": [], + "httpMethod": "POST", "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/contacts" ], "flatPath": "v1/contactGroups", - "id": "people.contactGroups.create", - "path": "v1/contactGroups" - }, - "get": { - "flatPath": "v1/contactGroups/{contactGroupsId}", - "id": "people.contactGroups.get", - "path": "v1/{+resourceName}", - "description": "Get a specific contact group owned by the authenticated user by specifying\na contact group resource name.", - "httpMethod": "GET", - "response": { - "$ref": "ContactGroup" - }, - "parameterOrder": [ - "resourceName" - ], - "parameters": { - "maxMembers": { - "description": "Specifies the maximum number of members to return.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "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" - ] - }, - "update": { - "flatPath": "v1/contactGroups/{contactGroupsId}", - "path": "v1/{+resourceName}", - "id": "people.contactGroups.update", - "description": "Update the name of an existing contact group owned by the authenticated\nuser.", - "request": { - "$ref": "UpdateContactGroupRequest" - }, - "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" - ] - } - }, - "resources": { - "members": { - "methods": { - "modify": { - "description": "Modify the members of a contact group owned by the authenticated user.", - "request": { - "$ref": "ModifyContactGroupMembersRequest" - }, - "response": { - "$ref": "ModifyContactGroupMembersResponse" - }, - "parameterOrder": [ - "resourceName" - ], - "httpMethod": "POST", - "parameters": { - "resourceName": { - "description": "The resource name of the contact group to modify.", - "required": true, - "type": "string", - "pattern": "^contactGroups/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/contacts" - ], - "flatPath": "v1/contactGroups/{contactGroupsId}/members:modify", - "path": "v1/{+resourceName}/members:modify", - "id": "people.contactGroups.members.modify" - } - } + "path": "v1/contactGroups", + "id": "people.contactGroups.create" } } } }, "parameters": { - "callback": { + "upload_protocol": { "location": "query", - "description": "JSONP", + "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", @@ -1918,8 +1944,6 @@ "type": "string" }, "alt": { - "description": "Data format for response.", - "default": "json", "enum": [ "json", "media", @@ -1931,22 +1955,24 @@ "Media download with context-dependent Content-Type", "Responses with Content-Type of application/x-protobuf" ], - "location": "query" + "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" + "type": "string", + "location": "query" }, "access_token": { - "location": "query", "description": "OAuth access token.", - "type": "string" + "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", - "location": "query" + "type": "string" }, "pp": { "location": "query", @@ -1963,32 +1989,6 @@ "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": { - "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" } - }, - "version": "v1", - "baseUrl": "https://people.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Provides access to information about profiles and contacts.", - "servicePath": "" + } } diff --git a/DiscoveryJson/photoslibrary_v1.json b/DiscoveryJson/photoslibrary_v1.json index 1e6900b0b8..5fa816b81c 100644 --- a/DiscoveryJson/photoslibrary_v1.json +++ b/DiscoveryJson/photoslibrary_v1.json @@ -1,1230 +1,1230 @@ { - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Photos Library API", - "ownerName": "Google", - "resources": { - "sharedAlbums": { - "methods": { - "list": { - "description": "Lists all shared albums shown to a user in the 'Sharing' tab of the\nGoogle Photos app.", - "response": { - "$ref": "ListSharedAlbumsResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/photoslibrary", - "https://www.googleapis.com/auth/photoslibrary.readonly", - "https://www.googleapis.com/auth/photoslibrary.readonly.appcreateddata" - ], - "parameters": { - "pageToken": { - "type": "string", - "location": "query", - "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 the\nlistSharedAlbums request." - }, - "pageSize": { - "description": "Maximum number of albums to return in the response. The default number of\nalbums to return at a time is 20. The maximum page size is 50.", - "format": "int32", - "type": "integer", - "location": "query" - } - }, - "flatPath": "v1/sharedAlbums", - "path": "v1/sharedAlbums", - "id": "photoslibrary.sharedAlbums.list" - }, - "join": { - "response": { - "$ref": "JoinSharedAlbumResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/photoslibrary.sharing" - ], - "parameters": {}, - "flatPath": "v1/sharedAlbums:join", - "path": "v1/sharedAlbums:join", - "id": "photoslibrary.sharedAlbums.join", - "request": { - "$ref": "JoinSharedAlbumRequest" - }, - "description": "Joins a shared album on behalf of the Google Photos user." - } - } - }, - "albums": { - "methods": { - "list": { - "httpMethod": "GET", - "parameterOrder": [], - "response": { - "$ref": "ListAlbumsResponse" - }, - "parameters": { - "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 the\nlistAlbums request.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "Maximum number of albums to return in the response. The default number of\nalbums to return at a time is 20. The maximum page size is 50.", - "format": "int32", - "type": "integer" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/photoslibrary", - "https://www.googleapis.com/auth/photoslibrary.readonly", - "https://www.googleapis.com/auth/photoslibrary.readonly.appcreateddata" - ], - "flatPath": "v1/albums", - "id": "photoslibrary.albums.list", - "path": "v1/albums", - "description": "Lists all albums shown to a user in the 'Albums' tab of the Google\nPhotos app." - }, - "get": { - "description": "Returns the album specified by the given album id.", - "response": { - "$ref": "Album" - }, - "parameterOrder": [ - "albumId" - ], - "httpMethod": "GET", - "parameters": { - "albumId": { - "pattern": "^[^/]+$", - "location": "path", - "description": "Identifier of the album to be requested.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/photoslibrary", - "https://www.googleapis.com/auth/photoslibrary.readonly", - "https://www.googleapis.com/auth/photoslibrary.readonly.appcreateddata" - ], - "flatPath": "v1/albums/{albumsId}", - "path": "v1/albums/{+albumId}", - "id": "photoslibrary.albums.get" - }, - "addEnrichment": { - "scopes": [ - "https://www.googleapis.com/auth/photoslibrary", - "https://www.googleapis.com/auth/photoslibrary.appendonly", - "https://www.googleapis.com/auth/photoslibrary.sharing" - ], - "parameters": { - "albumId": { - "pattern": "^[^/]+$", - "location": "path", - "description": "Identifier of the album where the enrichment will be added.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/albums/{albumsId}:addEnrichment", - "path": "v1/albums/{+albumId}:addEnrichment", - "id": "photoslibrary.albums.addEnrichment", - "request": { - "$ref": "AddEnrichmentToAlbumRequest" - }, - "description": "Adds an enrichment to a specified position in a defined album.", - "response": { - "$ref": "AddEnrichmentToAlbumResponse" - }, - "parameterOrder": [ - "albumId" - ], - "httpMethod": "POST" - }, - "create": { - "description": "Creates an album in a user's Google Photos library.", - "request": { - "$ref": "CreateAlbumRequest" - }, - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "Album" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/photoslibrary", - "https://www.googleapis.com/auth/photoslibrary.appendonly", - "https://www.googleapis.com/auth/photoslibrary.sharing" - ], - "flatPath": "v1/albums", - "id": "photoslibrary.albums.create", - "path": "v1/albums" - }, - "share": { - "parameters": { - "albumId": { - "required": true, - "type": "string", - "pattern": "^[^/]+$", - "location": "path", - "description": "Identifier of the album to be shared. This album id must belong to an album\ncreated by the developer.\n." - } - }, - "scopes": [ - "https://www.googleapis.com/auth/photoslibrary.sharing" - ], - "flatPath": "v1/albums/{albumsId}:share", - "path": "v1/albums/{+albumId}:share", - "id": "photoslibrary.albums.share", - "description": "Marks an album as 'shared' and accessible to other users. This action can\nonly be performed on albums which were created by the developer via the\nAPI.", - "request": { - "$ref": "ShareAlbumRequest" - }, - "response": { - "$ref": "ShareAlbumResponse" - }, - "parameterOrder": [ - "albumId" - ], - "httpMethod": "POST" - } - } - }, - "mediaItems": { - "methods": { - "search": { - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "SearchMediaItemsResponse" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/photoslibrary", - "https://www.googleapis.com/auth/photoslibrary.readonly", - "https://www.googleapis.com/auth/photoslibrary.readonly.appcreateddata" - ], - "flatPath": "v1/mediaItems:search", - "id": "photoslibrary.mediaItems.search", - "path": "v1/mediaItems:search", - "description": "Searches for media items in a user's Google Photos library.\nIf no filters are set, then all media items in the user's library will be\nreturned.\n\nIf an album is set, all media items in the specified album will be\nreturned.\n\nIf filters are specified, anything that matches the filters from the user's\nlibrary will be listed.\n\nIf an album and filters are set, then this will result in an error.", - "request": { - "$ref": "SearchMediaItemsRequest" - } - }, - "get": { - "path": "v1/mediaItems/{+mediaItemId}", - "id": "photoslibrary.mediaItems.get", - "description": "Returns the media item specified based on a given media item id.", - "response": { - "$ref": "MediaItem" - }, - "parameterOrder": [ - "mediaItemId" - ], - "httpMethod": "GET", - "parameters": { - "mediaItemId": { - "description": "Identifier of media item to be requested.", - "required": true, - "type": "string", - "pattern": "^[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/drive.photos.readonly", - "https://www.googleapis.com/auth/photoslibrary", - "https://www.googleapis.com/auth/photoslibrary.readonly", - "https://www.googleapis.com/auth/photoslibrary.readonly.appcreateddata" - ], - "flatPath": "v1/mediaItems/{mediaItemsId}" - }, - "batchCreate": { - "request": { - "$ref": "BatchCreateMediaItemsRequest" - }, - "description": "Creates one or more media items in a user's Google Photos library.\nIf an album id is specified, the media item(s) are also added to the album.\nBy default the media item(s) will be added to the end of the library or\nalbum.\n\nIf an album id and position are both defined, then the media items will\nbe added to the album at the specified position.\n\nIf multiple media items are given, they will be inserted at the specified\nposition.", - "response": { - "$ref": "BatchCreateMediaItemsResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/photoslibrary", - "https://www.googleapis.com/auth/photoslibrary.appendonly", - "https://www.googleapis.com/auth/photoslibrary.sharing" - ], - "parameters": {}, - "flatPath": "v1/mediaItems:batchCreate", - "path": "v1/mediaItems:batchCreate", - "id": "photoslibrary.mediaItems.batchCreate" - } - } - } - }, - "parameters": { - "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." - }, - "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": { - "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" - }, - "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" - }, - "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://photoslibrary.googleapis.com/", - "servicePath": "", - "description": "Manage photos, videos, and albums in Google Photos\n", "kind": "discovery#restDescription", + "description": "Manage photos, videos, and albums in Google Photos\n", + "servicePath": "", "basePath": "", - "id": "photoslibrary:v1", - "documentationLink": "https://developers.google.com/photos/", "revision": "20180508", + "documentationLink": "https://developers.google.com/photos/", + "id": "photoslibrary:v1", "discoveryVersion": "v1", "version_module": true, "schemas": { - "DateRange": { - "description": "Defines a range of dates. Both dates must be of the same format (see Date\ndefinition for more).", + "MediaItem": { + "description": "Representation of a media item (e.g. photo, video etc.) in Google Photos.", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Identifier for the media item. This is a persistent identifier that can be\nused between sessions to identify this media item." + }, + "productUrl": { + "description": "Google Photos URL for the media item. This link will only be available to\nthe user if they're signed in.", + "type": "string" + }, + "mimeType": { + "type": "string", + "description": "MIME type of the media item." + }, + "baseUrl": { + "description": "A URL to the media item's bytes. This should not be used as is.\nFor example, '=w2048-h1024' will set the dimensions of a media item of type\nphoto to have a width of 2048 px and height of 1024 px.", + "type": "string" + }, + "contributorInfo": { + "$ref": "ContributorInfo", + "description": "Information about the user who created this media item." + }, + "mediaMetadata": { + "$ref": "MediaMetadata", + "description": "Metadata related to the media item, for example the height, width or\ncreation time." + }, + "description": { + "description": "Description of the media item. This is shown to the user in the item's\ninfo section in the Google Photos app.", + "type": "string" + } + }, + "id": "MediaItem" + }, + "ShareInfo": { + "type": "object", + "properties": { + "sharedAlbumOptions": { + "description": "Options set for the shared album.", + "$ref": "SharedAlbumOptions" + }, + "shareableUrl": { + "description": "A link to the album that's now shared on the Google Photos website and app.\nAnyone with the link can access this shared album and see all of the items\npresent in the album.", + "type": "string" + }, + "shareToken": { + "description": "A token which can be used to join this shared album on behalf of other\nusers via the API.", + "type": "string" + } + }, + "id": "ShareInfo", + "description": "Information about albums that are shared. Note that this\ninformation is only included if the album was created by you and you have the\nsharing scope." + }, + "Album": { + "type": "object", + "properties": { + "totalMediaItems": { + "description": "[Output only] The number of media items in the album", + "format": "int64", + "type": "string" + }, + "id": { + "description": "[Ouput only] Identifier for the album. This is a persistent identifier that\ncan be used between sessions to identify this album.", + "type": "string" + }, + "productUrl": { + "description": "[Output only] Google Photos URL for the album. The user needs to be signed\nin to their Google Photos account to access this link.", + "type": "string" + }, + "shareInfo": { + "$ref": "ShareInfo", + "description": "[Output only] Information related to shared albums.\nThis field is only populated if the album is a shared album, the\ndeveloper created the album and the user has granted photoslibrary.sharing\nscope." + }, + "title": { + "type": "string", + "description": "Name of the album displayed to the user in their Google Photos account.\nThis string should not be more than 500 characters." + }, + "coverPhotoBaseUrl": { + "description": "[Output only] A URL to the cover photo's bytes. This should not be used as\nis. Parameters should be appended to this URL before use. For example,\n'=w2048-h1024' will set the dimensions of the cover photo to have a width\nof 2048 px and height of 1024 px.", + "type": "string" + }, + "isWriteable": { + "description": "[Output only] True if media items can be created in the album.\nThis field is based on the scopes granted and permissions of the album. If\nthe scopes are changed or permissions of the album are changed, this field\nwill be updated.", + "type": "boolean" + } + }, + "id": "Album", + "description": "Representation of an album in Google Photos.\nAlbums are a container for media items. They contain an additional\nshareInfo property if they have been shared by the application." + }, + "JoinSharedAlbumRequest": { + "type": "object", + "properties": { + "shareToken": { + "description": "Token indicating the shared album to join on behalf of the user.", + "type": "string" + } + }, + "id": "JoinSharedAlbumRequest", + "description": "Request to join a shared album on behalf of the user. This uses a shareToken\nwhich can be acquired via the shareAlbum or listSharedAlbums calls." + }, + "SharedAlbumOptions": { + "id": "SharedAlbumOptions", + "description": "Options that control the sharing of an album.", + "type": "object", + "properties": { + "isCommentable": { + "description": "True if the shared album allows the owner and the collaborators (users\nwho have joined the album) to add comments to the album. Defaults to false.", + "type": "boolean" + }, + "isCollaborative": { + "description": "True if the shared album allows collaborators (users who have joined\nthe album) to add media items to it. Defaults to false.", + "type": "boolean" + } + } + }, + "TextEnrichment": { + "type": "object", + "properties": { + "text": { + "description": "Text for this text enrichment item.", + "type": "string" + } + }, + "id": "TextEnrichment", + "description": "An enrichment containing text." + }, + "ContentFilter": { + "description": "This filter is used to define which results to return based on the contents\nof the media item.\n\nIt is possible to specify a list of categories to include, and/or a list of\ncategories to exclude. Within each list, the categories are combined with an\nOR. For example, if the content filter looks like:\n\n included_content_categories: [c1, c2, c3]\n\nIt would get media items that contain (c1 OR c2 OR c3).\n\nAnd if the content filter looks like:\n\n excluded_content_categories: [c1, c2, c3]\n\nIt would get media items that contain NOT (c1 OR c2 OR c3).\nYou can also include some categories while excluding others, as in this\nproto:\n\n included_content_categories: [c1, c2],\n excluded_content_category: [c3, c4]\n\nIt would get media items that contain (c1 OR c2) AND NOT (c3 OR c4).\n\nA category that appears in \u003ccode\u003eincludedContentategories\u003c/code\u003e must not\nappear in \u003ccode\u003eexcludedContentCategories\u003c/code\u003e.", + "type": "object", + "properties": { + "includedContentCategories": { + "description": "The set of categories that must be present in the media items in the\nresult. The items in the set are ORed. There is a maximum of 10\nincludedContentCategories per request.", + "type": "array", + "items": { + "type": "string", + "enum": [ + "NONE", + "LANDSCAPES", + "RECEIPTS", + "CITYSCAPES", + "LANDMARKS", + "SELFIES", + "PEOPLE", + "PETS", + "WEDDINGS", + "BIRTHDAYS", + "DOCUMENTS", + "TRAVEL", + "ANIMALS", + "FOOD", + "SPORT", + "NIGHT", + "PERFORMANCES", + "WHITEBOARDS", + "SCREENSHOTS", + "UTILITY" + ] + }, + "enumDescriptions": [ + "Default content category. This category is ignored if any other category is\nalso listed.", + "Media items containing landscapes.", + "Media items containing receipts.", + "Media items containing cityscapes.", + "Media items containing landmarks.", + "Media items that are selfies.", + "Media items containing people.", + "Media items containing pets.", + "Media items from weddings.", + "Media items from birthdays.", + "Media items containing documents.", + "Media items taken during travel.", + "Media items containing animals.", + "Media items containing food.", + "Media items from sporting events.", + "Media items taken at night.", + "Media items from performances.", + "Media items containing whiteboards.", + "Media items that are screenshots.", + "Media items that are considered to be 'utility. Including, but not limited\nto documents, screenshots, whiteboards etc." + ] + }, + "excludedContentCategories": { + "description": "The set of categories that must NOT be present in the media items in the\nresult. The items in the set are ORed. There is a maximum of 10\nexcludedContentCategories per request.", + "type": "array", + "items": { + "type": "string", + "enum": [ + "NONE", + "LANDSCAPES", + "RECEIPTS", + "CITYSCAPES", + "LANDMARKS", + "SELFIES", + "PEOPLE", + "PETS", + "WEDDINGS", + "BIRTHDAYS", + "DOCUMENTS", + "TRAVEL", + "ANIMALS", + "FOOD", + "SPORT", + "NIGHT", + "PERFORMANCES", + "WHITEBOARDS", + "SCREENSHOTS", + "UTILITY" + ] + }, + "enumDescriptions": [ + "Default content category. This category is ignored if any other category is\nalso listed.", + "Media items containing landscapes.", + "Media items containing receipts.", + "Media items containing cityscapes.", + "Media items containing landmarks.", + "Media items that are selfies.", + "Media items containing people.", + "Media items containing pets.", + "Media items from weddings.", + "Media items from birthdays.", + "Media items containing documents.", + "Media items taken during travel.", + "Media items containing animals.", + "Media items containing food.", + "Media items from sporting events.", + "Media items taken at night.", + "Media items from performances.", + "Media items containing whiteboards.", + "Media items that are screenshots.", + "Media items that are considered to be 'utility. Including, but not limited\nto documents, screenshots, whiteboards etc." + ] + } + }, + "id": "ContentFilter" + }, + "ShareAlbumResponse": { + "type": "object", + "properties": { + "shareInfo": { + "$ref": "ShareInfo", + "description": "[Output only] Information about the shared album." + } + }, + "id": "ShareAlbumResponse" + }, + "Date": { + "description": "Represents a whole calendar date. The day may be 0 to represent a year and month where the day is not significant, e.g. a whole calendar month. The month may be 0 to represent a a day and a year where the month is not signficant, e.g. when you want to specify the same day in every month of a year or a specific year. The year may be 0 to represent a month and day independent of year, e.g. anniversary date.", "type": "object", "properties": { - "startDate": { - "$ref": "Date", - "description": "The start date (included as part of the range) in one of the formats\ndescribed." + "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, or 0 if specifying a date without a\nmonth.", + "format": "int32", + "type": "integer" + } + }, + "id": "Date" + }, + "Filters": { + "properties": { + "includeArchivedMedia": { + "description": "If set, the results will include media items that the user has archived.\nDefaults to false (archived media items are not included).", + "type": "boolean" }, - "endDate": { - "$ref": "Date", - "description": "The end date (included as part of the range) in the same format as the\nstart date." + "mediaTypeFilter": { + "$ref": "MediaTypeFilter", + "description": "Filters the media items based on the type of media." + }, + "dateFilter": { + "$ref": "DateFilter", + "description": "Filters the media items based on their creation date." + }, + "contentFilter": { + "description": "Filters the media items based on their content.", + "$ref": "ContentFilter" } }, - "id": "DateRange" + "id": "Filters", + "description": "Filters that can be applied to a media item search.\nIf multiple filter options are specified, they are treated as AND with each\nother.", + "type": "object" }, - "NewMediaItem": { + "MediaMetadata": { + "id": "MediaMetadata", + "description": "Metadata for a media item.", "type": "object", "properties": { - "description": { - "description": "Description of the media item. This will be shown to the user in the item's\ninfo section in the Google Photos app.\nThis string should not be more than 1000 characters.", + "width": { + "type": "string", + "description": "Original width (in pixels) of the media item.", + "format": "int64" + }, + "creationTime": { + "description": "Time when the media item was first created (not when it was uploaded to\nGoogle Photos).", + "format": "google-datetime", "type": "string" }, - "simpleMediaItem": { - "$ref": "SimpleMediaItem", - "description": "A new media item that has been uploaded via the included uploadToken." + "height": { + "description": "Original height (in pixels) of the media item.", + "format": "int64", + "type": "string" + }, + "photo": { + "description": "Metadata for a photo media type.", + "$ref": "Photo" + }, + "video": { + "$ref": "Video", + "description": "Metadata for a video media type." } - }, - "id": "NewMediaItem", - "description": "New media item that will be created in a user's Google Photos account." + } }, - "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.", + "SearchMediaItemsRequest": { + "description": "Request to search for media items in a user's library.\n\nIf the album id is specified, this call will return the list of media items\nin the album. If neither filters nor album id are\nspecified, this call will return all media items in a user's Google Photos\nlibrary.\n\nIf filters are specified, this call will return all media items in\nthe user's library which fulfills the criteria based upon the filters.\n\nFilters and album id must not both be set, as this will result in an\ninvalid request.", "type": "object", "properties": { - "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\nmessage types for APIs to use." + "albumId": { + "type": "string", + "description": "Identifier of an album. If populated will list all media items in\nspecified album. Cannot be set in conjunction with any filters." }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", + "pageSize": { + "description": "Maximum number of media items to return in the response. The default number\nof media items to return at a time is 100. The maximum page size is 500.", "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.", + "filters": { + "$ref": "Filters", + "description": "Filters to apply to the request. Cannot be set in conjuction with an\nalbumId." + }, + "pageToken": { + "type": "string", + "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 the\nsearchMediaItems request." + } + }, + "id": "SearchMediaItemsRequest" + }, + "Location": { + "description": "Represents a physical location.", + "type": "object", + "properties": { + "latlng": { + "$ref": "LatLng", + "description": "Position of the location on the map." + }, + "locationName": { + "description": "Name of the location to be displayed.", "type": "string" } }, - "id": "Status" + "id": "Location" }, - "MediaTypeFilter": { - "description": "This filter defines the type of media items to be returned, for example\nvideos or photos. All the specified media types are treated as an OR with\neach other.", + "Video": { + "description": "Metadata that is specific to a video, for example, fps and processing status.\nSome of these fields may be null or not included.", "type": "object", "properties": { - "mediaTypes": { - "enumDescriptions": [ - "Treated as if no filters are applied. All media types are included.", - "All media items that are considered videos.\nThis also includes movies the user has created using the Google Photos app.", - "All media items that are considered photos. This includes .bmp, .gif, .ico,\n.jpg (and other spellings), .tiff, .webp as well as special photo types\nsuch as iOS live photos, Android motion photos, panoramas, photospheres." + "fps": { + "description": "Frame rate of the video.", + "format": "double", + "type": "number" + }, + "cameraModel": { + "description": "Model of the camera which took the video.", + "type": "string" + }, + "status": { + "enum": [ + "UNSPECIFIED", + "PROCESSING", + "READY", + "FAILED" ], - "description": "The types of media items to be included. This field should only be\npopulated with one media type, multiple media types will result in an error\nresponse.", - "type": "array", - "items": { - "enum": [ - "ALL_MEDIA", - "VIDEO", - "PHOTO" - ], - "type": "string" - } + "description": "Processing status of the video.", + "type": "string", + "enumDescriptions": [ + "Video processing status is unknown.", + "Video is currently being processed. The user will see an icon for this\nvideo in the Google Photos app, however, it will not be playable yet.", + "Video is now ready for viewing.", + "Something has gone wrong and the video has failed to process." + ] + }, + "cameraMake": { + "description": "Brand of the camera which took the video.", + "type": "string" } }, - "id": "MediaTypeFilter" + "id": "Video" }, - "SearchMediaItemsResponse": { + "DateFilter": { + "description": "This filter defines the allowed dates or date ranges for the media returned.\nIt is possible to pick a set of specific dates and a set of date ranges.", "type": "object", "properties": { - "nextPageToken": { - "description": "[Output only] Token to use to get the next set of media items. Its presence\nis the only reliable indicator of more media items being available in the\nnext request.", - "type": "string" + "dates": { + "description": "List of dates that the media items must have been created on. There is a\nmaximum of 5 dates that can be included per request.", + "type": "array", + "items": { + "$ref": "Date" + } }, - "mediaItems": { - "description": "[Output only] List of media items that match the search parameters.", + "ranges": { + "description": "List of dates ranges that the media items must have been created in. There\nis a maximum of 5 dates ranges that can be included per request.", "type": "array", "items": { - "$ref": "MediaItem" + "$ref": "DateRange" } } }, - "id": "SearchMediaItemsResponse" + "id": "DateFilter" }, - "LocationEnrichment": { + "NewMediaItemResult": { + "description": "Result of creating a new media item.", "type": "object", "properties": { - "location": { - "description": "Location for this enrichment item.", - "$ref": "Location" + "uploadToken": { + "description": "The upload token used to create this new media item.", + "type": "string" + }, + "status": { + "$ref": "Status", + "description": "If an error occurred during the creation of this media item, this field\nwill be populated with information related to the error. Details of this\nstatus can be found down below." + }, + "mediaItem": { + "description": "Media item created with the upload token. It is populated if no errors\noccurred and the media item was created successfully.", + "$ref": "MediaItem" } }, - "id": "LocationEnrichment", - "description": "An enrichment containing a single location." + "id": "NewMediaItemResult" }, - "NewEnrichmentItem": { - "type": "object", + "ListAlbumsResponse": { "properties": { - "textEnrichment": { - "$ref": "TextEnrichment", - "description": "Text to be added to the album." - }, - "locationEnrichment": { - "description": "Location to be added to the album.", - "$ref": "LocationEnrichment" + "albums": { + "description": "[Output only] List of albums that were created by the user.", + "type": "array", + "items": { + "$ref": "Album" + } }, - "mapEnrichment": { - "$ref": "MapEnrichment", - "description": "Map to be added to the album." + "nextPageToken": { + "description": "[Output only] Token to use to get the next set of albums. Populated if\nthere are more albums to retrieve for this request.", + "type": "string" } }, - "id": "NewEnrichmentItem", - "description": "A new enrichment item to be added to an album, used by the\nAddEnrichmentToAlbum call." + "id": "ListAlbumsResponse", + "type": "object" }, - "AlbumPosition": { + "ListSharedAlbumsResponse": { "type": "object", "properties": { - "relativeEnrichmentItemId": { - "description": "The enrichment item to which the position is relative to.\nOnly used when position type is AFTER_ENRICHMENT_ITEM.", - "type": "string" - }, - "relativeMediaItemId": { - "description": "The media item to which the position is relative to.\nOnly used when position type is AFTER_MEDIA_ITEM.", - "type": "string" + "sharedAlbums": { + "description": "[Output only] List of shared albums that were requested.", + "type": "array", + "items": { + "$ref": "Album" + } }, - "position": { - "enumDescriptions": [ - "Default value if this enum is not set.", - "At the beginning of the album.", - "At the end of the album.", - "After a media item.", - "After an enrichment item." - ], - "enum": [ - "POSITION_TYPE_UNSPECIFIED", - "FIRST_IN_ALBUM", - "LAST_IN_ALBUM", - "AFTER_MEDIA_ITEM", - "AFTER_ENRICHMENT_ITEM" - ], - "description": "Type of position, for a media or enrichment item.", + "nextPageToken": { + "description": "[Output only] Token to use to get the next set of shared albums. Populated\nif there are more shared albums to retrieve for this request.", "type": "string" } }, - "id": "AlbumPosition", - "description": "Specifies a position in an album." + "id": "ListSharedAlbumsResponse" }, - "LatLng": { + "SimpleMediaItem": { + "description": "A simple media item to be created in Google Photos via an upload token.", "type": "object", "properties": { - "latitude": { - "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", - "format": "double", - "type": "number" - }, - "longitude": { - "type": "number", - "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", - "format": "double" + "uploadToken": { + "description": "Token identifying the media bytes which have been uploaded to Google.", + "type": "string" } }, - "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." + "id": "SimpleMediaItem" }, - "BatchCreateMediaItemsResponse": { - "id": "BatchCreateMediaItemsResponse", + "CreateAlbumRequest": { + "properties": { + "album": { + "$ref": "Album", + "description": "The album to be created." + } + }, + "id": "CreateAlbumRequest", + "description": "Request to create an album in Google Photos.", + "type": "object" + }, + "AddEnrichmentToAlbumResponse": { "type": "object", "properties": { - "newMediaItemResults": { - "description": "[Output only] List of media items which were created.", - "type": "array", - "items": { - "$ref": "NewMediaItemResult" - } + "enrichmentItem": { + "description": "[Output only] Enrichment which was added.", + "$ref": "EnrichmentItem" } - } + }, + "id": "AddEnrichmentToAlbumResponse" }, - "ShareInfo": { + "ShareAlbumRequest": { + "description": "Request to make an album shared in Google Photos.", "type": "object", "properties": { "sharedAlbumOptions": { - "description": "Options set for the shared album.", + "description": "Options to be set when converting the album to a shared album.", "$ref": "SharedAlbumOptions" - }, - "shareableUrl": { - "description": "A link to the album that's now shared on the Google Photos website and app.\nAnyone with the link can access this shared album and see all of the items\npresent in the album.", + } + }, + "id": "ShareAlbumRequest" + }, + "JoinSharedAlbumResponse": { + "description": "Response to successfully joining the shared album on behalf of the user.", + "type": "object", + "properties": {}, + "id": "JoinSharedAlbumResponse" + }, + "ContributorInfo": { + "type": "object", + "properties": { + "profilePictureBaseUrl": { + "description": "URL to the profile picture of the contributor.", "type": "string" }, - "shareToken": { + "displayName": { "type": "string", - "description": "A token which can be used to join this shared album on behalf of other\nusers via the API." + "description": "Display name of the contributor." } }, - "id": "ShareInfo", - "description": "Information about albums that are shared. Note that this\ninformation is only included if the album was created by you and you have the\nsharing scope." + "id": "ContributorInfo", + "description": "Information about a user who contributed the media item. Note that this\ninformation is only included if the album containing the media item is\nshared, was created by you and you have the sharing scope." }, - "MediaItem": { + "Photo": { + "type": "object", "properties": { - "baseUrl": { - "description": "A URL to the media item's bytes. This should not be used as is.\nFor example, '=w2048-h1024' will set the dimensions of a media item of type\nphoto to have a width of 2048 px and height of 1024 px.", + "cameraModel": { + "description": "Model of the camera which took the photo.", "type": "string" }, - "mimeType": { - "type": "string", - "description": "MIME type of the media item." + "cameraMake": { + "description": "Brand of the camera which took the photo.", + "type": "string" }, - "contributorInfo": { - "$ref": "ContributorInfo", - "description": "Information about the user who created this media item." + "focalLength": { + "description": "Focal length of the photo.", + "format": "float", + "type": "number" }, - "description": { - "description": "Description of the media item. This is shown to the user in the item's\ninfo section in the Google Photos app.", - "type": "string" + "isoEquivalent": { + "description": "ISO of the photo.", + "format": "int32", + "type": "integer" }, - "mediaMetadata": { - "description": "Metadata related to the media item, for example the height, width or\ncreation time.", - "$ref": "MediaMetadata" + "apertureFNumber": { + "description": "Apeture f number of the photo.", + "format": "float", + "type": "number" }, - "id": { - "description": "Identifier for the media item. This is a persistent identifier that can be\nused between sessions to identify this media item.", + "exposureTime": { + "description": "Exposure time of the photo.", + "format": "google-duration", "type": "string" - }, - "productUrl": { - "type": "string", - "description": "Google Photos URL for the media item. This link will only be available to\nthe user if they're signed in." } }, - "id": "MediaItem", - "description": "Representation of a media item (e.g. photo, video etc.) in Google Photos.", - "type": "object" + "id": "Photo", + "description": "Metadata that is specific to a photo, for example, ISO, focal length and\nexposure time. Some of these fields may be null or not included." }, - "Album": { - "description": "Representation of an album in Google Photos.\nAlbums are a container for media items. They contain an additional\nshareInfo property if they have been shared by the application.", - "type": "object", + "EnrichmentItem": { "properties": { - "shareInfo": { - "description": "[Output only] Information related to shared albums.\nThis field is only populated if the album is a shared album, the\ndeveloper created the album and the user has granted photoslibrary.sharing\nscope.", - "$ref": "ShareInfo" - }, - "productUrl": { - "description": "[Output only] Google Photos URL for the album. The user needs to be signed\nin to their Google Photos account to access this link.", - "type": "string" - }, - "totalMediaItems": { - "description": "[Output only] The number of media items in the album", - "format": "int64", - "type": "string" - }, "id": { - "description": "[Ouput only] Identifier for the album. This is a persistent identifier that\ncan be used between sessions to identify this album.", - "type": "string" - }, - "title": { - "description": "Name of the album displayed to the user in their Google Photos account.\nThis string should not be more than 500 characters.", - "type": "string" - }, - "coverPhotoBaseUrl": { - "description": "[Output only] A URL to the cover photo's bytes. This should not be used as\nis. Parameters should be appended to this URL before use. For example,\n'=w2048-h1024' will set the dimensions of the cover photo to have a width\nof 2048 px and height of 1024 px.", + "description": "Identifier of the enrichment item.", "type": "string" - }, - "isWriteable": { - "description": "[Output only] True if media items can be created in the album.\nThis field is based on the scopes granted and permissions of the album. If\nthe scopes are changed or permissions of the album are changed, this field\nwill be updated.", - "type": "boolean" } }, - "id": "Album" + "id": "EnrichmentItem", + "description": "An enrichment item.", + "type": "object" }, - "JoinSharedAlbumRequest": { - "description": "Request to join a shared album on behalf of the user. This uses a shareToken\nwhich can be acquired via the shareAlbum or listSharedAlbums calls.", + "BatchCreateMediaItemsRequest": { "type": "object", "properties": { - "shareToken": { - "description": "Token indicating the shared album to join on behalf of the user.", + "albumPosition": { + "$ref": "AlbumPosition", + "description": "Position in the album where the media item(s) will be added. If not\nspecified, the media item(s) will be added to the end of the album (as per\nthe default value which is LAST_IN_ALBUM).\nThe request will fail if this field is present but no album_id is\nspecified." + }, + "albumId": { + "description": "Identifier of the album where the media item(s) will be added. They will\nalso be added to the user's library. This is an optional field.", "type": "string" + }, + "newMediaItems": { + "description": "List of media items to be created.", + "type": "array", + "items": { + "$ref": "NewMediaItem" + } } }, - "id": "JoinSharedAlbumRequest" + "id": "BatchCreateMediaItemsRequest", + "description": "Request to create one or more media items in a user's Google Photos library.\nIf an \u003ccode\u003ealbumid\u003c/code\u003e is specified, the media items are also added to\nthat album. \u003ccode\u003ealbumPosition\u003c/code\u003e is optional and can only be specified\nif an \u003ccode\u003ealbumId\u003c/code\u003e is set." }, - "SharedAlbumOptions": { - "id": "SharedAlbumOptions", - "description": "Options that control the sharing of an album.", + "MapEnrichment": { "type": "object", "properties": { - "isCommentable": { - "description": "True if the shared album allows the owner and the collaborators (users\nwho have joined the album) to add comments to the album. Defaults to false.", - "type": "boolean" + "destination": { + "$ref": "Location", + "description": "Destination location for this enrichemt item." }, - "isCollaborative": { - "type": "boolean", - "description": "True if the shared album allows collaborators (users who have joined\nthe album) to add media items to it. Defaults to false." + "origin": { + "$ref": "Location", + "description": "Origin location for this enrichment item." } - } + }, + "id": "MapEnrichment", + "description": "An enrichment containing a map, showing origin and destination locations." }, - "TextEnrichment": { - "description": "An enrichment containing text.", + "AddEnrichmentToAlbumRequest": { + "description": "Request to add an enrichment to a specific album at a specific position.", "type": "object", "properties": { - "text": { - "description": "Text for this text enrichment item.", - "type": "string" + "newEnrichmentItem": { + "$ref": "NewEnrichmentItem", + "description": "The enrichment to be added." + }, + "albumPosition": { + "$ref": "AlbumPosition", + "description": "The position where the enrichment will be inserted." } }, - "id": "TextEnrichment" + "id": "AddEnrichmentToAlbumRequest" }, - "ContentFilter": { - "description": "This filter is used to define which results to return based on the contents\nof the media item.\n\nIt is possible to specify a list of categories to include, and/or a list of\ncategories to exclude. Within each list, the categories are combined with an\nOR. For example, if the content filter looks like:\n\n included_content_categories: [c1, c2, c3]\n\nIt would get media items that contain (c1 OR c2 OR c3).\n\nAnd if the content filter looks like:\n\n excluded_content_categories: [c1, c2, c3]\n\nIt would get media items that contain NOT (c1 OR c2 OR c3).\nYou can also include some categories while excluding others, as in this\nproto:\n\n included_content_categories: [c1, c2],\n excluded_content_category: [c3, c4]\n\nIt would get media items that contain (c1 OR c2) AND NOT (c3 OR c4).\n\nA category that appears in \u003ccode\u003eincludedContentategories\u003c/code\u003e must not\nappear in \u003ccode\u003eexcludedContentCategories\u003c/code\u003e.", + "DateRange": { + "description": "Defines a range of dates. Both dates must be of the same format (see Date\ndefinition for more).", "type": "object", "properties": { - "excludedContentCategories": { - "enumDescriptions": [ - "Default content category. This category is ignored if any other category is\nalso listed.", - "Media items containing landscapes.", - "Media items containing receipts.", - "Media items containing cityscapes.", - "Media items containing landmarks.", - "Media items that are selfies.", - "Media items containing people.", - "Media items containing pets.", - "Media items from weddings.", - "Media items from birthdays.", - "Media items containing documents.", - "Media items taken during travel.", - "Media items containing animals.", - "Media items containing food.", - "Media items from sporting events.", - "Media items taken at night.", - "Media items from performances.", - "Media items containing whiteboards.", - "Media items that are screenshots.", - "Media items that are considered to be 'utility. Including, but not limited\nto documents, screenshots, whiteboards etc." - ], - "description": "The set of categories that must NOT be present in the media items in the\nresult. The items in the set are ORed. There is a maximum of 10\nexcludedContentCategories per request.", - "type": "array", - "items": { - "enum": [ - "NONE", - "LANDSCAPES", - "RECEIPTS", - "CITYSCAPES", - "LANDMARKS", - "SELFIES", - "PEOPLE", - "PETS", - "WEDDINGS", - "BIRTHDAYS", - "DOCUMENTS", - "TRAVEL", - "ANIMALS", - "FOOD", - "SPORT", - "NIGHT", - "PERFORMANCES", - "WHITEBOARDS", - "SCREENSHOTS", - "UTILITY" - ], - "type": "string" - } + "endDate": { + "$ref": "Date", + "description": "The end date (included as part of the range) in the same format as the\nstart date." }, - "includedContentCategories": { - "enumDescriptions": [ - "Default content category. This category is ignored if any other category is\nalso listed.", - "Media items containing landscapes.", - "Media items containing receipts.", - "Media items containing cityscapes.", - "Media items containing landmarks.", - "Media items that are selfies.", - "Media items containing people.", - "Media items containing pets.", - "Media items from weddings.", - "Media items from birthdays.", - "Media items containing documents.", - "Media items taken during travel.", - "Media items containing animals.", - "Media items containing food.", - "Media items from sporting events.", - "Media items taken at night.", - "Media items from performances.", - "Media items containing whiteboards.", - "Media items that are screenshots.", - "Media items that are considered to be 'utility. Including, but not limited\nto documents, screenshots, whiteboards etc." - ], - "description": "The set of categories that must be present in the media items in the\nresult. The items in the set are ORed. There is a maximum of 10\nincludedContentCategories per request.", - "type": "array", - "items": { - "enum": [ - "NONE", - "LANDSCAPES", - "RECEIPTS", - "CITYSCAPES", - "LANDMARKS", - "SELFIES", - "PEOPLE", - "PETS", - "WEDDINGS", - "BIRTHDAYS", - "DOCUMENTS", - "TRAVEL", - "ANIMALS", - "FOOD", - "SPORT", - "NIGHT", - "PERFORMANCES", - "WHITEBOARDS", - "SCREENSHOTS", - "UTILITY" - ], - "type": "string" - } + "startDate": { + "$ref": "Date", + "description": "The start date (included as part of the range) in one of the formats\ndescribed." } }, - "id": "ContentFilter" + "id": "DateRange" }, - "ShareAlbumResponse": { + "NewMediaItem": { + "description": "New media item that will be created in a user's Google Photos account.", "type": "object", "properties": { - "shareInfo": { - "$ref": "ShareInfo", - "description": "[Output only] Information about the shared album." + "description": { + "description": "Description of the media item. This will be shown to the user in the item's\ninfo section in the Google Photos app.\nThis string should not be more than 1000 characters.", + "type": "string" + }, + "simpleMediaItem": { + "$ref": "SimpleMediaItem", + "description": "A new media item that has been uploaded via the included uploadToken." } }, - "id": "ShareAlbumResponse" + "id": "NewMediaItem" }, - "Date": { - "description": "Represents a whole calendar date. The day may be 0 to represent a year and month where the day is not significant, e.g. a whole calendar month. The month may be 0 to represent a a day and a year where the month is not signficant, e.g. when you want to specify the same day in every month of a year or a specific year. The year may be 0 to represent a month and day independent of year, e.g. anniversary date.", + "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": { - "month": { - "description": "Month of year. Must be from 1 to 12, or 0 if specifying a date without a\nmonth.", + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", "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" + "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" }, - "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" + "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": "Date" + "id": "Status" }, - "Filters": { - "description": "Filters that can be applied to a media item search.\nIf multiple filter options are specified, they are treated as AND with each\nother.", + "MediaTypeFilter": { + "description": "This filter defines the type of media items to be returned, for example\nvideos or photos. All the specified media types are treated as an OR with\neach other.", "type": "object", "properties": { - "includeArchivedMedia": { - "description": "If set, the results will include media items that the user has archived.\nDefaults to false (archived media items are not included).", - "type": "boolean" - }, - "mediaTypeFilter": { - "$ref": "MediaTypeFilter", - "description": "Filters the media items based on the type of media." - }, - "dateFilter": { - "description": "Filters the media items based on their creation date.", - "$ref": "DateFilter" - }, - "contentFilter": { - "$ref": "ContentFilter", - "description": "Filters the media items based on their content." + "mediaTypes": { + "type": "array", + "items": { + "enum": [ + "ALL_MEDIA", + "VIDEO", + "PHOTO" + ], + "type": "string" + }, + "enumDescriptions": [ + "Treated as if no filters are applied. All media types are included.", + "All media items that are considered videos.\nThis also includes movies the user has created using the Google Photos app.", + "All media items that are considered photos. This includes .bmp, .gif, .ico,\n.jpg (and other spellings), .tiff, .webp as well as special photo types\nsuch as iOS live photos, Android motion photos, panoramas, photospheres." + ], + "description": "The types of media items to be included. This field should only be\npopulated with one media type, multiple media types will result in an error\nresponse." } }, - "id": "Filters" + "id": "MediaTypeFilter" }, - "MediaMetadata": { - "description": "Metadata for a media item.", - "type": "object", + "SearchMediaItemsResponse": { "properties": { - "creationTime": { - "description": "Time when the media item was first created (not when it was uploaded to\nGoogle Photos).", - "format": "google-datetime", - "type": "string" - }, - "height": { - "description": "Original height (in pixels) of the media item.", - "format": "int64", + "nextPageToken": { + "description": "[Output only] Token to use to get the next set of media items. Its presence\nis the only reliable indicator of more media items being available in the\nnext request.", "type": "string" }, - "photo": { - "$ref": "Photo", - "description": "Metadata for a photo media type." - }, - "video": { - "$ref": "Video", - "description": "Metadata for a video media type." - }, - "width": { - "type": "string", - "description": "Original width (in pixels) of the media item.", - "format": "int64" + "mediaItems": { + "description": "[Output only] List of media items that match the search parameters.", + "type": "array", + "items": { + "$ref": "MediaItem" + } } }, - "id": "MediaMetadata" + "id": "SearchMediaItemsResponse", + "type": "object" }, - "Location": { + "LocationEnrichment": { + "description": "An enrichment containing a single location.", + "type": "object", "properties": { - "latlng": { - "description": "Position of the location on the map.", - "$ref": "LatLng" - }, - "locationName": { - "description": "Name of the location to be displayed.", - "type": "string" + "location": { + "$ref": "Location", + "description": "Location for this enrichment item." } }, - "id": "Location", - "description": "Represents a physical location.", - "type": "object" + "id": "LocationEnrichment" }, - "SearchMediaItemsRequest": { - "description": "Request to search for media items in a user's library.\n\nIf the album id is specified, this call will return the list of media items\nin the album. If neither filters nor album id are\nspecified, this call will return all media items in a user's Google Photos\nlibrary.\n\nIf filters are specified, this call will return all media items in\nthe user's library which fulfills the criteria based upon the filters.\n\nFilters and album id must not both be set, as this will result in an\ninvalid request.", + "NewEnrichmentItem": { + "id": "NewEnrichmentItem", + "description": "A new enrichment item to be added to an album, used by the\nAddEnrichmentToAlbum call.", "type": "object", "properties": { - "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 the\nsearchMediaItems request.", - "type": "string" - }, - "albumId": { - "description": "Identifier of an album. If populated will list all media items in\nspecified album. Cannot be set in conjunction with any filters.", - "type": "string" + "mapEnrichment": { + "description": "Map to be added to the album.", + "$ref": "MapEnrichment" }, - "pageSize": { - "description": "Maximum number of media items to return in the response. The default number\nof media items to return at a time is 100. The maximum page size is 500.", - "format": "int32", - "type": "integer" + "textEnrichment": { + "$ref": "TextEnrichment", + "description": "Text to be added to the album." }, - "filters": { - "description": "Filters to apply to the request. Cannot be set in conjuction with an\nalbumId.", - "$ref": "Filters" + "locationEnrichment": { + "$ref": "LocationEnrichment", + "description": "Location to be added to the album." } - }, - "id": "SearchMediaItemsRequest" + } }, - "Video": { - "description": "Metadata that is specific to a video, for example, fps and processing status.\nSome of these fields may be null or not included.", + "AlbumPosition": { "type": "object", "properties": { - "status": { - "description": "Processing status of the video.", + "relativeMediaItemId": { + "description": "The media item to which the position is relative to.\nOnly used when position type is AFTER_MEDIA_ITEM.", + "type": "string" + }, + "position": { "type": "string", "enumDescriptions": [ - "Video processing status is unknown.", - "Video is currently being processed. The user will see an icon for this\nvideo in the Google Photos app, however, it will not be playable yet.", - "Video is now ready for viewing.", - "Something has gone wrong and the video has failed to process." + "Default value if this enum is not set.", + "At the beginning of the album.", + "At the end of the album.", + "After a media item.", + "After an enrichment item." ], "enum": [ - "UNSPECIFIED", - "PROCESSING", - "READY", - "FAILED" - ] + "POSITION_TYPE_UNSPECIFIED", + "FIRST_IN_ALBUM", + "LAST_IN_ALBUM", + "AFTER_MEDIA_ITEM", + "AFTER_ENRICHMENT_ITEM" + ], + "description": "Type of position, for a media or enrichment item." }, - "cameraMake": { - "description": "Brand of the camera which took the video.", + "relativeEnrichmentItemId": { + "description": "The enrichment item to which the position is relative to.\nOnly used when position type is AFTER_ENRICHMENT_ITEM.", "type": "string" - }, - "fps": { - "description": "Frame rate of the video.", + } + }, + "id": "AlbumPosition", + "description": "Specifies a position in an album." + }, + "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" }, - "cameraModel": { - "type": "string", - "description": "Model of the camera which took the video." + "longitude": { + "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", + "format": "double", + "type": "number" } }, - "id": "Video" + "id": "LatLng" }, - "NewMediaItemResult": { + "BatchCreateMediaItemsResponse": { + "type": "object", "properties": { - "uploadToken": { - "type": "string", - "description": "The upload token used to create this new media item." + "newMediaItemResults": { + "description": "[Output only] List of media items which were created.", + "type": "array", + "items": { + "$ref": "NewMediaItemResult" + } + } + }, + "id": "BatchCreateMediaItemsResponse" + } + }, + "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": "Photos Library", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/photoslibrary.sharing": { + "description": "Manage and add to shared albums on your behalf" + }, + "https://www.googleapis.com/auth/photoslibrary": { + "description": "View and manage your Google Photos library" + }, + "https://www.googleapis.com/auth/photoslibrary.readonly": { + "description": "View your Google Photos library" + }, + "https://www.googleapis.com/auth/photoslibrary.appendonly": { + "description": "Add to your Google Photos library" + }, + "https://www.googleapis.com/auth/drive.photos.readonly": { + "description": "View the photos, videos and albums in your Google Photos" + }, + "https://www.googleapis.com/auth/photoslibrary.readonly.appcreateddata": { + "description": "Manage photos added by this app" + } + } + } + }, + "rootUrl": "https://photoslibrary.googleapis.com/", + "ownerDomain": "google.com", + "name": "photoslibrary", + "batchPath": "batch", + "fullyEncodeReservedExpansion": true, + "title": "Photos Library API", + "ownerName": "Google", + "resources": { + "mediaItems": { + "methods": { + "batchCreate": { + "request": { + "$ref": "BatchCreateMediaItemsRequest" + }, + "description": "Creates one or more media items in a user's Google Photos library.\nIf an album id is specified, the media item(s) are also added to the album.\nBy default the media item(s) will be added to the end of the library or\nalbum.\n\nIf an album id and position are both defined, then the media items will\nbe added to the album at the specified position.\n\nIf multiple media items are given, they will be inserted at the specified\nposition.", + "response": { + "$ref": "BatchCreateMediaItemsResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/photoslibrary", + "https://www.googleapis.com/auth/photoslibrary.appendonly", + "https://www.googleapis.com/auth/photoslibrary.sharing" + ], + "parameters": {}, + "flatPath": "v1/mediaItems:batchCreate", + "path": "v1/mediaItems:batchCreate", + "id": "photoslibrary.mediaItems.batchCreate" }, - "status": { - "$ref": "Status", - "description": "If an error occurred during the creation of this media item, this field\nwill be populated with information related to the error. Details of this\nstatus can be found down below." + "search": { + "path": "v1/mediaItems:search", + "id": "photoslibrary.mediaItems.search", + "description": "Searches for media items in a user's Google Photos library.\nIf no filters are set, then all media items in the user's library will be\nreturned.\n\nIf an album is set, all media items in the specified album will be\nreturned.\n\nIf filters are specified, anything that matches the filters from the user's\nlibrary will be listed.\n\nIf an album and filters are set, then this will result in an error.", + "request": { + "$ref": "SearchMediaItemsRequest" + }, + "response": { + "$ref": "SearchMediaItemsResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/photoslibrary", + "https://www.googleapis.com/auth/photoslibrary.readonly", + "https://www.googleapis.com/auth/photoslibrary.readonly.appcreateddata" + ], + "flatPath": "v1/mediaItems:search" }, - "mediaItem": { - "$ref": "MediaItem", - "description": "Media item created with the upload token. It is populated if no errors\noccurred and the media item was created successfully." + "get": { + "response": { + "$ref": "MediaItem" + }, + "parameterOrder": [ + "mediaItemId" + ], + "httpMethod": "GET", + "parameters": { + "mediaItemId": { + "pattern": "^[^/]+$", + "location": "path", + "description": "Identifier of media item to be requested.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/photoslibrary", + "https://www.googleapis.com/auth/photoslibrary.readonly", + "https://www.googleapis.com/auth/photoslibrary.readonly.appcreateddata" + ], + "flatPath": "v1/mediaItems/{mediaItemsId}", + "path": "v1/mediaItems/{+mediaItemId}", + "id": "photoslibrary.mediaItems.get", + "description": "Returns the media item specified based on a given media item id." } - }, - "id": "NewMediaItemResult", - "description": "Result of creating a new media item.", - "type": "object" + } }, - "DateFilter": { - "description": "This filter defines the allowed dates or date ranges for the media returned.\nIt is possible to pick a set of specific dates and a set of date ranges.", - "type": "object", - "properties": { - "dates": { - "description": "List of dates that the media items must have been created on. There is a\nmaximum of 5 dates that can be included per request.", - "type": "array", - "items": { - "$ref": "Date" - } + "sharedAlbums": { + "methods": { + "list": { + "description": "Lists all shared albums shown to a user in the 'Sharing' tab of the\nGoogle Photos app.", + "httpMethod": "GET", + "response": { + "$ref": "ListSharedAlbumsResponse" + }, + "parameterOrder": [], + "parameters": { + "pageSize": { + "location": "query", + "description": "Maximum number of albums to return in the response. The default number of\nalbums to return at a time is 20. The maximum page size is 50.", + "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 the\nlistSharedAlbums request.", + "type": "string", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/photoslibrary", + "https://www.googleapis.com/auth/photoslibrary.readonly", + "https://www.googleapis.com/auth/photoslibrary.readonly.appcreateddata" + ], + "flatPath": "v1/sharedAlbums", + "id": "photoslibrary.sharedAlbums.list", + "path": "v1/sharedAlbums" }, - "ranges": { - "description": "List of dates ranges that the media items must have been created in. There\nis a maximum of 5 dates ranges that can be included per request.", - "type": "array", - "items": { - "$ref": "DateRange" + "join": { + "response": { + "$ref": "JoinSharedAlbumResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/photoslibrary.sharing" + ], + "flatPath": "v1/sharedAlbums:join", + "path": "v1/sharedAlbums:join", + "id": "photoslibrary.sharedAlbums.join", + "description": "Joins a shared album on behalf of the Google Photos user.", + "request": { + "$ref": "JoinSharedAlbumRequest" } } - }, - "id": "DateFilter" + } }, - "ListSharedAlbumsResponse": { - "type": "object", - "properties": { - "sharedAlbums": { - "type": "array", - "items": { + "albums": { + "methods": { + "create": { + "request": { + "$ref": "CreateAlbumRequest" + }, + "description": "Creates an album in a user's Google Photos library.", + "response": { "$ref": "Album" }, - "description": "[Output only] List of shared albums that were requested." + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/photoslibrary", + "https://www.googleapis.com/auth/photoslibrary.appendonly", + "https://www.googleapis.com/auth/photoslibrary.sharing" + ], + "parameters": {}, + "flatPath": "v1/albums", + "path": "v1/albums", + "id": "photoslibrary.albums.create" }, - "nextPageToken": { - "description": "[Output only] Token to use to get the next set of shared albums. Populated\nif there are more shared albums to retrieve for this request.", - "type": "string" - } - }, - "id": "ListSharedAlbumsResponse" - }, - "ListAlbumsResponse": { - "properties": { - "nextPageToken": { - "description": "[Output only] Token to use to get the next set of albums. Populated if\nthere are more albums to retrieve for this request.", - "type": "string" + "share": { + "response": { + "$ref": "ShareAlbumResponse" + }, + "parameterOrder": [ + "albumId" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/photoslibrary.sharing" + ], + "parameters": { + "albumId": { + "description": "Identifier of the album to be shared. This album id must belong to an album\ncreated by the developer.\n.", + "required": true, + "type": "string", + "pattern": "^[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/albums/{albumsId}:share", + "path": "v1/albums/{+albumId}:share", + "id": "photoslibrary.albums.share", + "request": { + "$ref": "ShareAlbumRequest" + }, + "description": "Marks an album as 'shared' and accessible to other users. This action can\nonly be performed on albums which were created by the developer via the\nAPI." }, - "albums": { - "description": "[Output only] List of albums that were created by the user.", - "type": "array", - "items": { - "$ref": "Album" + "list": { + "parameters": { + "pageSize": { + "description": "Maximum number of albums to return in the response. The default number of\nalbums to return at a time is 20. The maximum page size is 50.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "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 the\nlistAlbums request.", + "type": "string", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/photoslibrary", + "https://www.googleapis.com/auth/photoslibrary.readonly", + "https://www.googleapis.com/auth/photoslibrary.readonly.appcreateddata" + ], + "flatPath": "v1/albums", + "id": "photoslibrary.albums.list", + "path": "v1/albums", + "description": "Lists all albums shown to a user in the 'Albums' tab of the Google\nPhotos app.", + "httpMethod": "GET", + "parameterOrder": [], + "response": { + "$ref": "ListAlbumsResponse" } + }, + "get": { + "httpMethod": "GET", + "parameterOrder": [ + "albumId" + ], + "response": { + "$ref": "Album" + }, + "parameters": { + "albumId": { + "pattern": "^[^/]+$", + "location": "path", + "description": "Identifier of the album to be requested.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/drive.photos.readonly", + "https://www.googleapis.com/auth/photoslibrary", + "https://www.googleapis.com/auth/photoslibrary.readonly", + "https://www.googleapis.com/auth/photoslibrary.readonly.appcreateddata" + ], + "flatPath": "v1/albums/{albumsId}", + "id": "photoslibrary.albums.get", + "path": "v1/albums/{+albumId}", + "description": "Returns the album specified by the given album id." + }, + "addEnrichment": { + "flatPath": "v1/albums/{albumsId}:addEnrichment", + "id": "photoslibrary.albums.addEnrichment", + "path": "v1/albums/{+albumId}:addEnrichment", + "description": "Adds an enrichment to a specified position in a defined album.", + "request": { + "$ref": "AddEnrichmentToAlbumRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "albumId" + ], + "response": { + "$ref": "AddEnrichmentToAlbumResponse" + }, + "parameters": { + "albumId": { + "location": "path", + "description": "Identifier of the album where the enrichment will be added.", + "required": true, + "type": "string", + "pattern": "^[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/photoslibrary", + "https://www.googleapis.com/auth/photoslibrary.appendonly", + "https://www.googleapis.com/auth/photoslibrary.sharing" + ] } - }, - "id": "ListAlbumsResponse", - "type": "object" + } + } + }, + "parameters": { + "oauth_token": { + "location": "query", + "description": "OAuth 2.0 token for the current user.", + "type": "string" }, - "SimpleMediaItem": { - "description": "A simple media item to be created in Google Photos via an upload token.", - "type": "object", - "properties": { - "uploadToken": { - "description": "Token identifying the media bytes which have been uploaded to Google.", - "type": "string" - } - }, - "id": "SimpleMediaItem" + "bearer_token": { + "type": "string", + "location": "query", + "description": "OAuth bearer token." }, - "CreateAlbumRequest": { - "type": "object", - "properties": { - "album": { - "$ref": "Album", - "description": "The album to be created." - } - }, - "id": "CreateAlbumRequest", - "description": "Request to create an album in Google Photos." + "upload_protocol": { + "type": "string", + "location": "query", + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")." }, - "AddEnrichmentToAlbumResponse": { - "type": "object", - "properties": { - "enrichmentItem": { - "$ref": "EnrichmentItem", - "description": "[Output only] Enrichment which was added." - } - }, - "id": "AddEnrichmentToAlbumResponse" + "prettyPrint": { + "type": "boolean", + "default": "true", + "location": "query", + "description": "Returns response with indentations and line breaks." }, - "ContributorInfo": { - "description": "Information about a user who contributed the media item. Note that this\ninformation is only included if the album containing the media item is\nshared, was created by you and you have the sharing scope.", - "type": "object", - "properties": { - "profilePictureBaseUrl": { - "description": "URL to the profile picture of the contributor.", - "type": "string" - }, - "displayName": { - "description": "Display name of the contributor.", - "type": "string" - } - }, - "id": "ContributorInfo" + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string", + "location": "query" }, - "JoinSharedAlbumResponse": { - "type": "object", - "properties": {}, - "id": "JoinSharedAlbumResponse", - "description": "Response to successfully joining the shared album on behalf of the user." + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "type": "string", + "location": "query" }, - "ShareAlbumRequest": { - "description": "Request to make an album shared in Google Photos.", - "type": "object", - "properties": { - "sharedAlbumOptions": { - "$ref": "SharedAlbumOptions", - "description": "Options to be set when converting the album to a shared album." - } - }, - "id": "ShareAlbumRequest" + "$.xgafv": { + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "enum": [ + "1", + "2" + ], + "description": "V1 error format.", + "type": "string" }, - "Photo": { - "id": "Photo", - "description": "Metadata that is specific to a photo, for example, ISO, focal length and\nexposure time. Some of these fields may be null or not included.", - "type": "object", - "properties": { - "cameraMake": { - "type": "string", - "description": "Brand of the camera which took the photo." - }, - "focalLength": { - "description": "Focal length of the photo.", - "format": "float", - "type": "number" - }, - "isoEquivalent": { - "description": "ISO of the photo.", - "format": "int32", - "type": "integer" - }, - "apertureFNumber": { - "description": "Apeture f number of the photo.", - "format": "float", - "type": "number" - }, - "exposureTime": { - "description": "Exposure time of the photo.", - "format": "google-duration", - "type": "string" - }, - "cameraModel": { - "description": "Model of the camera which took the photo.", - "type": "string" - } - } + "callback": { + "location": "query", + "description": "JSONP", + "type": "string" }, - "EnrichmentItem": { - "description": "An enrichment item.", - "type": "object", - "properties": { - "id": { - "description": "Identifier of the enrichment item.", - "type": "string" - } - }, - "id": "EnrichmentItem" + "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." }, - "BatchCreateMediaItemsRequest": { - "id": "BatchCreateMediaItemsRequest", - "description": "Request to create one or more media items in a user's Google Photos library.\nIf an \u003ccode\u003ealbumid\u003c/code\u003e is specified, the media items are also added to\nthat album. \u003ccode\u003ealbumPosition\u003c/code\u003e is optional and can only be specified\nif an \u003ccode\u003ealbumId\u003c/code\u003e is set.", - "type": "object", - "properties": { - "albumPosition": { - "description": "Position in the album where the media item(s) will be added. If not\nspecified, the media item(s) will be added to the end of the album (as per\nthe default value which is LAST_IN_ALBUM).\nThe request will fail if this field is present but no album_id is\nspecified.", - "$ref": "AlbumPosition" - }, - "albumId": { - "description": "Identifier of the album where the media item(s) will be added. They will\nalso be added to the user's library. This is an optional field.", - "type": "string" - }, - "newMediaItems": { - "type": "array", - "items": { - "$ref": "NewMediaItem" - }, - "description": "List of media items to be created." - } - } + "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" }, - "AddEnrichmentToAlbumRequest": { - "description": "Request to add an enrichment to a specific album at a specific position.", - "type": "object", - "properties": { - "albumPosition": { - "$ref": "AlbumPosition", - "description": "The position where the enrichment will be inserted." - }, - "newEnrichmentItem": { - "$ref": "NewEnrichmentItem", - "description": "The enrichment to be added." - } - }, - "id": "AddEnrichmentToAlbumRequest" + "access_token": { + "location": "query", + "description": "OAuth access token.", + "type": "string" }, - "MapEnrichment": { - "type": "object", - "properties": { - "origin": { - "$ref": "Location", - "description": "Origin location for this enrichment item." - }, - "destination": { - "$ref": "Location", - "description": "Destination location for this enrichemt item." - } - }, - "id": "MapEnrichment", - "description": "An enrichment containing a map, showing origin and destination locations." - } - }, - "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": "Photos Library", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/drive.photos.readonly": { - "description": "View the photos, videos and albums in your Google Photos" - }, - "https://www.googleapis.com/auth/photoslibrary.readonly.appcreateddata": { - "description": "Manage photos added by this app" - }, - "https://www.googleapis.com/auth/photoslibrary.sharing": { - "description": "Manage and add to shared albums on your behalf" - }, - "https://www.googleapis.com/auth/photoslibrary": { - "description": "View and manage your Google Photos library" - }, - "https://www.googleapis.com/auth/photoslibrary.readonly": { - "description": "View your Google Photos library" - }, - "https://www.googleapis.com/auth/photoslibrary.appendonly": { - "description": "Add to your Google Photos library" - } - } + "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" } - }, - "rootUrl": "https://photoslibrary.googleapis.com/", - "ownerDomain": "google.com", - "name": "photoslibrary" + } } diff --git a/DiscoveryJson/plus_v1.json b/DiscoveryJson/plus_v1.json index 6d1a690594..5f34636f35 100644 --- a/DiscoveryJson/plus_v1.json +++ b/DiscoveryJson/plus_v1.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/JrsYLf9d9OaWSxddgOqy4ZuMKS4\"", + "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/AJpTAkT-d9wWXB2dtcaqW6nYsKQ\"", "discoveryVersion": "v1", "id": "plus:v1", "name": "plus", "version": "v1", - "revision": "20180424", + "revision": "20180507", "title": "Google+ API", "description": "Builds on top of the Google+ platform.", "ownerDomain": "google.com", diff --git a/DiscoveryJson/poly_v1.json b/DiscoveryJson/poly_v1.json index 34bc76f821..6c6c360643 100644 --- a/DiscoveryJson/poly_v1.json +++ b/DiscoveryJson/poly_v1.json @@ -1,316 +1,227 @@ { - "ownerDomain": "google.com", - "name": "poly", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Poly API", - "ownerName": "Google", - "resources": { - "assets": { - "methods": { - "get": { - "httpMethod": "GET", - "response": { - "$ref": "Asset" - }, - "parameterOrder": [ - "name" + "id": "poly:v1", + "revision": "20180507", + "documentationLink": "https://developers.google.com/poly/", + "discoveryVersion": "v1", + "version_module": true, + "schemas": { + "AssetImportMessage": { + "description": "A message generated by the asset import process.", + "type": "object", + "properties": { + "code": { + "description": "The code associated with this message.", + "type": "string", + "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." ], - "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}", - "id": "poly.assets.get", - "path": "v1/{+name}", - "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." + "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" + ] }, - "list": { - "description": "Lists all public, remixable assets. These are assets with an access level of\nPUBLIC and published under the\nCC-By license.", - "response": { - "$ref": "ListAssetsResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { - "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.", - "type": "string", - "location": "query" - }, - "maxComplexity": { - "type": "string", - "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." - }, - "pageSize": { - "type": "integer", - "location": "query", - "description": "The maximum number of assets to be returned. This value must be between `1`\nand `100`. Defaults to `20`.", - "format": "int32" - }, - "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": { - "location": "query", - "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" - }, - "format": { - "location": "query", - "description": "Return only assets with the matching format. Acceptable values are:\n`BLOCKS`, `FBX`, `GLTF`, `GLTF2`, `OBJ`, `TILT`.", - "type": "string" - }, - "curated": { - "location": "query", - "description": "Return only assets that have been curated by the Poly team.", - "type": "boolean" - }, - "category": { - "location": "query", - "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" - } - }, - "flatPath": "v1/assets", - "path": "v1/assets", - "id": "poly.assets.list" + "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." + }, + "filePath": { + "description": "An optional file path. Only present for those error codes that specify it.", + "type": "string" } - } + }, + "id": "AssetImportMessage" }, - "users": { - "resources": { - "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.", - "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": { - "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": { - "type": "integer", - "location": "query", - "description": "The maximum number of assets to be returned. This value must be between `1`\nand `100`. Defaults to `20`.", - "format": "int32" - }, - "format": { - "type": "string", - "location": "query", - "description": "Return only assets with the matching format. Acceptable values are:\n`BLOCKS`, `FBX`, `GLTF`, `GLTF2`, `OBJ`, `TILT`." - } - }, - "flatPath": "v1/users/{usersId}/likedassets", - "path": "v1/{+name}/likedassets", - "id": "poly.users.likedassets.list" - } - } + "ListAssetsResponse": { + "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": { - "methods": { - "list": { - "flatPath": "v1/users/{usersId}/assets", - "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": { - "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": { - "description": "The maximum number of assets to be returned. This value must be between `1`\nand `100`. Defaults to `20`.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "visibility": { - "type": "string", - "location": "query", - "enum": [ - "VISIBILITY_UNSPECIFIED", - "PUBLISHED", - "PRIVATE" - ], - "description": "The visibility of the assets to be returned.\nDefaults to VISIBILITY_UNSPECIFIED which returns all assets." - }, - "name": { - "pattern": "^users/[^/]+$", - "location": "path", - "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" - }, - "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" - } - } - } + "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" } - } - } - }, - "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" + }, + "id": "ListAssetsResponse", + "description": "A response message from a request to list." }, - "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": { - "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": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "uploadType": { - "type": "string", - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." + "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", + "properties": { + "formatComplexity": { + "$ref": "FormatComplexity", + "description": "Complexity stats about this representation of the asset." + }, + "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." + }, + "formatType": { + "description": "A short string that identifies the format type of this representation.\nPossible values are: `FBX`, `GLTF`, `GLTF2`, `OBJ`, and `TILT`.", + "type": "string" + }, + "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" + } + } + }, + "id": "Format" }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" + "Asset": { + "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", + "properties": { + "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" + }, + "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" + }, + "license": { + "description": "The license under which the author has made the asset available\nfor use, if any.", + "type": "string", + "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" + ] + }, + "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", + "items": { + "$ref": "Format" + } + }, + "thumbnail": { + "$ref": "File", + "description": "The thumbnail image for the asset." + }, + "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." + }, + "description": { + "type": "string", + "description": "The human-readable description, set by the asset's author." + }, + "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": { + "type": "string", + "description": "The author's publicly visible name. Use this name when giving credit to the\nauthor. For more information, see [Licensing](/poly/discover/licensing)." + }, + "name": { + "description": "The unique identifier for the asset in the form:\n`assets/{ASSET_ID}`.", + "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" + }, + "displayName": { + "description": "The human-readable name, set by the asset's author.", + "type": "string" + } + } }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" + "PresentationParams": { + "type": "object", + "properties": { + "colorSpace": { + "type": "string", + "enumDescriptions": [ + "Invalid color value.", + "Linear color values. Default.", + "Colors should be converted to linear by assuming gamma = 2.0." + ], + "enum": [ + "UNKNOWN", + "LINEAR", + "GAMMA" + ], + "description": "The materials' diffuse/albedo color. This does not apply to vertex colors\nor texture maps." + }, + "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." }, - "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://poly.googleapis.com/", - "servicePath": "", - "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", - "kind": "discovery#restDescription", - "basePath": "", - "revision": "20180507", - "documentationLink": "https://developers.google.com/poly/", - "id": "poly:v1", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { "UserAsset": { - "id": "UserAsset", "description": "Data about the user's asset.", "type": "object", "properties": { "asset": { - "description": "An Asset.", - "$ref": "Asset" + "$ref": "Asset", + "description": "An Asset." } - } + }, + "id": "UserAsset" }, "ListLikedAssetsResponse": { "description": "A response message from a request to list.", @@ -336,24 +247,16 @@ "id": "ListLikedAssetsResponse" }, "ObjParseError": { + "description": "Details of an error resulting from parsing an OBJ file", + "type": "object", "properties": { - "startIndex": { - "description": "The starting character index at which the problem was found.", - "format": "int32", - "type": "integer" - }, - "endIndex": { - "description": "The ending character index at which the problem was found.", - "format": "int32", - "type": "integer" - }, "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" }, "filePath": { - "type": "string", - "description": "The file path in which the problem was found." + "description": "The file path in which the problem was found.", + "type": "string" }, "lineNumber": { "description": "Line number at which the problem was found.", @@ -361,34 +264,6 @@ "type": "integer" }, "code": { - "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" - ], "description": "The type of problem found (required).", "type": "string", "enumDescriptions": [ @@ -418,17 +293,59 @@ "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." - ] - } - }, - "id": "ObjParseError", - "description": "Details of an error resulting from parsing an OBJ file", - "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.", + ], + "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" + ] + }, + "startIndex": { + "description": "The starting character index at which the problem was found.", + "format": "int32", + "type": "integer" + }, + "endIndex": { + "description": "The ending character index at which the problem was found.", + "format": "int32", + "type": "integer" + } + }, + "id": "ObjParseError" + }, + "Quaternion": { + "id": "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", @@ -440,21 +357,13 @@ "type": "number" }, "w": { - "type": "number", "description": "The scalar component.", - "format": "double" - }, - "y": { - "description": "The y component.", "format": "double", "type": "number" } - }, - "id": "Quaternion" + } }, "ListUserAssetsResponse": { - "description": "A response message from a request to list.", - "type": "object", "properties": { "userAssets": { "description": "A list of UserAssets matching the request.", @@ -473,9 +382,13 @@ "type": "integer" } }, - "id": "ListUserAssetsResponse" + "id": "ListUserAssetsResponse", + "description": "A response message from a request to list.", + "type": "object" }, "FormatComplexity": { + "description": "Information on the complexity of this Format.", + "type": "object", "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).", @@ -488,35 +401,7 @@ "format": "int64" } }, - "id": "FormatComplexity", - "description": "Information on the complexity of this Format.", - "type": "object" - }, - "StartAssetImportResponse": { - "description": "A response message from a request to list.\nThis is returned in the response field of the Operation.", - "type": "object", - "properties": { - "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.", - "type": "array", - "items": { - "$ref": "AssetImportMessage" - } - }, - "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" - }, - "publishUrl": { - "type": "string", - "description": "The publish URL for the asset." - }, - "assetImportId": { - "description": "The id of the asset import.", - "type": "string" - } - }, - "id": "StartAssetImportResponse" + "id": "FormatComplexity" }, "ImageError": { "description": "A message resulting from reading an image file.", @@ -527,6 +412,7 @@ "type": "string" }, "code": { + "type": "string", "enumDescriptions": [ "Unknown error code.", "We were unable to read the image file.", @@ -539,12 +425,37 @@ "IMAGE_TOO_BIG", "WRONG_IMAGE_TYPE" ], - "description": "The type of image error encountered. Optional for older image errors.", - "type": "string" + "description": "The type of image error encountered. Optional for older image errors." } }, "id": "ImageError" }, + "StartAssetImportResponse": { + "properties": { + "assetId": { + "type": "string", + "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." + }, + "publishUrl": { + "type": "string", + "description": "The publish URL for the asset." + }, + "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.", + "type": "array", + "items": { + "$ref": "AssetImportMessage" + } + } + }, + "id": "StartAssetImportResponse", + "description": "A response message from a request to list.\nThis is returned in the response field of the Operation.", + "type": "object" + }, "File": { "description": "Represents a file in Poly, which can be a root,\nresource, or thumbnail file.", "type": "object", @@ -563,220 +474,309 @@ } }, "id": "File" - }, - "AssetImportMessage": { - "description": "A message generated by the asset import process.", - "type": "object", - "properties": { - "code": { - "description": "The code associated with this message.", - "type": "string", - "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." + } + }, + "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": "Poly Service", + "rootUrl": "https://poly.googleapis.com/", + "ownerDomain": "google.com", + "name": "poly", + "batchPath": "batch", + "fullyEncodeReservedExpansion": true, + "title": "Poly API", + "ownerName": "Google", + "resources": { + "assets": { + "methods": { + "get": { + "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.", + "response": { + "$ref": "Asset" + }, + "parameterOrder": [ + "name" ], - "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" - ] - }, - "imageError": { - "$ref": "ImageError", - "description": "An optional image error. Only present for INVALID_IMAGE_FILE." - }, - "objParseError": { - "description": "An optional OBJ parse error. Only present for OBJ_PARSE_ERROR.", - "$ref": "ObjParseError" + "httpMethod": "GET", + "parameters": { + "name": { + "description": "Required. An asset's name in the form `assets/{ASSET_ID}`.", + "required": true, + "type": "string", + "pattern": "^assets/[^/]+$", + "location": "path" + } + } }, - "filePath": { - "description": "An optional file path. Only present for those error codes that specify it.", - "type": "string" + "list": { + "description": "Lists all public, remixable assets. These are assets with an access level of\nPUBLIC and published under the\nCC-By license.", + "response": { + "$ref": "ListAssetsResponse" + }, + "parameterOrder": [], + "httpMethod": "GET", + "parameters": { + "curated": { + "type": "boolean", + "location": "query", + "description": "Return only assets that have been curated by the Poly team." + }, + "category": { + "location": "query", + "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" + }, + "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.", + "type": "string", + "location": "query", + "enum": [ + "COMPLEXITY_UNSPECIFIED", + "COMPLEX", + "MEDIUM", + "SIMPLE" + ] + }, + "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.", + "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" + }, + "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.", + "type": "string", + "location": "query" + }, + "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" + } + }, + "flatPath": "v1/assets", + "path": "v1/assets", + "id": "poly.assets.list" } - }, - "id": "AssetImportMessage" + } }, - "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" - }, + "users": { + "resources": { "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": { - "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" + "methods": { + "list": { + "response": { + "$ref": "ListUserAssetsResponse" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "parameters": { + "visibility": { + "type": "string", + "location": "query", + "enum": [ + "VISIBILITY_UNSPECIFIED", + "PUBLISHED", + "PRIVATE" + ], + "description": "The visibility of the assets to be returned.\nDefaults to VISIBILITY_UNSPECIFIED which returns all assets." + }, + "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`. Defaults to `BEST`, which ranks assets\nbased on a combination of popularity and other features.", + "type": "string" + }, + "format": { + "type": "string", + "location": "query", + "description": "Return only assets with the matching format. Acceptable values are:\n`BLOCKS`, `FBX`, `GLTF`, `GLTF2`, `OBJ`, and `TILT`." + }, + "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": { + "description": "The maximum number of assets to be returned. This value must be between `1`\nand `100`. Defaults to `20`.", + "format": "int32", + "type": "integer", + "location": "query" + } + }, + "flatPath": "v1/users/{usersId}/assets", + "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." + } } }, - "formatComplexity": { - "$ref": "FormatComplexity", - "description": "Complexity stats about this representation of the asset." - }, - "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." - }, - "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": { - "description": "The visibility of the asset and who can access it.", - "type": "string", - "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" - ] - }, - "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" - }, - "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" - }, - "displayName": { - "type": "string", - "description": "The human-readable name, set by the asset's author." - }, - "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", - "items": { - "$ref": "Format" + "likedassets": { + "methods": { + "list": { + "response": { + "$ref": "ListLikedAssetsResponse" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "parameters": { + "name": { + "pattern": "^users/[^/]+$", + "location": "path", + "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" + }, + "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": { + "type": "string", + "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." + }, + "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." + } } - }, - "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." - }, - "description": { - "type": "string", - "description": "The human-readable description, set by the asset's author." } - }, - "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": { - "description": "Hints for displaying the asset, based on information available when the asset\nwas uploaded.", - "type": "object", - "properties": { - "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." - }, - "colorSpace": { - "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." - ], - "enum": [ - "UNKNOWN", - "LINEAR", - "GAMMA" - ] - } - }, - "id": "PresentationParams" + } } }, - "icons": { - "x32": "http://www.google.com/images/icons/product/search-32.gif", - "x16": "http://www.google.com/images/icons/product/search-16.gif" + "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" + }, + "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": { + "type": "string", + "location": "query", + "description": "JSONP" + }, + "$.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" + ] + }, + "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" + } }, - "protocol": "rest", - "canonicalName": "Poly Service", - "rootUrl": "https://poly.googleapis.com/" + "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": "" } diff --git a/DiscoveryJson/proximitybeacon_v1beta1.json b/DiscoveryJson/proximitybeacon_v1beta1.json index 4215207e10..722504acf2 100644 --- a/DiscoveryJson/proximitybeacon_v1beta1.json +++ b/DiscoveryJson/proximitybeacon_v1beta1.json @@ -1,8 +1,4 @@ { - "basePath": "", - "ownerDomain": "google.com", - "name": "proximitybeacon", - "batchPath": "batch", "revision": "20180317", "documentationLink": "https://developers.google.com/beacons/proximity/", "id": "proximitybeacon:v1beta1", @@ -14,77 +10,77 @@ "beaconinfo": { "methods": { "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.", + "request": { + "$ref": "GetInfoForObservedBeaconsRequest" + }, + "httpMethod": "POST", + "parameterOrder": [], "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.", - "request": { - "$ref": "GetInfoForObservedBeaconsRequest" - } + "path": "v1beta1/beaconinfo:getforobserved" } } }, "namespaces": { "methods": { - "update": { - "flatPath": "v1beta1/namespaces/{namespacesId}", - "path": "v1beta1/{+namespaceName}", - "id": "proximitybeacon.namespaces.update", - "description": "Updates the information about the specified namespace. Only the namespace\nvisibility can be updated.", - "request": { - "$ref": "Namespace" - }, + "list": { "response": { - "$ref": "Namespace" + "$ref": "ListNamespacesResponse" }, - "parameterOrder": [ - "namespaceName" - ], - "httpMethod": "PUT", + "parameterOrder": [], + "httpMethod": "GET", "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.", - "required": true, - "type": "string" - }, "projectId": { "location": "query", - "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.", + "description": "The project id to list namespaces under.\nOptional.", "type": "string" } }, "scopes": [ "https://www.googleapis.com/auth/userlocation.beacon.registry" - ] - }, - "list": { + ], "flatPath": "v1beta1/namespaces", "path": "v1beta1/namespaces", "id": "proximitybeacon.namespaces.list", - "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.", + "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." + }, + "update": { "response": { - "$ref": "ListNamespacesResponse" + "$ref": "Namespace" }, - "parameterOrder": [], - "httpMethod": "GET", + "parameterOrder": [ + "namespaceName" + ], + "httpMethod": "PUT", "scopes": [ "https://www.googleapis.com/auth/userlocation.beacon.registry" ], "parameters": { + "namespaceName": { + "description": "Resource name of this namespace. Namespaces names have the format:\n\u003ccode\u003enamespaces/\u003cvar\u003enamespace\u003c/var\u003e\u003c/code\u003e.", + "required": true, + "type": "string", + "pattern": "^namespaces/[^/]+$", + "location": "path" + }, "projectId": { - "location": "query", - "description": "The project id to list namespaces under.\nOptional.", - "type": "string" + "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" } - } + }, + "flatPath": "v1beta1/namespaces/{namespacesId}", + "path": "v1beta1/{+namespaceName}", + "id": "proximitybeacon.namespaces.update", + "request": { + "$ref": "Namespace" + }, + "description": "Updates the information about the specified namespace. Only the namespace\nvisibility can be updated." } } }, @@ -109,10 +105,37 @@ }, "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.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "beaconName" + ], + "httpMethod": "POST", + "parameters": { + "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" + }, + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ], + "flatPath": "v1beta1/beacons/{beaconsId}:activate", + "path": "v1beta1/{+beaconName}:activate", + "id": "proximitybeacon.beacons.activate" + }, "get": { - "flatPath": "v1beta1/beacons/{beaconsId}", - "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" @@ -121,6 +144,9 @@ "beaconName" ], "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ], "parameters": { "beaconName": { "location": "path", @@ -130,33 +156,34 @@ "pattern": "^beacons/[^/]+$" }, "projectId": { - "location": "query", "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" + "type": "string", + "location": "query" } }, - "scopes": [ - "https://www.googleapis.com/auth/userlocation.beacon.registry" - ] + "flatPath": "v1beta1/beacons/{beaconsId}", + "path": "v1beta1/{+beaconName}", + "id": "proximitybeacon.beacons.get" }, "update": { - "response": { + "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.", + "request": { "$ref": "Beacon" }, + "httpMethod": "PUT", "parameterOrder": [ "beaconName" ], - "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/userlocation.beacon.registry" - ], + "response": { + "$ref": "Beacon" + }, "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, `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" + "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.", @@ -164,13 +191,12 @@ "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." + "path": "v1beta1/{+beaconName}" }, "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.", @@ -182,17 +208,17 @@ ], "httpMethod": "POST", "parameters": { - "beaconName": { - "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", - "pattern": "^beacons/[^/]+$" - }, "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" + }, + "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.", + "required": true, + "type": "string", + "pattern": "^beacons/[^/]+$", + "location": "path" } }, "scopes": [ @@ -203,34 +229,34 @@ "id": "proximitybeacon.beacons.decommission" }, "delete": { - "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.", "httpMethod": "DELETE", - "parameterOrder": [ - "beaconName" - ], "response": { "$ref": "Empty" }, + "parameterOrder": [ + "beaconName" + ], "parameters": { - "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" - }, "beaconName": { - "pattern": "^beacons/[^/]+$", "location": "path", "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/[^/]+$" + }, + "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": { "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.", @@ -242,17 +268,17 @@ ], "httpMethod": "POST", "parameters": { - "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" - }, "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.", "required": true, "type": "string", "pattern": "^beacons/[^/]+$", "location": "path" + }, + "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": [ @@ -262,30 +288,6 @@ "path": "v1beta1/{+beaconName}:deactivate", "id": "proximitybeacon.beacons.deactivate" }, - "register": { - "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", - "request": { - "$ref": "Beacon" - }, - "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." - }, "list": { "response": { "$ref": "ListBeaconsResponse" @@ -296,6 +298,11 @@ "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": { "location": "query", "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`", @@ -308,14 +315,9 @@ "location": "query" }, "projectId": { - "location": "query", "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" - }, - "pageToken": { - "location": "query", - "description": "A pagination token obtained from a previous request to list beacons.", - "type": "string" + "type": "string", + "location": "query" } }, "flatPath": "v1beta1/beacons", @@ -323,43 +325,35 @@ "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." }, - "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.", + "register": { "response": { - "$ref": "Empty" + "$ref": "Beacon" }, - "parameterOrder": [ - "beaconName" - ], + "parameterOrder": [], "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/userlocation.beacon.registry" - ], "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" + "location": "query", + "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" } }, - "flatPath": "v1beta1/beacons/{beaconsId}:activate", - "path": "v1beta1/{+beaconName}:activate", - "id": "proximitybeacon.beacons.activate" + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ], + "flatPath": "v1beta1/beacons:register", + "path": "v1beta1/beacons:register", + "id": "proximitybeacon.beacons.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" + } } }, "resources": { "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" @@ -370,11 +364,11 @@ "httpMethod": "GET", "parameters": { "beaconName": { - "pattern": "^beacons/[^/]+$", - "location": "path", "description": "Beacon that the diagnostics are for.", "required": true, - "type": "string" + "type": "string", + "pattern": "^beacons/[^/]+$", + "location": "path" }, "pageToken": { "location": "query", @@ -382,13 +376,12 @@ "type": "string" }, "pageSize": { + "location": "query", "description": "Specifies the maximum number of results to return. Defaults to\n10. Maximum 1000. Optional.", "format": "int32", - "type": "integer", - "location": "query" + "type": "integer" }, "alertFilter": { - "location": "query", "enum": [ "ALERT_UNSPECIFIED", "WRONG_LOCATION", @@ -396,54 +389,30 @@ "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" + "type": "string", + "location": "query" }, "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", - "location": "query" + "type": "string" } }, "scopes": [ "https://www.googleapis.com/auth/userlocation.beacon.registry" ], - "flatPath": "v1beta1/beacons/{beaconsId}/diagnostics" + "flatPath": "v1beta1/beacons/{beaconsId}/diagnostics", + "path": "v1beta1/{+beaconName}/diagnostics", + "id": "proximitybeacon.beacons.diagnostics.list" } } }, "attachments": { "methods": { - "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.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "attachmentName" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/userlocation.beacon.registry" - ], - "parameters": { - "projectId": { - "location": "query", - "description": "The project id of the attachment to delete. If not provided, the project\nthat is making the request is used.\nOptional.", - "type": "string" - }, - "attachmentName": { - "pattern": "^beacons/[^/]+/attachments/[^/]+$", - "location": "path", - "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" - } - }, - "flatPath": "v1beta1/beacons/{beaconsId}/attachments/{attachmentsId}", - "path": "v1beta1/{+attachmentName}", - "id": "proximitybeacon.beacons.attachments.delete" - }, "list": { + "flatPath": "v1beta1/beacons/{beaconsId}/attachments", + "path": "v1beta1/{+beaconName}/attachments", + "id": "proximitybeacon.beacons.attachments.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.", "response": { "$ref": "ListBeaconAttachmentsResponse" @@ -452,31 +421,28 @@ "beaconName" ], "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ], "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", - "location": "query" + "type": "string" }, "beaconName": { + "location": "path", "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" + "pattern": "^beacons/[^/]+$" }, "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", - "location": "query" + "type": "string" } - }, - "scopes": [ - "https://www.googleapis.com/auth/userlocation.beacon.registry" - ], - "flatPath": "v1beta1/beacons/{beaconsId}/attachments", - "path": "v1beta1/{+beaconName}/attachments", - "id": "proximitybeacon.beacons.attachments.list" + } }, "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.", @@ -492,11 +458,11 @@ "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" + "type": "string", + "pattern": "^beacons/[^/]+$", + "location": "path" }, "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.", @@ -523,28 +489,58 @@ "https://www.googleapis.com/auth/userlocation.beacon.registry" ], "parameters": { + "namespacedType": { + "location": "query", + "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" + }, "beaconName": { - "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", - "pattern": "^beacons/[^/]+$" + "pattern": "^beacons/[^/]+$", + "location": "path" }, "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" - }, - "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" } }, "flatPath": "v1beta1/beacons/{beaconsId}/attachments: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." + }, + "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.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "attachmentName" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ], + "parameters": { + "projectId": { + "location": "query", + "description": "The project id of the attachment to delete. If not provided, the project\nthat is making the request is used.\nOptional.", + "type": "string" + }, + "attachmentName": { + "location": "path", + "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/[^/]+$" + } + }, + "flatPath": "v1beta1/beacons/{beaconsId}/attachments/{attachmentsId}", + "path": "v1beta1/{+attachmentName}", + "id": "proximitybeacon.beacons.attachments.delete" } } } @@ -552,6 +548,22 @@ } }, "parameters": { + "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", @@ -563,35 +575,41 @@ "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" + "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", + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query" + }, + "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": [ @@ -599,13 +617,7 @@ "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" + "type": "string" }, "access_token": { "description": "OAuth access token.", @@ -613,79 +625,277 @@ "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" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", + "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": { - "GetInfoForObservedBeaconsRequest": { - "description": "Request for beacon and attachment information about beacons that\na mobile client has encountered \"in the wild\".", + "GetInfoForObservedBeaconsResponse": { + "description": "Information about the requested beacons, optionally including attachment\ndata.", "type": "object", "properties": { - "observations": { - "description": "The beacons that the client has encountered.\nAt least one must be given.", - "type": "array", - "items": { - "$ref": "Observation" - } - }, - "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.", + "beacons": { + "description": "Public information about beacons.\nMay be empty if the request matched no beacons.", "type": "array", "items": { - "type": "string" + "$ref": "BeaconInfo" } } }, - "id": "GetInfoForObservedBeaconsRequest" - }, - "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" + "id": "GetInfoForObservedBeaconsResponse" }, - "BeaconAttachment": { - "description": "Project-specific data associated with a beacon.", + "Beacon": { + "description": "Details of a beacon device.", "type": "object", "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.", + "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." + }, + "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" }, - "creationTimeMs": { - "description": "The UTC time when this attachment was created, in milliseconds since the\nUNIX epoch.", - "format": "google-datetime", + "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" }, - "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" + "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": { + "description": "The indoor level information for this beacon, if known. As returned by the\nGoogle Maps API.\nOptional.", + "$ref": "IndoorLevel" + }, + "status": { + "description": "Current status of the beacon.\nRequired.", + "type": "string", + "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" + ] + }, + "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": { + "description": "Expected location stability. This is set when the beacon is registered or\nupdated, not automatically detected in any way.\nOptional.", + "type": "string", + "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" + ] + } + }, + "id": "Beacon" + }, + "AdvertisedId": { + "description": "Defines a unique identifier of a beacon as broadcast by the device.", + "type": "object", + "properties": { + "type": { + "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" + ], + "enum": [ + "TYPE_UNSPECIFIED", + "EDDYSTONE", + "IBEACON", + "ALTBEACON", + "EDDYSTONE_EID" + ] + }, + "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" + } + }, + "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": { + "description": "Response to ListNamespacesRequest that contains all the project's namespaces.", + "type": "object", + "properties": { + "namespaces": { + "description": "The attachments that corresponded to the request params.", + "type": "array", + "items": { + "$ref": "Namespace" + } + } + }, + "id": "ListNamespacesResponse" + }, + "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" + }, + "Diagnostics": { + "description": "Diagnostics for a single beacon.", + "type": "object", + "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": { + "type": "string", + "enum": [ + "ALERT_UNSPECIFIED", + "WRONG_LOCATION", + "LOW_BATTERY", + "LOW_ACTIVITY" + ] + } + }, + "estimatedLowBatteryDate": { + "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.", + "$ref": "Date" + } + }, + "id": "Diagnostics" + }, + "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" + }, + "GetInfoForObservedBeaconsRequest": { + "description": "Request for beacon and attachment information about beacons that\na mobile client has encountered \"in the wild\".", + "type": "object", + "properties": { + "observations": { + "description": "The beacons that the client has encountered.\nAt least one must be given.", + "type": "array", + "items": { + "$ref": "Observation" + } }, + "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" + } + } + }, + "id": "GetInfoForObservedBeaconsRequest" + }, + "BeaconAttachment": { + "description": "Project-specific data associated with a beacon.", + "type": "object", + "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" @@ -693,6 +903,21 @@ "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" + }, + "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" + }, + "creationTimeMs": { + "description": "The UTC time when this attachment was created, in milliseconds since the\nUNIX epoch.", + "format": "google-datetime", + "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" } }, "id": "BeaconAttachment" @@ -701,6 +926,16 @@ "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", "properties": { + "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.", + "format": "byte", + "type": "string" + }, "rotationPeriodExponent": { "description": "Indicates the nominal period between each rotation of the beacon's\nephemeral ID. \"Nominal\" because the beacon should randomize the\nactual interval. See [the spec at github](https://github.com/google/eddystone/tree/master/eddystone-eid)\nfor details. This value corresponds to a power-of-two scaler on the\nbeacon's clock: when the scaler value is K, the beacon will begin\nbroadcasting a new ephemeral ID on average every 2^K seconds.", "format": "uint32", @@ -720,23 +955,11 @@ "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" - }, - "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" - }, - "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" } }, "id": "EphemeralIdRegistration" }, "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].", @@ -749,7 +972,9 @@ "type": "number" } }, - "id": "LatLng" + "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.", @@ -774,8 +999,6 @@ "type": "string" }, "servingVisibility": { - "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.", @@ -785,9 +1008,11 @@ "VISIBILITY_UNSPECIFIED", "UNLISTED", "PUBLIC" - ] - } - }, + ], + "description": "Specifies what clients may receive attachments under this namespace\nvia `beaconinfo.getforobserved`.", + "type": "string" + } + }, "id": "Namespace" }, "BeaconInfo": { @@ -833,22 +1058,13 @@ }, "id": "AttachmentInfo" }, - "DeleteAttachmentsResponse": { - "properties": { - "numDeleted": { - "description": "The number of attachments that were deleted.", - "format": "int32", - "type": "integer" - } - }, - "id": "DeleteAttachmentsResponse", - "description": "Response for a request to delete attachments.", - "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.", - "type": "object", "properties": { + "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" + }, "minRotationPeriodExponent": { "description": "Indicates the minimum rotation period supported by the service.\nSee EddystoneEidRegistration.rotation_period_exponent", "format": "uint32", @@ -858,23 +1074,28 @@ "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" + "id": "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" + }, + "DeleteAttachmentsResponse": { + "properties": { + "numDeleted": { + "description": "The number of attachments that were deleted.", + "format": "int32", + "type": "integer" + } + }, + "id": "DeleteAttachmentsResponse", + "description": "Response for a request to delete attachments.", + "type": "object" }, "Observation": { "description": "Represents one beacon observed once.", "type": "object", "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", @@ -884,6 +1105,10 @@ "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" @@ -905,241 +1130,12 @@ } }, "id": "ListDiagnosticsResponse" - }, - "GetInfoForObservedBeaconsResponse": { - "description": "Information about the requested beacons, optionally including attachment\ndata.", - "type": "object", - "properties": { - "beacons": { - "description": "Public information about beacons.\nMay be empty if the request matched no beacons.", - "type": "array", - "items": { - "$ref": "BeaconInfo" - } - } - }, - "id": "GetInfoForObservedBeaconsResponse" - }, - "Beacon": { - "description": "Details of a beacon device.", - "type": "object", - "properties": { - "properties": { - "description": "Properties of the beacon device, for example battery type or firmware\nversion.\nOptional.", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "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" - }, - "indoorLevel": { - "$ref": "IndoorLevel", - "description": "The indoor level information for this beacon, if known. As returned by the\nGoogle Maps API.\nOptional." - }, - "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": { - "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.", - "$ref": "EphemeralIdRegistration" - }, - "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" - }, - "description": { - "description": "Free text used to identify and describe the beacon. Maximum length 140\ncharacters.\nOptional.", - "type": "string" - }, - "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" - }, - "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." - } - }, - "id": "Beacon" - }, - "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": { - "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" - ], - "enum": [ - "TYPE_UNSPECIFIED", - "EDDYSTONE", - "IBEACON", - "ALTBEACON", - "EDDYSTONE_EID" - ], - "description": "Specifies the identifier type.\nRequired.", - "type": "string" - } - }, - "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": { - "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": "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": { - "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": { - "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.", - "$ref": "Date" - }, - "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" - } - }, - "id": "Diagnostics", - "description": "Diagnostics for a single beacon.", - "type": "object" - }, - "ListBeaconsResponse": { - "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", - "description": "Response that contains list beacon results and pagination help.", - "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" + "x32": "http://www.google.com/images/icons/product/search-32.gif", + "x16": "http://www.google.com/images/icons/product/search-16.gif" }, "version": "v1beta1", "baseUrl": "https://proximitybeacon.googleapis.com/", @@ -1155,5 +1151,9 @@ "kind": "discovery#restDescription", "description": "Registers, manages, indexes, and searches beacons.", "servicePath": "", - "rootUrl": "https://proximitybeacon.googleapis.com/" + "rootUrl": "https://proximitybeacon.googleapis.com/", + "basePath": "", + "ownerDomain": "google.com", + "name": "proximitybeacon", + "batchPath": "batch" } diff --git a/DiscoveryJson/pubsub_v1.json b/DiscoveryJson/pubsub_v1.json index ee5b622f4e..5957631ca5 100644 --- a/DiscoveryJson/pubsub_v1.json +++ b/DiscoveryJson/pubsub_v1.json @@ -1,4 +1,7 @@ { + "basePath": "", + "ownerDomain": "google.com", + "name": "pubsub", "batchPath": "batch", "revision": "20180416", "documentationLink": "https://cloud.google.com/pubsub/docs", @@ -9,68 +12,99 @@ "resources": { "projects": { "resources": { - "topics": { + "subscriptions": { "methods": { + "acknowledge": { + "httpMethod": "POST", + "parameterOrder": [ + "subscription" + ], + "response": { + "$ref": "Empty" + }, + "parameters": { + "subscription": { + "description": "The subscription whose message is being acknowledged.\nFormat is `projects/{project}/subscriptions/{sub}`.", + "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}:acknowledge", + "id": "pubsub.projects.subscriptions.acknowledge", + "path": "v1/{+subscription}: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": { "response": { - "$ref": "Topic" + "$ref": "Subscription" }, "parameterOrder": [ - "topic" + "subscription" ], "httpMethod": "GET", "parameters": { - "topic": { + "subscription": { + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", "location": "path", - "description": "The name of the topic to get.\nFormat is `projects/{project}/topics/{topic}`.", + "description": "The name of the subscription to get.\nFormat is `projects/{project}/subscriptions/{sub}`.", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/topics/[^/]+$" + "type": "string" } }, "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", - "description": "Gets the configuration of a topic." + "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}", + "path": "v1/{+subscription}", + "id": "pubsub.projects.subscriptions.get", + "description": "Gets the configuration details of a subscription." }, - "publish": { + "patch": { "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" + "$ref": "UpdateSubscriptionRequest" }, + "description": "Updates an existing subscription. Note that certain properties of a\nsubscription, such as its topic, are not modifiable.", + "httpMethod": "PATCH", "parameterOrder": [ - "topic" + "name" ], - "httpMethod": "POST", + "response": { + "$ref": "Subscription" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], "parameters": { - "topic": { + "name": { + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", "location": "path", - "description": "The messages in the request will be published on this topic.\nFormat is `projects/{project}/topics/{topic}`.", + "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/[^/]+/topics/[^/]+$" + "type": "string" } }, - "flatPath": "v1/projects/{projectsId}/topics/{topicsId}:publish", - "path": "v1/{+topic}:publish", - "id": "pubsub.projects.topics.publish" + "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}", + "id": "pubsub.projects.subscriptions.patch", + "path": "v1/{+name}" }, "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.", + "path": "v1/{+resource}:testIamPermissions", + "id": "pubsub.projects.subscriptions.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" }, @@ -78,38 +112,64 @@ "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/[^/]+/topics/[^/]+$" + "pattern": "^projects/[^/]+/subscriptions/[^/]+$" } }, + "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:testIamPermissions" + }, + "seek": { + "id": "pubsub.projects.subscriptions.seek", + "path": "v1/{+subscription}: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.\n[ALPHA] This method is a part of a closed Alpha API.", + "httpMethod": "POST", + "parameterOrder": [ + "subscription" + ], + "response": { + "$ref": "SeekResponse" + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], - "flatPath": "v1/projects/{projectsId}/topics/{topicsId}:testIamPermissions", - "path": "v1/{+resource}:testIamPermissions", - "id": "pubsub.projects.topics.testIamPermissions" + "parameters": { + "subscription": { + "location": "path", + "description": "The subscription to affect.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$" + } + }, + "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:seek" }, - "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_`.", + "modifyPushConfig": { + "httpMethod": "POST", + "parameterOrder": [ + "subscription" + ], "response": { "$ref": "Empty" }, - "parameterOrder": [ - "topic" - ], - "httpMethod": "DELETE", "parameters": { - "topic": { - "description": "Name of the topic to delete.\nFormat is `projects/{project}/topics/{topic}`.", + "subscription": { + "description": "The name of the subscription.\nFormat is `projects/{project}/subscriptions/{sub}`.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/topics/[^/]+$", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", "location": "path" } }, @@ -117,116 +177,109 @@ "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.delete" + "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:modifyPushConfig", + "id": "pubsub.projects.subscriptions.modifyPushConfig", + "path": "v1/{+subscription}: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" + } }, - "list": { + "delete": { + "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.", "response": { - "$ref": "ListTopicsResponse" + "$ref": "Empty" }, "parameterOrder": [ - "project" + "subscription" ], - "httpMethod": "GET", - "parameters": { - "pageToken": { - "location": "query", - "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" - }, - "pageSize": { - "location": "query", - "description": "Maximum number of topics to return.", - "format": "int32", - "type": "integer" - }, - "project": { - "description": "The name of the cloud project that topics belong to.\nFormat is `projects/{project}`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, + "httpMethod": "DELETE", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], - "flatPath": "v1/projects/{projectsId}/topics", - "path": "v1/{+project}/topics", - "id": "pubsub.projects.topics.list", - "description": "Lists matching topics." + "parameters": { + "subscription": { + "location": "path", + "description": "The subscription to delete.\nFormat is `projects/{project}/subscriptions/{sub}`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$" + } + } }, - "create": { - "description": "Creates the given topic with the given name.", + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", "request": { - "$ref": "Topic" + "$ref": "SetIamPolicyRequest" }, - "httpMethod": "PUT", + "httpMethod": "POST", "parameterOrder": [ - "name" + "resource" ], "response": { - "$ref": "Topic" + "$ref": "Policy" }, "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\"`.", + "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/[^/]+/topics/[^/]+$" + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "location": "path" } }, "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}" + "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:setIamPolicy", + "id": "pubsub.projects.subscriptions.setIamPolicy", + "path": "v1/{+resource}:setIamPolicy" }, - "setIamPolicy": { - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", + "modifyAckDeadline": { + "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": "SetIamPolicyRequest" - }, - "response": { - "$ref": "Policy" + "$ref": "ModifyAckDeadlineRequest" }, + "httpMethod": "POST", "parameterOrder": [ - "resource" + "subscription" ], - "httpMethod": "POST", + "response": { + "$ref": "Empty" + }, "parameters": { - "resource": { + "subscription": { + "location": "path", + "description": "The name of the subscription.\nFormat is `projects/{project}/subscriptions/{sub}`.", "required": true, "type": "string", - "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." + "pattern": "^projects/[^/]+/subscriptions/[^/]+$" } }, "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" + ] }, "getIamPolicy": { - "flatPath": "v1/projects/{projectsId}/topics/{topicsId}:getIamPolicy", - "id": "pubsub.projects.topics.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" }, - "parameterOrder": [ - "resource" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" ], "parameters": { "resource": { @@ -234,124 +287,36 @@ "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/[^/]+$" + "pattern": "^projects/[^/]+/subscriptions/[^/]+$" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ] - } - }, - "resources": { - "subscriptions": { - "methods": { - "list": { - "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": { - "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" - } - }, - "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", - "description": "Lists the names of the subscriptions on this topic.", - "httpMethod": "GET", - "response": { - "$ref": "ListTopicSubscriptionsResponse" - }, - "parameterOrder": [ - "topic" - ] - } - } + "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:getIamPolicy", + "id": "pubsub.projects.subscriptions.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." }, - "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.", - "httpMethod": "GET", - "response": { - "$ref": "ListTopicSnapshotsResponse" - }, - "parameterOrder": [ - "topic" - ], - "parameters": { - "pageToken": { - "location": "query", - "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" - }, - "pageSize": { - "description": "Maximum number of snapshot names to return.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "topic": { - "pattern": "^projects/[^/]+/topics/[^/]+$", - "location": "path", - "description": "The name of the topic that snapshots are attached to.\nFormat is `projects/{project}/topics/{topic}`.", - "required": true, - "type": "string" - } - }, - "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" - } - } - } - } - }, - "subscriptions": { - "methods": { - "create": { - "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}", - "path": "v1/{+name}", - "id": "pubsub.projects.subscriptions.create", + "pull": { + "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:pull", + "path": "v1/{+subscription}:pull", + "id": "pubsub.projects.subscriptions.pull", "request": { - "$ref": "Subscription" + "$ref": "PullRequest" }, - "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.", + "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.", "response": { - "$ref": "Subscription" + "$ref": "PullResponse" }, "parameterOrder": [ - "name" + "subscription" ], - "httpMethod": "PUT", + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], "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\"`.", + "subscription": { + "description": "The subscription from which messages should be pulled.\nFormat is `projects/{project}/subscriptions/{sub}`.", "required": true, "type": "string", "pattern": "^projects/[^/]+/subscriptions/[^/]+$", @@ -359,65 +324,47 @@ } } }, - "acknowledge": { + "list": { + "flatPath": "v1/projects/{projectsId}/subscriptions", + "path": "v1/{+project}/subscriptions", + "id": "pubsub.projects.subscriptions.list", + "description": "Lists matching subscriptions.", "response": { - "$ref": "Empty" + "$ref": "ListSubscriptionsResponse" }, "parameterOrder": [ - "subscription" - ], - "httpMethod": "POST", - "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/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" + "project" ], - "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": { "httpMethod": "GET", - "parameterOrder": [ - "subscription" - ], - "response": { - "$ref": "Subscription" - }, "parameters": { - "subscription": { + "pageToken": { + "location": "query", + "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" + }, + "pageSize": { + "description": "Maximum number of subscriptions to return.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "project": { "location": "path", - "description": "The name of the subscription to get.\nFormat is `projects/{project}/subscriptions/{sub}`.", + "description": "The name of the cloud project that subscriptions belong to.\nFormat is `projects/{project}`.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/subscriptions/[^/]+$" + "pattern": "^projects/[^/]+$" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}", - "id": "pubsub.projects.subscriptions.get", - "path": "v1/{+subscription}", - "description": "Gets the configuration details of a subscription." + ] }, - "patch": { - "description": "Updates an existing subscription. Note that certain properties of a\nsubscription, such as its topic, are not modifiable.", + "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.", "request": { - "$ref": "UpdateSubscriptionRequest" + "$ref": "Subscription" }, "response": { "$ref": "Subscription" @@ -425,7 +372,7 @@ "parameterOrder": [ "name" ], - "httpMethod": "PATCH", + "httpMethod": "PUT", "parameters": { "name": { "location": "path", @@ -441,197 +388,151 @@ ], "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}", "path": "v1/{+name}", - "id": "pubsub.projects.subscriptions.patch" - }, - "testIamPermissions": { + "id": "pubsub.projects.subscriptions.create" + } + } + }, + "snapshots": { + "methods": { + "list": { + "path": "v1/{+project}/snapshots", + "id": "pubsub.projects.snapshots.list", + "description": "Lists the existing snapshots.\n[ALPHA] This method is a part of a closed Alpha API.", + "response": { + "$ref": "ListSnapshotsResponse" + }, + "parameterOrder": [ + "project" + ], + "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 detail is being requested.\nSee the operation documentation for the appropriate value for this field.", + "pageToken": { + "location": "query", + "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" + }, + "pageSize": { + "description": "Maximum number of snapshots to return.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "project": { + "description": "The name of the cloud project that snapshots belong to.\nFormat is `projects/{project}`.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "pattern": "^projects/[^/]+$", "location": "path" } }, + "flatPath": "v1/projects/{projectsId}/snapshots" + }, + "create": { "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], - "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:testIamPermissions", - "path": "v1/{+resource}:testIamPermissions", - "id": "pubsub.projects.subscriptions.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.", + "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}`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/snapshots/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}", + "path": "v1/{+name}", + "id": "pubsub.projects.snapshots.create", "request": { - "$ref": "TestIamPermissionsRequest" + "$ref": "CreateSnapshotRequest" }, + "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.", "response": { - "$ref": "TestIamPermissionsResponse" + "$ref": "Snapshot" }, "parameterOrder": [ - "resource" + "name" ], - "httpMethod": "POST" + "httpMethod": "PUT" }, - "seek": { + "setIamPolicy": { "response": { - "$ref": "SeekResponse" + "$ref": "Policy" }, "parameterOrder": [ - "subscription" + "resource" ], "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], "parameters": { - "subscription": { - "description": "The subscription to affect.", + "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/[^/]+/subscriptions/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/snapshots/[^/]+$" } }, - "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:seek", - "path": "v1/{+subscription}:seek", - "id": "pubsub.projects.subscriptions.seek", + "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", + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", "request": { - "$ref": "SeekRequest" - }, - "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." + "$ref": "SetIamPolicyRequest" + } }, - "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", - "parameters": { - "subscription": { - "description": "The name of the subscription.\nFormat is `projects/{project}/subscriptions/{sub}`.", - "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}:modifyPushConfig" - }, - "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.", + "getIamPolicy": { "response": { - "$ref": "Empty" + "$ref": "Policy" }, "parameterOrder": [ - "subscription" + "resource" ], - "httpMethod": "DELETE", + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], - "parameters": { - "subscription": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", - "location": "path", - "description": "The subscription to delete.\nFormat is `projects/{project}/subscriptions/{sub}`." - } - }, - "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}", - "path": "v1/{+subscription}", - "id": "pubsub.projects.subscriptions.delete" - }, - "setIamPolicy": { - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "request": { - "$ref": "SetIamPolicyRequest" - }, - "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/[^/]+/subscriptions/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:setIamPolicy", - "path": "v1/{+resource}:setIamPolicy", - "id": "pubsub.projects.subscriptions.setIamPolicy" - }, - "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" - }, - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "subscription" - ], - "httpMethod": "POST", - "parameters": { - "subscription": { - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "pattern": "^projects/[^/]+/snapshots/[^/]+$", "location": "path", - "description": "The name of the subscription.\nFormat is `projects/{project}/subscriptions/{sub}`.", - "required": true, - "type": "string" + "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/pubsub" - ], - "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:modifyAckDeadline", - "path": "v1/{+subscription}:modifyAckDeadline", - "id": "pubsub.projects.subscriptions.modifyAckDeadline" - }, - "getIamPolicy": { - "flatPath": "v1/projects/{projectsId}/subscriptions/{subscriptionsId}:getIamPolicy", + "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}:getIamPolicy", "path": "v1/{+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.", + "id": "pubsub.projects.snapshots.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": { + "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}", + "path": "v1/{+snapshot}", + "id": "pubsub.projects.snapshots.get", + "description": "Gets the configuration details of a snapshot.\n[ALPHA] This method is a part of a closed Alpha API.", "response": { - "$ref": "Policy" + "$ref": "Snapshot" }, "parameterOrder": [ - "resource" + "snapshot" ], "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.", + "snapshot": { + "description": "The name of the snapshot to get.\nFormat is `projects/{project}/snapshots/{snap}`.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "pattern": "^projects/[^/]+/snapshots/[^/]+$", "location": "path" } }, @@ -640,91 +541,21 @@ "https://www.googleapis.com/auth/pubsub" ] }, - "pull": { - "httpMethod": "POST", - "parameterOrder": [ - "subscription" - ], - "response": { - "$ref": "PullResponse" - }, - "parameters": { - "subscription": { - "location": "path", - "description": "The subscription from which messages should be pulled.\nFormat is `projects/{project}/subscriptions/{sub}`.", - "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}:pull", - "id": "pubsub.projects.subscriptions.pull", - "path": "v1/{+subscription}: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" - } - }, - "list": { + "patch": { "response": { - "$ref": "ListSubscriptionsResponse" - }, - "parameterOrder": [ - "project" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": { - "pageToken": { - "location": "query", - "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" - }, - "pageSize": { - "location": "query", - "description": "Maximum number of subscriptions to return.", - "format": "int32", - "type": "integer" - }, - "project": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "The name of the cloud project that subscriptions belong to.\nFormat is `projects/{project}`." - } + "$ref": "Snapshot" }, - "flatPath": "v1/projects/{projectsId}/subscriptions", - "path": "v1/{+project}/subscriptions", - "id": "pubsub.projects.subscriptions.list", - "description": "Lists matching subscriptions." - } - } - }, - "snapshots": { - "methods": { - "patch": { - "httpMethod": "PATCH", "parameterOrder": [ "name" ], - "response": { - "$ref": "Snapshot" - }, + "httpMethod": "PATCH", "parameters": { "name": { - "description": "The name of the snapshot.", "required": true, "type": "string", "pattern": "^projects/[^/]+/snapshots/[^/]+$", - "location": "path" + "location": "path", + "description": "The name of the snapshot." } }, "scopes": [ @@ -732,39 +563,13 @@ "https://www.googleapis.com/auth/pubsub" ], "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}", - "id": "pubsub.projects.snapshots.patch", "path": "v1/{+name}", + "id": "pubsub.projects.snapshots.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.", "request": { "$ref": "UpdateSnapshotRequest" } }, - "get": { - "response": { - "$ref": "Snapshot" - }, - "parameterOrder": [ - "snapshot" - ], - "httpMethod": "GET", - "parameters": { - "snapshot": { - "location": "path", - "description": "The name of the snapshot to get.\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" - ], - "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}", - "path": "v1/{+snapshot}", - "id": "pubsub.projects.snapshots.get", - "description": "Gets the configuration details of a snapshot.\n[ALPHA] This method is a part of a closed Alpha API." - }, "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": { @@ -779,11 +584,11 @@ }, "parameters": { "resource": { - "required": true, - "type": "string", "pattern": "^projects/[^/]+/snapshots/[^/]+$", "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." + "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": [ @@ -795,10 +600,6 @@ "path": "v1/{+resource}:testIamPermissions" }, "delete": { - "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}", - "path": "v1/{+snapshot}", - "id": "pubsub.projects.snapshots.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.", "response": { "$ref": "Empty" }, @@ -808,138 +609,340 @@ "httpMethod": "DELETE", "parameters": { "snapshot": { + "description": "The name of the snapshot to delete.\nFormat is `projects/{project}/snapshots/{snap}`.", "required": true, "type": "string", "pattern": "^projects/[^/]+/snapshots/[^/]+$", - "location": "path", - "description": "The name of the snapshot to delete.\nFormat is `projects/{project}/snapshots/{snap}`." + "location": "path" } }, "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.\n[ALPHA] This method is a part of a closed Alpha API.", + ], + "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}", + "path": "v1/{+snapshot}", + "id": "pubsub.projects.snapshots.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." + } + } + }, + "topics": { + "methods": { + "create": { + "flatPath": "v1/projects/{projectsId}/topics/{topicsId}", + "path": "v1/{+name}", + "id": "pubsub.projects.topics.create", + "request": { + "$ref": "Topic" + }, + "description": "Creates the given topic with the given name.", "response": { - "$ref": "ListSnapshotsResponse" + "$ref": "Topic" }, "parameterOrder": [ - "project" + "name" ], - "httpMethod": "GET", + "httpMethod": "PUT", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], "parameters": { - "pageToken": { - "type": "string", - "location": "query", - "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." - }, - "pageSize": { - "location": "query", - "description": "Maximum number of snapshots to return.", - "format": "int32", - "type": "integer" - }, - "project": { + "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/[^/]+$", - "location": "path", - "description": "The name of the cloud project that snapshots belong to.\nFormat is `projects/{project}`." + "pattern": "^projects/[^/]+/topics/[^/]+$" } } }, "setIamPolicy": { - "id": "pubsub.projects.snapshots.setIamPolicy", "path": "v1/{+resource}:setIamPolicy", + "id": "pubsub.projects.topics.setIamPolicy", + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", "request": { "$ref": "SetIamPolicyRequest" }, - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "httpMethod": "POST", + "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": "v1/projects/{projectsId}/topics/{topicsId}: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", "https://www.googleapis.com/auth/pubsub" ], "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/[^/]+/snapshots/[^/]+$" + "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." } }, - "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}:setIamPolicy" + "flatPath": "v1/projects/{projectsId}/topics/{topicsId}:getIamPolicy", + "path": "v1/{+resource}:getIamPolicy", + "id": "pubsub.projects.topics.getIamPolicy" }, - "create": { - "path": "v1/{+name}", - "id": "pubsub.projects.snapshots.create", + "get": { + "parameters": { + "topic": { + "pattern": "^projects/[^/]+/topics/[^/]+$", + "location": "path", + "description": "The name of the topic to get.\nFormat is `projects/{project}/topics/{topic}`.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ], + "flatPath": "v1/projects/{projectsId}/topics/{topicsId}", + "id": "pubsub.projects.topics.get", + "path": "v1/{+topic}", + "description": "Gets the configuration of a topic.", + "httpMethod": "GET", + "parameterOrder": [ + "topic" + ], + "response": { + "$ref": "Topic" + } + }, + "publish": { + "flatPath": "v1/projects/{projectsId}/topics/{topicsId}:publish", + "path": "v1/{+topic}:publish", + "id": "pubsub.projects.topics.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.", "request": { - "$ref": "CreateSnapshotRequest" + "$ref": "PublishRequest" }, - "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.", "response": { - "$ref": "Snapshot" + "$ref": "PublishResponse" }, "parameterOrder": [ - "name" + "topic" ], - "httpMethod": "PUT", + "httpMethod": "POST", + "parameters": { + "topic": { + "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/[^/]+$", + "location": "path" + } + }, "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.", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "parameterOrder": [ + "resource" ], + "httpMethod": "POST", "parameters": { - "name": { + "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/[^/]+/snapshots/[^/]+$", + "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}:testIamPermissions", + "path": "v1/{+resource}:testIamPermissions", + "id": "pubsub.projects.topics.testIamPermissions" + }, + "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": { + "pattern": "^projects/[^/]+/topics/[^/]+$", "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}`." + "description": "Name of the topic to delete.\nFormat is `projects/{project}/topics/{topic}`.", + "required": true, + "type": "string" } }, - "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}" + "flatPath": "v1/projects/{projectsId}/topics/{topicsId}", + "path": "v1/{+topic}", + "id": "pubsub.projects.topics.delete" }, - "getIamPolicy": { - "path": "v1/{+resource}:getIamPolicy", - "id": "pubsub.projects.snapshots.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.", + "list": { + "flatPath": "v1/projects/{projectsId}/topics", + "path": "v1/{+project}/topics", + "id": "pubsub.projects.topics.list", + "description": "Lists matching topics.", "response": { - "$ref": "Policy" + "$ref": "ListTopicsResponse" }, "parameterOrder": [ - "resource" + "project" ], "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.", + "project": { + "description": "The name of the cloud project that topics belong to.\nFormat is `projects/{project}`.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/snapshots/[^/]+$", + "pattern": "^projects/[^/]+$", "location": "path" + }, + "pageToken": { + "location": "query", + "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" + }, + "pageSize": { + "location": "query", + "description": "Maximum number of topics to return.", + "format": "int32", + "type": "integer" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1/projects/{projectsId}/snapshots/{snapshotsId}:getIamPolicy" + ] + } + }, + "resources": { + "subscriptions": { + "methods": { + "list": { + "description": "Lists the names of the subscriptions on this topic.", + "response": { + "$ref": "ListTopicSubscriptionsResponse" + }, + "parameterOrder": [ + "topic" + ], + "httpMethod": "GET", + "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": { + "location": "query", + "description": "Maximum number of subscription names to return.", + "format": "int32", + "type": "integer" + }, + "topic": { + "location": "path", + "description": "The name of the topic that subscriptions are attached to.\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}/subscriptions", + "path": "v1/{+topic}/subscriptions", + "id": "pubsub.projects.topics.subscriptions.list" + } + } + }, + "snapshots": { + "methods": { + "list": { + "path": "v1/{+topic}/snapshots", + "id": "pubsub.projects.topics.snapshots.list", + "description": "Lists the names of the snapshots on this topic.\n[ALPHA] This method is a part of a closed Alpha API.", + "response": { + "$ref": "ListTopicSnapshotsResponse" + }, + "parameterOrder": [ + "topic" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ], + "parameters": { + "pageSize": { + "location": "query", + "description": "Maximum number of snapshot names to return.", + "format": "int32", + "type": "integer" + }, + "topic": { + "location": "path", + "description": "The name of the topic that snapshots are attached to.\nFormat is `projects/{project}/topics/{topic}`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/topics/[^/]+$" + }, + "pageToken": { + "location": "query", + "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" + } + }, + "flatPath": "v1/projects/{projectsId}/topics/{topicsId}/snapshots" + } + } } } } @@ -947,61 +950,77 @@ } }, "parameters": { - "bearer_token": { - "description": "OAuth bearer token.", + "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": { "location": "query", "description": "OAuth 2.0 token for the current user.", "type": "string" }, - "upload_protocol": { + "bearer_token": { "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "description": "OAuth bearer token.", "type": "string" }, + "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" - }, - "fields": { "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" + "description": "Returns response with indentations and line breaks." }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "fields": { + "description": "Selector specifying which fields to include in a partial response.", "type": "string", "location": "query" }, - "callback": { + "uploadType": { "location": "query", - "description": "JSONP", + "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" + "location": "query", + "enum": [ + "1", + "2" + ] + }, + "callback": { + "type": "string", + "location": "query", + "description": "JSONP" }, "alt": { - "enum": [ - "json", - "media", - "proto" - ], "type": "string", "enumDescriptions": [ "Responses with Content-Type of application/json", @@ -1010,231 +1029,15 @@ ], "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" - }, - "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" + "default": "json", + "enum": [ + "json", + "media", + "proto" + ] } }, "schemas": { - "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" - }, - "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" - }, - "ListTopicsResponse": { - "properties": { - "nextPageToken": { - "type": "string", - "description": "If not empty, indicates that there may be more topics that match the\nrequest; this value should be passed in a new `ListTopicsRequest`." - }, - "topics": { - "description": "The resulting topics.", - "type": "array", - "items": { - "$ref": "Topic" - } - } - }, - "id": "ListTopicsResponse", - "description": "Response for the `ListTopics` method.", - "type": "object" - }, - "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": { - "type": "array", - "items": { - "$ref": "ReceivedMessage" - }, - "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." - } - }, - "id": "PullResponse" - }, - "UpdateSnapshotRequest": { - "id": "UpdateSnapshotRequest", - "description": "Request for the UpdateSnapshot method.", - "type": "object", - "properties": { - "snapshot": { - "description": "The updated snpashot object.", - "$ref": "Snapshot" - }, - "updateMask": { - "type": "string", - "description": "Indicates which fields in the provided snapshot to update.\nMust be specified and non-empty.", - "format": "google-fieldmask" - } - } - }, - "ListSnapshotsResponse": { - "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", - "description": "Response for the `ListSnapshots` method." - }, - "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" - }, - "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.\n[ALPHA] This method is a part of a closed Alpha API.", - "type": "object", - "properties": { - "snapshots": { - "description": "The names of the snapshots that match the request.", - "type": "array", - "items": { - "type": "string" - } - }, - "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" - } - }, - "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" - }, - "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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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" - }, - "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" - }, "Binding": { "description": "Associates `members` with a `role`.", "type": "object", @@ -1254,38 +1057,37 @@ "id": "Binding" }, "SeekRequest": { + "id": "SeekRequest", "description": "Request for the `Seek` method.", "type": "object", "properties": { "time": { + "type": "string", "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" + "format": "google-datetime" }, "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." + }, + "ackId": { + "description": "This ID can be used to acknowledge the received message.", + "type": "string" } }, "id": "ReceivedMessage" }, "PushConfig": { - "id": "PushConfig", "description": "Configuration for a push delivery endpoint.", "type": "object", "properties": { @@ -1294,15 +1096,19 @@ "type": "string" }, "attributes": { + "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", "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": { + "id": "TestIamPermissionsResponse", + "description": "Response message for `TestIamPermissions` method.", + "type": "object", "properties": { "permissions": { "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", @@ -1311,29 +1117,25 @@ "type": "string" } } - }, - "id": "TestIamPermissionsResponse", - "description": "Response message for `TestIamPermissions` method.", - "type": "object" + } }, "PullRequest": { "description": "Request for the `Pull` method.", "type": "object", "properties": { - "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" - }, "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": { @@ -1344,15 +1146,16 @@ } } }, - "id": "PublishRequest" + "id": "PublishRequest", + "description": "Request for the Publish method." }, "UpdateSubscriptionRequest": { "description": "Request for the UpdateSubscription method.", "type": "object", "properties": { "subscription": { - "description": "The updated subscription object.", - "$ref": "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.", @@ -1377,13 +1180,10 @@ "id": "PublishResponse" }, "Subscription": { + "id": "Subscription", "description": "A subscription resource.", "type": "object", "properties": { - "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\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", @@ -1395,8 +1195,8 @@ "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.\n[ALPHA] This field is a part of a closed Alpha API.", - "type": "boolean" + "type": "boolean", + "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." }, "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\"`.", @@ -1405,9 +1205,12 @@ "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": { + "$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." } - }, - "id": "Subscription" + } }, "SeekResponse": { "type": "object", @@ -1418,17 +1221,17 @@ "description": "Request for the ModifyAckDeadline method.", "type": "object", "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.", "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" @@ -1454,15 +1257,43 @@ "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" + "$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.", - "type": "object" + "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": { + "data": { + "type": "string", + "description": "The message payload.", + "format": "byte" + }, + "attributes": { + "description": "Optional attributes for this message.", + "type": "object", + "additionalProperties": { + "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" + } + }, + "id": "PubsubMessage" }, "ModifyPushConfigRequest": { "type": "object", @@ -1475,33 +1306,205 @@ "id": "ModifyPushConfigRequest", "description": "Request for the ModifyPushConfig method." }, - "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.", + "ListTopicsResponse": { "type": "object", "properties": { - "attributes": { - "description": "Optional attributes for this message.", - "type": "object", - "additionalProperties": { + "topics": { + "description": "The resulting topics.", + "type": "array", + "items": { + "$ref": "Topic" + } + }, + "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" + } + }, + "id": "ListTopicsResponse", + "description": "Response for the `ListTopics` method." + }, + "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 `{}`." + }, + "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": { + "type": "string", + "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." }, - "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.", + "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" + }, + "UpdateSnapshotRequest": { + "properties": { + "updateMask": { + "description": "Indicates which fields in the provided snapshot to update.\nMust be specified and non-empty.", + "format": "google-fieldmask", "type": "string" }, - "publishTime": { + "snapshot": { + "$ref": "Snapshot", + "description": "The updated snpashot object." + } + }, + "id": "UpdateSnapshotRequest", + "description": "Request for the UpdateSnapshot method.", + "type": "object" + }, + "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": { + "id": "ListSnapshotsResponse", + "description": "Response for the `ListSnapshots` method.", + "type": "object", + "properties": { + "nextPageToken": { "type": "string", - "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" + "description": "If not empty, indicates that there may be more snapshot that match the\nrequest; this value should be passed in a new `ListSnapshotsRequest`." }, - "data": { - "description": "The message payload.", + "snapshots": { + "description": "The resulting snapshots.", + "type": "array", + "items": { + "$ref": "Snapshot" + } + } + } + }, + "ListTopicSnapshotsResponse": { + "id": "ListTopicSnapshotsResponse", + "description": "Response for the `ListTopicSnapshots` method.\n[ALPHA] This method is a part of a closed Alpha API.", + "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" + } + } + } + }, + "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" + } + }, + "id": "CreateSnapshotRequest", + "description": "Request for the `CreateSnapshot` method.", + "type": "object" + }, + "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" + } + } + } + }, + "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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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": { + "version": { + "description": "Deprecated.", + "format": "int32", + "type": "integer" + }, + "bindings": { + "type": "array", + "items": { + "$ref": "Binding" + }, + "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error." + }, + "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" } }, - "id": "PubsubMessage" + "id": "Policy" + }, + "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" } }, "protocol": "rest", @@ -1515,11 +1518,11 @@ "auth": { "oauth2": { "scopes": { - "https://www.googleapis.com/auth/pubsub": { - "description": "View and manage Pub/Sub topics and subscriptions" - }, "https://www.googleapis.com/auth/cloud-platform": { "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/pubsub": { + "description": "View and manage Pub/Sub topics and subscriptions" } } } @@ -1527,8 +1530,5 @@ "kind": "discovery#restDescription", "description": "Provides reliable, many-to-many, asynchronous messaging between applications.\n", "servicePath": "", - "rootUrl": "https://pubsub.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "pubsub" + "rootUrl": "https://pubsub.googleapis.com/" } diff --git a/DiscoveryJson/pubsub_v1beta1a.json b/DiscoveryJson/pubsub_v1beta1a.json index 9c5c308d50..8c6f1c3747 100644 --- a/DiscoveryJson/pubsub_v1beta1a.json +++ b/DiscoveryJson/pubsub_v1beta1a.json @@ -1,243 +1,196 @@ { + "basePath": "", + "ownerDomain": "google.com", + "name": "pubsub", + "batchPath": "batch", + "id": "pubsub:v1beta1a", + "documentationLink": "https://cloud.google.com/pubsub/docs", + "revision": "20180416", + "title": "Cloud Pub/Sub API", + "discoveryVersion": "v1", + "ownerName": "Google", "resources": { - "subscriptions": { + "topics": { "methods": { - "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", - "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).", - "request": { - "$ref": "PullRequest" - } - }, "delete": { + "httpMethod": "DELETE", "response": { "$ref": "Empty" }, "parameterOrder": [ - "subscription" + "topic" ], - "httpMethod": "DELETE", "parameters": { - "subscription": { - "pattern": "^.+$", - "location": "path", - "description": "The subscription to delete.", + "topic": { + "description": "Name of the topic to delete.", "required": true, - "type": "string" + "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." + "flatPath": "v1beta1a/topics/{topicsId}", + "id": "pubsub.topics.delete", + "path": "v1beta1a/topics/{+topic}", + "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." }, - "list": { + "publishBatch": { + "httpMethod": "POST", + "parameterOrder": [], "response": { - "$ref": "ListSubscriptionsResponse" + "$ref": "PublishBatchResponse" }, - "parameterOrder": [], - "httpMethod": "GET", + "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], + "flatPath": "v1beta1a/topics/publishBatch", + "id": "pubsub.topics.publishBatch", + "path": "v1beta1a/topics/publishBatch", + "description": "Adds one or more messages to the topic. Returns NOT_FOUND if the topic does\nnot exist.", + "request": { + "$ref": "PublishBatchRequest" + } + }, + "list": { "parameters": { "pageToken": { - "description": "The value obtained in the last \u003ccode\u003eListSubscriptionsResponse\u003c/code\u003e\nfor continuation.", - "type": "string", - "location": "query" + "location": "query", + "description": "The value obtained in the last \u003ccode\u003eListTopicsResponse\u003c/code\u003e\nfor continuation.", + "type": "string" }, "query": { - "type": "string", "location": "query", - "description": "A valid label query expression." + "description": "A valid label query expression.", + "type": "string" }, "maxResults": { - "description": "Maximum number of subscriptions to return.", + "location": "query", + "description": "Maximum number of topics to return.", "format": "int32", - "type": "integer", - "location": "query" + "type": "integer" } }, - "flatPath": "v1beta1a/subscriptions", - "path": "v1beta1a/subscriptions", - "id": "pubsub.subscriptions.list", - "description": "Lists matching subscriptions." - }, - "create": { - "response": { - "$ref": "Subscription" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], - "flatPath": "v1beta1a/subscriptions", - "path": "v1beta1a/subscriptions", - "id": "pubsub.subscriptions.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" + "flatPath": "v1beta1a/topics", + "id": "pubsub.topics.list", + "path": "v1beta1a/topics", + "description": "Lists matching topics.", + "httpMethod": "GET", + "parameterOrder": [], + "response": { + "$ref": "ListTopicsResponse" } }, - "modifyAckDeadline": { + "create": { + "flatPath": "v1beta1a/topics", + "id": "pubsub.topics.create", + "path": "v1beta1a/topics", + "description": "Creates the given topic with the given name.", "request": { - "$ref": "ModifyAckDeadlineRequest" - }, - "description": "Modifies the Ack deadline for a message received from a pull request.", - "response": { - "$ref": "Empty" + "$ref": "Topic" }, - "parameterOrder": [], "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], - "parameters": {}, - "flatPath": "v1beta1a/subscriptions/modifyAckDeadline", - "path": "v1beta1a/subscriptions/modifyAckDeadline", - "id": "pubsub.subscriptions.modifyAckDeadline" - }, - "acknowledge": { + "parameterOrder": [], "response": { - "$ref": "Empty" + "$ref": "Topic" }, - "parameterOrder": [], - "httpMethod": "POST", + "parameters": {}, "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", - "request": { - "$ref": "AcknowledgeRequest" - }, - "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." + ] }, "get": { + "path": "v1beta1a/topics/{+topic}", + "id": "pubsub.topics.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.", "response": { - "$ref": "Subscription" + "$ref": "Topic" }, "parameterOrder": [ - "subscription" + "topic" ], "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.", + "topic": { + "description": "The name of the topic to get.", "required": true, "type": "string", "pattern": "^.+$", "location": "path" } }, - "flatPath": "v1beta1a/subscriptions/{subscriptionsId}", - "path": "v1beta1a/subscriptions/{+subscription}", - "id": "pubsub.subscriptions.get", - "description": "Gets the configuration details of a subscription." + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ], + "flatPath": "v1beta1a/topics/{topicsId}" }, - "pullBatch": { + "publish": { "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], - "flatPath": "v1beta1a/subscriptions/pullBatch", - "path": "v1beta1a/subscriptions/pullBatch", - "id": "pubsub.subscriptions.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/topics/publish", + "path": "v1beta1a/topics/publish", + "id": "pubsub.topics.publish", + "description": "Adds a message to the topic. Returns NOT_FOUND if the topic does not\nexist.", "request": { - "$ref": "PullBatchRequest" + "$ref": "PublishRequest" }, "response": { - "$ref": "PullBatchResponse" + "$ref": "Empty" }, "parameterOrder": [], "httpMethod": "POST" - }, + } + } + }, + "subscriptions": { + "methods": { "modifyPushConfig": { + "id": "pubsub.subscriptions.modifyPushConfig", + "path": "v1beta1a/subscriptions/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.", "request": { "$ref": "ModifyPushConfigRequest" }, - "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" - } - } - }, - "topics": { - "methods": { - "create": { "httpMethod": "POST", "parameterOrder": [], "response": { - "$ref": "Topic" + "$ref": "Empty" }, "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], - "flatPath": "v1beta1a/topics", - "id": "pubsub.topics.create", - "path": "v1beta1a/topics", - "description": "Creates the given topic with the given name.", - "request": { - "$ref": "Topic" - } + "flatPath": "v1beta1a/subscriptions/modifyPushConfig" }, - "get": { - "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.", - "httpMethod": "GET", + "delete": { + "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.", "response": { - "$ref": "Topic" + "$ref": "Empty" }, "parameterOrder": [ - "topic" + "subscription" ], + "httpMethod": "DELETE", "parameters": { - "topic": { - "description": "The name of the topic to get.", + "subscription": { + "description": "The subscription to delete.", "required": true, "type": "string", "pattern": "^.+$", @@ -248,118 +201,186 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], - "flatPath": "v1beta1a/topics/{topicsId}" + "flatPath": "v1beta1a/subscriptions/{subscriptionsId}" }, - "publish": { - "description": "Adds a message to the topic. Returns NOT_FOUND if the topic does not\nexist.", + "pull": { + "flatPath": "v1beta1a/subscriptions/pull", + "id": "pubsub.subscriptions.pull", + "path": "v1beta1a/subscriptions/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).", "request": { - "$ref": "PublishRequest" + "$ref": "PullRequest" }, "httpMethod": "POST", "parameterOrder": [], "response": { - "$ref": "Empty" + "$ref": "PullResponse" }, "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1beta1a/topics/publish", - "id": "pubsub.topics.publish", - "path": "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.", - "httpMethod": "DELETE", + "list": { + "httpMethod": "GET", + "parameterOrder": [], "response": { - "$ref": "Empty" + "$ref": "ListSubscriptionsResponse" }, - "parameterOrder": [ - "topic" - ], "parameters": { - "topic": { - "description": "Name of the topic to delete.", - "required": true, + "pageToken": { + "description": "The value obtained in the last \u003ccode\u003eListSubscriptionsResponse\u003c/code\u003e\nfor continuation.", "type": "string", - "pattern": "^.+$", - "location": "path" + "location": "query" + }, + "query": { + "location": "query", + "description": "A valid label query expression.", + "type": "string" + }, + "maxResults": { + "location": "query", + "description": "Maximum number of subscriptions to return.", + "format": "int32", + "type": "integer" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], - "flatPath": "v1beta1a/topics/{topicsId}", - "id": "pubsub.topics.delete", - "path": "v1beta1a/topics/{+topic}" + "flatPath": "v1beta1a/subscriptions", + "id": "pubsub.subscriptions.list", + "path": "v1beta1a/subscriptions", + "description": "Lists matching subscriptions." }, - "publishBatch": { + "create": { + "flatPath": "v1beta1a/subscriptions", + "path": "v1beta1a/subscriptions", + "id": "pubsub.subscriptions.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", "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" - ], - "flatPath": "v1beta1a/topics/publishBatch", - "path": "v1beta1a/topics/publishBatch", - "id": "pubsub.topics.publishBatch", - "description": "Adds one or more messages to the topic. Returns NOT_FOUND if the topic does\nnot exist.", + ] + }, + "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": "PublishBatchRequest" + "$ref": "AcknowledgeRequest" }, "response": { - "$ref": "PublishBatchResponse" + "$ref": "Empty" }, "parameterOrder": [], - "httpMethod": "POST" + "httpMethod": "POST", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ], + "flatPath": "v1beta1a/subscriptions/acknowledge", + "path": "v1beta1a/subscriptions/acknowledge", + "id": "pubsub.subscriptions.acknowledge" }, - "list": { + "modifyAckDeadline": { + "response": { + "$ref": "Empty" + }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], - "parameters": { - "query": { - "description": "A valid label query expression.", - "type": "string", - "location": "query" - }, - "maxResults": { - "description": "Maximum number of topics to return.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "pageToken": { - "description": "The value obtained in the last \u003ccode\u003eListTopicsResponse\u003c/code\u003e\nfor continuation.", - "type": "string", - "location": "query" - } + "flatPath": "v1beta1a/subscriptions/modifyAckDeadline", + "path": "v1beta1a/subscriptions/modifyAckDeadline", + "id": "pubsub.subscriptions.modifyAckDeadline", + "description": "Modifies the Ack deadline for a message received from a pull request.", + "request": { + "$ref": "ModifyAckDeadlineRequest" + } + }, + "pullBatch": { + "flatPath": "v1beta1a/subscriptions/pullBatch", + "path": "v1beta1a/subscriptions/pullBatch", + "id": "pubsub.subscriptions.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.", + "request": { + "$ref": "PullBatchRequest" + }, + "response": { + "$ref": "PullBatchResponse" }, - "flatPath": "v1beta1a/topics", - "id": "pubsub.topics.list", - "path": "v1beta1a/topics", - "description": "Lists matching topics.", - "httpMethod": "GET", "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "get": { + "flatPath": "v1beta1a/subscriptions/{subscriptionsId}", + "path": "v1beta1a/subscriptions/{+subscription}", + "id": "pubsub.subscriptions.get", + "description": "Gets the configuration details of a subscription.", "response": { - "$ref": "ListTopicsResponse" - } + "$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" + ] } } } }, "parameters": { - "fields": { - "type": "string", + "upload_protocol": { "location": "query", - "description": "Selector specifying which fields to include in a partial response." + "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" + "type": "string", + "location": "query" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "type": "string", + "location": "query" }, "callback": { "description": "JSONP", @@ -367,25 +388,19 @@ "location": "query" }, "$.xgafv": { + "location": "query", + "enum": [ + "1", + "2" + ], "description": "V1 error format.", "type": "string", "enumDescriptions": [ "v1 error format", "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" ] }, "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": [ @@ -393,164 +408,49 @@ "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": { - "description": "Available 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", + "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" }, - "upload_protocol": { - "type": "string", + "key": { "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")." + "description": "API key. 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" }, - "prettyPrint": { + "access_token": { "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - } - }, - "schemas": { - "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": { - "pushConfig": { - "$ref": "PushConfig", - "description": "If push delivery is used with this subscription, this field is\nused to configure it." - }, - "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": { - "type": "string", - "description": "Name of the subscription." - }, - "topic": { - "description": "The name of the topic from which this subscription is receiving messages.", - "type": "string" - } - }, - "id": "Subscription" - }, - "Topic": { - "properties": { - "name": { - "type": "string", - "description": "Name of the topic." - } - }, - "id": "Topic", - "description": "A topic resource.", - "type": "object" - }, - "Label": { - "description": "A key-value pair applied to a given object.", - "type": "object", - "properties": { - "strValue": { - "description": "A string value.", - "type": "string" - }, - "numValue": { - "description": "An integer value.", - "format": "int64", - "type": "string" - }, - "key": { - "type": "string", - "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" - } - }, - "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" + "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": { + "location": "query", + "description": "OAuth bearer token.", + "type": "string" }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "type": "string", + "location": "query" + } + }, + "schemas": { "PullBatchRequest": { + "id": "PullBatchRequest", "description": "Request for the PullBatch method.", "type": "object", "properties": { @@ -564,43 +464,40 @@ "type": "string" }, "returnImmediately": { - "type": "boolean", - "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." + "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": { - "data": { - "description": "The message payload.", - "format": "byte", - "type": "string" - }, "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" - } + }, + "description": "Optional list of labels for this message. Keys in this collection must\nbe unique." }, "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": { - "description": "Request for the ModifyPushConfig method.", - "type": "object", "properties": { "pushConfig": { "$ref": "PushConfig", @@ -611,96 +508,98 @@ "type": "string" } }, - "id": "ModifyPushConfigRequest" + "id": "ModifyPushConfigRequest", + "description": "Request for the ModifyPushConfig method.", + "type": "object" }, - "ListTopicsResponse": { - "description": "Response for the ListTopics method.", - "type": "object", + "AcknowledgeRequest": { "properties": { - "topic": { - "description": "The resulting topics.", + "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": { - "$ref": "Topic" + "type": "string" } - }, - "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" } }, - "id": "ListTopicsResponse" + "id": "AcknowledgeRequest", + "description": "Request for the Acknowledge method.", + "type": "object" }, - "PublishBatchRequest": { - "description": "Request for the PublishBatch method.", + "PullBatchResponse": { + "id": "PullBatchResponse", + "description": "Response for the PullBatch method.", "type": "object", "properties": { - "messages": { + "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": "PubsubMessage" - }, - "description": "The messages to publish." - }, - "topic": { - "description": "The messages in the request will be published on this topic.", - "type": "string" + "$ref": "PullResponse" + } } - }, - "id": "PublishBatchRequest" + } }, "Empty": { + "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", - "properties": {}, - "id": "Empty" + "properties": {} }, - "PullBatchResponse": { - "description": "Response for the PullBatch method.", + "PublishBatchRequest": { + "description": "Request for the PublishBatch method.", "type": "object", "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.", + "messages": { + "description": "The messages to publish.", "type": "array", "items": { - "$ref": "PullResponse" + "$ref": "PubsubMessage" } + }, + "topic": { + "description": "The messages in the request will be published on this topic.", + "type": "string" } }, - "id": "PullBatchResponse" + "id": "PublishBatchRequest" }, - "AcknowledgeRequest": { + "ListTopicsResponse": { + "description": "Response for the ListTopics method.", + "type": "object", "properties": { - "ackId": { - "description": "The acknowledgment ID for the message being acknowledged. This was\nreturned by the Pub/Sub system in the Pull response.", + "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": { - "type": "string" + "$ref": "Topic" } - }, - "subscription": { - "description": "The subscription whose message is being acknowledged.", - "type": "string" } }, - "id": "AcknowledgeRequest", - "description": "Request for the Acknowledge method.", - "type": "object" + "id": "ListTopicsResponse" }, "PullResponse": { + "description": "Either a \u003ccode\u003ePubsubMessage\u003c/code\u003e or a truncation event. One of these two\nmust be populated.", + "type": "object", "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." + "description": "A pubsub message or truncation event.", + "$ref": "PubsubEvent" } }, - "id": "PullResponse", - "description": "Either a \u003ccode\u003ePubsubMessage\u003c/code\u003e or a truncation event. One of these two\nmust be populated.", - "type": "object" + "id": "PullResponse" }, "PushConfig": { "description": "Configuration for a push delivery endpoint.", @@ -714,6 +613,7 @@ "id": "PushConfig" }, "PullRequest": { + "description": "Request for the Pull method.", "type": "object", "properties": { "subscription": { @@ -725,12 +625,9 @@ "type": "boolean" } }, - "id": "PullRequest", - "description": "Request for the Pull method." + "id": "PullRequest" }, "ListSubscriptionsResponse": { - "description": "Response for the ListSubscriptions method.", - "type": "object", "properties": { "subscription": { "description": "The subscriptions that match the request.", @@ -740,14 +637,26 @@ } }, "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" + "type": "string", + "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." } }, - "id": "ListSubscriptionsResponse" + "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": { + "$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" @@ -755,19 +664,120 @@ "deleted": { "type": "boolean", "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.)" - }, + } + }, + "id": "PubsubEvent" + }, + "PublishRequest": { + "description": "Request for the Publish method.", + "type": "object", + "properties": { "message": { "$ref": "PubsubMessage", - "description": "A received message." + "description": "The message to publish." + }, + "topic": { + "description": "The message in the request will be published on this topic.", + "type": "string" + } + }, + "id": "PublishRequest" + }, + "Subscription": { + "type": "object", + "properties": { + "topic": { + "description": "The name of the topic from which this subscription is receiving messages.", + "type": "string" + }, + "pushConfig": { + "description": "If push delivery is used with this subscription, this field is\nused to configure it.", + "$ref": "PushConfig" + }, + "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": { + "type": "string", + "description": "Name of the subscription." + } + }, + "id": "Subscription", + "description": "A subscription resource." + }, + "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" + }, + "Topic": { + "id": "Topic", + "description": "A topic resource.", + "type": "object", + "properties": { + "name": { + "description": "Name of the topic.", + "type": "string" + } + } + }, + "Label": { + "description": "A key-value pair applied to a given object.", + "type": "object", + "properties": { + "strValue": { + "description": "A string value.", + "type": "string" + }, + "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" + } + }, + "id": "Label" + }, + "ModifyAckDeadlineRequest": { + "description": "Request for the ModifyAckDeadline method.", + "type": "object", + "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" + }, + "ackIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of acknowledgment IDs. Either this field or ack_id\nshould be populated, not both." }, "subscription": { - "description": "The subscription that received the event.", + "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" } }, - "id": "PubsubEvent", - "description": "An event indicating a received message or truncation event.", - "type": "object" + "id": "ModifyAckDeadlineRequest" } }, "icons": { @@ -790,18 +800,8 @@ } } }, - "servicePath": "", - "description": "Provides reliable, many-to-many, asynchronous messaging between applications.\n", "kind": "discovery#restDescription", - "rootUrl": "https://pubsub.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "pubsub", - "batchPath": "batch", - "revision": "20180416", - "documentationLink": "https://cloud.google.com/pubsub/docs", - "id": "pubsub:v1beta1a", - "title": "Cloud Pub/Sub API", - "discoveryVersion": "v1", - "ownerName": "Google" + "description": "Provides reliable, many-to-many, asynchronous messaging between applications.\n", + "servicePath": "", + "rootUrl": "https://pubsub.googleapis.com/" } diff --git a/DiscoveryJson/pubsub_v1beta2.json b/DiscoveryJson/pubsub_v1beta2.json index 3cc77798ad..e4ee676ab7 100644 --- a/DiscoveryJson/pubsub_v1beta2.json +++ b/DiscoveryJson/pubsub_v1beta2.json @@ -1,357 +1,4 @@ { - "schemas": { - "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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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" - }, - "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" - } - }, - "id": "Topic", - "description": "A topic resource.", - "type": "object" - }, - "ModifyAckDeadlineRequest": { - "type": "object", - "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" - }, - "ackIds": { - "description": "List of acknowledgment IDs.", - "type": "array", - "items": { - "type": "string" - } - }, - "ackId": { - "description": "The acknowledgment ID. Either this or ack_ids must be populated, but not\nboth.", - "type": "string" - } - }, - "id": "ModifyAckDeadlineRequest", - "description": "Request for the ModifyAckDeadline method." - }, - "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": { - "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. 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." - }, - "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": { - "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" - }, - "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" - }, - "AcknowledgeRequest": { - "description": "Request for the Acknowledge method.", - "type": "object", - "properties": { - "ackIds": { - "type": "array", - "items": { - "type": "string" - }, - "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." - } - }, - "id": "AcknowledgeRequest" - }, - "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" - }, - "ReceivedMessage": { - "description": "A message and its corresponding acknowledgment ID.", - "type": "object", - "properties": { - "message": { - "description": "The message.", - "$ref": "PubsubMessage" - }, - "ackId": { - "description": "This ID can be used to acknowledge the received message.", - "type": "string" - } - }, - "id": "ReceivedMessage" - }, - "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" - }, - "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", - "description": "Configuration for a push delivery endpoint.", - "type": "object" - }, - "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": { - "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", - "description": "Response for the `ListSubscriptions` method." - }, - "PublishRequest": { - "properties": { - "messages": { - "description": "The messages to publish.", - "type": "array", - "items": { - "$ref": "PubsubMessage" - } - } - }, - "id": "PublishRequest", - "description": "Request for the Publish method.", - "type": "object" - }, - "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.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "PublishResponse", - "description": "Response for the `Publish` method.", - "type": "object" - }, - "Subscription": { - "description": "A subscription resource.", - "type": "object", - "properties": { - "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 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" - }, - "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" - } - }, - "id": "Subscription" - }, - "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" - } - }, - "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": "v1beta2", - "baseUrl": "https://pubsub.googleapis.com/", - "canonicalName": "Pubsub", "auth": { "oauth2": { "scopes": { @@ -365,8 +12,8 @@ } }, "kind": "discovery#restDescription", - "description": "Provides reliable, many-to-many, asynchronous messaging between applications.\n", "servicePath": "", + "description": "Provides reliable, many-to-many, asynchronous messaging between applications.\n", "rootUrl": "https://pubsub.googleapis.com/", "basePath": "", "ownerDomain": "google.com", @@ -384,18 +31,13 @@ "subscriptions": { "methods": { "list": { - "description": "Lists matching subscriptions.", - "httpMethod": "GET", - "parameterOrder": [ - "project" - ], "response": { "$ref": "ListSubscriptionsResponse" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" + "parameterOrder": [ + "project" ], + "httpMethod": "GET", "parameters": { "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.", @@ -409,74 +51,79 @@ "type": "integer" }, "project": { + "location": "path", "description": "The name of the cloud project that subscriptions belong to.", "required": true, "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+$" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ], "flatPath": "v1beta2/projects/{projectsId}/subscriptions", + "path": "v1beta2/{+project}/subscriptions", "id": "pubsub.projects.subscriptions.list", - "path": "v1beta2/{+project}/subscriptions" + "description": "Lists matching subscriptions." }, - "create": { - "path": "v1beta2/{+name}", - "id": "pubsub.projects.subscriptions.create", + "setIamPolicy": { + "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:setIamPolicy", + "path": "v1beta2/{+resource}:setIamPolicy", + "id": "pubsub.projects.subscriptions.setIamPolicy", "request": { - "$ref": "Subscription" + "$ref": "SetIamPolicyRequest" }, - "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.", + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", "response": { - "$ref": "Subscription" + "$ref": "Policy" }, "parameterOrder": [ - "name" + "resource" ], - "httpMethod": "PUT", + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], "parameters": { - "name": { - "pattern": "^projects/[^/]+/subscriptions/[^/]+$", - "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\"`.", + "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" + "type": "string", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", + "location": "path" } - }, - "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}" + } }, - "setIamPolicy": { - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "request": { - "$ref": "SetIamPolicyRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "resource" + "create": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" ], - "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.", + "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" + "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}", + "path": "v1beta2/{+name}", + "id": "pubsub.projects.subscriptions.create", + "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.", + "response": { + "$ref": "Subscription" + }, + "parameterOrder": [ + "name" ], - "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:setIamPolicy", - "id": "pubsub.projects.subscriptions.setIamPolicy", - "path": "v1beta2/{+resource}:setIamPolicy" + "httpMethod": "PUT" }, "getIamPolicy": { "response": { @@ -504,11 +151,7 @@ "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." }, - "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" - }, + "acknowledge": { "httpMethod": "POST", "parameterOrder": [ "subscription" @@ -518,37 +161,37 @@ }, "parameters": { "subscription": { + "description": "The subscription whose message is being acknowledged.", "required": true, "type": "string", "pattern": "^projects/[^/]+/subscriptions/[^/]+$", - "location": "path", - "description": "The name of the subscription." + "location": "path" } }, "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" - }, - "acknowledge": { + "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:acknowledge", + "id": "pubsub.projects.subscriptions.acknowledge", + "path": "v1beta2/{+subscription}: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" - }, + } + }, + "modifyAckDeadline": { + "httpMethod": "POST", "parameterOrder": [ "subscription" ], - "httpMethod": "POST", + "response": { + "$ref": "Empty" + }, "parameters": { "subscription": { "location": "path", - "description": "The subscription whose message is being acknowledged.", + "description": "The name of the subscription.", "required": true, "type": "string", "pattern": "^projects/[^/]+/subscriptions/[^/]+$" @@ -558,14 +201,15 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], - "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:acknowledge", - "path": "v1beta2/{+subscription}:acknowledge", - "id": "pubsub.projects.subscriptions.acknowledge" + "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:modifyAckDeadline", + "id": "pubsub.projects.subscriptions.modifyAckDeadline", + "path": "v1beta2/{+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" + } }, "get": { - "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}", - "path": "v1beta2/{+subscription}", - "id": "pubsub.projects.subscriptions.get", "description": "Gets the configuration details of a subscription.", "response": { "$ref": "Subscription" @@ -580,22 +224,29 @@ ], "parameters": { "subscription": { - "description": "The name of the subscription to get.", "required": true, "type": "string", "pattern": "^projects/[^/]+/subscriptions/[^/]+$", - "location": "path" + "location": "path", + "description": "The name of the subscription to get." } - } + }, + "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}", + "path": "v1beta2/{+subscription}", + "id": "pubsub.projects.subscriptions.get" }, "testIamPermissions": { - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], "response": { "$ref": "TestIamPermissionsResponse" }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ], "parameters": { "resource": { "pattern": "^projects/[^/]+/subscriptions/[^/]+$", @@ -605,77 +256,45 @@ "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:testIamPermissions", - "id": "pubsub.projects.subscriptions.testIamPermissions", "path": "v1beta2/{+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.", + "id": "pubsub.projects.subscriptions.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." }, "modifyPushConfig": { - "httpMethod": "POST", - "parameterOrder": [ - "subscription" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "subscription": { - "location": "path", - "description": "The name of the subscription.", - "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}:modifyPushConfig", - "id": "pubsub.projects.subscriptions.modifyPushConfig", - "path": "v1beta2/{+subscription}: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" - } - }, - "pull": { - "request": { - "$ref": "PullRequest" }, - "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.", "response": { - "$ref": "PullResponse" + "$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 from which messages should be pulled.", + "description": "The name of the subscription.", "required": true, "type": "string", "pattern": "^projects/[^/]+/subscriptions/[^/]+$", "location": "path" } }, - "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}:pull", - "path": "v1beta2/{+subscription}:pull", - "id": "pubsub.projects.subscriptions.pull" + "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": { + "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}", "path": "v1beta2/{+subscription}", "id": "pubsub.projects.subscriptions.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.", @@ -686,10 +305,6 @@ "subscription" ], "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], "parameters": { "subscription": { "pattern": "^projects/[^/]+/subscriptions/[^/]+$", @@ -699,26 +314,25 @@ "type": "string" } }, - "flatPath": "v1beta2/projects/{projectsId}/subscriptions/{subscriptionsId}" - } - } - }, - "topics": { - "methods": { - "getIamPolicy": { - "httpMethod": "GET", - "parameterOrder": [ - "resource" - ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/pubsub" + ] + }, + "pull": { "response": { - "$ref": "Policy" + "$ref": "PullResponse" }, + "parameterOrder": [ + "subscription" + ], + "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.", + "subscription": { + "description": "The subscription from which messages should be pulled.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/topics/[^/]+$", + "pattern": "^projects/[^/]+/subscriptions/[^/]+$", "location": "path" } }, @@ -726,17 +340,28 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], + "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": { "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}:getIamPolicy", - "id": "pubsub.projects.topics.getIamPolicy", "path": "v1beta2/{+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": { + "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": "Topic" + "$ref": "Policy" }, "parameterOrder": [ - "topic" + "resource" ], "httpMethod": "GET", "scopes": [ @@ -744,34 +369,49 @@ "https://www.googleapis.com/auth/pubsub" ], "parameters": { - "topic": { - "description": "The name of the topic to get.", + "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/[^/]+/topics/[^/]+$", "location": "path" } + } + }, + "get": { + "description": "Gets the configuration of a topic.", + "httpMethod": "GET", + "parameterOrder": [ + "topic" + ], + "response": { + "$ref": "Topic" + }, + "parameters": { + "topic": { + "location": "path", + "description": "The name of the topic to get.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/topics/[^/]+$" + } }, + "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", - "description": "Gets the configuration of a topic." + "path": "v1beta2/{+topic}" }, "publish": { - "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}:publish", - "id": "pubsub.projects.topics.publish", - "path": "v1beta2/{+topic}:publish", - "request": { - "$ref": "PublishRequest" + "response": { + "$ref": "PublishResponse" }, - "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" - }, + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" @@ -784,7 +424,14 @@ "required": true, "type": "string" } - } + }, + "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}:publish", + "path": "v1beta2/{+topic}:publish", + "id": "pubsub.projects.topics.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." }, "testIamPermissions": { "request": { @@ -816,32 +463,33 @@ "id": "pubsub.projects.topics.testIamPermissions" }, "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_`.", + "httpMethod": "DELETE", "response": { "$ref": "Empty" }, "parameterOrder": [ "topic" ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/pubsub" - ], "parameters": { "topic": { - "pattern": "^projects/[^/]+/topics/[^/]+$", - "location": "path", "description": "Name of the topic to delete.", "required": true, - "type": "string" + "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.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_`." + "path": "v1beta2/{+topic}" }, "list": { + "description": "Lists matching topics.", "httpMethod": "GET", "parameterOrder": [ "project" @@ -851,22 +499,22 @@ }, "parameters": { "pageToken": { - "location": "query", "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" + "type": "string", + "location": "query" }, "pageSize": { - "type": "integer", "location": "query", "description": "Maximum number of topics to return.", - "format": "int32" + "format": "int32", + "type": "integer" }, "project": { - "pattern": "^projects/[^/]+$", - "location": "path", "description": "The name of the cloud project that topics belong to.", "required": true, - "type": "string" + "type": "string", + "pattern": "^projects/[^/]+$", + "location": "path" } }, "scopes": [ @@ -875,84 +523,76 @@ ], "flatPath": "v1beta2/projects/{projectsId}/topics", "id": "pubsub.projects.topics.list", - "path": "v1beta2/{+project}/topics", - "description": "Lists matching topics." + "path": "v1beta2/{+project}/topics" }, - "setIamPolicy": { - "path": "v1beta2/{+resource}:setIamPolicy", - "id": "pubsub.projects.topics.setIamPolicy", + "create": { "request": { - "$ref": "SetIamPolicyRequest" + "$ref": "Topic" }, - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", + "description": "Creates the given topic with the given name.", "response": { - "$ref": "Policy" + "$ref": "Topic" }, "parameterOrder": [ - "resource" + "name" ], - "httpMethod": "POST", + "httpMethod": "PUT", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], "parameters": { - "resource": { + "name": { + "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.", + "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/[^/]+$" + "type": "string" } }, - "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}:setIamPolicy" + "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}", + "path": "v1beta2/{+name}", + "id": "pubsub.projects.topics.create" }, - "create": { + "setIamPolicy": { "request": { - "$ref": "Topic" + "$ref": "SetIamPolicyRequest" }, - "description": "Creates the given topic with the given name.", + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", "response": { - "$ref": "Topic" + "$ref": "Policy" }, "parameterOrder": [ - "name" + "resource" ], - "httpMethod": "PUT", + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/pubsub" ], "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\"`.", - "required": true, - "type": "string", + "resource": { "pattern": "^projects/[^/]+/topics/[^/]+$", - "location": "path" + "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" } }, - "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}", - "path": "v1beta2/{+name}", - "id": "pubsub.projects.topics.create" + "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}:setIamPolicy", + "path": "v1beta2/{+resource}:setIamPolicy", + "id": "pubsub.projects.topics.setIamPolicy" } }, "resources": { "subscriptions": { "methods": { "list": { - "httpMethod": "GET", - "response": { - "$ref": "ListTopicSubscriptionsResponse" - }, - "parameterOrder": [ - "topic" - ], "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", - "location": "query" + "type": "string" }, "pageSize": { "description": "Maximum number of subscription names to return.", @@ -973,103 +613,463 @@ "https://www.googleapis.com/auth/pubsub" ], "flatPath": "v1beta2/projects/{projectsId}/topics/{topicsId}/subscriptions", - "id": "pubsub.projects.topics.subscriptions.list", "path": "v1beta2/{+topic}/subscriptions", - "description": "Lists the name of the subscriptions for this topic." + "id": "pubsub.projects.topics.subscriptions.list", + "description": "Lists the name of the subscriptions for this topic.", + "response": { + "$ref": "ListTopicSubscriptionsResponse" + }, + "parameterOrder": [ + "topic" + ], + "httpMethod": "GET" } } } } } - } - } - }, - "parameters": { - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" + } + } + }, + "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": { + "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": { + "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": { + "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": { + "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": { + "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" + } + }, + "schemas": { + "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" + }, + "ReceivedMessage": { + "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.", + "type": "object" + }, + "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": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed." + } + }, + "id": "TestIamPermissionsResponse" + }, + "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" + } + }, + "id": "PullRequest", + "description": "Request for the `Pull` method.", + "type": "object" + }, + "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.", + "type": "array", + "items": { + "$ref": "Subscription" + } + } + }, + "id": "ListSubscriptionsResponse", + "description": "Response for the `ListSubscriptions` method.", + "type": "object" + }, + "PublishRequest": { + "type": "object", + "properties": { + "messages": { + "description": "The messages to publish.", + "type": "array", + "items": { + "$ref": "PubsubMessage" + } + } + }, + "id": "PublishRequest", + "description": "Request for the Publish method." + }, + "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" }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" + "Subscription": { + "id": "Subscription", + "description": "A subscription resource.", + "type": "object", + "properties": { + "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" + }, + "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" + } + } }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" + "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" }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" + "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" }, - "uploadType": { - "type": "string", - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." + "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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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" }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" + "ModifyAckDeadlineRequest": { + "type": "object", + "properties": { + "ackId": { + "description": "The acknowledgment ID. Either this or ack_ids must be populated, but not\nboth.", + "type": "string" + }, + "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", + "description": "Request for the ModifyAckDeadline method." }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" + "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." }, - "$.xgafv": { - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format." + "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": { + "description": "Optional attributes for this message.", + "type": "object", + "additionalProperties": { + "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" + }, + "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" }, - "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" + "ModifyPushConfigRequest": { + "id": "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" + } + } }, - "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" + "Binding": { + "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", + "description": "Associates `members` with a `role`." }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" + "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" }, - "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" + "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" }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" + "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" } - } + }, + "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": "v1beta2", + "baseUrl": "https://pubsub.googleapis.com/", + "canonicalName": "Pubsub" } diff --git a/DiscoveryJson/redis_v1beta1.json b/DiscoveryJson/redis_v1beta1.json index f88a54cdb3..80b0664217 100644 --- a/DiscoveryJson/redis_v1beta1.json +++ b/DiscoveryJson/redis_v1beta1.json @@ -1,433 +1,4 @@ { - "version": "v1beta1", - "baseUrl": "https://redis.googleapis.com/", - "kind": "discovery#restDescription", - "description": "The Google Cloud Memorystore for Redis API is used for creating and managing Redis instances on the Google Cloud Platform.", - "servicePath": "", - "basePath": "", - "revision": "20180423", - "documentationLink": "https://cloud.google.com/memorystore/docs/redis/", - "id": "redis:v1beta1", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "LocationMetadata": { - "description": "This location metadata represents additional configuration options for a\ngiven location where a Redis instance may be created. All fields are output\nonly. It is returned as content of the\n`google.cloud.location.Location.metadata` field.", - "type": "object", - "properties": { - "availableZones": { - "description": "Output only. The set of available zones in the location. The map is keyed\nby the lowercase ID of each zone, as defined by GCE. These keys can be\nspecified in `location_id` or `alternative_location_id` fields when\ncreating a Redis instance.", - "type": "object", - "additionalProperties": { - "$ref": "ZoneMetadata" - } - } - }, - "id": "LocationMetadata" - }, - "GoogleCloudRedisV1beta1LocationMetadata": { - "description": "This location metadata represents additional configuration options for a\ngiven location where a Redis instance may be created. All fields are output\nonly. It is returned as content of the\n`google.cloud.location.Location.metadata` field.", - "type": "object", - "properties": { - "availableZones": { - "additionalProperties": { - "$ref": "GoogleCloudRedisV1beta1ZoneMetadata" - }, - "description": "Output only. The set of available zones in the location. The map is keyed\nby the lowercase ID of each zone, as defined by GCE. These keys can be\nspecified in `location_id` or `alternative_location_id` fields when\ncreating a Redis instance.", - "type": "object" - } - }, - "id": "GoogleCloudRedisV1beta1LocationMetadata" - }, - "ZoneMetadata": { - "id": "ZoneMetadata", - "description": "Defines specific information for a particular zone. Currently empty and\nreserved for future use only.", - "type": "object", - "properties": {} - }, - "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" - }, - "displayName": { - "description": "The friendly name for this location, typically a nearby city name.\nFor example, \"Tokyo\".", - "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" - }, - "GoogleCloudCommonOperationMetadata": { - "description": "Represents the metadata of the long-running operation.", - "type": "object", - "properties": { - "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": { - "description": "[Output only] API version used to start the operation.", - "type": "string" - }, - "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" - }, - "verb": { - "description": "[Output only] Name of the verb executed by the operation.", - "type": "string" - } - }, - "id": "GoogleCloudCommonOperationMetadata" - }, - "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": "This operation metadata represents the state of operations that may have\nhappened or are happening on the instance. All fields are output only. It is\nreturned as content of the `google.longrunning.Operation.metadata` field. The\n`google.longrunning.Operation.name` field will be of the form\n`projects/{project_id}/locations/{location_id}/operations/{operation_id}` and\nthe name for a `ListOperations` request will be of the form\n`projects/{project_id}/locations/{location_id}`\n\nOn a ListOperations request where {location_id} is \"-\", all regions\navailable to the {project_id} are queried and the results aggregated. If a\nlocation is not available, a dummy `google.longrunning.Operation` entry will\nbe included in the `operations` field of the response, with the `name` field\nset to a value of the form\n`projects/{project_id}/locations/{location_id}/operations/-` and the `done`\nfield will be set and the `result.error` field set with the `code` field set\nto `google.rpc.Code.DEADLINE_EXCEEDED` and the `message` field set to\n`location unavailable for ListOperations`. The Operation metadata` field\nwill not be set for such a dummy operation.", - "type": "object", - "properties": { - "operationType": { - "enumDescriptions": [ - "Not set.", - "Redis instance is being created.", - "Redis instance is being updated.", - "Redis instance is being deleted.", - "Redis instance is being repaired.", - "Redis instance is being in maintenance." - ], - "enum": [ - "TYPE_UNSPECIFIED", - "CREATE_REDIS_INSTANCE", - "UPDATE_REDIS_INSTANCE", - "DELETE_REDIS_INSTANCE", - "REPAIR_REDIS_INSTANCE", - "MAINTENANCE_FOR_REDIS_INSTANCE" - ], - "description": "Output only. The operation type.", - "type": "string" - }, - "startTime": { - "description": "Output only. The time the operation was started.", - "format": "google-datetime", - "type": "string" - }, - "createTime": { - "description": "Output only. The time the operation was created.", - "format": "google-datetime", - "type": "string" - }, - "state": { - "enum": [ - "STATUS_UNSPECIFIED", - "PENDING", - "RUNNING", - "FAILED", - "DONE" - ], - "description": "Output only. The current state of the operation.", - "type": "string", - "enumDescriptions": [ - "Not set.", - "The operation has been created.", - "The operation is currently running.", - "The operation has failed or was cancelled.", - "The operation completed successfully." - ] - }, - "target": { - "description": "Output only. Server-defined resource path for the target of the operation.", - "type": "string" - }, - "endTime": { - "description": "Output only. The time the operation was completed.", - "format": "google-datetime", - "type": "string" - }, - "detail": { - "description": "Output only. Detailed operation progress, if available.", - "type": "string" - } - }, - "id": "OperationMetadata" - }, - "GoogleCloudRedisV1beta1ZoneMetadata": { - "id": "GoogleCloudRedisV1beta1ZoneMetadata", - "description": "Defines specific information for a particular zone. Currently empty and\nreserved for future use only.", - "type": "object", - "properties": {} - }, - "ListLocationsResponse": { - "description": "The response message for Locations.ListLocations.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" - }, - "locations": { - "type": "array", - "items": { - "$ref": "Location" - }, - "description": "A list of locations that matches the specified filter in the request." - } - }, - "id": "ListLocationsResponse" - }, - "ListInstancesResponse": { - "id": "ListInstancesResponse", - "description": "Response for ListInstances.", - "type": "object", - "properties": { - "instances": { - "description": "A list of Redis instances in the project in the specified location,\nor across all locations.\n\nIf the `location_id` in the parent field of the request is \"-\", all regions\navailable to the project are queried, and the results aggregated.\nIf in such an aggregated query a location is unavailable, a dummy Redis\nentry is included in the response with the \"name\" field set to a value of\nthe form projects/{project_id}/locations/{location_id}/instances/- and the\n\"status\" field set to ERROR and \"status_message\" field set to \"location not\navailable for ListInstances\".", - "type": "array", - "items": { - "$ref": "Instance" - } - }, - "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no more\nresults in the list.", - "type": "string" - } - } - }, - "Operation": { - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object", - "properties": { - "response": { - "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`.", - "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." - }, - "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" - } - }, - "id": "Operation" - }, - "Instance": { - "id": "Instance", - "description": "A Google Cloud Redis instance.", - "type": "object", - "properties": { - "locationId": { - "description": "Optional. The zone where the instance will be provisioned. If not provided,\nthe service will choose a zone for the instance. For STANDARD_HA tier,\ninstances will be created across two zones for protection against zonal\nfailures. if [alternative_location_id] is also provided, it must be\ndifferent from [location_id].", - "type": "string" - }, - "displayName": { - "description": "An arbitrary and optional user-provided name for the instance.", - "type": "string" - }, - "reservedIpRange": { - "description": "Optional. The CIDR range of internal addresses that are reserved for this\ninstance. If not provided, the service will choose an unused /29 block,\nfor example, 10.0.0.0/29 or 192.168.0.0/29. Ranges must be unique\nand non-overlapping with existing subnets in a network.", - "type": "string" - }, - "currentLocationId": { - "description": "Output only. The current zone where the Redis endpoint is placed. In\nsingle zone deployments, this will always be the same as [location_id]\nprovided by the user at creation time. In cross-zone instances (only\napplicable in STANDARD_HA tier), this can be either [location_id] or\n[alternative_location_id] and can change on a failover event.", - "type": "string" - }, - "alternativeLocationId": { - "description": "Optional. Only applicable to STANDARD_HA tier which protects the instance\nagainst zonal failures by provisioning it across two zones. If provided, it\nmust be a different zone from the one provided in [location_id].", - "type": "string" - }, - "createTime": { - "description": "Output only. The time the instance was created.", - "format": "google-datetime", - "type": "string" - }, - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Resource labels to represent user provided metadata", - "type": "object" - }, - "statusMessage": { - "description": "Output only. Additional information about the current status of this\ninstance, if available.", - "type": "string" - }, - "authorizedNetwork": { - "description": "Optional. The full name of the Google Compute Engine\n[network](/compute/docs/networks-and-firewalls#networks) to which the\ninstance is connected. If left unspecified, the `default` network\nwill be used.", - "type": "string" - }, - "state": { - "enum": [ - "STATE_UNSPECIFIED", - "CREATING", - "READY", - "UPDATING", - "DELETING", - "REPAIRING", - "MAINTENANCE", - "EXPORTING", - "IMPORTING" - ], - "description": "Output only. The current state of this instance.", - "type": "string", - "enumDescriptions": [ - "Not set.", - "Redis instance is being created.", - "Redis instance has been created and is fully usable.", - "Redis instance configuration is being updated. Certain kinds of updates\nmay cause the instance to become unusable while the update is in\nprogress.", - "Redis instance is being deleted.", - "Redis instance is being repaired and may be unusable. Details can be\nfound in the `status_message` field.", - "Maintenance is being performed on this Redis instance.", - "Redis instance is exporting data.", - "Redis instance is importing data (availability may be affected)." - ] - }, - "name": { - "description": "Required. Unique name of the resource in this scope including project and\nlocation using the form:\n `projects/{project_id}/locations/{location_id}/instances/{instance_id}`\n\nNote: Redis instances are managed and addressed at regional level so\nlocation_id here refers to a GCP region; however, users get to choose which\nspecific zone (or collection of zones for cross-zone instances) an instance\nshould be provisioned in. Refer to [location_id] and\n[alternative_location_id] fields for more details.", - "type": "string" - }, - "port": { - "type": "integer", - "description": "Output only. The port number of the exposed Redis endpoint.", - "format": "int32" - }, - "redisConfigs": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Optional. Redis configuration parameters, according to\nhttp://redis.io/topics/config. Currently, the only supported parameters\nare:\n * maxmemory-policy\n * notify-keyspace-events" - }, - "host": { - "description": "Output only. Hostname or IP address of the exposed Redis endpoint used by\nclients to connect to the service.", - "type": "string" - }, - "redisVersion": { - "type": "string", - "description": "Optional. The version of Redis software.\nIf not provided, latest supported version will be used. Updating the\nversion will perform an upgrade/downgrade to the new version. Currently,\nthe supported values are `REDIS_3_2` for Redis 3.2." - }, - "memorySizeGb": { - "type": "integer", - "description": "Required. Redis memory size in GB, up to 200GB.", - "format": "int32" - }, - "tier": { - "enumDescriptions": [ - "Not set.", - "BASIC tier: standalone instance", - "STANDARD_HA tier: highly available primary/replica instances" - ], - "enum": [ - "TIER_UNSPECIFIED", - "BASIC", - "STANDARD_HA" - ], - "description": "Required. The service tier of the instance.", - "type": "string" - } - } - }, - "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" - } - } - } - } - } - }, - "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 Redis", "auth": { "oauth2": { @@ -451,12 +22,14 @@ "locations": { "methods": { "list": { + "httpMethod": "GET", + "response": { + "$ref": "ListLocationsResponse" + }, + "parameterOrder": [ + "name" + ], "parameters": { - "filter": { - "location": "query", - "description": "The standard list filter.", - "type": "string" - }, "name": { "location": "path", "description": "The resource that owns the locations collection, if applicable.", @@ -465,14 +38,19 @@ "pattern": "^projects/[^/]+$" }, "pageToken": { + "type": "string", "location": "query", - "description": "The standard list page token.", - "type": "string" + "description": "The standard list page token." }, "pageSize": { + "location": "query", "description": "The standard list page size.", "format": "int32", - "type": "integer", + "type": "integer" + }, + "filter": { + "description": "The standard list filter.", + "type": "string", "location": "query" } }, @@ -482,17 +60,9 @@ "flatPath": "v1beta1/projects/{projectsId}/locations", "id": "redis.projects.locations.list", "path": "v1beta1/{+name}/locations", - "description": "Lists information about the supported locations for this service.", - "httpMethod": "GET", - "response": { - "$ref": "ListLocationsResponse" - }, - "parameterOrder": [ - "name" - ] + "description": "Lists information about the supported locations for this service." }, "get": { - "description": "Gets information about a location.", "response": { "$ref": "Location" }, @@ -502,11 +72,11 @@ "httpMethod": "GET", "parameters": { "name": { + "pattern": "^projects/[^/]+/locations/[^/]+$", "location": "path", "description": "Resource name for the location.", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$" + "type": "string" } }, "scopes": [ @@ -514,36 +84,44 @@ ], "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}", "path": "v1beta1/{+name}", - "id": "redis.projects.locations.get" + "id": "redis.projects.locations.get", + "description": "Gets information about a location." } }, "resources": { "operations": { "methods": { "list": { + "response": { + "$ref": "ListOperationsResponse" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", "parameters": { + "filter": { + "description": "The standard list filter.", + "type": "string", + "location": "query" + }, "name": { + "required": true, + "type": "string", "pattern": "^projects/[^/]+/locations/[^/]+$", "location": "path", - "description": "The name of the operation's parent resource.", - "required": true, - "type": "string" + "description": "The name of the operation's parent resource." }, "pageToken": { + "location": "query", "description": "The standard list page token.", - "type": "string", - "location": "query" + "type": "string" }, "pageSize": { - "location": "query", "description": "The standard list page size.", "format": "int32", - "type": "integer" - }, - "filter": { - "type": "string", - "location": "query", - "description": "The standard list filter." + "type": "integer", + "location": "query" } }, "scopes": [ @@ -552,14 +130,7 @@ "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations", "path": "v1beta1/{+name}/operations", "id": "redis.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.", - "response": { - "$ref": "ListOperationsResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET" + "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": { @@ -574,11 +145,11 @@ ], "parameters": { "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", - "location": "path", "description": "The name of the operation resource.", "required": true, - "type": "string" + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "location": "path" } }, "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", @@ -590,32 +161,8 @@ }, "instances": { "methods": { - "delete": { - "description": "Deletes a specific Redis instance. Instance stops serving and data is\ndeleted.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "location": "path", - "description": "Required. Redis instance resource name using the form:\n `projects/{project_id}/locations/{location_id}/instances/{instance_id}`\nwhere `location_id` refers to a GCP region", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/instances/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/instances/{instancesId}", - "path": "v1beta1/{+name}", - "id": "redis.projects.locations.instances.delete" - }, "list": { + "description": "Lists all Redis instances owned by a project in either the specified\nlocation (region) or all locations.\n\nThe location should have the following format:\n* `projects/{project_id}/locations/{location_id}`\n\nIf `location_id` is specified as `-` (wildcard), then all regions\navailable to the project are queried, and the results are aggregated.", "response": { "$ref": "ListInstancesResponse" }, @@ -624,22 +171,22 @@ ], "httpMethod": "GET", "parameters": { + "pageSize": { + "description": "The maximum number of items to return.\n\nIf not specified, a default value of 1000 will be used by the service.\nRegardless of the page_size value, the response may include a partial list\nand a caller should only rely on response's\nnext_page_token\nto determine if there are more instances left to be queried.", + "format": "int32", + "type": "integer", + "location": "query" + }, "parent": { + "description": "Required. The resource name of the instance location using the form:\n `projects/{project_id}/locations/{location_id}`\nwhere `location_id` refers to a GCP region", "required": true, "type": "string", "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path", - "description": "Required. The resource name of the instance location using the form:\n `projects/{project_id}/locations/{location_id}`\nwhere `location_id` refers to a GCP region" + "location": "path" }, "pageToken": { - "location": "query", "description": "The next_page_token value returned from a previous List request,\nif any.", - "type": "string" - }, - "pageSize": { - "description": "The maximum number of items to return.\n\nIf not specified, a default value of 1000 will be used by the service.\nRegardless of the page_size value, the response may include a partial list\nand a caller should only rely on response's\nnext_page_token\nto determine if there are more instances left to be queried.", - "format": "int32", - "type": "integer", + "type": "string", "location": "query" } }, @@ -648,11 +195,9 @@ ], "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/instances", "path": "v1beta1/{+parent}/instances", - "id": "redis.projects.locations.instances.list", - "description": "Lists all Redis instances owned by a project in either the specified\nlocation (region) or all locations.\n\nThe location should have the following format:\n* `projects/{project_id}/locations/{location_id}`\n\nIf `location_id` is specified as `-` (wildcard), then all regions\navailable to the project are queried, and the results are aggregated." + "id": "redis.projects.locations.instances.list" }, "get": { - "description": "Gets the details of a specific Redis instance.", "httpMethod": "GET", "parameterOrder": [ "name" @@ -665,31 +210,39 @@ ], "parameters": { "name": { + "pattern": "^projects/[^/]+/locations/[^/]+/instances/[^/]+$", + "location": "path", "description": "Required. Redis instance resource name using the form:\n `projects/{project_id}/locations/{location_id}/instances/{instance_id}`\nwhere `location_id` refers to a GCP region", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/instances/[^/]+$", - "location": "path" + "type": "string" } }, "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/instances/{instancesId}", "id": "redis.projects.locations.instances.get", - "path": "v1beta1/{+name}" + "path": "v1beta1/{+name}", + "description": "Gets the details of a specific Redis instance." }, "patch": { + "httpMethod": "PATCH", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Operation" + }, "parameters": { + "updateMask": { + "description": "Required. Mask of fields to update. At least one path must be supplied in\nthis field. The elements of the repeated paths field may only include these\nfields from Instance:\n* `display_name`\n* `labels`\n* `redis_config`\n* `redis_version`", + "format": "google-fieldmask", + "type": "string", + "location": "query" + }, "name": { "required": true, "type": "string", "pattern": "^projects/[^/]+/locations/[^/]+/instances/[^/]+$", "location": "path", "description": "Required. Unique name of the resource in this scope including project and\nlocation using the form:\n `projects/{project_id}/locations/{location_id}/instances/{instance_id}`\n\nNote: Redis instances are managed and addressed at regional level so\nlocation_id here refers to a GCP region; however, users get to choose which\nspecific zone (or collection of zones for cross-zone instances) an instance\nshould be provisioned in. Refer to [location_id] and\n[alternative_location_id] fields for more details." - }, - "updateMask": { - "type": "string", - "location": "query", - "description": "Required. Mask of fields to update. At least one path must be supplied in\nthis field. The elements of the repeated paths field may only include these\nfields from Instance:\n* `display_name`\n* `labels`\n* `redis_config`\n* `redis_version`", - "format": "google-fieldmask" } }, "scopes": [ @@ -701,16 +254,13 @@ "description": "Updates the metadata and configuration of a specific Redis instance.\n\nCompleted longrunning.Operation will contain the new instance object\nin the response field. The returned operation is automatically deleted\nafter a few hours, so there is no need to call DeleteOperation.", "request": { "$ref": "Instance" - }, - "httpMethod": "PATCH", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Operation" } }, "create": { + "description": "Creates a Redis instance based on the specified tier and memory size.\n\nBy default, the instance is peered to the project's\n[default network](/compute/docs/networks-and-firewalls#networks).\n\nThe creation is executed asynchronously and callers may check the returned\noperation to track its progress. Once the operation is completed the Redis\ninstance will be fully functional. Completed longrunning.Operation will\ncontain the new instance object in the response field.\n\nThe returned operation is automatically deleted after a few hours, so there\nis no need to call DeleteOperation.", + "request": { + "$ref": "Instance" + }, "response": { "$ref": "Operation" }, @@ -727,9 +277,9 @@ "type": "string" }, "instanceId": { - "location": "query", "description": "Required. The logical name of the Redis instance in the customer project\nwith the following restrictions:\n\n* Must contain only lowercase letters, numbers, and hyphens.\n* Must start with a letter.\n* Must be between 1-40 characters.\n* Must end with a number or a letter.\n* Must be unique within the customer project / location", - "type": "string" + "type": "string", + "location": "query" } }, "scopes": [ @@ -737,11 +287,32 @@ ], "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/instances", "path": "v1beta1/{+parent}/instances", - "id": "redis.projects.locations.instances.create", - "description": "Creates a Redis instance based on the specified tier and memory size.\n\nBy default, the instance is peered to the project's\n[default network](/compute/docs/networks-and-firewalls#networks).\n\nThe creation is executed asynchronously and callers may check the returned\noperation to track its progress. Once the operation is completed the Redis\ninstance will be fully functional. Completed longrunning.Operation will\ncontain the new instance object in the response field.\n\nThe returned operation is automatically deleted after a few hours, so there\nis no need to call DeleteOperation.", - "request": { - "$ref": "Instance" - } + "id": "redis.projects.locations.instances.create" + }, + "delete": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "parameters": { + "name": { + "location": "path", + "description": "Required. Redis instance resource name using the form:\n `projects/{project_id}/locations/{location_id}/instances/{instance_id}`\nwhere `location_id` refers to a GCP region", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/instances/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/instances/{instancesId}", + "path": "v1beta1/{+name}", + "id": "redis.projects.locations.instances.delete", + "description": "Deletes a specific Redis instance. Instance stops serving and data is\ndeleted." } } } @@ -751,91 +322,520 @@ } }, "parameters": { - "access_token": { - "description": "OAuth access token.", + "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" + }, + "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" }, - "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.", + "$.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": { + "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" + "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" + "bearer_token": { + "location": "query", + "description": "OAuth bearer token.", + "type": "string" + } + }, + "version": "v1beta1", + "baseUrl": "https://redis.googleapis.com/", + "kind": "discovery#restDescription", + "description": "The Google Cloud Memorystore for Redis API is used for creating and managing Redis instances on the Google Cloud Platform.", + "servicePath": "", + "basePath": "", + "revision": "20180423", + "documentationLink": "https://cloud.google.com/memorystore/docs/redis/", + "id": "redis:v1beta1", + "discoveryVersion": "v1", + "version_module": true, + "schemas": { + "GoogleCloudRedisV1beta1ZoneMetadata": { + "description": "Defines specific information for a particular zone. Currently empty and\nreserved for future use only.", + "type": "object", + "properties": {}, + "id": "GoogleCloudRedisV1beta1ZoneMetadata" + }, + "ListLocationsResponse": { + "description": "The response message for Locations.ListLocations.", + "type": "object", + "properties": { + "nextPageToken": { + "type": "string", + "description": "The standard List next-page token." + }, + "locations": { + "description": "A list of locations that matches the specified filter in the request.", + "type": "array", + "items": { + "$ref": "Location" + } + } + }, + "id": "ListLocationsResponse" + }, + "ListInstancesResponse": { + "id": "ListInstancesResponse", + "description": "Response for ListInstances.", + "type": "object", + "properties": { + "nextPageToken": { + "description": "Token to retrieve the next page of results, or empty if there are no more\nresults in the list.", + "type": "string" + }, + "instances": { + "type": "array", + "items": { + "$ref": "Instance" + }, + "description": "A list of Redis instances in the project in the specified location,\nor across all locations.\n\nIf the `location_id` in the parent field of the request is \"-\", all regions\navailable to the project are queried, and the results aggregated.\nIf in such an aggregated query a location is unavailable, a dummy Redis\nentry is included in the response with the \"name\" field set to a value of\nthe form projects/{project_id}/locations/{location_id}/instances/- and the\n\"status\" field set to ERROR and \"status_message\" field set to \"location not\navailable for ListInstances\"." + } + } + }, + "Operation": { + "properties": { + "response": { + "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`.", + "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" + } + }, + "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.", + "type": "object" + }, + "Instance": { + "description": "A Google Cloud Redis instance.", + "type": "object", + "properties": { + "locationId": { + "description": "Optional. The zone where the instance will be provisioned. If not provided,\nthe service will choose a zone for the instance. For STANDARD_HA tier,\ninstances will be created across two zones for protection against zonal\nfailures. if [alternative_location_id] is also provided, it must be\ndifferent from [location_id].", + "type": "string" + }, + "displayName": { + "description": "An arbitrary and optional user-provided name for the instance.", + "type": "string" + }, + "reservedIpRange": { + "type": "string", + "description": "Optional. The CIDR range of internal addresses that are reserved for this\ninstance. If not provided, the service will choose an unused /29 block,\nfor example, 10.0.0.0/29 or 192.168.0.0/29. Ranges must be unique\nand non-overlapping with existing subnets in a network." + }, + "currentLocationId": { + "description": "Output only. The current zone where the Redis endpoint is placed. In\nsingle zone deployments, this will always be the same as [location_id]\nprovided by the user at creation time. In cross-zone instances (only\napplicable in STANDARD_HA tier), this can be either [location_id] or\n[alternative_location_id] and can change on a failover event.", + "type": "string" + }, + "alternativeLocationId": { + "description": "Optional. Only applicable to STANDARD_HA tier which protects the instance\nagainst zonal failures by provisioning it across two zones. If provided, it\nmust be a different zone from the one provided in [location_id].", + "type": "string" + }, + "createTime": { + "description": "Output only. The time the instance was created.", + "format": "google-datetime", + "type": "string" + }, + "labels": { + "description": "Resource labels to represent user provided metadata", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "statusMessage": { + "description": "Output only. Additional information about the current status of this\ninstance, if available.", + "type": "string" + }, + "authorizedNetwork": { + "description": "Optional. The full name of the Google Compute Engine\n[network](/compute/docs/networks-and-firewalls#networks) to which the\ninstance is connected. If left unspecified, the `default` network\nwill be used.", + "type": "string" + }, + "state": { + "enum": [ + "STATE_UNSPECIFIED", + "CREATING", + "READY", + "UPDATING", + "DELETING", + "REPAIRING", + "MAINTENANCE", + "EXPORTING", + "IMPORTING" + ], + "description": "Output only. The current state of this instance.", + "type": "string", + "enumDescriptions": [ + "Not set.", + "Redis instance is being created.", + "Redis instance has been created and is fully usable.", + "Redis instance configuration is being updated. Certain kinds of updates\nmay cause the instance to become unusable while the update is in\nprogress.", + "Redis instance is being deleted.", + "Redis instance is being repaired and may be unusable. Details can be\nfound in the `status_message` field.", + "Maintenance is being performed on this Redis instance.", + "Redis instance is exporting data.", + "Redis instance is importing data (availability may be affected)." + ] + }, + "name": { + "description": "Required. Unique name of the resource in this scope including project and\nlocation using the form:\n `projects/{project_id}/locations/{location_id}/instances/{instance_id}`\n\nNote: Redis instances are managed and addressed at regional level so\nlocation_id here refers to a GCP region; however, users get to choose which\nspecific zone (or collection of zones for cross-zone instances) an instance\nshould be provisioned in. Refer to [location_id] and\n[alternative_location_id] fields for more details.", + "type": "string" + }, + "port": { + "type": "integer", + "description": "Output only. The port number of the exposed Redis endpoint.", + "format": "int32" + }, + "redisConfigs": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Redis configuration parameters, according to\nhttp://redis.io/topics/config. Currently, the only supported parameters\nare:\n * maxmemory-policy\n * notify-keyspace-events", + "type": "object" + }, + "host": { + "description": "Output only. Hostname or IP address of the exposed Redis endpoint used by\nclients to connect to the service.", + "type": "string" + }, + "redisVersion": { + "description": "Optional. The version of Redis software.\nIf not provided, latest supported version will be used. Updating the\nversion will perform an upgrade/downgrade to the new version. Currently,\nthe supported values are `REDIS_3_2` for Redis 3.2.", + "type": "string" + }, + "memorySizeGb": { + "description": "Required. Redis memory size in GB, up to 200GB.", + "format": "int32", + "type": "integer" + }, + "tier": { + "description": "Required. The service tier of the instance.", + "type": "string", + "enumDescriptions": [ + "Not set.", + "BASIC tier: standalone instance", + "STANDARD_HA tier: highly available primary/replica instances" + ], + "enum": [ + "TIER_UNSPECIFIED", + "BASIC", + "STANDARD_HA" + ] + } + }, + "id": "Instance" + }, + "Status": { + "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", + "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." }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" + "LocationMetadata": { + "description": "This location metadata represents additional configuration options for a\ngiven location where a Redis instance may be created. All fields are output\nonly. It is returned as content of the\n`google.cloud.location.Location.metadata` field.", + "type": "object", + "properties": { + "availableZones": { + "type": "object", + "additionalProperties": { + "$ref": "ZoneMetadata" + }, + "description": "Output only. The set of available zones in the location. The map is keyed\nby the lowercase ID of each zone, as defined by GCE. These keys can be\nspecified in `location_id` or `alternative_location_id` fields when\ncreating a Redis instance." + } + }, + "id": "LocationMetadata" }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" + "GoogleCloudRedisV1beta1LocationMetadata": { + "description": "This location metadata represents additional configuration options for a\ngiven location where a Redis instance may be created. All fields are output\nonly. It is returned as content of the\n`google.cloud.location.Location.metadata` field.", + "type": "object", + "properties": { + "availableZones": { + "additionalProperties": { + "$ref": "GoogleCloudRedisV1beta1ZoneMetadata" + }, + "description": "Output only. The set of available zones in the location. The map is keyed\nby the lowercase ID of each zone, as defined by GCE. These keys can be\nspecified in `location_id` or `alternative_location_id` fields when\ncreating a Redis instance.", + "type": "object" + } + }, + "id": "GoogleCloudRedisV1beta1LocationMetadata" }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" + "ZoneMetadata": { + "description": "Defines specific information for a particular zone. Currently empty and\nreserved for future use only.", + "type": "object", + "properties": {}, + "id": "ZoneMetadata" }, - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" + "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": { + "description": "The canonical id for this location. For example: `\"us-east1\"`.", + "type": "string" + }, + "displayName": { + "type": "string", + "description": "The friendly name for this location, typically a nearby city name.\nFor example, \"Tokyo\"." + }, + "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" + } + }, + "labels": { + "description": "Cross-service attributes for the location. For example\n\n {\"cloud.googleapis.com/region\": \"us-east1\"}", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "id": "Location" }, - "$.xgafv": { - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string" + "GoogleCloudCommonOperationMetadata": { + "type": "object", + "properties": { + "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": { + "description": "[Output only] API version used to start the operation.", + "type": "string" + }, + "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" + }, + "verb": { + "description": "[Output only] Name of the verb executed by the operation.", + "type": "string" + } + }, + "id": "GoogleCloudCommonOperationMetadata", + "description": "Represents the metadata of the long-running operation." }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" + "ListOperationsResponse": { + "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", + "description": "The response message for Operations.ListOperations." }, - "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" + "OperationMetadata": { + "description": "This operation metadata represents the state of operations that may have\nhappened or are happening on the instance. All fields are output only. It is\nreturned as content of the `google.longrunning.Operation.metadata` field. The\n`google.longrunning.Operation.name` field will be of the form\n`projects/{project_id}/locations/{location_id}/operations/{operation_id}` and\nthe name for a `ListOperations` request will be of the form\n`projects/{project_id}/locations/{location_id}`\n\nOn a ListOperations request where {location_id} is \"-\", all regions\navailable to the {project_id} are queried and the results aggregated. If a\nlocation is not available, a dummy `google.longrunning.Operation` entry will\nbe included in the `operations` field of the response, with the `name` field\nset to a value of the form\n`projects/{project_id}/locations/{location_id}/operations/-` and the `done`\nfield will be set and the `result.error` field set with the `code` field set\nto `google.rpc.Code.DEADLINE_EXCEEDED` and the `message` field set to\n`location unavailable for ListOperations`. The Operation metadata` field\nwill not be set for such a dummy operation.", + "type": "object", + "properties": { + "endTime": { + "description": "Output only. The time the operation was completed.", + "format": "google-datetime", + "type": "string" + }, + "detail": { + "description": "Output only. Detailed operation progress, if available.", + "type": "string" + }, + "operationType": { + "type": "string", + "enumDescriptions": [ + "Not set.", + "Redis instance is being created.", + "Redis instance is being updated.", + "Redis instance is being deleted.", + "Redis instance is being repaired.", + "Redis instance is being in maintenance." + ], + "enum": [ + "TYPE_UNSPECIFIED", + "CREATE_REDIS_INSTANCE", + "UPDATE_REDIS_INSTANCE", + "DELETE_REDIS_INSTANCE", + "REPAIR_REDIS_INSTANCE", + "MAINTENANCE_FOR_REDIS_INSTANCE" + ], + "description": "Output only. The operation type." + }, + "startTime": { + "description": "Output only. The time the operation was started.", + "format": "google-datetime", + "type": "string" + }, + "createTime": { + "description": "Output only. The time the operation was created.", + "format": "google-datetime", + "type": "string" + }, + "state": { + "enumDescriptions": [ + "Not set.", + "The operation has been created.", + "The operation is currently running.", + "The operation has failed or was cancelled.", + "The operation completed successfully." + ], + "enum": [ + "STATUS_UNSPECIFIED", + "PENDING", + "RUNNING", + "FAILED", + "DONE" + ], + "description": "Output only. The current state of the operation.", + "type": "string" + }, + "target": { + "description": "Output only. Server-defined resource path for the target of the operation.", + "type": "string" + } + }, + "id": "OperationMetadata" } + }, + "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" } } diff --git a/DiscoveryJson/runtimeconfig_v1.json b/DiscoveryJson/runtimeconfig_v1.json index 906aa1bcfe..9092550fc1 100644 --- a/DiscoveryJson/runtimeconfig_v1.json +++ b/DiscoveryJson/runtimeconfig_v1.json @@ -1,18 +1,18 @@ { - "revision": "20180416", - "documentationLink": "https://cloud.google.com/deployment-manager/runtime-configurator/", + "basePath": "", "id": "runtimeconfig:v1", + "documentationLink": "https://cloud.google.com/deployment-manager/runtime-configurator/", + "revision": "20180416", "discoveryVersion": "v1", "version_module": true, "schemas": { "CancelOperationRequest": { - "id": "CancelOperationRequest", "description": "The request message for Operations.CancelOperation.", "type": "object", - "properties": {} + "properties": {}, + "id": "CancelOperationRequest" }, "Status": { - "type": "object", "properties": { "code": { "description": "The status code, which should be an enum value of google.rpc.Code.", @@ -36,15 +36,16 @@ } }, "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." + "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" }, "ListOperationsResponse": { "description": "The response message for Operations.ListOperations.", "type": "object", "properties": { "nextPageToken": { - "type": "string", - "description": "The standard 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.", @@ -57,25 +58,12 @@ "id": "ListOperationsResponse" }, "Operation": { - "id": "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": { - "$ref": "Status", - "description": "The error result of the operation in case of failure or cancellation." + "description": "The error result of the operation in case of failure or cancellation.", + "$ref": "Status" }, "metadata": { "additionalProperties": { @@ -88,20 +76,33 @@ "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" }, "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", - "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" } }, "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" + "x32": "http://www.google.com/images/icons/product/search-32.gif", + "x16": "http://www.google.com/images/icons/product/search-16.gif" }, "canonicalName": "Cloud RuntimeConfig", "auth": { @@ -127,10 +128,6 @@ "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" }, @@ -138,10 +135,6 @@ "name" ], "httpMethod": "POST", - "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.", @@ -151,48 +144,55 @@ "location": "path" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ], "flatPath": "v1/operations/{operationsId}:cancel", "path": "v1/{+name}:cancel", - "id": "runtimeconfig.operations.cancel" + "id": "runtimeconfig.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`.", + "request": { + "$ref": "CancelOperationRequest" + } }, "delete": { - "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`.", + "httpMethod": "DELETE", "response": { "$ref": "Empty" }, "parameterOrder": [ "name" ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], "parameters": { "name": { - "location": "path", "description": "The name of the operation resource to be deleted.", "required": true, "type": "string", - "pattern": "^operations/.+$" + "pattern": "^operations/.+$", + "location": "path" } - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ], + "flatPath": "v1/operations/{operationsId}", + "id": "runtimeconfig.operations.delete", + "path": "v1/{+name}", + "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": { - "flatPath": "v1/operations", - "id": "runtimeconfig.operations.list", "path": "v1/{+name}", + "id": "runtimeconfig.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.", - "httpMethod": "GET", "response": { "$ref": "ListOperationsResponse" }, "parameterOrder": [ "name" ], + "httpMethod": "GET", "parameters": { "filter": { "location": "query", @@ -207,77 +207,52 @@ "type": "string" }, "pageToken": { - "location": "query", "description": "The standard list page token.", - "type": "string" + "type": "string", + "location": "query" }, "pageSize": { - "location": "query", "description": "The standard list page size.", "format": "int32", - "type": "integer" + "type": "integer", + "location": "query" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloudruntimeconfig" - ] + ], + "flatPath": "v1/operations" } } } }, "parameters": { - "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", - "description": "Available 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" }, "pp": { + "location": "query", "description": "Pretty-print response.", "type": "boolean", - "default": "true", - "location": "query" + "default": "true" }, - "bearer_token": { - "description": "OAuth bearer token.", + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", "type": "string", "location": "query" }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", + "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" + "type": "string", + "location": "query" }, "prettyPrint": { "location": "query", @@ -285,39 +260,64 @@ "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" + "type": "string", + "location": "query" }, - "callback": { - "description": "JSONP", + "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": [ - "v1 error format", - "v2 error format" - ] + "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" } }, "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": "" + "servicePath": "" } diff --git a/DiscoveryJson/runtimeconfig_v1beta1.json b/DiscoveryJson/runtimeconfig_v1beta1.json index b0d0f545f9..70e1e3dd2f 100644 --- a/DiscoveryJson/runtimeconfig_v1beta1.json +++ b/DiscoveryJson/runtimeconfig_v1beta1.json @@ -1,143 +1,50 @@ { + "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": "20180416", + "discoveryVersion": "v1", + "version_module": true, "schemas": { - "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" - } - } - } - }, - "ListVariablesResponse": { - "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" - } - }, - "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", - "description": "Response for the `ListVariables()` method." - }, - "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", - "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.", - "type": "string" - }, - "description": { - "description": "An optional description of the RuntimeConfig object.", - "type": "string" - } - }, - "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" - }, - "ListWaitersResponse": { - "description": "Response for the `ListWaiters()` method.\nOrder of returned waiter objects is arbitrary.", - "type": "object", - "properties": { - "waiters": { - "description": "Found waiters in the project.", - "type": "array", - "items": { - "$ref": "Waiter" - } - }, - "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": "ListWaitersResponse" - }, - "Waiter": { + "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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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": { - "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.", + "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" }, - "error": { - "$ref": "Status", - "description": "Output only. If the waiter ended due to a failure or timeout, this value\nwill be set." - }, - "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" - }, - "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" + "version": { + "description": "Deprecated.", + "format": "int32", + "type": "integer" }, - "createTime": { - "type": "string", - "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" - } - }, - "id": "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." - }, - "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).", + "bindings": { + "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", "type": "array", "items": { - "type": "string" + "$ref": "Binding" } } }, - "id": "TestIamPermissionsRequest" + "id": "Policy" }, "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": { - "type": "string", "description": "Output only. The time of the last variable update.", - "format": "google-datetime" + "format": "google-datetime", + "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.", + "type": "string", "enumDescriptions": [ "Default variable state.", "The variable was updated, while `variables().watch` was executing.", @@ -147,9 +54,7 @@ "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" + ] }, "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.", @@ -167,67 +72,42 @@ }, "id": "Variable" }, - "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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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" - }, "Operation": { "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", "type": "object", "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" - }, "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": { - "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" - } + }, + "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" }, "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": "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" }, "SetIamPolicyRequest": { - "id": "SetIamPolicyRequest", "description": "Request message for `SetIamPolicy` method.", "type": "object", "properties": { @@ -235,17 +115,13 @@ "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" @@ -260,27 +136,32 @@ "type": "any" } } + }, + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" } }, "id": "Status" }, "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" } + }, + "role": { + "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", + "type": "string" } }, - "id": "Binding" + "id": "Binding", + "description": "Associates `members` with a `role`.", + "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 `{}`.", @@ -289,7 +170,6 @@ "id": "Empty" }, "Cardinality": { - "id": "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", "properties": { @@ -302,7 +182,8 @@ "format": "int32", "type": "integer" } - } + }, + "id": "Cardinality" }, "ListConfigsResponse": { "properties": { @@ -323,7 +204,6 @@ "type": "object" }, "EndCondition": { - "id": "EndCondition", "description": "The condition that a Waiter resource is waiting for.", "type": "object", "properties": { @@ -331,280 +211,174 @@ "$ref": "Cardinality", "description": "The cardinality of the `EndCondition`." } - } - } - }, - "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" + }, + "id": "EndCondition" + }, + "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" + }, + "ListVariablesResponse": { + "properties": { + "variables": { + "description": "A list of variables and their values. The order of returned variable\nobjects is arbitrary.", + "type": "array", + "items": { + "$ref": "Variable" + } }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" + "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" } - } - } - }, - "rootUrl": "https://runtimeconfig.googleapis.com/", - "ownerDomain": "google.com", - "name": "runtimeconfig", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Cloud Runtime Configuration API", - "ownerName": "Google", - "resources": { - "projects": { - "resources": { - "configs": { - "methods": { - "getIamPolicy": { - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "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" - } - }, - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}:getIamPolicy", - "path": "v1beta1/{+resource}:getIamPolicy", - "id": "runtimeconfig.projects.configs.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": { - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}", - "path": "v1beta1/{+name}", - "id": "runtimeconfig.projects.configs.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": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/configs/[^/]+$", - "location": "path", - "description": "The name of the RuntimeConfig resource to retrieve, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`" - } - } - }, - "update": { - "path": "v1beta1/{+name}", - "id": "runtimeconfig.projects.configs.update", - "request": { - "$ref": "RuntimeConfig" - }, - "description": "Updates a RuntimeConfig resource. The configuration must exist beforehand.", - "response": { - "$ref": "RuntimeConfig" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "parameters": { - "name": { - "description": "The name of the RuntimeConfig resource to update, 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}" - }, - "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", - "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": { - "path": "v1beta1/{+name}", - "id": "runtimeconfig.projects.configs.delete", - "description": "Deletes a RuntimeConfig resource.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "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/[^/]+$" - } - }, - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}" - }, - "list": { - "response": { - "$ref": "ListConfigsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "parameters": { - "parent": { - "pattern": "^projects/[^/]+$", - "location": "path", - "description": "The [project\nID](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" - }, - "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": { - "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" - } - }, - "flatPath": "v1beta1/projects/{projectsId}/configs", - "path": "v1beta1/{+parent}/configs", - "id": "runtimeconfig.projects.configs.list", - "description": "Lists all the RuntimeConfig resources within project." - }, - "create": { - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "RuntimeConfig" - }, - "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 [project\nID](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/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "flatPath": "v1beta1/projects/{projectsId}/configs", - "id": "runtimeconfig.projects.configs.create", - "path": "v1beta1/{+parent}/configs", - "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": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/configs/[^/]+$", - "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/cloudruntimeconfig" - ], - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}:setIamPolicy", - "id": "runtimeconfig.projects.configs.setIamPolicy", - "path": "v1beta1/{+resource}:setIamPolicy", - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "request": { - "$ref": "SetIamPolicyRequest" - } - } - }, + }, + "id": "ListVariablesResponse", + "description": "Response for the `ListVariables()` method.", + "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", + "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.", + "type": "string" + }, + "description": { + "description": "An optional description of the RuntimeConfig object.", + "type": "string" + } + }, + "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" + }, + "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", + "type": "string" + }, + "waiters": { + "description": "Found waiters in the project.", + "type": "array", + "items": { + "$ref": "Waiter" + } + } + }, + "id": "ListWaitersResponse", + "description": "Response for the `ListWaiters()` method.\nOrder of returned waiter objects is arbitrary.", + "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" + }, + "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", + "properties": { + "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." + }, + "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." + }, + "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" + }, + "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" + }, + "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" + }, + "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" + } + }, + "id": "Waiter" + } + }, + "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": "Cloud Runtime Configuration API", + "ownerName": "Google", + "resources": { + "projects": { + "resources": { + "configs": { "resources": { "operations": { "methods": { "get": { + "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" }, @@ -618,23 +392,20 @@ ], "parameters": { "name": { - "location": "path", "description": "The name of the operation resource.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/configs/[^/]+/operations/.+$" + "pattern": "^projects/[^/]+/configs/[^/]+/operations/.+$", + "location": "path" } }, - "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." + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/operations/{operationsId}" }, "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" }, + "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" }, @@ -642,19 +413,19 @@ "resource" ], "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ], "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/.+$" + "pattern": "^projects/[^/]+/configs/[^/]+/operations/.+$", + "location": "path" } }, - "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" @@ -663,55 +434,85 @@ }, "waiters": { "methods": { - "delete": { - "description": "Deletes the waiter with the specified name.", - "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], + "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": "Empty" + "$ref": "TestIamPermissionsResponse" }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", "parameters": { - "name": { - "pattern": "^projects/[^/]+/configs/[^/]+/waiters/[^/]+$", + "resource": { "location": "path", - "description": "The Waiter resource to delete, in the format:\n\n `projects/[PROJECT_ID]/configs/[CONFIG_NAME]/waiters/[WAITER_NAME]`", + "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" + "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}:testIamPermissions", + "path": "v1beta1/{+resource}:testIamPermissions", + "id": "runtimeconfig.projects.configs.waiters.testIamPermissions" + }, + "delete": { + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ], + "parameters": { + "name": { + "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/[^/]+$", + "location": "path" + } + }, "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters/{waitersId}", + "path": "v1beta1/{+name}", "id": "runtimeconfig.projects.configs.waiters.delete", - "path": "v1beta1/{+name}" + "description": "Deletes the waiter with the specified name." }, "list": { - "id": "runtimeconfig.projects.configs.waiters.list", + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters", "path": "v1beta1/{+parent}/waiters", + "id": "runtimeconfig.projects.configs.waiters.list", "description": "List waiters within the given configuration.", - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], "response": { "$ref": "ListWaitersResponse" }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", "parameters": { "parent": { - "pattern": "^projects/[^/]+/configs/[^/]+$", "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" + "type": "string", + "pattern": "^projects/[^/]+/configs/[^/]+$" }, "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", - "location": "query" + "type": "string" }, "pageSize": { "location": "query", @@ -723,185 +524,73 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters" + ] }, "get": { + "httpMethod": "GET", "response": { "$ref": "Waiter" }, "parameterOrder": [ "name" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], "parameters": { "name": { + "pattern": "^projects/[^/]+/configs/[^/]+/waiters/[^/]+$", "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/[^/]+$" + "type": "string" } }, + "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.get", + "path": "v1beta1/{+name}", "description": "Gets information about a single waiter." }, "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.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "parameters": { - "parent": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/configs/[^/]+$", - "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]`." - }, - "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" - } - }, "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters", + "id": "runtimeconfig.projects.configs.waiters.create", "path": "v1beta1/{+parent}/waiters", - "id": "runtimeconfig.projects.configs.waiters.create" - }, - "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.", + "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.", "request": { - "$ref": "TestIamPermissionsRequest" - }, - "response": { - "$ref": "TestIamPermissionsResponse" + "$ref": "Waiter" }, - "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/[^/]+/waiters/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/waiters/{waitersId}:testIamPermissions", - "path": "v1beta1/{+resource}:testIamPermissions", - "id": "runtimeconfig.projects.configs.waiters.testIamPermissions" - } - } - }, - "variables": { - "methods": { - "delete": { - "response": { - "$ref": "Empty" - }, "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" + "parent" ], - "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" - } - }, - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}", - "path": "v1beta1/{+name}", - "id": "runtimeconfig.projects.configs.variables.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." - }, - "list": { - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables", - "path": "v1beta1/{+parent}/variables", - "id": "runtimeconfig.projects.configs.variables.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.", "response": { - "$ref": "ListVariablesResponse" + "$ref": "Operation" }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], "parameters": { - "filter": { - "location": "query", - "description": "Filters variables by matching the specified filter. For example:\n\n`projects/example-project/config/[CONFIG_NAME]/variables/example-variable`.", - "type": "string" - }, - "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.", + "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" }, - "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": { - "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 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]`", + "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/[^/]+$", "location": "path" } - } - }, - "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.", - "request": { - "$ref": "Variable" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ] + } + } + }, + "variables": { + "methods": { + "create": { "response": { "$ref": "Variable" }, @@ -909,11 +598,15 @@ "parent" ], "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ], "parameters": { "requestId": { + "location": "query", "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" + "type": "string" }, "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]`", @@ -923,45 +616,47 @@ "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" + "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\nData](/deployment-manager/runtime-configurator/set-and-get-variables)\ndocumentation." }, "get": { - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}", + "path": "v1beta1/{+name}", + "id": "runtimeconfig.projects.configs.variables.get", + "description": "Gets information about a single variable.", "response": { "$ref": "Variable" }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", "parameters": { "name": { + "location": "path", "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", - "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$", - "location": "path" + "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$" } }, "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.get", - "path": "v1beta1/{+name}", - "description": "Gets information about a single variable." + ] }, "watch": { + "path": "v1beta1/{+name}:watch", + "id": "runtimeconfig.projects.configs.variables.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\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.", "request": { "$ref": "WatchVariableRequest" }, - "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.", "response": { "$ref": "Variable" }, @@ -969,10 +664,6 @@ "name" ], "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloudruntimeconfig" - ], "parameters": { "name": { "description": "The name of the variable to watch, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`", @@ -982,9 +673,11 @@ "location": "path" } }, - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}:watch", - "path": "v1beta1/{+name}:watch", - "id": "runtimeconfig.projects.configs.variables.watch" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ], + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}:watch" }, "update": { "response": { @@ -1015,36 +708,352 @@ "$ref": "Variable" } }, - "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" - }, - "parameters": { - "resource": { - "pattern": "^projects/[^/]+/configs/[^/]+/variables/.+$", - "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/cloudruntimeconfig" - ], - "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}:testIamPermissions", - "id": "runtimeconfig.projects.configs.variables.testIamPermissions", - "path": "v1beta1/{+resource}:testIamPermissions" + "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", + "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/[^/]+/variables/.+$", + "location": "path" + } + }, + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables/{variablesId}:testIamPermissions", + "path": "v1beta1/{+resource}:testIamPermissions", + "id": "runtimeconfig.projects.configs.variables.testIamPermissions" + }, + "delete": { + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "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}", + "path": "v1beta1/{+name}", + "id": "runtimeconfig.projects.configs.variables.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." + }, + "list": { + "response": { + "$ref": "ListVariablesResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ], + "parameters": { + "parent": { + "location": "path", + "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]`", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/configs/[^/]+$" + }, + "filter": { + "location": "query", + "description": "Filters variables by matching the specified filter. For example:\n\n`projects/example-project/config/[CONFIG_NAME]/variables/example-variable`.", + "type": "string" + }, + "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" + }, + "returnValues": { + "location": "query", + "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" + }, + "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" + } + }, + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}/variables", + "path": "v1beta1/{+parent}/variables", + "id": "runtimeconfig.projects.configs.variables.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." + } + } + } + }, + "methods": { + "update": { + "request": { + "$ref": "RuntimeConfig" + }, + "description": "Updates a RuntimeConfig resource. The configuration must exist beforehand.", + "response": { + "$ref": "RuntimeConfig" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "PUT", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ], + "parameters": { + "name": { + "location": "path", + "description": "The name of the RuntimeConfig resource to update, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/configs/[^/]+$" + } + }, + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}", + "path": "v1beta1/{+name}", + "id": "runtimeconfig.projects.configs.update" + }, + "testIamPermissions": { + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ], + "parameters": { + "resource": { + "pattern": "^projects/[^/]+/configs/[^/]+$", + "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": "v1beta1/projects/{projectsId}/configs/{configsId}:testIamPermissions", + "path": "v1beta1/{+resource}:testIamPermissions", + "id": "runtimeconfig.projects.configs.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." + }, + "delete": { + "description": "Deletes a RuntimeConfig resource.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ], + "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/[^/]+$" + } + }, + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}", + "path": "v1beta1/{+name}", + "id": "runtimeconfig.projects.configs.delete" + }, + "list": { + "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": { + "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 [project\nID](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", + "description": "Lists all the RuntimeConfig resources within project." + }, + "create": { + "request": { + "$ref": "RuntimeConfig" + }, + "description": "Creates a new RuntimeConfig resource. The configuration name must be\nunique within project.", + "response": { + "$ref": "RuntimeConfig" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ], + "parameters": { + "requestId": { + "location": "query", + "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" + }, + "parent": { + "description": "The [project\nID](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" + }, + "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/[^/]+/configs/[^/]+$" } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudruntimeconfig" + ], + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}:setIamPolicy", + "path": "v1beta1/{+resource}:setIamPolicy", + "id": "runtimeconfig.projects.configs.setIamPolicy", + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", + "request": { + "$ref": "SetIamPolicyRequest" } + }, + "getIamPolicy": { + "httpMethod": "GET", + "parameterOrder": [ + "resource" + ], + "response": { + "$ref": "Policy" + }, + "parameters": { + "resource": { + "pattern": "^projects/[^/]+/configs/[^/]+$", + "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/cloudruntimeconfig" + ], + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}:getIamPolicy", + "id": "runtimeconfig.projects.configs.getIamPolicy", + "path": "v1beta1/{+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": { + "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": { + "pattern": "^projects/[^/]+/configs/[^/]+$", + "location": "path", + "description": "The name of the RuntimeConfig resource to retrieve, in the format:\n\n`projects/[PROJECT_ID]/configs/[CONFIG_NAME]`", + "required": true, + "type": "string" + } + }, + "flatPath": "v1beta1/projects/{projectsId}/configs/{configsId}", + "path": "v1beta1/{+name}", + "id": "runtimeconfig.projects.configs.get" } } } @@ -1052,80 +1061,52 @@ } }, "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" - }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" - }, - "$.xgafv": { - "location": "query", + "alt": { + "description": "Data format for response.", + "default": "json", "enum": [ - "1", - "2" + "json", + "media", + "proto" ], - "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" - ] + "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" + "type": "string", + "location": "query" }, "access_token": { + "location": "query", "description": "OAuth access token.", - "type": "string", - "location": "query" + "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." + "description": "Available 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", + "default": "true" + }, + "oauth_token": { "location": "query", - "description": "Pretty-print response." + "description": "OAuth 2.0 token for the current user.", + "type": "string" }, "bearer_token": { + "location": "query", "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" + "type": "string" }, "upload_protocol": { "location": "query", @@ -1137,17 +1118,36 @@ "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" } }, "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": "", - "revision": "20180416", - "documentationLink": "https://cloud.google.com/deployment-manager/runtime-configurator/", - "id": "runtimeconfig:v1beta1", - "discoveryVersion": "v1", - "version_module": true + "baseUrl": "https://runtimeconfig.googleapis.com/" } diff --git a/DiscoveryJson/safebrowsing_v4.json b/DiscoveryJson/safebrowsing_v4.json index 748f1f2f06..129e4d68d6 100644 --- a/DiscoveryJson/safebrowsing_v4.json +++ b/DiscoveryJson/safebrowsing_v4.json @@ -1,7 +1,10 @@ { - "revision": "20180501", - "documentationLink": "https://developers.google.com/safe-browsing/", + "ownerDomain": "google.com", + "name": "safebrowsing", + "batchPath": "batch", "id": "safebrowsing:v4", + "documentationLink": "https://developers.google.com/safe-browsing/", + "revision": "20180508", "title": "Safe Browsing API", "ownerName": "Google", "discoveryVersion": "v1", @@ -9,25 +12,29 @@ "threatListUpdates": { "methods": { "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" }, + "parameterOrder": [], + "httpMethod": "POST", "parameters": {}, "flatPath": "v4/threatListUpdates:fetch", + "path": "v4/threatListUpdates:fetch", "id": "safebrowsing.threatListUpdates.fetch", - "path": "v4/threatListUpdates:fetch" + "description": "Fetches the most recent threat list updates. A client can request updates\nfor multiple lists at once.", + "request": { + "$ref": "FetchThreatListUpdatesRequest" + } } } }, "threatHits": { "methods": { "create": { + "request": { + "$ref": "ThreatHit" + }, + "description": "Reports a Safe Browsing threat list hit to Google. Only projects with\nTRUSTED_REPORTER visibility can use this method.", "response": { "$ref": "Empty" }, @@ -36,24 +43,21 @@ "parameters": {}, "flatPath": "v4/threatHits", "path": "v4/threatHits", - "id": "safebrowsing.threatHits.create", - "request": { - "$ref": "ThreatHit" - }, - "description": "Reports a Safe Browsing threat list hit to Google. Only projects with\nTRUSTED_REPORTER visibility can use this method." + "id": "safebrowsing.threatHits.create" } } }, "encodedFullHashes": { "methods": { "get": { - "httpMethod": "GET", + "description": "", "response": { "$ref": "FindFullHashesResponse" }, "parameterOrder": [ "encodedRequest" ], + "httpMethod": "GET", "parameters": { "clientId": { "location": "query", @@ -66,33 +70,32 @@ "type": "string" }, "encodedRequest": { - "location": "path", "description": "A serialized FindFullHashesRequest proto.", "format": "byte", "required": true, - "type": "string" + "type": "string", + "location": "path" } }, "flatPath": "v4/encodedFullHashes/{encodedRequest}", - "id": "safebrowsing.encodedFullHashes.get", "path": "v4/encodedFullHashes/{encodedRequest}", - "description": "" + "id": "safebrowsing.encodedFullHashes.get" } } }, "threatLists": { "methods": { "list": { + "path": "v4/threatLists", + "id": "safebrowsing.threatLists.list", + "description": "Lists the Safe Browsing threat lists available for download.", "response": { "$ref": "ListThreatListsResponse" }, "parameterOrder": [], "httpMethod": "GET", "parameters": {}, - "flatPath": "v4/threatLists", - "path": "v4/threatLists", - "id": "safebrowsing.threatLists.list", - "description": "Lists the Safe Browsing threat lists available for download." + "flatPath": "v4/threatLists" } } }, @@ -137,9 +140,6 @@ "encodedUpdates": { "methods": { "get": { - "flatPath": "v4/encodedUpdates/{encodedRequest}", - "path": "v4/encodedUpdates/{encodedRequest}", - "id": "safebrowsing.encodedUpdates.get", "description": "", "response": { "$ref": "FetchThreatListUpdatesResponse" @@ -166,52 +166,17 @@ "required": true, "type": "string" } - } + }, + "flatPath": "v4/encodedUpdates/{encodedRequest}", + "path": "v4/encodedUpdates/{encodedRequest}", + "id": "safebrowsing.encodedUpdates.get" } } } }, "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": { + "location": "query", "description": "Data format for response.", "default": "json", "enum": [ @@ -224,17 +189,16 @@ "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": { - "description": "API key. 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" + "location": "query", + "description": "OAuth access token." }, - "access_token": { + "key": { "location": "query", - "description": "OAuth access token.", + "description": "API key. 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": { @@ -243,238 +207,149 @@ "location": "query" }, "pp": { - "location": "query", "description": "Pretty-print response.", "type": "boolean", - "default": "true" + "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": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", "type": "string", "location": "query" }, - "bearer_token": { + "prettyPrint": { + "description": "Returns response with indentations and line breaks.", + "type": "boolean", + "default": "true", + "location": "query" + }, + "fields": { "location": "query", - "description": "OAuth bearer token.", + "description": "Selector specifying which fields to include in a partial response.", + "type": "string" + }, + "uploadType": { + "type": "string", + "location": "query", + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." + }, + "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" + ] } }, "schemas": { - "ThreatSource": { - "id": "ThreatSource", - "description": "A single resource related to a threat hit.", + "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": { - "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.", + "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": { - "enum": [ - "THREAT_SOURCE_TYPE_UNSPECIFIED", - "MATCHING_URL", - "TAB_URL", - "TAB_REDIRECT", - "TAB_RESOURCE" - ], - "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." - ] - }, - "url": { - "description": "The URL of the resource.", - "type": "string" + "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" } } }, - "RawIndices": { - "description": "A set of raw indices to remove from a local list.", + "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" + }, + "FindFullHashesRequest": { + "description": "Request to return full hashes matched by the provided hash prefixes.", "type": "object", "properties": { - "indices": { - "description": "The indices to remove from a lexicographically-sorted local list.", + "apiClient": { + "description": "Client metadata associated with callers of higher-level APIs built on top\nof the client's implementation.", + "$ref": "ClientInfo" + }, + "clientStates": { + "description": "The current client states for each of the client's local threat lists.", "type": "array", "items": { - "format": "int32", - "type": "integer" + "format": "byte", + "type": "string" } - } - }, - "id": "RawIndices" - }, - "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" + "client": { + "description": "The client metadata.", + "$ref": "ClientInfo" + }, + "threatInfo": { + "description": "The lists and hashes to be checked.", + "$ref": "ThreatInfo" } }, - "id": "UserInfo" + "id": "FindFullHashesRequest" }, - "FetchThreatListUpdatesResponse": { + "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", "properties": { - "listUpdateResponses": { - "description": "The list updates requested by the clients.", + "listUpdateRequests": { + "description": "The requested threat list updates.", "type": "array", "items": { - "$ref": "ListUpdateResponse" + "$ref": "ListUpdateRequest" } }, - "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": { - "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" + "client": { + "description": "The client metadata.", + "$ref": "ClientInfo" } }, - "id": "Checksum", - "description": "The expected state of a client's local database.", - "type": "object" + "id": "FetchThreatListUpdatesRequest" }, - "FindFullHashesResponse": { + "ListUpdateResponse": { + "description": "An update to an individual list.", "type": "object", "properties": { - "matches": { - "description": "The full hashes that matched the requested prefixes.", + "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", "items": { - "$ref": "ThreatMatch" + "$ref": "ThreatEntrySet" } }, - "negativeCacheDuration": { - "description": "For requested entities that did not match the threat list, how long to\ncache the response.", - "format": "google-duration", + "newClientState": { + "description": "The new client state, in encrypted format. Opaque to clients.", + "format": "byte", "type": "string" }, - "minimumWaitDuration": { + "platformType": { + "description": "The platform type for which data is returned.", "type": "string", - "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" - } - }, - "id": "FindFullHashesResponse" - }, - "ThreatEntrySet": { - "description": "A set of threats that should be added or removed from a client's local\ndatabase.", - "type": "object", - "properties": { - "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" - }, - "compressionType": { - "description": "The compression type for the entries in this set.", - "type": "string", - "enumDescriptions": [ - "Unknown.", - "Raw, uncompressed data.", - "Rice-Golomb encoded data." - ], - "enum": [ - "COMPRESSION_TYPE_UNSPECIFIED", - "RAW", - "RICE" - ] - }, - "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" - } - }, - "id": "ThreatEntrySet" - }, - "ThreatHit": { - "type": "object", - "properties": { - "clientInfo": { - "$ref": "ClientInfo", - "description": "Client-reported identification." - }, - "threatType": { - "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", - "SUSPICIOUS" - ], - "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.", - "Entities that are suspected to present a threat." - ] - }, - "resources": { - "description": "The resources related to the threat hit.", - "type": "array", - "items": { - "$ref": "ThreatSource" - } - }, - "entry": { - "$ref": "ThreatEntry", - "description": "The threat entry responsible for the hit. Full hash should be reported for\nhash-based hits." - }, - "platformType": { "enumDescriptions": [ "Unknown platform.", "Threat posed to Windows.", @@ -496,23 +371,9 @@ "ANY_PLATFORM", "ALL_PLATFORMS", "CHROME" - ], - "description": "The platform type reported.", - "type": "string" + ] }, - "userInfo": { - "$ref": "UserInfo", - "description": "Details about the user that encountered the threat." - } - }, - "id": "ThreatHit" - }, - "ListUpdateRequest": { - "description": "A single list update request.", - "type": "object", - "properties": { "threatEntryType": { - "type": "string", "enumDescriptions": [ "Unspecified.", "A URL.", @@ -531,40 +392,37 @@ "FILENAME", "CERT" ], - "description": "The types of entries present in the list." - }, - "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", + "description": "The format of the threats.", "type": "string" }, - "platformType": { - "description": "The type of platform at risk by entries present in the list.", + "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": { + "$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." + }, + "responseType": { + "enum": [ + "RESPONSE_TYPE_UNSPECIFIED", + "PARTIAL_UPDATE", + "FULL_UPDATE" + ], + "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 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" + "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." ] }, "threatType": { + "description": "The threat type for which data is returned.", + "type": "string", "enumDescriptions": [ "Unknown.", "Malware threat type.", @@ -598,104 +456,257 @@ "APK_MALWARE_OFFLINE", "SUBRESOURCE_FILTER", "SUSPICIOUS" - ], - "description": "The type of threat posed by entries present in the list.", - "type": "string" - }, - "constraints": { - "$ref": "Constraints", - "description": "The constraints associated with this request." + ] } }, - "id": "ListUpdateRequest" + "id": "ListUpdateResponse" }, - "Constraints": { - "description": "The constraints for this update.", + "ThreatMatch": { "type": "object", "properties": { - "supportedCompressions": { - "description": "The compression types supported by the client.", - "type": "array", - "items": { - "type": "string", - "enum": [ - "COMPRESSION_TYPE_UNSPECIFIED", - "RAW", - "RICE" - ] - }, + "threatEntryType": { + "enum": [ + "THREAT_ENTRY_TYPE_UNSPECIFIED", + "URL", + "EXECUTABLE", + "IP_RANGE", + "CHROME_EXTENSION", + "FILENAME", + "CERT" + ], + "description": "The threat entry type matching this threat.", + "type": "string", "enumDescriptions": [ - "Unknown.", - "Raw, uncompressed data.", - "Rice-Golomb encoded data." + "Unspecified.", + "A URL.", + "An executable program.", + "An IP range.", + "Chrome extension.", + "Filename.", + "CERT" ] }, - "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" - }, - "deviceLocation": { - "description": "A client's physical location, expressed as a ISO 31166-1 alpha-2\nregion code.", + "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" }, - "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" + "threatType": { + "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", + "SUSPICIOUS" + ], + "description": "The threat type matching this threat.", + "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.", + "Entities that are suspected to present a threat." + ] }, - "language": { - "description": "Requests the lists for a specific language. Expects ISO 639 alpha-2\nformat.", - "type": "string" + "threatEntryMetadata": { + "description": "Optional metadata associated with this threat.", + "$ref": "ThreatEntryMetadata" }, - "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.", + "threat": { + "description": "The threat matching this threat.", + "$ref": "ThreatEntry" + }, + "platformType": { + "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" + ], + "description": "The platform type matching this threat." + } + }, + "id": "ThreatMatch", + "description": "A match when checking a threat entry in the Safe Browsing threat lists." + }, + "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": { + "type": "string", + "description": "A URL." + }, + "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" } }, - "id": "Constraints" + "id": "ThreatEntry" }, - "ListThreatListsResponse": { + "MetadataEntry": { + "id": "MetadataEntry", + "description": "A single metadata entry.", "type": "object", "properties": { - "threatLists": { - "description": "The lists available for download by the client.", + "key": { + "description": "The metadata entry key. For JSON requests, the key is base64-encoded.", + "format": "byte", + "type": "string" + }, + "value": { + "description": "The metadata entry value. For JSON requests, the value is base64-encoded.", + "format": "byte", + "type": "string" + } + } + }, + "FindThreatMatchesRequest": { + "description": "Request to check entries against lists.", + "type": "object", + "properties": { + "client": { + "$ref": "ClientInfo", + "description": "The client metadata." + }, + "threatInfo": { + "$ref": "ThreatInfo", + "description": "The lists and entries to be checked for matches." + } + }, + "id": "FindThreatMatchesRequest" + }, + "RawIndices": { + "description": "A set of raw indices to remove from a local list.", + "type": "object", + "properties": { + "indices": { + "description": "The indices to remove from a lexicographically-sorted local list.", "type": "array", "items": { - "$ref": "ThreatListDescriptor" + "format": "int32", + "type": "integer" } } }, - "id": "ListThreatListsResponse" + "id": "RawIndices" }, - "RiceDeltaEncoding": { - "id": "RiceDeltaEncoding", - "description": "The Rice-Golomb encoded data. Used for sending compressed 4-byte hashes or\ncompressed removal indices.", + "ThreatSource": { + "description": "A single resource related to a threat hit.", "type": "object", "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" + "referrer": { + "description": "Referrer of the resource. Only set if the referrer is available.", + "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": { + "enum": [ + "THREAT_SOURCE_TYPE_UNSPECIFIED", + "MATCHING_URL", + "TAB_URL", + "TAB_REDIRECT", + "TAB_RESOURCE" + ], + "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." + ] + }, + "url": { + "description": "The URL of the resource.", "type": "string" }, - "encodedData": { - "description": "The encoded deltas that are encoded using the Golomb-Rice coder.", + "remoteIp": { + "description": "The remote IP of the resource in ASCII format. Either IPv4 or IPv6.", + "type": "string" + } + }, + "id": "ThreatSource" + }, + "UserInfo": { + "description": "Details about the user that encountered the threat.", + "type": "object", + "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" + } + }, + "id": "UserInfo" + }, + "FetchThreatListUpdatesResponse": { + "type": "object", + "properties": { + "listUpdateResponses": { + "description": "The list updates requested by the clients.", + "type": "array", + "items": { + "$ref": "ListUpdateResponse" + } }, - "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" + "minimumWaitDuration": { + "type": "string", + "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" } - } + }, + "id": "FetchThreatListUpdatesResponse" }, - "FindThreatMatchesResponse": { + "FindFullHashesResponse": { "type": "object", "properties": { "matches": { @@ -703,41 +714,36 @@ "items": { "$ref": "ThreatMatch" }, - "description": "The threat list matches." + "description": "The full hashes that matched the requested prefixes." + }, + "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" } }, - "id": "FindThreatMatchesResponse" + "id": "FindFullHashesResponse" }, - "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.", + "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" + }, + "ThreatHit": { "type": "object", "properties": { - "platformType": { - "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" - ], - "description": "The platform type targeted by the list's entries." - }, "threatType": { "enumDescriptions": [ "Unknown.", @@ -773,76 +779,148 @@ "SUBRESOURCE_FILTER", "SUSPICIOUS" ], - "description": "The threat type posed by the list's entries.", + "description": "The threat type reported.", "type": "string" }, - "threatEntryType": { + "resources": { + "description": "The resources related to the threat hit.", + "type": "array", + "items": { + "$ref": "ThreatSource" + } + }, + "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.", + "type": "string", "enumDescriptions": [ - "Unspecified.", - "A URL.", - "An executable program.", - "An IP range.", - "Chrome extension.", - "Filename.", - "CERT" + "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": [ - "THREAT_ENTRY_TYPE_UNSPECIFIED", - "URL", - "EXECUTABLE", - "IP_RANGE", - "CHROME_EXTENSION", - "FILENAME", - "CERT" - ], - "description": "The entry types contained in the list.", - "type": "string" + "PLATFORM_TYPE_UNSPECIFIED", + "WINDOWS", + "LINUX", + "ANDROID", + "OSX", + "IOS", + "ANY_PLATFORM", + "ALL_PLATFORMS", + "CHROME" + ] + }, + "userInfo": { + "$ref": "UserInfo", + "description": "Details about the user that encountered the threat." + }, + "clientInfo": { + "description": "Client-reported identification.", + "$ref": "ClientInfo" } }, - "id": "ThreatListDescriptor" + "id": "ThreatHit" }, - "ClientInfo": { - "description": "The client metadata associated with Safe Browsing API requests.", + "ThreatEntrySet": { + "description": "A set of threats that should be added or removed from a client's local\ndatabase.", "type": "object", "properties": { - "clientId": { - "description": "A client ID that (hopefully) uniquely identifies the client implementation\nof the Safe Browsing API.", - "type": "string" + "rawIndices": { + "$ref": "RawIndices", + "description": "The raw removal indices for a local list." }, - "clientVersion": { - "description": "The version of the client implementation.", + "rawHashes": { + "description": "The raw SHA256-formatted entries.", + "$ref": "RawHashes" + }, + "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." + }, + "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": { + "$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." } }, - "id": "ClientInfo" + "id": "ThreatEntrySet" }, - "ThreatInfo": { - "description": "The information regarding one or more threats that a client submits when\nchecking for matches in threat lists.", + "ListUpdateRequest": { "type": "object", "properties": { - "threatTypes": { - "description": "The threat types to be checked.", - "type": "array", - "items": { - "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", - "SUSPICIOUS" - ], - "type": "string" - }, + "state": { + "type": "string", + "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" + }, + "platformType": { + "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", + "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." + ] + }, + "threatType": { + "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", + "SUSPICIOUS" + ], + "description": "The type of threat posed by entries present in the list.", + "type": "string", "enumDescriptions": [ "Unknown.", "Malware threat type.", @@ -861,57 +939,22 @@ "Entities that are suspected to present a threat." ] }, - "platformTypes": { - "type": "array", - "items": { - "type": "string", - "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." - ], - "description": "The platform types to be checked." - }, - "threatEntries": { - "description": "The threat entries to be checked.", - "type": "array", - "items": { - "$ref": "ThreatEntry" - } + "constraints": { + "$ref": "Constraints", + "description": "The constraints associated with this request." }, - "threatEntryTypes": { - "description": "The entry types to be checked.", - "type": "array", - "items": { - "type": "string", - "enum": [ - "THREAT_ENTRY_TYPE_UNSPECIFIED", - "URL", - "EXECUTABLE", - "IP_RANGE", - "CHROME_EXTENSION", - "FILENAME", - "CERT" - ] - }, + "threatEntryType": { + "enum": [ + "THREAT_ENTRY_TYPE_UNSPECIFIED", + "URL", + "EXECUTABLE", + "IP_RANGE", + "CHROME_EXTENSION", + "FILENAME", + "CERT" + ], + "description": "The types of entries present in the list.", + "type": "string", "enumDescriptions": [ "Unspecified.", "A URL.", @@ -923,225 +966,114 @@ ] } }, - "id": "ThreatInfo" - }, - "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", - "properties": { - "entries": { - "description": "The metadata entries.", - "type": "array", - "items": { - "$ref": "MetadataEntry" - } - } - }, - "id": "ThreatEntryMetadata" + "id": "ListUpdateRequest", + "description": "A single list update request." }, - "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.", + "Constraints": { + "description": "The constraints for this update.", "type": "object", "properties": { - "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" - }, - "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).", + "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" - } - }, - "id": "RawHashes" - }, - "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 `{}`." - }, - "FindFullHashesRequest": { - "properties": { - "threatInfo": { - "description": "The lists and hashes to be checked.", - "$ref": "ThreatInfo" }, - "apiClient": { - "description": "Client metadata associated with callers of higher-level APIs built on top\nof the client's implementation.", - "$ref": "ClientInfo" + "deviceLocation": { + "description": "A client's physical location, expressed as a ISO 31166-1 alpha-2\nregion code.", + "type": "string" }, - "clientStates": { - "description": "The current client states for each of the client's local threat lists.", - "type": "array", - "items": { - "format": "byte", - "type": "string" - } + "language": { + "description": "Requests the lists for a specific language. Expects ISO 639 alpha-2\nformat.", + "type": "string" }, - "client": { - "description": "The client metadata.", - "$ref": "ClientInfo" - } - }, - "id": "FindFullHashesRequest", - "description": "Request to return full hashes matched by the provided hash prefixes.", - "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", - "type": "object", - "properties": { - "listUpdateRequests": { - "description": "The requested threat list updates.", - "type": "array", - "items": { - "$ref": "ListUpdateRequest" - } + "maxUpdateEntries": { + "type": "integer", + "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" }, - "client": { - "$ref": "ClientInfo", - "description": "The client metadata." - } - }, - "id": "FetchThreatListUpdatesRequest" - }, - "ListUpdateResponse": { - "id": "ListUpdateResponse", - "description": "An update to an individual list.", - "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 platform type for which data is returned.", + "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" }, - "threatEntryType": { - "description": "The format of the threats.", - "type": "string", - "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" - ] - }, - "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.", + "supportedCompressions": { + "description": "The compression types supported by the client.", "type": "array", "items": { - "$ref": "ThreatEntrySet" - } - }, - "responseType": { - "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" - ], - "description": "The type of response. This may indicate that an action is required by the\nclient when the response is received.", - "type": "string" - }, - "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." - }, - "threatType": { - "description": "The threat type for which data is returned.", - "type": "string", + "type": "string", + "enum": [ + "COMPRESSION_TYPE_UNSPECIFIED", + "RAW", + "RICE" + ] + }, "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.", - "Entities that are suspected to present a 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", - "SUSPICIOUS" + "Raw, uncompressed data.", + "Rice-Golomb encoded data." ] + } + }, + "id": "Constraints" + }, + "ListThreatListsResponse": { + "type": "object", + "properties": { + "threatLists": { + "description": "The lists available for download by the client.", + "type": "array", + "items": { + "$ref": "ThreatListDescriptor" + } + } + }, + "id": "ListThreatListsResponse" + }, + "RiceDeltaEncoding": { + "description": "The Rice-Golomb encoded data. Used for sending compressed 4-byte hashes or\ncompressed removal indices.", + "type": "object", + "properties": { + "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" }, - "newClientState": { - "description": "The new client state, in encrypted format. Opaque to clients.", + "encodedData": { + "description": "The encoded deltas that are encoded using the Golomb-Rice coder.", "format": "byte", "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.", + "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" + }, + "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": "RiceDeltaEncoding" + }, + "FindThreatMatchesResponse": { + "type": "object", + "properties": { + "matches": { + "description": "The threat list matches.", "type": "array", "items": { - "$ref": "ThreatEntrySet" + "$ref": "ThreatMatch" } } - } + }, + "id": "FindThreatMatchesResponse" }, - "ThreatMatch": { - "description": "A match when checking a threat entry in the Safe Browsing threat lists.", + "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", "properties": { "platformType": { + "description": "The platform type targeted by the list's entries.", "type": "string", "enumDescriptions": [ "Unknown platform.", @@ -1164,39 +1096,7 @@ "ANY_PLATFORM", "ALL_PLATFORMS", "CHROME" - ], - "description": "The platform type matching this threat." - }, - "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 threat entry type matching this threat.", - "type": "string" - }, - "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" - }, - "threatEntryMetadata": { - "description": "Optional metadata associated with this threat.", - "$ref": "ThreatEntryMetadata" + ] }, "threatType": { "enumDescriptions": [ @@ -1233,68 +1133,171 @@ "SUBRESOURCE_FILTER", "SUSPICIOUS" ], - "description": "The threat type matching this threat.", + "description": "The threat type posed by the list's entries.", "type": "string" }, - "threat": { - "$ref": "ThreatEntry", - "description": "The threat matching this threat." + "threatEntryType": { + "enum": [ + "THREAT_ENTRY_TYPE_UNSPECIFIED", + "URL", + "EXECUTABLE", + "IP_RANGE", + "CHROME_EXTENSION", + "FILENAME", + "CERT" + ], + "description": "The entry types contained in the list.", + "type": "string", + "enumDescriptions": [ + "Unspecified.", + "A URL.", + "An executable program.", + "An IP range.", + "Chrome extension.", + "Filename.", + "CERT" + ] } }, - "id": "ThreatMatch" + "id": "ThreatListDescriptor" }, - "ThreatEntry": { - "description": "An individual threat; for example, a malicious URL or its hash\nrepresentation. Only one of these fields should be set.", + "ClientInfo": { "type": "object", "properties": { - "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", + "clientVersion": { + "description": "The version of the client implementation.", "type": "string" }, - "url": { - "description": "A URL.", + "clientId": { + "description": "A client ID that (hopefully) uniquely identifies the client implementation\nof the Safe Browsing API.", "type": "string" } }, - "id": "ThreatEntry" + "id": "ClientInfo", + "description": "The client metadata associated with Safe Browsing API requests." }, - "MetadataEntry": { - "description": "A single metadata entry.", + "ThreatInfo": { + "description": "The information regarding one or more threats that a client submits when\nchecking for matches in threat lists.", "type": "object", "properties": { - "key": { - "description": "The metadata entry key. For JSON requests, the key is base64-encoded.", - "format": "byte", - "type": "string" + "threatEntryTypes": { + "description": "The entry types to be checked.", + "type": "array", + "items": { + "type": "string", + "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" + ] }, - "value": { - "description": "The metadata entry value. For JSON requests, the value is base64-encoded.", - "format": "byte", - "type": "string" + "threatTypes": { + "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.", + "Entities that are suspected to present a threat." + ], + "description": "The threat types to be checked.", + "type": "array", + "items": { + "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", + "SUSPICIOUS" + ], + "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" + ] + }, + "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." + ] + }, + "threatEntries": { + "description": "The threat entries to be checked.", + "type": "array", + "items": { + "$ref": "ThreatEntry" + } } }, - "id": "MetadataEntry" + "id": "ThreatInfo" }, - "FindThreatMatchesRequest": { - "description": "Request to check entries against lists.", + "ThreatEntryMetadata": { "type": "object", "properties": { - "threatInfo": { - "description": "The lists and entries to be checked for matches.", - "$ref": "ThreatInfo" - }, - "client": { - "$ref": "ClientInfo", - "description": "The client metadata." + "entries": { + "type": "array", + "items": { + "$ref": "MetadataEntry" + }, + "description": "The metadata entries." } }, - "id": "FindThreatMatchesRequest" + "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." } }, "protocol": "rest", @@ -1308,8 +1311,5 @@ "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" + "basePath": "" } diff --git a/DiscoveryJson/script_v1.json b/DiscoveryJson/script_v1.json index 9c2cfd04a6..7772c3218a 100644 --- a/DiscoveryJson/script_v1.json +++ b/DiscoveryJson/script_v1.json @@ -3,15 +3,6 @@ "auth": { "oauth2": { "scopes": { - "https://www.googleapis.com/auth/forms": { - "description": "View and manage your forms in Google Drive" - }, - "https://www.google.com/m8/feeds": { - "description": "Manage your contacts" - }, - "https://www.googleapis.com/auth/userinfo.email": { - "description": "View your email address" - }, "https://www.google.com/calendar/feeds": { "description": "Manage your calendars" }, @@ -35,6 +26,15 @@ }, "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/m8/feeds": { + "description": "Manage your contacts" + }, + "https://www.googleapis.com/auth/userinfo.email": { + "description": "View your email address" } } } @@ -49,12 +49,10 @@ "resources": { "projects": { "methods": { - "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.", + "get": { + "description": "Gets a script project's metadata.", "response": { - "$ref": "Content" + "$ref": "Project" }, "parameterOrder": [ "scriptId" @@ -66,72 +64,11 @@ "description": "The script project's Drive ID.", "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", - "type": "integer", - "location": "query" - } - }, - "flatPath": "v1/projects/{scriptId}/content" - }, - "getMetrics": { - "description": "Get metrics data for scripts, such as number of executions and\nactive users.", - "response": { - "$ref": "Metrics" - }, - "parameterOrder": [ - "scriptId" - ], - "httpMethod": "GET", - "parameters": { - "scriptId": { - "description": "Required field indicating the script to get metrics for.", - "required": true, - "type": "string", - "location": "path" - }, - "metricsGranularity": { - "location": "query", - "enum": [ - "UNSPECIFIED_GRANULARITY", - "WEEKLY", - "DAILY" - ], - "description": "Required field indicating what granularity of metrics are returned.", - "type": "string" - }, - "metricsFilter.deploymentId": { - "location": "query", - "description": "Optional field indicating a specific deployment to retrieve metrics from.", - "type": "string" } }, - "flatPath": "v1/projects/{scriptId}/metrics", - "path": "v1/projects/{scriptId}/metrics", - "id": "script.projects.getMetrics" - }, - "get": { - "id": "script.projects.get", + "flatPath": "v1/projects/{scriptId}", "path": "v1/projects/{scriptId}", - "description": "Gets a script project's metadata.", - "httpMethod": "GET", - "parameterOrder": [ - "scriptId" - ], - "response": { - "$ref": "Project" - }, - "parameters": { - "scriptId": { - "location": "path", - "description": "The script project's Drive ID.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{scriptId}" + "id": "script.projects.get" }, "updateContent": { "httpMethod": "PUT", @@ -143,10 +80,10 @@ }, "parameters": { "scriptId": { - "location": "path", "description": "The script project's Drive ID.", "required": true, - "type": "string" + "type": "string", + "location": "path" } }, "flatPath": "v1/projects/{scriptId}/content", @@ -158,37 +95,97 @@ } }, "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" }, + "description": "Creates a new, empty script project with no script files and a base\nmanifest file.", "response": { "$ref": "Project" }, "parameterOrder": [], "httpMethod": "POST", "parameters": {}, - "flatPath": "v1/projects" + "flatPath": "v1/projects", + "path": "v1/projects", + "id": "script.projects.create" + }, + "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": { + "description": "The script project's Drive ID.", + "required": true, + "type": "string", + "location": "path" + } + }, + "flatPath": "v1/projects/{scriptId}/content", + "path": "v1/projects/{scriptId}/content", + "id": "script.projects.getContent" + }, + "getMetrics": { + "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", + "parameters": { + "metricsGranularity": { + "description": "Required field indicating what granularity of metrics are returned.", + "type": "string", + "location": "query", + "enum": [ + "UNSPECIFIED_GRANULARITY", + "WEEKLY", + "DAILY" + ] + }, + "metricsFilter.deploymentId": { + "location": "query", + "description": "Optional field indicating a specific deployment to retrieve metrics from.", + "type": "string" + }, + "scriptId": { + "location": "path", + "description": "Required field indicating the script to get metrics for.", + "required": true, + "type": "string" + } + } } }, "resources": { "deployments": { "methods": { - "update": { - "description": "Updates a deployment of an Apps Script project.", - "request": { - "$ref": "UpdateDeploymentRequest" + "delete": { + "description": "Deletes a deployment of an Apps Script project.", + "response": { + "$ref": "Empty" }, - "httpMethod": "PUT", "parameterOrder": [ "scriptId", "deploymentId" ], - "response": { - "$ref": "Deployment" - }, + "httpMethod": "DELETE", "parameters": { "scriptId": { "description": "The script project's Drive ID.", @@ -198,26 +195,20 @@ }, "deploymentId": { "location": "path", - "description": "The deployment ID for this deployment.", + "description": "The deployment ID to be undeployed.", "required": true, "type": "string" } }, "flatPath": "v1/projects/{scriptId}/deployments/{deploymentId}", - "id": "script.projects.deployments.update", - "path": "v1/projects/{scriptId}/deployments/{deploymentId}" + "path": "v1/projects/{scriptId}/deployments/{deploymentId}", + "id": "script.projects.deployments.delete" }, - "create": { - "flatPath": "v1/projects/{scriptId}/deployments", - "id": "script.projects.deployments.create", - "path": "v1/projects/{scriptId}/deployments", - "description": "Creates a deployment of an Apps Script project.", - "request": { - "$ref": "DeploymentConfig" - }, - "httpMethod": "POST", + "get": { + "httpMethod": "GET", "parameterOrder": [ - "scriptId" + "scriptId", + "deploymentId" ], "response": { "$ref": "Deployment" @@ -228,39 +219,56 @@ "description": "The script project's Drive ID.", "required": true, "type": "string" + }, + "deploymentId": { + "description": "The deployment ID.", + "required": true, + "type": "string", + "location": "path" } - } - }, - "delete": { + }, "flatPath": "v1/projects/{scriptId}/deployments/{deploymentId}", + "id": "script.projects.deployments.get", "path": "v1/projects/{scriptId}/deployments/{deploymentId}", - "id": "script.projects.deployments.delete", - "description": "Deletes a deployment of an Apps Script project.", + "description": "Gets a deployment of an Apps Script project." + }, + "list": { + "description": "Lists the deployments of an Apps Script project.", "response": { - "$ref": "Empty" + "$ref": "ListDeploymentsResponse" }, "parameterOrder": [ - "scriptId", - "deploymentId" + "scriptId" ], - "httpMethod": "DELETE", + "httpMethod": "GET", "parameters": { - "deploymentId": { - "description": "The deployment ID to be undeployed.", - "required": true, + "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": "path" + "location": "query" + }, + "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", - "location": "path" + "type": "string" } - } + }, + "flatPath": "v1/projects/{scriptId}/deployments", + "path": "v1/projects/{scriptId}/deployments", + "id": "script.projects.deployments.list" }, - "get": { - "description": "Gets a deployment of an Apps Script project.", + "update": { + "request": { + "$ref": "UpdateDeploymentRequest" + }, + "description": "Updates a deployment of an Apps Script project.", "response": { "$ref": "Deployment" }, @@ -268,16 +276,16 @@ "scriptId", "deploymentId" ], - "httpMethod": "GET", + "httpMethod": "PUT", "parameters": { - "scriptId": { + "deploymentId": { "location": "path", - "description": "The script project's Drive ID.", + "description": "The deployment ID for this deployment.", "required": true, "type": "string" }, - "deploymentId": { - "description": "The deployment ID.", + "scriptId": { + "description": "The script project's Drive ID.", "required": true, "type": "string", "location": "path" @@ -285,39 +293,31 @@ }, "flatPath": "v1/projects/{scriptId}/deployments/{deploymentId}", "path": "v1/projects/{scriptId}/deployments/{deploymentId}", - "id": "script.projects.deployments.get" + "id": "script.projects.deployments.update" }, - "list": { + "create": { + "flatPath": "v1/projects/{scriptId}/deployments", + "path": "v1/projects/{scriptId}/deployments", + "id": "script.projects.deployments.create", + "description": "Creates a deployment of an Apps Script project.", + "request": { + "$ref": "DeploymentConfig" + }, "response": { - "$ref": "ListDeploymentsResponse" + "$ref": "Deployment" }, "parameterOrder": [ "scriptId" ], - "httpMethod": "GET", + "httpMethod": "POST", "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 deployments on each returned page. Defaults to 50.", - "format": "int32", - "type": "integer", - "location": "query" } - }, - "flatPath": "v1/projects/{scriptId}/deployments", - "path": "v1/projects/{scriptId}/deployments", - "id": "script.projects.deployments.list", - "description": "Lists the deployments of an Apps Script project." + } } } }, @@ -334,11 +334,11 @@ "httpMethod": "GET", "parameters": { "versionNumber": { + "location": "path", "description": "The version number.", "format": "int32", "required": true, - "type": "integer", - "location": "path" + "type": "integer" }, "scriptId": { "location": "path", @@ -353,21 +353,14 @@ "description": "Gets a version of a script project." }, "list": { - "description": "List the versions of a script project.", + "httpMethod": "GET", "response": { "$ref": "ListVersionsResponse" }, "parameterOrder": [ "scriptId" ], - "httpMethod": "GET", "parameters": { - "pageSize": { - "location": "query", - "description": "The maximum number of versions on each returned page. Defaults to 50.", - "format": "int32", - "type": "integer" - }, "scriptId": { "location": "path", "description": "The script project's Drive ID.", @@ -378,20 +371,24 @@ "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": { + "description": "The maximum number of versions on each returned page. Defaults to 50.", + "format": "int32", + "type": "integer", + "location": "query" } }, "flatPath": "v1/projects/{scriptId}/versions", + "id": "script.projects.versions.list", "path": "v1/projects/{scriptId}/versions", - "id": "script.projects.versions.list" + "description": "List the versions of a script project." }, "create": { - "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" }, + "description": "Creates a new immutable version using the current code, with a unique\nversion number.", "response": { "$ref": "Version" }, @@ -406,44 +403,26 @@ "type": "string", "location": "path" } - } - } - } - } - } - }, - "processes": { - "methods": { - "listScriptProcesses": { - "flatPath": "v1/processes:listScriptProcesses", - "path": "v1/processes:listScriptProcesses", - "id": "script.processes.listScriptProcesses", - "description": "List information about a script's executed processes, such as process type\nand current status.", - "response": { - "$ref": "ListScriptProcessesResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "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" - }, - "pageSize": { - "location": "query", - "description": "The maximum number of returned processes per page of results. Defaults to\n50.", - "format": "int32", - "type": "integer" - }, - "scriptProcessFilter.endTime": { - "location": "query", - "description": "Optional field used to limit returned processes to those that completed\non or before the given timestamp.", - "format": "google-datetime", - "type": "string" - }, + }, + "flatPath": "v1/projects/{scriptId}/versions", + "path": "v1/projects/{scriptId}/versions", + "id": "script.projects.versions.create" + } + } + } + } + }, + "processes": { + "methods": { + "listScriptProcesses": { + "description": "List information about a script's executed processes, such as process type\nand current status.", + "response": { + "$ref": "ListScriptProcessesResponse" + }, + "parameterOrder": [], + "httpMethod": "GET", + "parameters": { "scriptProcessFilter.userAccessLevels": { - "location": "query", "enum": [ "USER_ACCESS_LEVEL_UNSPECIFIED", "NONE", @@ -453,10 +432,10 @@ ], "description": "Optional field used to limit returned processes to those having one of\nthe specified user access levels.", "type": "string", - "repeated": true + "repeated": true, + "location": "query" }, "scriptProcessFilter.statuses": { - "location": "query", "enum": [ "PROCESS_STATUS_UNSPECIFIED", "RUNNING", @@ -470,7 +449,13 @@ ], "description": "Optional field used to limit returned processes to those having one of\nthe specified process statuses.", "type": "string", - "repeated": true + "repeated": true, + "location": "query" + }, + "scriptProcessFilter.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" }, "scriptProcessFilter.startTime": { "location": "query", @@ -478,11 +463,6 @@ "format": "google-datetime", "type": "string" }, - "scriptProcessFilter.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" - }, "scriptProcessFilter.deploymentId": { "description": "Optional field used to limit returned processes to those originating from\nprojects with a specific deployment ID.", "type": "string", @@ -507,19 +487,38 @@ "description": "Optional field used to limit returned processes to those having one of\nthe specified process types.", "type": "string", "repeated": true + }, + "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" + }, + "scriptProcessFilter.endTime": { + "location": "query", + "description": "Optional field used to limit returned processes to those that completed\non or before the given timestamp.", + "format": "google-datetime", + "type": "string" } - } + }, + "flatPath": "v1/processes:listScriptProcesses", + "path": "v1/processes:listScriptProcesses", + "id": "script.processes.listScriptProcesses" }, "list": { - "description": "List information about processes made by or on behalf of a user,\nsuch as process type and current status.", "response": { "$ref": "ListUserProcessesResponse" }, "parameterOrder": [], "httpMethod": "GET", "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.", + "userProcessFilter.deploymentId": { + "description": "Optional field used to limit returned processes to those originating from\nprojects with a specific deployment ID.", "type": "string", "location": "query" }, @@ -529,6 +528,11 @@ "format": "google-datetime", "type": "string" }, + "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.", @@ -536,14 +540,9 @@ "type": "integer" }, "userProcessFilter.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", - "location": "query" - }, - "userProcessFilter.projectName": { - "location": "query", - "description": "Optional field used to limit returned processes to those originating from\nprojects with project names containing a specific string.", "type": "string" }, "userProcessFilter.userAccessLevels": { @@ -559,16 +558,21 @@ "type": "string", "repeated": true }, - "userProcessFilter.functionName": { + "userProcessFilter.projectName": { "location": "query", - "description": "Optional field used to limit returned processes to those originating from\na script function with the given function name.", + "description": "Optional field used to limit returned processes to those originating from\nprojects with project names containing a specific string.", "type": "string" }, - "userProcessFilter.scriptId": { - "description": "Optional field used to limit returned processes to those originating from\nprojects with a specific script ID.", + "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": { "location": "query", "enum": [ @@ -600,28 +604,22 @@ ], "description": "Optional field used to limit returned processes to those having one of\nthe specified process statuses.", "type": "string" - }, - "userProcessFilter.deploymentId": { - "description": "Optional field used to limit returned processes to those originating from\nprojects with a specific deployment ID.", - "type": "string", - "location": "query" } }, "flatPath": "v1/processes", "path": "v1/processes", - "id": "script.processes.list" + "id": "script.processes.list", + "description": "List information about processes made by or on behalf of a user,\nsuch as process type and current status." } } }, "scripts": { "methods": { "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" }, + "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.", "response": { "$ref": "Operation" }, @@ -629,14 +627,6 @@ "scriptId" ], "httpMethod": "POST", - "parameters": { - "scriptId": { - "location": "path", - "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" - } - }, "scopes": [ "https://mail.google.com/", "https://www.google.com/calendar/feeds", @@ -650,36 +640,38 @@ "https://www.googleapis.com/auth/spreadsheets", "https://www.googleapis.com/auth/userinfo.email" ], - "flatPath": "v1/scripts/{scriptId}:run" + "parameters": { + "scriptId": { + "location": "path", + "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" + } + }, + "flatPath": "v1/scripts/{scriptId}:run", + "path": "v1/scripts/{scriptId}:run", + "id": "script.scripts.run" } } } }, "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": { - "location": "query", "description": "Selector specifying which fields to include in a partial response.", - "type": "string" + "type": "string", + "location": "query" }, - "$.xgafv": { - "description": "V1 error format.", + "callback": { + "description": "JSONP", "type": "string", + "location": "query" + }, + "$.xgafv": { "enumDescriptions": [ "v1 error format", "v2 error format" @@ -688,14 +680,13 @@ "enum": [ "1", "2" - ] - }, - "callback": { - "location": "query", - "description": "JSONP", + ], + "description": "V1 error format.", "type": "string" }, "alt": { + "description": "Data format for response.", + "default": "json", "enum": [ "json", "media", @@ -707,13 +698,6 @@ "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": { @@ -721,26 +705,42 @@ "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" + "type": "string", + "location": "query" }, "pp": { - "location": "query", "description": "Pretty-print response.", "type": "boolean", - "default": "true" + "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" }, - "bearer_token": { - "description": "OAuth bearer token.", + "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" } }, "version": "v1", @@ -749,16 +749,113 @@ "description": "An API for managing and executing Google Apps Script projects. \u003caside class=\"note\"\u003e\u003cb\u003eNote\u003c/b\u003e: In order to use this API in your apps, you must \u003ca href=\"/apps-script/api/how-tos/enable#using_the_apps_script_api_in_your_app\"\u003e enable it for use\u003c/a\u003e. To allow other apps to manage your scripts, you must \u003ca href=\"/apps-script/api/how-tos/enable#granting_third-party_applications_access_to_your_script_projects\"\u003e grant them access\u003c/a\u003e.\u003c/aside\u003e\n", "servicePath": "", "basePath": "", - "revision": "20180506", - "documentationLink": "https://developers.google.com/apps-script/api/", "id": "script:v1", + "documentationLink": "https://developers.google.com/apps-script/api/", + "revision": "20180506", "discoveryVersion": "v1", "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 `{}`.", + "GoogleAppsScriptTypeScope": { + "properties": { + "name": { + "description": "The scope's identifying string.", + "type": "string" + }, + "authorizer": { + "description": "Who authorized the scope.", + "type": "string", + "enumDescriptions": [ + "Authorizer unspecified.", + "Developer authorized scope.", + "End user authorized scope." + ], + "enum": [ + "SCOPE_AUTHORIZER_UNSPECIFIED", + "AUTHORIZED_BY_DEVELOPER", + "AUTHORIZED_BY_END_USER" + ] + } + }, + "id": "GoogleAppsScriptTypeScope", + "description": "Represents an authorization scope.", + "type": "object" + }, + "ListVersionsResponse": { + "properties": { + "versions": { + "description": "The list of versions.", + "type": "array", + "items": { + "$ref": "Version" + } + }, + "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" + } + }, + "id": "ListVersionsResponse", + "description": "Response with the list of the versions for the specified script project.", + "type": "object" + }, + "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" + } + } + }, + "id": "Metrics" + }, + "GoogleAppsScriptTypeFunctionSet": { + "properties": { + "values": { + "description": "A list of functions composing the set.", + "type": "array", + "items": { + "$ref": "GoogleAppsScriptTypeFunction" + } + } + }, + "id": "GoogleAppsScriptTypeFunctionSet", + "description": "A set of functions. No duplicates are permitted.", + "type": "object" + }, + "Content": { + "description": "The Content resource.", "type": "object", - "properties": {}, - "id": "Empty" + "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.", + "type": "array", + "items": { + "$ref": "File" + } + }, + "scriptId": { + "description": "The script project's Drive ID.", + "type": "string" + } + }, + "id": "Content" }, "GoogleAppsScriptTypeWebAppEntryPoint": { "description": "A web application entry point.", @@ -775,23 +872,11 @@ }, "id": "GoogleAppsScriptTypeWebAppEntryPoint" }, - "Content": { - "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" - } - } - }, - "id": "Content", - "description": "The Content resource.", - "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" }, "UpdateDeploymentRequest": { "description": "Request with deployment information to update an existing deployment.", @@ -837,27 +922,7 @@ }, "id": "ExecutionError" }, - "ListUserProcessesResponse": { - "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": "ListUserProcessesResponse" - }, "GoogleAppsScriptTypeUser": { - "description": "A simple user profile resource.", - "type": "object", "properties": { "domain": { "description": "The user's domain.", @@ -876,39 +941,41 @@ "type": "string" } }, - "id": "GoogleAppsScriptTypeUser" + "id": "GoogleAppsScriptTypeUser", + "description": "A simple user profile resource.", + "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.", + "ListUserProcessesResponse": { + "description": "Response with the list of\nProcess resources.", "type": "object", "properties": { - "function": { - "description": "The name of the function to execute in the given script. The name does not\ninclude parentheses or parameters.", + "nextPageToken": { + "description": "Token for the next page of results. If empty, there are no more pages\nremaining.", "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.", + "processes": { + "description": "List of processes matching request parameters.", "type": "array", "items": { - "type": "any" + "$ref": "GoogleAppsScriptTypeProcess" } - }, - "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" + "id": "ListUserProcessesResponse" }, "EntryPoint": { - "description": "A configuration that defines how a deployment is accessed externally.", - "type": "object", "properties": { + "executionApi": { + "description": "An entry point specification for Apps Script API execution calls.", + "$ref": "GoogleAppsScriptTypeExecutionApiEntryPoint" + }, "entryPointType": { + "enum": [ + "ENTRY_POINT_TYPE_UNSPECIFIED", + "WEB_APP", + "EXECUTION_API", + "ADD_ON" + ], "description": "The type of the entry point.", "type": "string", "enumDescriptions": [ @@ -916,12 +983,6 @@ "A web application entry point.", "An API executable entry point.", "An Add-On entry point." - ], - "enum": [ - "ENTRY_POINT_TYPE_UNSPECIFIED", - "WEB_APP", - "EXECUTION_API", - "ADD_ON" ] }, "addOn": { @@ -931,16 +992,47 @@ "webApp": { "description": "An entry point specification for web apps.", "$ref": "GoogleAppsScriptTypeWebAppEntryPoint" + } + }, + "id": "EntryPoint", + "description": "A configuration that defines how a deployment is accessed externally.", + "type": "object" + }, + "ExecutionRequest": { + "properties": { + "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" }, - "executionApi": { - "description": "An entry point specification for Apps Script API execution calls.", - "$ref": "GoogleAppsScriptTypeExecutionApiEntryPoint" + "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" + } } }, - "id": "EntryPoint" + "id": "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" }, "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" @@ -953,18 +1045,13 @@ "scriptId": { "description": "The script project's Drive ID.", "type": "string" - }, - "createTime": { - "description": "When the version was created.", - "format": "google-datetime", - "type": "string" } }, - "id": "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" + "id": "Version" }, "GoogleAppsScriptTypeExecutionApiConfig": { + "description": "API executable entry point configuration.", + "type": "object", "properties": { "access": { "enumDescriptions": [ @@ -985,54 +1072,59 @@ "type": "string" } }, - "id": "GoogleAppsScriptTypeExecutionApiConfig", - "description": "API executable entry point configuration.", - "type": "object" + "id": "GoogleAppsScriptTypeExecutionApiConfig" }, - "DeploymentConfig": { - "description": "Metadata the defines how a deployment is configured.", - "type": "object", + "GoogleAppsScriptTypeProcess": { "properties": { - "scriptId": { - "description": "The script project's Drive ID.", + "userAccessLevel": { + "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." + ], + "enum": [ + "USER_ACCESS_LEVEL_UNSPECIFIED", + "NONE", + "READ", + "WRITE", + "OWNER" + ], + "description": "The executing users access level to the script.", "type": "string" }, - "manifestFileName": { - "description": "The manifest file name for this deployment.", - "type": "string" + "processType": { + "description": "The executions type.", + "type": "string", + "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": { - "description": "The description for this deployment.", + "executingUser": { + "description": "User-facing name for the user executing the script.", "type": "string" }, - "versionNumber": { - "description": "The version number on which this deployment is based.", - "format": "int32", - "type": "integer" - } - }, - "id": "DeploymentConfig" - }, - "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": { "projectName": { "description": "Name of the script being executed.", "type": "string" }, "processStatus": { - "enum": [ - "PROCESS_STATUS_UNSPECIFIED", - "RUNNING", - "PAUSED", - "COMPLETED", - "CANCELED", - "FAILED", - "TIMED_OUT", - "UNKNOWN", - "DELAYED" - ], "description": "The executions status.", "type": "string", "enumDescriptions": [ @@ -1045,6 +1137,17 @@ "The process timed out.", "Process status unknown.", "The process is delayed, waiting for quota." + ], + "enum": [ + "PROCESS_STATUS_UNSPECIFIED", + "RUNNING", + "PAUSED", + "COMPLETED", + "CANCELED", + "FAILED", + "TIMED_OUT", + "UNKNOWN", + "DELAYED" ] }, "duration": { @@ -1060,53 +1163,35 @@ "description": "Time the execution started.", "format": "google-datetime", "type": "string" - }, - "userAccessLevel": { - "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." - ], - "enum": [ - "USER_ACCESS_LEVEL_UNSPECIFIED", - "NONE", - "READ", - "WRITE", - "OWNER" - ], - "description": "The executing users access level to the script.", + } + }, + "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" + }, + "DeploymentConfig": { + "properties": { + "manifestFileName": { + "description": "The manifest file name for this deployment.", "type": "string" }, - "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.", + "description": { + "description": "The description for this deployment.", "type": "string" }, - "executingUser": { - "description": "User-facing name for the user executing the script.", + "versionNumber": { + "description": "The version number on which this deployment is based.", + "format": "int32", + "type": "integer" + }, + "scriptId": { + "description": "The script project's Drive ID.", "type": "string" } }, - "id": "GoogleAppsScriptTypeProcess" + "id": "DeploymentConfig", + "description": "Metadata the defines how a deployment is configured.", + "type": "object" }, "CreateProjectRequest": { "description": "Request to create a script project.", @@ -1127,6 +1212,10 @@ "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.", @@ -1138,10 +1227,6 @@ "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." - }, - "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" } }, "id": "Operation" @@ -1174,25 +1259,20 @@ "id": "Status" }, "GoogleAppsScriptTypeFunction": { - "description": "Represents a function in a script project.", - "type": "object", "properties": { "name": { "description": "The function name in the script project.", "type": "string" } }, - "id": "GoogleAppsScriptTypeFunction" + "id": "GoogleAppsScriptTypeFunction", + "description": "Represents a function in a script project.", + "type": "object" }, "MetricsValue": { "description": "Metrics value that holds number of executions counted.", "type": "object", "properties": { - "value": { - "description": "Indicates the number of executions counted.", - "format": "uint64", - "type": "string" - }, "endTime": { "description": "Required field indicating the end time of the interval.", "format": "google-datetime", @@ -1202,6 +1282,11 @@ "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" } }, "id": "MetricsValue" @@ -1222,16 +1307,16 @@ } }, "scopeSet": { - "description": "Set of scopes required by the deployment.", - "$ref": "GoogleAppsScriptTypeScopeSet" + "$ref": "GoogleAppsScriptTypeScopeSet", + "description": "Set of scopes required by the deployment." }, "functionSet": { "description": "Script's defined set of functions.", "$ref": "GoogleAppsScriptTypeFunctionSet" }, "deploymentConfig": { - "$ref": "DeploymentConfig", - "description": "The deployment configuration." + "description": "The deployment configuration.", + "$ref": "DeploymentConfig" }, "updateTime": { "description": "Last modified date time stamp.", @@ -1242,7 +1327,13 @@ "id": "Deployment" }, "GoogleAppsScriptTypeAddOnEntryPoint": { + "description": "An add-on entry point.", + "type": "object", "properties": { + "helpUrl": { + "description": "The add-on's optional help URL.", + "type": "string" + }, "title": { "description": "The add-on's required title.", "type": "string" @@ -1251,40 +1342,32 @@ "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" }, + "postInstallTipUrl": { + "description": "The add-on's required post install tip URL.", + "type": "string" + }, "addOnType": { + "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" ], "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." - ] - }, - "helpUrl": { - "description": "The add-on's optional help URL.", "type": "string" } }, - "id": "GoogleAppsScriptTypeAddOnEntryPoint", - "description": "An add-on entry point.", - "type": "object" + "id": "GoogleAppsScriptTypeAddOnEntryPoint" }, "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.", @@ -1296,9 +1379,13 @@ "type": "integer" } }, - "id": "ScriptStackTraceElement" + "id": "ScriptStackTraceElement", + "description": "A stack trace through the script that shows where the execution failed.", + "type": "object" }, "ListScriptProcessesResponse": { + "description": "Response with the list of\nProcess resources.", + "type": "object", "properties": { "processes": { "description": "List of processes matching request parameters.", @@ -1312,13 +1399,9 @@ "type": "string" } }, - "id": "ListScriptProcessesResponse", - "description": "Response with the list of\nProcess resources.", - "type": "object" + "id": "ListScriptProcessesResponse" }, "GoogleAppsScriptTypeWebAppConfig": { - "description": "Web app entry point configuration.", - "type": "object", "properties": { "access": { "description": "Who has permission to run the web app.", @@ -1339,6 +1422,8 @@ ] }, "executeAs": { + "description": "Who to execute the web app as.", + "type": "string", "enumDescriptions": [ "Default value, should not be used.", "The script runs as the user accessing the web app.", @@ -1348,15 +1433,26 @@ "UNKNOWN_EXECUTE_AS", "USER_ACCESSING", "USER_DEPLOYING" - ], - "description": "Who to execute the web app as.", - "type": "string" + ] } }, - "id": "GoogleAppsScriptTypeWebAppConfig" + "id": "GoogleAppsScriptTypeWebAppConfig", + "description": "Web app entry point configuration.", + "type": "object" }, "Project": { + "description": "The script project resource.", + "type": "object", "properties": { + "updateTime": { + "description": "When the script was last updated.", + "format": "google-datetime", + "type": "string" + }, + "creator": { + "description": "User who originally created the script.", + "$ref": "GoogleAppsScriptTypeUser" + }, "scriptId": { "description": "The script project's Drive ID.", "type": "string" @@ -1377,20 +1473,9 @@ "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": { - "$ref": "GoogleAppsScriptTypeUser", - "description": "User who originally created the script." } }, - "id": "Project", - "description": "The script project resource.", - "type": "object" + "id": "Project" }, "ListDeploymentsResponse": { "description": "Response with the list of deployments for the specified Apps Script project.", @@ -1414,38 +1499,22 @@ "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.", "type": "object", "properties": { - "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.", + "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." }, - "source": { - "description": "The file content.", - "type": "string" - }, "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." + "description": "The defined set of functions in the script file, if any.", + "$ref": "GoogleAppsScriptTypeFunctionSet" }, "updateTime": { "description": "Last modified date timestamp.\nThis read-only field is only visible to users who have WRITER\npermission for the script project.", @@ -1455,20 +1524,36 @@ "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": { + "description": "The type of the file.", + "type": "string", + "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" + ] } }, "id": "File" }, "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": { "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" } }, - "id": "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" + "id": "ExecutionResponse" }, "GoogleAppsScriptTypeScopeSet": { "properties": { @@ -1483,91 +1568,6 @@ "id": "GoogleAppsScriptTypeScopeSet", "description": "A set of scopes. No duplicates are permitted.", "type": "object" - }, - "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": { - "properties": { - "versions": { - "description": "The list of versions.", - "type": "array", - "items": { - "$ref": "Version" - } - }, - "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" - } - }, - "id": "ListVersionsResponse", - "description": "Response with the list of the versions for the specified script project.", - "type": "object" - }, - "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" - } - } - }, - "id": "Metrics" - }, - "GoogleAppsScriptTypeFunctionSet": { - "properties": { - "values": { - "description": "A list of functions composing the set.", - "type": "array", - "items": { - "$ref": "GoogleAppsScriptTypeFunction" - } - } - }, - "id": "GoogleAppsScriptTypeFunctionSet", - "description": "A set of functions. No duplicates are permitted.", - "type": "object" } }, "icons": { diff --git a/DiscoveryJson/searchconsole_v1.json b/DiscoveryJson/searchconsole_v1.json index ea027e0910..d3b21ee776 100644 --- a/DiscoveryJson/searchconsole_v1.json +++ b/DiscoveryJson/searchconsole_v1.json @@ -29,44 +29,65 @@ } }, "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" + }, + "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", - "location": "query" + "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" }, - "fields": { - "description": "Selector specifying which fields to include in a partial response.", - "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", - "enum": [ - "1", - "2" - ] - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" + "location": "query" }, "alt": { "enum": [ @@ -85,39 +106,19 @@ "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.", + "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" - }, - "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" } }, "schemas": { "ResourceIssue": { + "id": "ResourceIssue", "description": "Information about a resource with issue.", "type": "object", "properties": { @@ -125,8 +126,7 @@ "$ref": "BlockedResource", "description": "Describes a blocked resource issue." } - }, - "id": "ResourceIssue" + } }, "BlockedResource": { "description": "Blocked resource.", @@ -167,20 +167,20 @@ "id": "TestStatus" }, "Image": { - "description": "Describe image data.", - "type": "object", "properties": { - "mimeType": { - "description": "The mime-type of the image data.", - "type": "string" - }, "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": { + "type": "string", + "description": "The mime-type of the image data." } }, - "id": "Image" + "id": "Image", + "description": "Describe image data.", + "type": "object" }, "RunMobileFriendlyTestRequest": { "description": "Mobile-friendly test request.", @@ -198,10 +198,17 @@ "id": "RunMobileFriendlyTestRequest" }, "MobileFriendlyIssue": { - "description": "Mobile-friendly issue.", - "type": "object", "properties": { "rule": { + "enum": [ + "MOBILE_FRIENDLY_RULE_UNSPECIFIED", + "USES_INCOMPATIBLE_PLUGINS", + "CONFIGURE_VIEWPORT", + "FIXED_WIDTH_VIEWPORT", + "SIZE_CONTENT_TO_VIEWPORT", + "USE_LEGIBLE_FONT_SIZES", + "TAP_TARGETS_TOO_CLOSE" + ], "description": "Rule violated.", "type": "string", "enumDescriptions": [ @@ -212,27 +219,29 @@ "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)." - ], - "enum": [ - "MOBILE_FRIENDLY_RULE_UNSPECIFIED", - "USES_INCOMPATIBLE_PLUGINS", - "CONFIGURE_VIEWPORT", - "FIXED_WIDTH_VIEWPORT", - "SIZE_CONTENT_TO_VIEWPORT", - "USE_LEGIBLE_FONT_SIZES", - "TAP_TARGETS_TOO_CLOSE" ] } }, - "id": "MobileFriendlyIssue" + "id": "MobileFriendlyIssue", + "description": "Mobile-friendly issue.", + "type": "object" }, "RunMobileFriendlyTestResponse": { "description": "Mobile-friendly test response, including mobile-friendly issues and resource\nissues.", "type": "object", "properties": { + "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": { - "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.", @@ -242,7 +251,9 @@ "MOBILE_FRIENDLY_TEST_RESULT_UNSPECIFIED", "MOBILE_FRIENDLY", "NOT_MOBILE_FRIENDLY" - ] + ], + "description": "Test verdict, whether the page is mobile friendly or not.", + "type": "string" }, "mobileFriendlyIssues": { "description": "List of mobile-usability issues.", @@ -254,33 +265,22 @@ "screenshot": { "$ref": "Image", "description": "Screenshot of the requested URL." - }, - "testStatus": { - "description": "Final state of the test, can be either complete or an error.", - "$ref": "TestStatus" - }, - "resourceIssues": { - "description": "Information about embedded resources issues.", - "type": "array", - "items": { - "$ref": "ResourceIssue" - } } }, "id": "RunMobileFriendlyTestResponse" } }, + "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" }, - "protocol": "rest", "version": "v1", "baseUrl": "https://searchconsole.googleapis.com/", "canonicalName": "Search Console", - "kind": "discovery#restDescription", - "description": "Provides tools for running validation tests against single URLs", "servicePath": "", + "description": "Provides tools for running validation tests against single URLs", + "kind": "discovery#restDescription", "rootUrl": "https://searchconsole.googleapis.com/", "basePath": "", "ownerDomain": "google.com", diff --git a/DiscoveryJson/servicebroker_v1.json b/DiscoveryJson/servicebroker_v1.json index 34cda1176c..9143874b68 100644 --- a/DiscoveryJson/servicebroker_v1.json +++ b/DiscoveryJson/servicebroker_v1.json @@ -1,147 +1,38 @@ { - "schemas": { - "GoogleIamV1__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": "GoogleIamV1__Policy" - } - }, - "id": "GoogleIamV1__SetIamPolicyRequest" - }, - "GoogleIamV1__TestIamPermissionsRequest": { - "description": "Request message for `TestIamPermissions` method.", - "type": "object", - "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": "GoogleIamV1__TestIamPermissionsRequest" - }, - "GoogleIamV1__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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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": { - "version": { - "description": "Deprecated.", - "format": "int32", - "type": "integer" - }, - "bindings": { - "type": "array", - "items": { - "$ref": "GoogleIamV1__Binding" - }, - "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error." - }, - "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" - } - }, - "id": "GoogleIamV1__Policy" - }, - "GoogleIamV1__Binding": { - "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` .\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": { - "type": "string", - "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired" - } - }, - "id": "GoogleIamV1__Binding", - "description": "Associates `members` with a `role`." - }, - "GoogleIamV1__TestIamPermissionsResponse": { - "type": "object", - "properties": { - "permissions": { - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "GoogleIamV1__TestIamPermissionsResponse", - "description": "Response message for `TestIamPermissions` method." - } - }, - "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 Broker", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://servicebroker.googleapis.com/", - "ownerDomain": "google.com", - "name": "servicebroker", - "batchPath": "batch", "fullyEncodeReservedExpansion": true, "title": "Service Broker API", "ownerName": "Google", "resources": { "v1": { "methods": { - "setIamPolicy": { - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "request": { - "$ref": "GoogleIamV1__SetIamPolicyRequest" - }, - "httpMethod": "POST", + "getIamPolicy": { + "id": "servicebroker.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": "GoogleIamV1__Policy" }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "resource": { - "pattern": "^.+$", "location": "path", - "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", + "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" + "type": "string", + "pattern": "^.+$" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/{v1Id}:setIamPolicy", - "id": "servicebroker.setIamPolicy", - "path": "v1/{+resource}:setIamPolicy" + "flatPath": "v1/{v1Id}:getIamPolicy" }, - "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": "GoogleIamV1__TestIamPermissionsRequest" - }, + "setIamPolicy": { "response": { - "$ref": "GoogleIamV1__TestIamPermissionsResponse" + "$ref": "GoogleIamV1__Policy" }, "parameterOrder": [ "resource" @@ -149,7 +40,7 @@ "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.", + "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": "^.+$", @@ -159,47 +50,88 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1/{v1Id}:testIamPermissions", - "path": "v1/{+resource}:testIamPermissions", - "id": "servicebroker.testIamPermissions" + "flatPath": "v1/{v1Id}:setIamPolicy", + "path": "v1/{+resource}:setIamPolicy", + "id": "servicebroker.setIamPolicy", + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", + "request": { + "$ref": "GoogleIamV1__SetIamPolicyRequest" + } }, - "getIamPolicy": { - "flatPath": "v1/{v1Id}:getIamPolicy", - "id": "servicebroker.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", + "testIamPermissions": { + "response": { + "$ref": "GoogleIamV1__TestIamPermissionsResponse" + }, "parameterOrder": [ "resource" ], - "response": { - "$ref": "GoogleIamV1__Policy" - }, + "httpMethod": "POST", "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": "^.+$", - "location": "path" + "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/{v1Id}:testIamPermissions", + "path": "v1/{+resource}:testIamPermissions", + "id": "servicebroker.testIamPermissions", + "request": { + "$ref": "GoogleIamV1__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." } } } }, "parameters": { - "access_token": { + "$.xgafv": { + "enum": [ + "1", + "2" + ], + "description": "V1 error format.", + "type": "string", + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query" + }, + "callback": { "location": "query", - "description": "OAuth access token.", + "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" + }, "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", + "location": "query" + }, + "access_token": { + "location": "query", + "description": "OAuth access token.", "type": "string" }, "quotaUser": { @@ -214,69 +146,35 @@ "default": "true" }, "oauth_token": { - "location": "query", "description": "OAuth 2.0 token for the current user.", - "type": "string" + "type": "string", + "location": "query" }, "bearer_token": { - "location": "query", "description": "OAuth bearer token.", - "type": "string" + "type": "string", + "location": "query" }, "upload_protocol": { + "type": "string", "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")." }, "prettyPrint": { + "location": "query", "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" + "default": "true" }, "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": { - "enum": [ - "json", - "media", - "proto" - ], + "fields": { + "description": "Selector specifying which fields to include in a partial response.", "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": "query" } }, "version": "v1", @@ -285,9 +183,111 @@ "description": "The Google Cloud Platform Service Broker API provides Google hosted\nimplementation of the Open Service Broker API\n(https://www.openservicebrokerapi.org/).\n", "servicePath": "", "basePath": "", - "revision": "20180504", - "documentationLink": "https://cloud.google.com/kubernetes-engine/docs/concepts/add-on/service-broker", "id": "servicebroker:v1", + "documentationLink": "https://cloud.google.com/kubernetes-engine/docs/concepts/add-on/service-broker", + "revision": "20180509", "discoveryVersion": "v1", - "version_module": true + "version_module": true, + "schemas": { + "GoogleIamV1__SetIamPolicyRequest": { + "description": "Request message for `SetIamPolicy` method.", + "type": "object", + "properties": { + "policy": { + "$ref": "GoogleIamV1__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": "GoogleIamV1__SetIamPolicyRequest" + }, + "GoogleIamV1__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": "GoogleIamV1__TestIamPermissionsRequest" + }, + "GoogleIamV1__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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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": "GoogleIamV1__Binding" + } + } + }, + "id": "GoogleIamV1__Policy" + }, + "GoogleIamV1__Binding": { + "id": "GoogleIamV1__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` .\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" + } + } + }, + "GoogleIamV1__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": "GoogleIamV1__TestIamPermissionsResponse" + } + }, + "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 Broker", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, + "rootUrl": "https://servicebroker.googleapis.com/", + "ownerDomain": "google.com", + "name": "servicebroker", + "batchPath": "batch" } diff --git a/DiscoveryJson/servicebroker_v1alpha1.json b/DiscoveryJson/servicebroker_v1alpha1.json index f6325243a1..ac7c49a982 100644 --- a/DiscoveryJson/servicebroker_v1alpha1.json +++ b/DiscoveryJson/servicebroker_v1alpha1.json @@ -1,970 +1,226 @@ { - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "GoogleIamV1__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": "GoogleIamV1__TestIamPermissionsResponse" - }, - "GoogleIamV1__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": "GoogleIamV1__Policy" - } - }, - "id": "GoogleIamV1__SetIamPolicyRequest", - "description": "Request message for `SetIamPolicy` method.", - "type": "object" - }, - "GoogleCloudServicebrokerV1alpha1__CreateServiceInstanceResponse": { - "description": "Response for the `CreateServiceInstance()` method.", - "type": "object", - "properties": { - "description": { - "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", - "type": "string" - }, - "operation": { - "description": "If broker executes operation asynchronously, this is the operation ID that\ncan be polled to check the completion status of said operation.\nThis broker always will return a non-empty operation on success.", - "type": "string" - } - }, - "id": "GoogleCloudServicebrokerV1alpha1__CreateServiceInstanceResponse" - }, - "GoogleCloudServicebrokerV1alpha1__Plan": { - "description": "Plan message describes a Service Plan.", - "type": "object", - "properties": { - "name": { - "description": "User friendly name of the plan.\nThe name must be globally unique within GCP project.\nNote, which is different from (\"This must be globally unique within a\nplatform marketplace\").", - "type": "string" - }, - "schemas": { - "description": "Schema definitions for service instances and bindings for the plan.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - } - }, - "metadata": { - "description": "A list of metadata for a service offering.\nMetadata is an arbitrary JSON object.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - } - }, - "id": { - "description": "ID is a globally unique identifier used to uniquely identify the plan.\nUser must make no presumption about the format of this field.", - "type": "string" - }, - "free": { - "description": "Whether the service is free.", - "type": "boolean" - }, - "description": { - "description": "Textual description of the plan. Optional.", - "type": "string" - }, - "bindable": { - "description": "Specifies whether instances of the service can be bound to applications.\nIf not specified, `Service.bindable` will be presumed.", - "type": "boolean" - } - }, - "id": "GoogleCloudServicebrokerV1alpha1__Plan" - }, - "GoogleCloudServicebrokerV1alpha1__ListServiceInstancesResponse": { - "description": "The response for the `ListServiceInstances()` method.", - "type": "object", - "properties": { - "description": { - "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", - "type": "string" - }, - "instances": { - "description": "The list of the instances in the broker.", - "type": "array", - "items": { - "$ref": "GoogleCloudServicebrokerV1alpha1__ServiceInstance" - } - }, - "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": "GoogleCloudServicebrokerV1alpha1__ListServiceInstancesResponse" - }, - "GoogleIamV1__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" - }, - "bindings": { - "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", - "type": "array", - "items": { - "$ref": "GoogleIamV1__Binding" - } - } - }, - "id": "GoogleIamV1__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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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" - }, - "GoogleCloudServicebrokerV1alpha1__DeleteServiceInstanceResponse": { - "description": "Response for the `DeleteServiceInstance()` method.", - "type": "object", - "properties": { - "description": { - "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", - "type": "string" - }, - "operation": { - "description": "If broker executes operation asynchronously, this is the operation ID that\ncan be polled to check the completion status of said operation.", - "type": "string" - } - }, - "id": "GoogleCloudServicebrokerV1alpha1__DeleteServiceInstanceResponse" - }, - "GoogleCloudServicebrokerV1alpha1__GetBindingResponse": { - "description": "Response for the `GetBinding()` method.", - "type": "object", - "properties": { - "syslog_drain_url": { - "description": "From where to read system logs.", - "type": "string" - }, - "route_service_url": { - "description": "A URL to which the platform may proxy requests for the address sent with\nbind_resource.route", - "type": "string" - }, - "credentials": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" + "name": "servicebroker", + "batchPath": "batch", + "fullyEncodeReservedExpansion": true, + "title": "Service Broker API", + "ownerName": "Google", + "resources": { + "v1alpha1": { + "methods": { + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", + "request": { + "$ref": "GoogleIamV1__SetIamPolicyRequest" }, - "description": "Credentials to use the binding.", - "type": "object" + "response": { + "$ref": "GoogleIamV1__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": "^.+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1alpha1/{v1alpha1Id}:setIamPolicy", + "path": "v1alpha1/{+resource}:setIamPolicy", + "id": "servicebroker.setIamPolicy" }, - "description": { - "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", - "type": "string" + "testIamPermissions": { + "path": "v1alpha1/{+resource}:testIamPermissions", + "id": "servicebroker.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": "GoogleIamV1__TestIamPermissionsRequest" + }, + "response": { + "$ref": "GoogleIamV1__TestIamPermissionsResponse" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", + "parameters": { + "resource": { + "required": true, + "type": "string", + "pattern": "^.+$", + "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" + ], + "flatPath": "v1alpha1/{v1alpha1Id}:testIamPermissions" }, - "volume_mounts": { - "description": "An array of configuration for mounting volumes.", - "type": "array", - "items": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "type": "object" - } + "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": "GoogleIamV1__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": "^.+$", + "location": "path" + } + }, + "flatPath": "v1alpha1/{v1alpha1Id}:getIamPolicy", + "path": "v1alpha1/{+resource}:getIamPolicy", + "id": "servicebroker.getIamPolicy" } - }, - "id": "GoogleCloudServicebrokerV1alpha1__GetBindingResponse" - }, - "GoogleCloudServicebrokerV1alpha1__DeleteBindingResponse": { - "description": "Response for the `DeleteBinding()` method.", - "type": "object", - "properties": { - "operation": { - "description": "If broker executes operation asynchronously, this is the operation ID that\ncan be polled to check the completion status of said operation.", - "type": "string" - }, - "description": { - "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", - "type": "string" - } - }, - "id": "GoogleCloudServicebrokerV1alpha1__DeleteBindingResponse" - }, - "GoogleCloudServicebrokerV1alpha1__Binding": { - "description": "Describes the binding.", - "type": "object", - "properties": { - "service_id": { - "description": "The id of the service. Must be a valid identifier of a service\ncontained in the list from a `ListServices()` call.\nMaximum length is 64, GUID recommended.\nRequired.", - "type": "string" - }, - "createTime": { - "description": "Output only.\nTimestamp for when the binding was created.", - "format": "google-datetime", - "type": "string" - }, - "binding_id": { - "description": "The id of the binding. Must be unique within GCP project.\nMaximum length is 64, GUID recommended.\nRequired.", - "type": "string" - }, - "parameters": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "Configuration options for the service binding.", - "type": "object" - }, - "plan_id": { - "description": "The ID of the plan. See `Service` and `Plan` resources for details.\nMaximum length is 64, GUID recommended.\nRequired.", - "type": "string" - }, - "bind_resource": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "A JSON object that contains data for platform resources associated with\nthe binding to be created.", - "type": "object" - } - }, - "id": "GoogleCloudServicebrokerV1alpha1__Binding" - }, - "GoogleIamV1__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` .\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": "GoogleIamV1__Binding" - }, - "GoogleCloudServicebrokerV1alpha1__DashboardClient": { - "description": "Message containing information required to activate Dashboard SSO feature.", - "type": "object", - "properties": { - "id": { - "description": "The id of the Oauth client that the dashboard will use.", - "type": "string" - }, - "redirect_uri": { - "description": "A URI for the service dashboard.\nValidated by the OAuth token server when the dashboard requests a token.", - "type": "string" - }, - "secret": { - "description": "A secret for the dashboard client.", - "type": "string" - } - }, - "id": "GoogleCloudServicebrokerV1alpha1__DashboardClient" - }, - "GoogleCloudServicebrokerV1alpha1__Operation": { - "description": "Describes a long running operation, which conforms to OpenService API.", - "type": "object", - "properties": { - "description": { - "description": "Optional description of the Operation state.", - "type": "string" - }, - "state": { - "description": "The state of the operation.\nValid values are: \"in progress\", \"succeeded\", and \"failed\".", - "type": "string" - } - }, - "id": "GoogleCloudServicebrokerV1alpha1__Operation" - }, - "GoogleIamV1__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": "GoogleIamV1__TestIamPermissionsRequest" - }, - "GoogleCloudServicebrokerV1alpha1__UpdateServiceInstanceResponse": { - "description": "Response for the `UpdateServiceInstance()` method.", - "type": "object", - "properties": { - "description": { - "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", - "type": "string" - }, - "operation": { - "description": "If broker executes operation asynchronously, this is the operation ID that\ncan be polled to check the completion status of said operation.", - "type": "string" - } - }, - "id": "GoogleCloudServicebrokerV1alpha1__UpdateServiceInstanceResponse" - }, - "GoogleCloudServicebrokerV1alpha1__ListCatalogResponse": { - "description": "Response message for the `ListCatalog()` method.", - "type": "object", - "properties": { - "services": { - "description": "The services available for the requested GCP project.", - "type": "array", - "items": { - "$ref": "GoogleCloudServicebrokerV1alpha1__Service" - } - }, - "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": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", - "type": "string" - } - }, - "id": "GoogleCloudServicebrokerV1alpha1__ListCatalogResponse" - }, - "GoogleCloudServicebrokerV1alpha1__ListBindingsResponse": { - "description": "The response for the `ListBindings()` method.", - "type": "object", - "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", - "type": "string" - }, - "description": { - "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", - "type": "string" - }, - "bindings": { - "description": "The list of the bindings in the instance.", - "type": "array", - "items": { - "$ref": "GoogleCloudServicebrokerV1alpha1__Binding" - } - } - }, - "id": "GoogleCloudServicebrokerV1alpha1__ListBindingsResponse" - }, - "GoogleCloudServicebrokerV1alpha1__CreateBindingResponse": { - "description": "Response for the `CreateBinding()` method.", - "type": "object", - "properties": { - "syslog_drain_url": { - "description": "From where to read system logs.", - "type": "string" - }, - "credentials": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "Credentials to use the binding.", - "type": "object" - }, - "operation": { - "description": "If broker executes operation asynchronously, this is the operation ID that\ncan be polled to check the completion status of said operation.\nThis broker always executes all create/delete operations asynchronously.", - "type": "string" - }, - "volume_mounts": { - "description": "An array of configuration for mounting volumes.", - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - } - } - }, - "route_service_url": { - "description": "A URL to which the platform may proxy requests for the address sent with\nbind_resource.route", - "type": "string" - }, - "description": { - "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", - "type": "string" - } - }, - "id": "GoogleCloudServicebrokerV1alpha1__CreateBindingResponse" - }, - "GoogleCloudServicebrokerV1alpha1__Service": { - "description": "The resource model mostly follows the Open Service Broker API, as\ndescribed here:\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/_spec.md\nThough due to Google Specifics it has additional optional fields.", - "type": "object", - "properties": { - "plan_updateable": { - "description": "Whether the service supports upgrade/downgrade for some plans.", - "type": "boolean" - }, - "bindable": { - "description": "Specifies whether instances of the service can be bound to applications.\nRequired.", - "type": "boolean" - }, - "binding_retrievable": { - "description": "Whether the service provides an endpoint to get service bindings.", - "type": "boolean" - }, - "instance_retrievable": { - "description": "Whether the service provides an endpoint to get service instances.", - "type": "boolean" - }, - "name": { - "description": "User friendly service name.\nName must match [a-z0-9]+ regexp.\nThe name must be globally unique within GCP project.\nNote, which is different from (\"This must be globally unique within a\nplatform marketplace\").\nRequired.", - "type": "string" - }, - "dashboard_client": { - "description": "Information to activate Dashboard SSO feature.", - "$ref": "GoogleCloudServicebrokerV1alpha1__DashboardClient" - }, - "plans": { - "description": "A list of plans for this service.\nAt least one plan is required.", - "type": "array", - "items": { - "$ref": "GoogleCloudServicebrokerV1alpha1__Plan" - } - }, - "metadata": { - "description": "A list of metadata for a service offering.\nMetadata is an arbitrary JSON object.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - } - }, - "id": { - "description": "ID is a globally unique identifier used to uniquely identify the service.\nID is an opaque string.", - "type": "string" - }, - "tags": { - "description": "Tags provide a flexible mechanism to expose a classification, attribute, or\nbase technology of a service.", - "type": "array", - "items": { - "type": "string" - } - }, - "description": { - "description": "Textual description of the service. Required.", - "type": "string" - } - }, - "id": "GoogleCloudServicebrokerV1alpha1__Service" - }, - "GoogleCloudServicebrokerV1alpha1__ServiceInstance": { - "description": "Message describing inputs to Provision and Update Service instance requests.", - "type": "object", - "properties": { - "space_guid": { - "description": "The identifier for the project space within the platform organization.\nRequired.", - "type": "string" - }, - "resourceName": { - "description": "Output only.\nThe resource name of the instance, e.g.\nprojects/project_id/brokers/broker_id/service_instances/instance_id", - "type": "string" - }, - "organization_guid": { - "description": "The platform GUID for the organization under which the service is to be\nprovisioned.\nRequired.", - "type": "string" - }, - "service_id": { - "description": "The id of the service. Must be a valid identifier of a service\ncontained in the list from a `ListServices()` call.\nMaximum length is 64, GUID recommended.\nRequired.", - "type": "string" - }, - "previous_values": { - "description": "Used only in UpdateServiceInstance request to optionally specify previous\nfields.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - } - }, - "createTime": { - "description": "Output only.\nTimestamp for when the instance was created.", - "format": "google-datetime", - "type": "string" - }, - "parameters": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "Configuration options for the service instance.\nParameters is JSON object serialized to string.", - "type": "object" - }, - "plan_id": { - "description": "The ID of the plan. See `Service` and `Plan` resources for details.\nMaximum length is 64, GUID recommended.\nRequired.", - "type": "string" - }, - "instance_id": { - "description": "The id of the service instance. Must be unique within GCP project.\nMaximum length is 64, GUID recommended.\nRequired.", - "type": "string" - }, - "context": { - "description": "Platform specific contextual information under which the service instance\nis to be provisioned. This replaces organization_guid and space_guid.\nBut can also contain anything.\nCurrently only used for logging context information.", - "type": "object", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - } - } - }, - "id": "GoogleCloudServicebrokerV1alpha1__ServiceInstance" - } - }, - "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": "Service Broker", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://servicebroker.googleapis.com/", - "ownerDomain": "google.com", - "name": "servicebroker", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Service Broker API", - "ownerName": "Google", - "resources": { - "v1alpha1": { - "methods": { - "setIamPolicy": { - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "GoogleIamV1__Policy" - }, - "parameters": { - "resource": { - "pattern": "^.+$", - "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": "v1alpha1/{v1alpha1Id}:setIamPolicy", - "id": "servicebroker.setIamPolicy", - "path": "v1alpha1/{+resource}:setIamPolicy", - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "request": { - "$ref": "GoogleIamV1__SetIamPolicyRequest" - } - }, - "testIamPermissions": { - "flatPath": "v1alpha1/{v1alpha1Id}:testIamPermissions", - "path": "v1alpha1/{+resource}:testIamPermissions", - "id": "servicebroker.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": "GoogleIamV1__TestIamPermissionsRequest" - }, - "response": { - "$ref": "GoogleIamV1__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": "^.+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "getIamPolicy": { - "response": { - "$ref": "GoogleIamV1__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": "^.+$", - "location": "path" - } - }, - "flatPath": "v1alpha1/{v1alpha1Id}:getIamPolicy", - "path": "v1alpha1/{+resource}:getIamPolicy", - "id": "servicebroker.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." - } - } + } }, "projects": { "resources": { "brokers": { "resources": { - "v2": { - "resources": { - "service_instances": { - "resources": { - "service_bindings": { - "methods": { - "getLast_operation": { - "description": "Returns the state of the last operation for the binding.\nOnly last (or current) operation can be polled.", - "httpMethod": "GET", - "response": { - "$ref": "GoogleCloudServicebrokerV1alpha1__Operation" - }, - "parameterOrder": [ - "parent", - "instanceId", - "bindingId" - ], - "parameters": { - "instanceId": { - "pattern": "^[^/]+$", - "location": "path", - "description": "The instance id that the binding is bound to.", - "required": true, - "type": "string" - }, - "planId": { - "description": "Plan id.", - "type": "string", - "location": "query" - }, - "parent": { - "description": "Parent must match `projects/[PROJECT_ID]/brokers/[BROKER_ID]`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/brokers/[^/]+$", - "location": "path" - }, - "bindingId": { - "description": "The binding id for which to return the last operation", - "required": true, - "type": "string", - "pattern": "^[^/]+$", - "location": "path" - }, - "serviceId": { - "description": "Service id.", - "type": "string", - "location": "query" - }, - "operation": { - "location": "query", - "description": "If `operation` was returned during mutation operation, this field must be\npopulated with the provided value.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1alpha1/projects/{projectsId}/brokers/{brokersId}/v2/service_instances/{service_instancesId}/service_bindings/{service_bindingsId}/last_operation", - "id": "servicebroker.projects.brokers.v2.service_instances.service_bindings.getLast_operation", - "path": "v1alpha1/{+parent}/v2/service_instances/{+instanceId}/service_bindings/{+bindingId}/last_operation" - }, - "delete": { - "description": "Unbinds from a service instance.\nFor synchronous/asynchronous request details see CreateServiceInstance\nmethod.\nIf binding does not exist HTTP 410 status will be returned.", - "httpMethod": "DELETE", - "response": { - "$ref": "GoogleCloudServicebrokerV1alpha1__DeleteBindingResponse" - }, - "parameterOrder": [ - "parent", - "instanceId", - "bindingId" - ], - "parameters": { - "instanceId": { - "description": "The service instance id that deleted binding is bound to.", - "required": true, - "type": "string", - "location": "path" - }, - "acceptsIncomplete": { - "description": "See CreateServiceInstanceRequest for details.", - "type": "boolean", - "location": "query" - }, - "planId": { - "description": "The plan id of the service instance.", - "type": "string", - "location": "query" - }, - "parent": { - "location": "path", - "description": "Parent must match `projects/[PROJECT_ID]/brokers/[BROKER_ID]`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/brokers/[^/]+$" - }, - "bindingId": { - "location": "path", - "description": "The id of the binding to delete.", - "required": true, - "type": "string" - }, - "serviceId": { - "location": "query", - "description": "Additional query parameter hints.\nThe service id of the service instance.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1alpha1/projects/{projectsId}/brokers/{brokersId}/v2/service_instances/{instanceId}/service_bindings/{bindingId}", - "id": "servicebroker.projects.brokers.v2.service_instances.service_bindings.delete", - "path": "v1alpha1/{+parent}/v2/service_instances/{instanceId}/service_bindings/{bindingId}" - }, - "get": { - "path": "v1alpha1/{+parent}/v2/service_instances/{+instanceId}/service_bindings/{+bindingId}", - "id": "servicebroker.projects.brokers.v2.service_instances.service_bindings.get", - "description": "GetBinding returns the binding information.", - "response": { - "$ref": "GoogleCloudServicebrokerV1alpha1__GetBindingResponse" - }, - "parameterOrder": [ - "parent", - "instanceId", - "bindingId" - ], - "httpMethod": "GET", - "parameters": { - "planId": { - "description": "Plan id.", - "type": "string", - "location": "query" - }, - "parent": { - "description": "Parent must match `projects/[PROJECT_ID]/brokers/[BROKER_ID]`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/brokers/[^/]+$", - "location": "path" - }, - "bindingId": { - "location": "path", - "description": "The binding id.", - "required": true, - "type": "string", - "pattern": "^[^/]+$" - }, - "instanceId": { - "pattern": "^[^/]+$", - "location": "path", - "description": "Instance id to which the binding is bound.", - "required": true, - "type": "string" - }, - "serviceId": { - "description": "Service id.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1alpha1/projects/{projectsId}/brokers/{brokersId}/v2/service_instances/{service_instancesId}/service_bindings/{service_bindingsId}" - }, - "create": { - "description": "CreateBinding generates a service binding to an existing service instance.\nSee ProviServiceInstance for async operation details.", - "request": { - "$ref": "GoogleCloudServicebrokerV1alpha1__Binding" - }, - "httpMethod": "PUT", - "parameterOrder": [ - "parent", - "instanceId", - "binding_id" - ], - "response": { - "$ref": "GoogleCloudServicebrokerV1alpha1__CreateBindingResponse" - }, - "parameters": { - "acceptsIncomplete": { - "description": "See CreateServiceInstanceRequest for details.", - "type": "boolean", - "location": "query" - }, - "parent": { - "description": "The GCP container.\nMust match\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/brokers/[^/]+$", - "location": "path" - }, - "instanceId": { - "description": "The service instance to which to bind.", - "required": true, - "type": "string", - "pattern": "^[^/]+$", - "location": "path" - }, - "binding_id": { - "description": "The id of the binding. Must be unique within GCP project.\nMaximum length is 64, GUID recommended.\nRequired.", - "required": true, - "type": "string", - "pattern": "^[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1alpha1/projects/{projectsId}/brokers/{brokersId}/v2/service_instances/{service_instancesId}/service_bindings/{service_bindingsId}", - "id": "servicebroker.projects.brokers.v2.service_instances.service_bindings.create", - "path": "v1alpha1/{+parent}/v2/service_instances/{+instanceId}/service_bindings/{+binding_id}" - } - } + "service_instances": { + "methods": { + "list": { + "id": "servicebroker.projects.brokers.service_instances.list", + "path": "v1alpha1/{+parent}/service_instances", + "description": "Lists all the instances in the brokers\nThis API is an extension and not part of the OSB spec.\nHence the path is a standard Google API URL.", + "httpMethod": "GET", + "response": { + "$ref": "GoogleCloudServicebrokerV1alpha1__ListServiceInstancesResponse" + }, + "parameterOrder": [ + "parent" + ], + "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": { + "location": "query", + "description": "Specifies the number of results to return per page. If there are fewer\nelements than the specified number, returns all elements.\nOptional. If unset or 0, all the results will be returned.", + "format": "int32", + "type": "integer" + }, + "parent": { + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/brokers/[^/]+$", + "location": "path", + "description": "Parent must match `projects/[PROJECT_ID]/brokers/[BROKER_ID]`." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1alpha1/projects/{projectsId}/brokers/{brokersId}/service_instances" + } + } + }, + "instances": { + "methods": { + "get": { + "description": "Gets the given service instance from the system.\nThis API is an extension and not part of the OSB spec.\nHence the path is a standard Google API URL.", + "response": { + "$ref": "GoogleCloudServicebrokerV1alpha1__ServiceInstance" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "pattern": "^projects/[^/]+/brokers/[^/]+/instances/[^/]+$", + "location": "path", + "description": "The resource name of the instance to return.", + "required": true, + "type": "string" } }, + "flatPath": "v1alpha1/projects/{projectsId}/brokers/{brokersId}/instances/{instancesId}", + "path": "v1alpha1/{+name}", + "id": "servicebroker.projects.brokers.instances.get" + } + }, + "resources": { + "service_bindings": { "methods": { - "getLast_operation": { + "list": { + "description": "Lists all the bindings in the instance", "response": { - "$ref": "GoogleCloudServicebrokerV1alpha1__Operation" + "$ref": "GoogleCloudServicebrokerV1alpha1__ListBindingsResponse" }, "parameterOrder": [ - "parent", - "instanceId" + "parent" ], "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { - "instanceId": { - "description": "The instance id for which to return the last operation status.", - "required": true, - "type": "string", - "pattern": "^[^/]+$", - "location": "path" - }, - "serviceId": { - "description": "Service id.", - "type": "string", - "location": "query" - }, - "operation": { + "pageToken": { "location": "query", - "description": "If `operation` was returned during mutation operation, this field must be\npopulated with the provided value.", + "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" }, - "planId": { - "location": "query", - "description": "Plan id.", - "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.\nOptional. If unset or 0, all the results will be returned.", + "format": "int32", + "type": "integer", + "location": "query" }, "parent": { - "description": "Parent must match `projects/[PROJECT_ID]/brokers/[BROKER_ID]`.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/brokers/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/brokers/[^/]+/instances/[^/]+$", + "location": "path", + "description": "Parent must match\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/instances/[INSTANCE_ID]`." } }, - "flatPath": "v1alpha1/projects/{projectsId}/brokers/{brokersId}/v2/service_instances/{service_instancesId}/last_operation", - "path": "v1alpha1/{+parent}/v2/service_instances/{+instanceId}/last_operation", - "id": "servicebroker.projects.brokers.v2.service_instances.getLast_operation", - "description": "Returns the state of the last operation for the service instance.\nOnly last (or current) operation can be polled." - }, - "delete": { + "flatPath": "v1alpha1/projects/{projectsId}/brokers/{brokersId}/instances/{instancesId}/service_bindings", + "path": "v1alpha1/{+parent}/service_bindings", + "id": "servicebroker.projects.brokers.instances.service_bindings.list" + } + } + } + } + }, + "v2": { + "resources": { + "service_instances": { + "methods": { + "get": { + "description": "Gets the given service instance from the system.\nThis API is an extension and not part of the OSB spec.\nHence the path is a standard Google API URL.", "response": { - "$ref": "GoogleCloudServicebrokerV1alpha1__DeleteServiceInstanceResponse" + "$ref": "GoogleCloudServicebrokerV1alpha1__ServiceInstance" }, "parameterOrder": [ - "parent", - "instanceId" + "name" ], - "httpMethod": "DELETE", - "parameters": { - "planId": { - "location": "query", - "description": "The plan id of the service instance.", - "type": "string" - }, - "parent": { - "location": "path", - "description": "Parent must match `projects/[PROJECT_ID]/brokers/[BROKER_ID]`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/brokers/[^/]+$" - }, - "instanceId": { - "description": "The instance id to deprovision.", - "required": true, - "type": "string", - "pattern": "^[^/]+$", - "location": "path" - }, - "serviceId": { - "location": "query", - "description": "The service id of the service instance.", - "type": "string" - }, - "acceptsIncomplete": { - "location": "query", - "description": "See CreateServiceInstanceRequest for details.", - "type": "boolean" - } - }, + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1alpha1/projects/{projectsId}/brokers/{brokersId}/v2/service_instances/{service_instancesId}", - "path": "v1alpha1/{+parent}/v2/service_instances/{+instanceId}", - "id": "servicebroker.projects.brokers.v2.service_instances.delete", - "description": "Deprovisions a service instance.\nFor synchronous/asynchronous request details see CreateServiceInstance\nmethod.\nIf service instance does not exist HTTP 410 status will be returned." - }, - "get": { - "description": "Gets the given service instance from the system.\nThis API is an extension and not part of the OSB spec.\nHence the path is a standard Google API URL.", - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "GoogleCloudServicebrokerV1alpha1__ServiceInstance" - }, "parameters": { "name": { "pattern": "^projects/[^/]+/brokers/[^/]+/v2/service_instances/[^/]+$", @@ -974,12 +230,9 @@ "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "flatPath": "v1alpha1/projects/{projectsId}/brokers/{brokersId}/v2/service_instances/{service_instancesId}", - "id": "servicebroker.projects.brokers.v2.service_instances.get", - "path": "v1alpha1/{+name}" + "path": "v1alpha1/{+name}", + "id": "servicebroker.projects.brokers.v2.service_instances.get" }, "patch": { "httpMethod": "PATCH", @@ -991,24 +244,24 @@ "$ref": "GoogleCloudServicebrokerV1alpha1__UpdateServiceInstanceResponse" }, "parameters": { + "instance_id": { + "location": "path", + "description": "The id of the service instance. Must be unique within GCP project.\nMaximum length is 64, GUID recommended.\nRequired.", + "required": true, + "type": "string", + "pattern": "^[^/]+$" + }, "parent": { + "location": "path", "description": "Parent must match `projects/[PROJECT_ID]/brokers/[BROKER_ID]`.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/brokers/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/brokers/[^/]+$" }, "acceptsIncomplete": { + "location": "query", "description": "See CreateServiceInstanceRequest for details.", - "type": "boolean", - "location": "query" - }, - "instance_id": { - "description": "The id of the service instance. Must be unique within GCP project.\nMaximum length is 64, GUID recommended.\nRequired.", - "required": true, - "type": "string", - "pattern": "^[^/]+$", - "location": "path" + "type": "boolean" } }, "scopes": [ @@ -1023,26 +276,19 @@ } }, "create": { - "httpMethod": "PUT", + "response": { + "$ref": "GoogleCloudServicebrokerV1alpha1__CreateServiceInstanceResponse" + }, "parameterOrder": [ "parent", "instance_id" ], - "response": { - "$ref": "GoogleCloudServicebrokerV1alpha1__CreateServiceInstanceResponse" - }, + "httpMethod": "PUT", "parameters": { - "parent": { - "description": "Parent must match `projects/[PROJECT_ID]/brokers/[BROKER_ID]`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/brokers/[^/]+$", - "location": "path" - }, "acceptsIncomplete": { - "description": "Value indicating that API client supports asynchronous operations. If\nBroker cannot execute the request synchronously HTTP 422 code will be\nreturned to HTTP clients along with FAILED_PRECONDITION error.\nIf true and broker will execute request asynchronously 202 HTTP code will\nbe returned.\nThis broker always requires this to be true as all mutator operations are\nasynchronous.", "type": "boolean", - "location": "query" + "location": "query", + "description": "Value indicating that API client supports asynchronous operations. If\nBroker cannot execute the request synchronously HTTP 422 code will be\nreturned to HTTP clients along with FAILED_PRECONDITION error.\nIf true and broker will execute request asynchronously 202 HTTP code will\nbe returned.\nThis broker always requires this to be true as all mutator operations are\nasynchronous." }, "instance_id": { "location": "path", @@ -1050,274 +296,1028 @@ "required": true, "type": "string", "pattern": "^[^/]+$" + }, + "parent": { + "location": "path", + "description": "Parent must match `projects/[PROJECT_ID]/brokers/[BROKER_ID]`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/brokers/[^/]+$" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "flatPath": "v1alpha1/projects/{projectsId}/brokers/{brokersId}/v2/service_instances/{service_instancesId}", - "id": "servicebroker.projects.brokers.v2.service_instances.create", "path": "v1alpha1/{+parent}/v2/service_instances/{+instance_id}", + "id": "servicebroker.projects.brokers.v2.service_instances.create", "description": "Provisions a service instance.\nIf `request.accepts_incomplete` is false and Broker cannot execute request\nsynchronously HTTP 422 error will be returned along with\nFAILED_PRECONDITION status.\nIf `request.accepts_incomplete` is true and the Broker decides to execute\nresource asynchronously then HTTP 202 response code will be returned and a\nvalid polling operation in the response will be included.\nIf Broker executes the request synchronously and it succeeds HTTP 201\nresponse will be furnished.\nIf identical instance exists, then HTTP 200 response will be returned.\nIf an instance with identical ID but mismatching parameters exists, then\nHTTP 409 status code will be returned.", "request": { "$ref": "GoogleCloudServicebrokerV1alpha1__ServiceInstance" } - } - } - }, - "catalog": { - "methods": { - "list": { - "description": "Lists all the Services registered with this broker for consumption for\ngiven service registry broker, which contains an set of services.\nNote, that Service producer API is separate from Broker API.", - "httpMethod": "GET", + }, + "getLast_operation": { "response": { - "$ref": "GoogleCloudServicebrokerV1alpha1__ListCatalogResponse" + "$ref": "GoogleCloudServicebrokerV1alpha1__Operation" + }, + "parameterOrder": [ + "parent", + "instanceId" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "planId": { + "description": "Plan id.", + "type": "string", + "location": "query" + }, + "parent": { + "location": "path", + "description": "Parent must match `projects/[PROJECT_ID]/brokers/[BROKER_ID]`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/brokers/[^/]+$" + }, + "instanceId": { + "description": "The instance id for which to return the last operation status.", + "required": true, + "type": "string", + "pattern": "^[^/]+$", + "location": "path" + }, + "serviceId": { + "location": "query", + "description": "Service id.", + "type": "string" + }, + "operation": { + "location": "query", + "description": "If `operation` was returned during mutation operation, this field must be\npopulated with the provided value.", + "type": "string" + } }, + "flatPath": "v1alpha1/projects/{projectsId}/brokers/{brokersId}/v2/service_instances/{service_instancesId}/last_operation", + "path": "v1alpha1/{+parent}/v2/service_instances/{+instanceId}/last_operation", + "id": "servicebroker.projects.brokers.v2.service_instances.getLast_operation", + "description": "Returns the state of the last operation for the service instance.\nOnly last (or current) operation can be polled." + }, + "delete": { + "flatPath": "v1alpha1/projects/{projectsId}/brokers/{brokersId}/v2/service_instances/{service_instancesId}", + "id": "servicebroker.projects.brokers.v2.service_instances.delete", + "path": "v1alpha1/{+parent}/v2/service_instances/{+instanceId}", + "description": "Deprovisions a service instance.\nFor synchronous/asynchronous request details see CreateServiceInstance\nmethod.\nIf service instance does not exist HTTP 410 status will be returned.", + "httpMethod": "DELETE", "parameterOrder": [ - "parent" + "parent", + "instanceId" ], + "response": { + "$ref": "GoogleCloudServicebrokerV1alpha1__DeleteServiceInstanceResponse" + }, "parameters": { - "pageToken": { + "planId": { "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.", + "description": "The plan id of the service instance.", "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.\nOptional. If unset or 0, all the results will be returned.", - "format": "int32", - "type": "integer", - "location": "query" - }, "parent": { + "pattern": "^projects/[^/]+/brokers/[^/]+$", + "location": "path", "description": "Parent must match `projects/[PROJECT_ID]/brokers/[BROKER_ID]`.", "required": true, + "type": "string" + }, + "instanceId": { + "description": "The instance id to deprovision.", + "required": true, "type": "string", - "pattern": "^projects/[^/]+/brokers/[^/]+$", + "pattern": "^[^/]+$", "location": "path" + }, + "serviceId": { + "description": "The service id of the service instance.", + "type": "string", + "location": "query" + }, + "acceptsIncomplete": { + "description": "See CreateServiceInstanceRequest for details.", + "type": "boolean", + "location": "query" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1alpha1/projects/{projectsId}/brokers/{brokersId}/v2/catalog", - "id": "servicebroker.projects.brokers.v2.catalog.list", - "path": "v1alpha1/{+parent}/v2/catalog" + ] } - } - } - } - }, - "service_instances": { - "methods": { - "list": { - "response": { - "$ref": "GoogleCloudServicebrokerV1alpha1__ListServiceInstancesResponse" }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "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": { - "location": "query", - "description": "Specifies the number of results to return per page. If there are fewer\nelements than the specified number, returns all elements.\nOptional. If unset or 0, all the results will be returned.", - "format": "int32", - "type": "integer" - }, - "parent": { - "pattern": "^projects/[^/]+/brokers/[^/]+$", - "location": "path", - "description": "Parent must match `projects/[PROJECT_ID]/brokers/[BROKER_ID]`.", - "required": true, - "type": "string" + "resources": { + "service_bindings": { + "methods": { + "create": { + "flatPath": "v1alpha1/projects/{projectsId}/brokers/{brokersId}/v2/service_instances/{service_instancesId}/service_bindings/{service_bindingsId}", + "path": "v1alpha1/{+parent}/v2/service_instances/{+instanceId}/service_bindings/{+binding_id}", + "id": "servicebroker.projects.brokers.v2.service_instances.service_bindings.create", + "request": { + "$ref": "GoogleCloudServicebrokerV1alpha1__Binding" + }, + "description": "CreateBinding generates a service binding to an existing service instance.\nSee ProviServiceInstance for async operation details.", + "response": { + "$ref": "GoogleCloudServicebrokerV1alpha1__CreateBindingResponse" + }, + "parameterOrder": [ + "parent", + "instanceId", + "binding_id" + ], + "httpMethod": "PUT", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "parent": { + "pattern": "^projects/[^/]+/brokers/[^/]+$", + "location": "path", + "description": "The GCP container.\nMust match\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]`.", + "required": true, + "type": "string" + }, + "instanceId": { + "location": "path", + "description": "The service instance to which to bind.", + "required": true, + "type": "string", + "pattern": "^[^/]+$" + }, + "binding_id": { + "description": "The id of the binding. Must be unique within GCP project.\nMaximum length is 64, GUID recommended.\nRequired.", + "required": true, + "type": "string", + "pattern": "^[^/]+$", + "location": "path" + }, + "acceptsIncomplete": { + "location": "query", + "description": "See CreateServiceInstanceRequest for details.", + "type": "boolean" + } + } + }, + "getLast_operation": { + "flatPath": "v1alpha1/projects/{projectsId}/brokers/{brokersId}/v2/service_instances/{service_instancesId}/service_bindings/{service_bindingsId}/last_operation", + "id": "servicebroker.projects.brokers.v2.service_instances.service_bindings.getLast_operation", + "path": "v1alpha1/{+parent}/v2/service_instances/{+instanceId}/service_bindings/{+bindingId}/last_operation", + "description": "Returns the state of the last operation for the binding.\nOnly last (or current) operation can be polled.", + "httpMethod": "GET", + "parameterOrder": [ + "parent", + "instanceId", + "bindingId" + ], + "response": { + "$ref": "GoogleCloudServicebrokerV1alpha1__Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "instanceId": { + "required": true, + "type": "string", + "pattern": "^[^/]+$", + "location": "path", + "description": "The instance id that the binding is bound to." + }, + "planId": { + "location": "query", + "description": "Plan id.", + "type": "string" + }, + "bindingId": { + "location": "path", + "description": "The binding id for which to return the last operation", + "required": true, + "type": "string", + "pattern": "^[^/]+$" + }, + "parent": { + "location": "path", + "description": "Parent must match `projects/[PROJECT_ID]/brokers/[BROKER_ID]`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/brokers/[^/]+$" + }, + "serviceId": { + "location": "query", + "description": "Service id.", + "type": "string" + }, + "operation": { + "description": "If `operation` was returned during mutation operation, this field must be\npopulated with the provided value.", + "type": "string", + "location": "query" + } + } + }, + "delete": { + "path": "v1alpha1/{+parent}/v2/service_instances/{instanceId}/service_bindings/{bindingId}", + "id": "servicebroker.projects.brokers.v2.service_instances.service_bindings.delete", + "description": "Unbinds from a service instance.\nFor synchronous/asynchronous request details see CreateServiceInstance\nmethod.\nIf binding does not exist HTTP 410 status will be returned.", + "response": { + "$ref": "GoogleCloudServicebrokerV1alpha1__DeleteBindingResponse" + }, + "parameterOrder": [ + "parent", + "instanceId", + "bindingId" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "instanceId": { + "location": "path", + "description": "The service instance id that deleted binding is bound to.", + "required": true, + "type": "string" + }, + "acceptsIncomplete": { + "location": "query", + "description": "See CreateServiceInstanceRequest for details.", + "type": "boolean" + }, + "planId": { + "location": "query", + "description": "The plan id of the service instance.", + "type": "string" + }, + "parent": { + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/brokers/[^/]+$", + "location": "path", + "description": "Parent must match `projects/[PROJECT_ID]/brokers/[BROKER_ID]`." + }, + "bindingId": { + "description": "The id of the binding to delete.", + "required": true, + "type": "string", + "location": "path" + }, + "serviceId": { + "description": "Additional query parameter hints.\nThe service id of the service instance.", + "type": "string", + "location": "query" + } + }, + "flatPath": "v1alpha1/projects/{projectsId}/brokers/{brokersId}/v2/service_instances/{instanceId}/service_bindings/{bindingId}" + }, + "get": { + "flatPath": "v1alpha1/projects/{projectsId}/brokers/{brokersId}/v2/service_instances/{service_instancesId}/service_bindings/{service_bindingsId}", + "id": "servicebroker.projects.brokers.v2.service_instances.service_bindings.get", + "path": "v1alpha1/{+parent}/v2/service_instances/{+instanceId}/service_bindings/{+bindingId}", + "description": "GetBinding returns the binding information.", + "httpMethod": "GET", + "response": { + "$ref": "GoogleCloudServicebrokerV1alpha1__GetBindingResponse" + }, + "parameterOrder": [ + "parent", + "instanceId", + "bindingId" + ], + "parameters": { + "instanceId": { + "description": "Instance id to which the binding is bound.", + "required": true, + "type": "string", + "pattern": "^[^/]+$", + "location": "path" + }, + "serviceId": { + "type": "string", + "location": "query", + "description": "Service id." + }, + "planId": { + "location": "query", + "description": "Plan id.", + "type": "string" + }, + "parent": { + "location": "path", + "description": "Parent must match `projects/[PROJECT_ID]/brokers/[BROKER_ID]`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/brokers/[^/]+$" + }, + "bindingId": { + "required": true, + "type": "string", + "pattern": "^[^/]+$", + "location": "path", + "description": "The binding id." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1alpha1/projects/{projectsId}/brokers/{brokersId}/service_instances", - "path": "v1alpha1/{+parent}/service_instances", - "id": "servicebroker.projects.brokers.service_instances.list", - "description": "Lists all the instances in the brokers\nThis API is an extension and not part of the OSB spec.\nHence the path is a standard Google API URL." - } - } - }, - "instances": { - "resources": { - "service_bindings": { + } + }, + "catalog": { "methods": { "list": { + "path": "v1alpha1/{+parent}/v2/catalog", + "id": "servicebroker.projects.brokers.v2.catalog.list", + "description": "Lists all the Services registered with this broker for consumption for\ngiven service registry broker, which contains an set of services.\nNote, that Service producer API is separate from Broker API.", "response": { - "$ref": "GoogleCloudServicebrokerV1alpha1__ListBindingsResponse" + "$ref": "GoogleCloudServicebrokerV1alpha1__ListCatalogResponse" }, "parameterOrder": [ "parent" ], "httpMethod": "GET", "parameters": { + "parent": { + "location": "path", + "description": "Parent must match `projects/[PROJECT_ID]/brokers/[BROKER_ID]`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/brokers/[^/]+$" + }, "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.\nOptional. If unset or 0, all the results will be returned.", "format": "int32", - "type": "integer", - "location": "query" - }, - "parent": { - "description": "Parent must match\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/instances/[INSTANCE_ID]`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/brokers/[^/]+/instances/[^/]+$", - "location": "path" + "type": "integer" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1alpha1/projects/{projectsId}/brokers/{brokersId}/instances/{instancesId}/service_bindings", - "path": "v1alpha1/{+parent}/service_bindings", - "id": "servicebroker.projects.brokers.instances.service_bindings.list", - "description": "Lists all the bindings in the instance" + "flatPath": "v1alpha1/projects/{projectsId}/brokers/{brokersId}/v2/catalog" } } } - }, - "methods": { - "get": { - "response": { - "$ref": "GoogleCloudServicebrokerV1alpha1__ServiceInstance" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "description": "The resource name of the instance to return.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/brokers/[^/]+/instances/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1alpha1/projects/{projectsId}/brokers/{brokersId}/instances/{instancesId}", - "path": "v1alpha1/{+name}", - "id": "servicebroker.projects.brokers.instances.get", - "description": "Gets the given service instance from the system.\nThis API is an extension and not part of the OSB spec.\nHence the path is a standard Google API URL." - } } } } } } - } - }, - "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": { - "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" - }, - "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" + } + }, + "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" + }, + "$.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": { + "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": { + "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": "v1alpha1", + "baseUrl": "https://servicebroker.googleapis.com/", + "servicePath": "", + "kind": "discovery#restDescription", + "description": "The Google Cloud Platform Service Broker API provides Google hosted\nimplementation of the Open Service Broker API\n(https://www.openservicebrokerapi.org/).\n", + "basePath": "", + "revision": "20180509", + "documentationLink": "https://cloud.google.com/kubernetes-engine/docs/concepts/add-on/service-broker", + "id": "servicebroker:v1alpha1", + "discoveryVersion": "v1", + "version_module": true, + "schemas": { + "GoogleCloudServicebrokerV1alpha1__CreateServiceInstanceResponse": { + "description": "Response for the `CreateServiceInstance()` method.", + "type": "object", + "properties": { + "operation": { + "description": "If broker executes operation asynchronously, this is the operation ID that\ncan be polled to check the completion status of said operation.\nThis broker always will return a non-empty operation on success.", + "type": "string" + }, + "description": { + "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", + "type": "string" + } + }, + "id": "GoogleCloudServicebrokerV1alpha1__CreateServiceInstanceResponse" + }, + "GoogleCloudServicebrokerV1alpha1__Plan": { + "description": "Plan message describes a Service Plan.", + "type": "object", + "properties": { + "bindable": { + "description": "Specifies whether instances of the service can be bound to applications.\nIf not specified, `Service.bindable` will be presumed.", + "type": "boolean" + }, + "name": { + "description": "User friendly name of the plan.\nThe name must be globally unique within GCP project.\nNote, which is different from (\"This must be globally unique within a\nplatform marketplace\").", + "type": "string" + }, + "schemas": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Schema definitions for service instances and bindings for the plan.", + "type": "object" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "A list of metadata for a service offering.\nMetadata is an arbitrary JSON object.", + "type": "object" + }, + "id": { + "description": "ID is a globally unique identifier used to uniquely identify the plan.\nUser must make no presumption about the format of this field.", + "type": "string" + }, + "free": { + "description": "Whether the service is free.", + "type": "boolean" + }, + "description": { + "description": "Textual description of the plan. Optional.", + "type": "string" + } + }, + "id": "GoogleCloudServicebrokerV1alpha1__Plan" + }, + "GoogleCloudServicebrokerV1alpha1__ListServiceInstancesResponse": { + "properties": { + "instances": { + "description": "The list of the instances in the broker.", + "type": "array", + "items": { + "$ref": "GoogleCloudServicebrokerV1alpha1__ServiceInstance" + } + }, + "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": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", + "type": "string" + } + }, + "id": "GoogleCloudServicebrokerV1alpha1__ListServiceInstancesResponse", + "description": "The response for the `ListServiceInstances()` method.", + "type": "object" + }, + "GoogleIamV1__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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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": "GoogleIamV1__Binding" + } + } + }, + "id": "GoogleIamV1__Policy" + }, + "GoogleCloudServicebrokerV1alpha1__DeleteServiceInstanceResponse": { + "description": "Response for the `DeleteServiceInstance()` method.", + "type": "object", + "properties": { + "operation": { + "description": "If broker executes operation asynchronously, this is the operation ID that\ncan be polled to check the completion status of said operation.", + "type": "string" + }, + "description": { + "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", + "type": "string" + } + }, + "id": "GoogleCloudServicebrokerV1alpha1__DeleteServiceInstanceResponse" + }, + "GoogleCloudServicebrokerV1alpha1__GetBindingResponse": { + "properties": { + "volume_mounts": { + "description": "An array of configuration for mounting volumes.", + "type": "array", + "items": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + } + }, + "syslog_drain_url": { + "description": "From where to read system logs.", + "type": "string" + }, + "route_service_url": { + "description": "A URL to which the platform may proxy requests for the address sent with\nbind_resource.route", + "type": "string" + }, + "credentials": { + "description": "Credentials to use the binding.", + "type": "object", + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + } + }, + "description": { + "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", + "type": "string" + } + }, + "id": "GoogleCloudServicebrokerV1alpha1__GetBindingResponse", + "description": "Response for the `GetBinding()` method.", + "type": "object" + }, + "GoogleCloudServicebrokerV1alpha1__DeleteBindingResponse": { + "type": "object", + "properties": { + "operation": { + "description": "If broker executes operation asynchronously, this is the operation ID that\ncan be polled to check the completion status of said operation.", + "type": "string" + }, + "description": { + "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", + "type": "string" + } + }, + "id": "GoogleCloudServicebrokerV1alpha1__DeleteBindingResponse", + "description": "Response for the `DeleteBinding()` method." + }, + "GoogleCloudServicebrokerV1alpha1__Binding": { + "properties": { + "createTime": { + "description": "Output only.\nTimestamp for when the binding was created.", + "format": "google-datetime", + "type": "string" + }, + "binding_id": { + "type": "string", + "description": "The id of the binding. Must be unique within GCP project.\nMaximum length is 64, GUID recommended.\nRequired." + }, + "plan_id": { + "description": "The ID of the plan. See `Service` and `Plan` resources for details.\nMaximum length is 64, GUID recommended.\nRequired.", + "type": "string" + }, + "bind_resource": { + "additionalProperties": { + "type": "any", + "description": "Properties of the object." + }, + "description": "A JSON object that contains data for platform resources associated with\nthe binding to be created.", + "type": "object" + }, + "parameters": { + "type": "object", + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Configuration options for the service binding." + }, + "service_id": { + "description": "The id of the service. Must be a valid identifier of a service\ncontained in the list from a `ListServices()` call.\nMaximum length is 64, GUID recommended.\nRequired.", + "type": "string" + } + }, + "id": "GoogleCloudServicebrokerV1alpha1__Binding", + "description": "Describes the binding.", + "type": "object" + }, + "GoogleIamV1__Binding": { + "id": "GoogleIamV1__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` .\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" + } + } + } + }, + "GoogleCloudServicebrokerV1alpha1__DashboardClient": { + "description": "Message containing information required to activate Dashboard SSO feature.", + "type": "object", + "properties": { + "id": { + "description": "The id of the Oauth client that the dashboard will use.", + "type": "string" + }, + "redirect_uri": { + "type": "string", + "description": "A URI for the service dashboard.\nValidated by the OAuth token server when the dashboard requests a token." + }, + "secret": { + "type": "string", + "description": "A secret for the dashboard client." + } + }, + "id": "GoogleCloudServicebrokerV1alpha1__DashboardClient" + }, + "GoogleCloudServicebrokerV1alpha1__Operation": { + "description": "Describes a long running operation, which conforms to OpenService API.", + "type": "object", + "properties": { + "description": { + "description": "Optional description of the Operation state.", + "type": "string" + }, + "state": { + "description": "The state of the operation.\nValid values are: \"in progress\", \"succeeded\", and \"failed\".", + "type": "string" + } + }, + "id": "GoogleCloudServicebrokerV1alpha1__Operation" + }, + "GoogleIamV1__TestIamPermissionsRequest": { + "description": "Request message for `TestIamPermissions` method.", + "type": "object", + "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": "GoogleIamV1__TestIamPermissionsRequest" + }, + "GoogleCloudServicebrokerV1alpha1__UpdateServiceInstanceResponse": { + "description": "Response for the `UpdateServiceInstance()` method.", + "type": "object", + "properties": { + "operation": { + "description": "If broker executes operation asynchronously, this is the operation ID that\ncan be polled to check the completion status of said operation.", + "type": "string" + }, + "description": { + "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", + "type": "string" + } + }, + "id": "GoogleCloudServicebrokerV1alpha1__UpdateServiceInstanceResponse" + }, + "GoogleCloudServicebrokerV1alpha1__ListCatalogResponse": { + "id": "GoogleCloudServicebrokerV1alpha1__ListCatalogResponse", + "description": "Response message for the `ListCatalog()` method.", + "type": "object", + "properties": { + "description": { + "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", + "type": "string" + }, + "services": { + "description": "The services available for the requested GCP project.", + "type": "array", + "items": { + "$ref": "GoogleCloudServicebrokerV1alpha1__Service" + } + }, + "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" + } + } + }, + "GoogleCloudServicebrokerV1alpha1__ListBindingsResponse": { + "description": "The response for the `ListBindings()` method.", + "type": "object", + "properties": { + "description": { + "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", + "type": "string" + }, + "bindings": { + "description": "The list of the bindings in the instance.", + "type": "array", + "items": { + "$ref": "GoogleCloudServicebrokerV1alpha1__Binding" + } + }, + "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": "GoogleCloudServicebrokerV1alpha1__ListBindingsResponse" + }, + "GoogleCloudServicebrokerV1alpha1__CreateBindingResponse": { + "id": "GoogleCloudServicebrokerV1alpha1__CreateBindingResponse", + "description": "Response for the `CreateBinding()` method.", + "type": "object", + "properties": { + "volume_mounts": { + "description": "An array of configuration for mounting volumes.", + "type": "array", + "items": { + "type": "object", + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + } + } + }, + "route_service_url": { + "description": "A URL to which the platform may proxy requests for the address sent with\nbind_resource.route", + "type": "string" + }, + "description": { + "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", + "type": "string" + }, + "syslog_drain_url": { + "description": "From where to read system logs.", + "type": "string" + }, + "operation": { + "description": "If broker executes operation asynchronously, this is the operation ID that\ncan be polled to check the completion status of said operation.\nThis broker always executes all create/delete operations asynchronously.", + "type": "string" + }, + "credentials": { + "description": "Credentials to use the binding.", + "type": "object", + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + } + } + } }, - "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" - ] + "GoogleCloudServicebrokerV1alpha1__Service": { + "description": "The resource model mostly follows the Open Service Broker API, as\ndescribed here:\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/_spec.md\nThough due to Google Specifics it has additional optional fields.", + "type": "object", + "properties": { + "plans": { + "description": "A list of plans for this service.\nAt least one plan is required.", + "type": "array", + "items": { + "$ref": "GoogleCloudServicebrokerV1alpha1__Plan" + } + }, + "metadata": { + "description": "A list of metadata for a service offering.\nMetadata is an arbitrary JSON object.", + "type": "object", + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + } + }, + "tags": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Tags provide a flexible mechanism to expose a classification, attribute, or\nbase technology of a service." + }, + "id": { + "description": "ID is a globally unique identifier used to uniquely identify the service.\nID is an opaque string.", + "type": "string" + }, + "description": { + "description": "Textual description of the service. Required.", + "type": "string" + }, + "plan_updateable": { + "description": "Whether the service supports upgrade/downgrade for some plans.", + "type": "boolean" + }, + "bindable": { + "description": "Specifies whether instances of the service can be bound to applications.\nRequired.", + "type": "boolean" + }, + "binding_retrievable": { + "description": "Whether the service provides an endpoint to get service bindings.", + "type": "boolean" + }, + "instance_retrievable": { + "description": "Whether the service provides an endpoint to get service instances.", + "type": "boolean" + }, + "dashboard_client": { + "$ref": "GoogleCloudServicebrokerV1alpha1__DashboardClient", + "description": "Information to activate Dashboard SSO feature." + }, + "name": { + "description": "User friendly service name.\nName must match [a-z0-9]+ regexp.\nThe name must be globally unique within GCP project.\nNote, which is different from (\"This must be globally unique within a\nplatform marketplace\").\nRequired.", + "type": "string" + } + }, + "id": "GoogleCloudServicebrokerV1alpha1__Service" }, - "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" + "GoogleCloudServicebrokerV1alpha1__ServiceInstance": { + "description": "Message describing inputs to Provision and Update Service instance requests.", + "type": "object", + "properties": { + "context": { + "description": "Platform specific contextual information under which the service instance\nis to be provisioned. This replaces organization_guid and space_guid.\nBut can also contain anything.\nCurrently only used for logging context information.", + "type": "object", + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + } + }, + "resourceName": { + "type": "string", + "description": "Output only.\nThe resource name of the instance, e.g.\nprojects/project_id/brokers/broker_id/service_instances/instance_id" + }, + "space_guid": { + "description": "The identifier for the project space within the platform organization.\nRequired.", + "type": "string" + }, + "organization_guid": { + "description": "The platform GUID for the organization under which the service is to be\nprovisioned.\nRequired.", + "type": "string" + }, + "service_id": { + "description": "The id of the service. Must be a valid identifier of a service\ncontained in the list from a `ListServices()` call.\nMaximum length is 64, GUID recommended.\nRequired.", + "type": "string" + }, + "previous_values": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Used only in UpdateServiceInstance request to optionally specify previous\nfields.", + "type": "object" + }, + "createTime": { + "description": "Output only.\nTimestamp for when the instance was created.", + "format": "google-datetime", + "type": "string" + }, + "parameters": { + "additionalProperties": { + "type": "any", + "description": "Properties of the object." + }, + "description": "Configuration options for the service instance.\nParameters is JSON object serialized to string.", + "type": "object" + }, + "plan_id": { + "description": "The ID of the plan. See `Service` and `Plan` resources for details.\nMaximum length is 64, GUID recommended.\nRequired.", + "type": "string" + }, + "instance_id": { + "description": "The id of the service instance. Must be unique within GCP project.\nMaximum length is 64, GUID recommended.\nRequired.", + "type": "string" + } + }, + "id": "GoogleCloudServicebrokerV1alpha1__ServiceInstance" }, - "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" + "GoogleIamV1__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": "GoogleIamV1__TestIamPermissionsResponse" }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" + "GoogleIamV1__SetIamPolicyRequest": { + "description": "Request message for `SetIamPolicy` method.", + "type": "object", + "properties": { + "policy": { + "$ref": "GoogleIamV1__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": "GoogleIamV1__SetIamPolicyRequest" } }, - "version": "v1alpha1", - "baseUrl": "https://servicebroker.googleapis.com/", - "kind": "discovery#restDescription", - "description": "The Google Cloud Platform Service Broker API provides Google hosted\nimplementation of the Open Service Broker API\n(https://www.openservicebrokerapi.org/).\n", - "servicePath": "", - "basePath": "", - "id": "servicebroker:v1alpha1", - "documentationLink": "https://cloud.google.com/kubernetes-engine/docs/concepts/add-on/service-broker", - "revision": "20180504" + "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 Broker", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, + "rootUrl": "https://servicebroker.googleapis.com/", + "ownerDomain": "google.com" } diff --git a/DiscoveryJson/servicebroker_v1beta1.json b/DiscoveryJson/servicebroker_v1beta1.json index f56ed197fb..523f0ea53b 100644 --- a/DiscoveryJson/servicebroker_v1beta1.json +++ b/DiscoveryJson/servicebroker_v1beta1.json @@ -1,612 +1,4 @@ { - "kind": "discovery#restDescription", - "description": "The Google Cloud Platform Service Broker API provides Google hosted\nimplementation of the Open Service Broker API\n(https://www.openservicebrokerapi.org/).\n", - "servicePath": "", - "basePath": "", - "revision": "20180504", - "documentationLink": "https://cloud.google.com/kubernetes-engine/docs/concepts/add-on/service-broker", - "id": "servicebroker:v1beta1", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "GoogleCloudServicebrokerV1beta1__Operation": { - "description": "Describes a long running operation, which conforms to OpenService API.", - "type": "object", - "properties": { - "state": { - "description": "The state of the operation.\nValid values are: \"in progress\", \"succeeded\", and \"failed\".", - "type": "string" - }, - "description": { - "description": "Optional description of the Operation state.", - "type": "string" - } - }, - "id": "GoogleCloudServicebrokerV1beta1__Operation" - }, - "GoogleCloudServicebrokerV1beta1__GetBindingResponse": { - "description": "Response for the `GetBinding()` method.", - "type": "object", - "properties": { - "volume_mounts": { - "type": "array", - "items": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "type": "object" - }, - "description": "An array of configurations for mounting volumes." - }, - "syslog_drain_url": { - "description": "From where to read system logs.", - "type": "string" - }, - "route_service_url": { - "description": "A URL to which the platform may proxy requests for the address sent with\nbind_resource.route", - "type": "string" - }, - "credentials": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "Credentials to use the binding.", - "type": "object" - }, - "description": { - "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", - "type": "string" - } - }, - "id": "GoogleCloudServicebrokerV1beta1__GetBindingResponse" - }, - "GoogleCloudServicebrokerV1beta1__Broker": { - "description": "Broker represents a consumable collection of Service Registry catalogs\nexposed as an OSB Broker.", - "type": "object", - "properties": { - "name": { - "description": "Name of the broker in the format:\n\u003cprojects\u003e/\u003cproject-id\u003e/brokers/\u003cbroker\u003e.\nThis allows for multiple brokers per project which can be used to\nenable having custom brokers per GKE cluster, for example.", - "type": "string" - }, - "url": { - "description": "Output only.\nURL of the broker OSB-compliant endpoint, for example:\nhttps://servicebroker.googleapis.com/projects/\u003cproject\u003e/brokers/\u003cbroker\u003e", - "type": "string" - }, - "createTime": { - "description": "Output only.\nTimestamp for when the broker was created.", - "format": "google-datetime", - "type": "string" - }, - "title": { - "description": "User friendly title of the broker.\nLimited to 1024 characters. Requests with longer titles will be rejected.", - "type": "string" - } - }, - "id": "GoogleCloudServicebrokerV1beta1__Broker" - }, - "GoogleCloudServicebrokerV1beta1__Plan": { - "description": "Plan message describes a Service Plan.", - "type": "object", - "properties": { - "description": { - "description": "Textual description of the plan. Optional.", - "type": "string" - }, - "bindable": { - "description": "Specifies whether instances of the service can be bound to applications.\nIf not specified, `Service.bindable` will be presumed.", - "type": "boolean" - }, - "name": { - "description": "User friendly name of the plan.\nThe name must be globally unique within GCP project.\nNote, which is different from (\"This must be globally unique within a\nplatform marketplace\").", - "type": "string" - }, - "schemas": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "Schema definitions for service instances and bindings for the plan." - }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "A list of metadata for a service offering.\nMetadata is an arbitrary JSON object.", - "type": "object" - }, - "id": { - "description": "ID is a globally unique identifier used to uniquely identify the plan.\nUser must make no presumption about the format of this field.", - "type": "string" - }, - "free": { - "description": "Whether the service is free.", - "type": "boolean" - } - }, - "id": "GoogleCloudServicebrokerV1beta1__Plan" - }, - "GoogleCloudServicebrokerV1beta1__CreateServiceInstanceResponse": { - "id": "GoogleCloudServicebrokerV1beta1__CreateServiceInstanceResponse", - "description": "Response for the `CreateServiceInstance()` method.", - "type": "object", - "properties": { - "operation": { - "description": "If broker executes operation asynchronously, this is the operation ID that\ncan be polled to check the completion status of said operation.\nThis broker always will return a non-empty operation on success.", - "type": "string" - }, - "description": { - "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", - "type": "string" - } - } - }, - "GoogleCloudServicebrokerV1beta1__ListBrokersResponse": { - "type": "object", - "properties": { - "brokers": { - "description": "The list of brokers in the container.", - "type": "array", - "items": { - "$ref": "GoogleCloudServicebrokerV1beta1__Broker" - } - }, - "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": "GoogleCloudServicebrokerV1beta1__ListBrokersResponse", - "description": "The response for the `ListBrokers()` method." - }, - "GoogleCloudServicebrokerV1beta1__ListServiceInstancesResponse": { - "id": "GoogleCloudServicebrokerV1beta1__ListServiceInstancesResponse", - "description": "The response for the `ListServiceInstances()` method.", - "type": "object", - "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", - "type": "string" - }, - "description": { - "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", - "type": "string" - }, - "instances": { - "description": "The list of instances in the broker.", - "type": "array", - "items": { - "$ref": "GoogleCloudServicebrokerV1beta1__ServiceInstance" - } - } - } - }, - "GoogleCloudServicebrokerV1beta1__UpdateServiceInstanceResponse": { - "description": "Response for the `UpdateServiceInstance()` method.", - "type": "object", - "properties": { - "operation": { - "description": "If broker executes operation asynchronously, this is the operation ID that\ncan be polled to check the completion status of said operation.", - "type": "string" - }, - "description": { - "type": "string", - "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors" - } - }, - "id": "GoogleCloudServicebrokerV1beta1__UpdateServiceInstanceResponse" - }, - "GoogleCloudServicebrokerV1beta1__ListBindingsResponse": { - "description": "The response for the `ListBindings()` method.", - "type": "object", - "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", - "type": "string" - }, - "description": { - "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", - "type": "string" - }, - "bindings": { - "description": "The list of bindings in the instance.", - "type": "array", - "items": { - "$ref": "GoogleCloudServicebrokerV1beta1__Binding" - } - } - }, - "id": "GoogleCloudServicebrokerV1beta1__ListBindingsResponse" - }, - "GoogleCloudServicebrokerV1beta1__DeleteBindingResponse": { - "id": "GoogleCloudServicebrokerV1beta1__DeleteBindingResponse", - "description": "Response for the `DeleteBinding()` method.", - "type": "object", - "properties": { - "operation": { - "description": "If broker executes operation asynchronously, this is the operation ID that\ncan be polled to check the completion status of said operation.", - "type": "string" - }, - "description": { - "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", - "type": "string" - } - } - }, - "GoogleIamV1__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": "GoogleIamV1__TestIamPermissionsResponse" - }, - "GoogleCloudServicebrokerV1beta1__DeleteServiceInstanceResponse": { - "properties": { - "operation": { - "description": "If broker executes operation asynchronously, this is the operation ID that\ncan be polled to check the completion status of said operation.", - "type": "string" - }, - "description": { - "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", - "type": "string" - } - }, - "id": "GoogleCloudServicebrokerV1beta1__DeleteServiceInstanceResponse", - "description": "Response for the `DeleteServiceInstance()` method.", - "type": "object" - }, - "GoogleCloudServicebrokerV1beta1__CreateBindingResponse": { - "properties": { - "volume_mounts": { - "description": "An array of configuration for mounting volumes.", - "type": "array", - "items": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "type": "object" - } - }, - "route_service_url": { - "description": "A URL to which the platform may proxy requests for the address sent with\nbind_resource.route", - "type": "string" - }, - "description": { - "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", - "type": "string" - }, - "syslog_drain_url": { - "description": "From where to read system logs.", - "type": "string" - }, - "credentials": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "Credentials to use the binding.", - "type": "object" - }, - "operation": { - "description": "If broker executes operation asynchronously, this is the operation ID that\ncan be polled to check the completion status of said operation.\nThis broker always executes all create/delete operations asynchronously.", - "type": "string" - } - }, - "id": "GoogleCloudServicebrokerV1beta1__CreateBindingResponse", - "description": "Response for the `CreateBinding()` method.", - "type": "object" - }, - "GoogleIamV1__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": "GoogleIamV1__Policy" - } - }, - "id": "GoogleIamV1__SetIamPolicyRequest" - }, - "GoogleCloudServicebrokerV1beta1__Service": { - "type": "object", - "properties": { - "plan_updateable": { - "description": "Whether the service supports upgrade/downgrade for some plans.", - "type": "boolean" - }, - "bindable": { - "description": "Specifies whether instances of the service can be bound to applications.\nRequired.", - "type": "boolean" - }, - "binding_retrievable": { - "description": "Whether the service provides an endpoint to get service bindings.", - "type": "boolean" - }, - "dashboard_client": { - "$ref": "GoogleCloudServicebrokerV1beta1__DashboardClient", - "description": "Information to activate Dashboard SSO feature." - }, - "bindings_retrievable": { - "description": "Whether the service provides an endpoint to get service bindings.", - "type": "boolean" - }, - "description": { - "description": "Textual description of the service. Required.", - "type": "string" - }, - "instances_retrievable": { - "description": "Whether the service provides an endpoint to get service instances.", - "type": "boolean" - }, - "name": { - "description": "User friendly service name.\nName must match [a-z0-9]+ regexp.\nThe name must be globally unique within GCP project.\nNote, which is different from (\"This must be globally unique within a\nplatform marketplace\").\nRequired.", - "type": "string" - }, - "plans": { - "description": "A list of plans for this service.\nAt least one plan is required.", - "type": "array", - "items": { - "$ref": "GoogleCloudServicebrokerV1beta1__Plan" - } - }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "A list of metadata for a service offering.\nMetadata is an arbitrary JSON object.", - "type": "object" - }, - "tags": { - "description": "Tags provide a flexible mechanism to expose a classification, attribute, or\nbase technology of a service.", - "type": "array", - "items": { - "type": "string" - } - }, - "id": { - "description": "ID is a globally unique identifier used to uniquely identify the service.\nID is an opaque string.", - "type": "string" - } - }, - "id": "GoogleCloudServicebrokerV1beta1__Service", - "description": "The resource model mostly follows the Open Service Broker API, as\ndescribed here:\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/_spec.md\nThough due to Google Specifics it has additional optional fields." - }, - "GoogleIamV1__Policy": { - "id": "GoogleIamV1__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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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": "GoogleIamV1__Binding" - } - } - } - }, - "GoogleCloudServicebrokerV1beta1__Binding": { - "description": "Describes the binding.", - "type": "object", - "properties": { - "service_id": { - "description": "The id of the service. Must be a valid identifier of a service\ncontained in the list from a `ListServices()` call.\nMaximum length is 64, GUID recommended.\nRequired.", - "type": "string" - }, - "createTime": { - "description": "Output only.\nTimestamp for when the binding was created.", - "format": "google-datetime", - "type": "string" - }, - "binding_id": { - "description": "The id of the binding. Must be unique within GCP project.\nMaximum length is 64, GUID recommended.\nRequired.", - "type": "string" - }, - "plan_id": { - "description": "The ID of the plan. See `Service` and `Plan` resources for details.\nMaximum length is 64, GUID recommended.\nRequired.", - "type": "string" - }, - "bind_resource": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "A JSON object that contains data for platform resources associated with\nthe binding to be created.", - "type": "object" - }, - "parameters": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "Configuration options for the service binding.", - "type": "object" - } - }, - "id": "GoogleCloudServicebrokerV1beta1__Binding" - }, - "GoogleCloudServicebrokerV1beta1__ServiceInstance": { - "description": "Message describing inputs to Provision and Update Service instance requests.", - "type": "object", - "properties": { - "previous_values": { - "additionalProperties": { - "type": "any", - "description": "Properties of the object." - }, - "description": "Used only in UpdateServiceInstance request to optionally specify previous\nfields.", - "type": "object" - }, - "createTime": { - "description": "Output only.\nTimestamp for when the instance was created.", - "format": "google-datetime", - "type": "string" - }, - "parameters": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "Configuration options for the service instance.\nParameters is JSON object serialized to string.", - "type": "object" - }, - "plan_id": { - "type": "string", - "description": "The ID of the plan. See `Service` and `Plan` resources for details.\nMaximum length is 64, GUID recommended.\nRequired." - }, - "instance_id": { - "description": "The id of the service instance. Must be unique within GCP project.\nMaximum length is 64, GUID recommended.\nRequired.", - "type": "string" - }, - "context": { - "additionalProperties": { - "type": "any", - "description": "Properties of the object." - }, - "description": "Platform specific contextual information under which the service instance\nis to be provisioned. This replaces organization_guid and space_guid.\nBut can also contain anything.\nCurrently only used for logging context information.", - "type": "object" - }, - "space_guid": { - "description": "The identifier for the project space within the platform organization.\nRequired.", - "type": "string" - }, - "resourceName": { - "type": "string", - "description": "Output only.\nThe resource name of the instance, e.g.\nprojects/project_id/brokers/broker_id/service_instances/instance_id" - }, - "description": { - "description": "To return errors when GetInstance call is done via HTTP to be unified with\nother methods.", - "type": "string" - }, - "organization_guid": { - "description": "The platform GUID for the organization under which the service is to be\nprovisioned.\nRequired.", - "type": "string" - }, - "service_id": { - "description": "The id of the service. Must be a valid identifier of a service\ncontained in the list from a `ListServices()` call.\nMaximum length is 64, GUID recommended.\nRequired.", - "type": "string" - } - }, - "id": "GoogleCloudServicebrokerV1beta1__ServiceInstance" - }, - "GoogleCloudServicebrokerV1beta1__DashboardClient": { - "description": "Message containing information required to activate Dashboard SSO feature.", - "type": "object", - "properties": { - "id": { - "description": "The id of the Oauth client that the dashboard will use.", - "type": "string" - }, - "redirect_uri": { - "description": "A URI for the service dashboard.\nValidated by the OAuth token server when the dashboard requests a token.", - "type": "string" - }, - "secret": { - "description": "A secret for the dashboard client.", - "type": "string" - } - }, - "id": "GoogleCloudServicebrokerV1beta1__DashboardClient" - }, - "GoogleCloudServicebrokerV1beta1__ListCatalogResponse": { - "id": "GoogleCloudServicebrokerV1beta1__ListCatalogResponse", - "description": "Response message for the `ListCatalog()` method.", - "type": "object", - "properties": { - "services": { - "description": "The services available for the requested GCP project.", - "type": "array", - "items": { - "$ref": "GoogleCloudServicebrokerV1beta1__Service" - } - }, - "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": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", - "type": "string" - } - } - }, - "GoogleProtobuf__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": "GoogleProtobuf__Empty" - }, - "GoogleIamV1__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` .\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": "GoogleIamV1__Binding", - "description": "Associates `members` with a `role`.", - "type": "object" - }, - "GoogleIamV1__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": "GoogleIamV1__TestIamPermissionsRequest", - "description": "Request message for `TestIamPermissions` method.", - "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": "Service Broker", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://servicebroker.googleapis.com/", "ownerDomain": "google.com", "name": "servicebroker", "batchPath": "batch", @@ -620,61 +12,15 @@ "resources": { "instances": { "methods": { - "getLast_operation": { - "description": "Returns the state of the last operation for the service instance.\nOnly last (or current) operation can be polled.", - "response": { - "$ref": "GoogleCloudServicebrokerV1beta1__Operation" - }, - "parameterOrder": [ - "name" - ], + "list": { "httpMethod": "GET", - "parameters": { - "planId": { - "description": "Plan id.", - "type": "string", - "location": "query" - }, - "serviceId": { - "location": "query", - "description": "Service id.", - "type": "string" - }, - "name": { - "description": "Name must match\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/v2/`+\n `service_instances/[INSTANCE_ID]`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/brokers/[^/]+/instances/[^/]+$", - "location": "path" - }, - "operation": { - "location": "query", - "description": "If `operation` was returned during mutation operation, this field must be\npopulated with the provided value.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "parameterOrder": [ + "parent" ], - "flatPath": "v1beta1/projects/{projectsId}/brokers/{brokersId}/instances/{instancesId}/last_operation", - "path": "v1beta1/{+name}/last_operation", - "id": "servicebroker.projects.brokers.instances.getLast_operation" - }, - "list": { - "description": "Lists all the instances in the brokers\nThis API is an extension and not part of the OSB spec.\nHence the path is a standard Google API URL.", "response": { "$ref": "GoogleCloudServicebrokerV1beta1__ListServiceInstancesResponse" }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", "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.\nOptional. Acceptable values are 0 to 200, inclusive. (Default: 100)", "format": "int32", @@ -687,20 +33,22 @@ "description": "Parent must match `projects/[PROJECT_ID]/brokers/[BROKER_ID]`.", "required": true, "type": "string" + }, + "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" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "flatPath": "v1beta1/projects/{projectsId}/brokers/{brokersId}/instances", + "id": "servicebroker.projects.brokers.instances.list", "path": "v1beta1/{+parent}/instances", - "id": "servicebroker.projects.brokers.instances.list" + "description": "Lists all the instances in the brokers\nThis API is an extension and not part of the OSB spec.\nHence the path is a standard Google API URL." }, "get": { - "flatPath": "v1beta1/projects/{projectsId}/brokers/{brokersId}/instances/{instancesId}", - "path": "v1beta1/{+name}", - "id": "servicebroker.projects.brokers.instances.get", - "description": "Gets the given service instance from the system.\nThe API call accepts both OSB style API and standard google style API\nresource path.\ni.e. both `projects/*/brokers/*/instances/*`\n and `projects/*/brokers/*/v2/service_instances/*` are acceptable paths.", "response": { "$ref": "GoogleCloudServicebrokerV1beta1__ServiceInstance" }, @@ -710,22 +58,105 @@ "httpMethod": "GET", "parameters": { "name": { - "location": "path", "description": "The resource name of the instance to return.\nName must match\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/` +\n`v2/service_instances/[INSTANCE_ID]`\nor\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/instances/[INSTANCE_ID]`.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/brokers/[^/]+/instances/[^/]+$" + "pattern": "^projects/[^/]+/brokers/[^/]+/instances/[^/]+$", + "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ] + ], + "flatPath": "v1beta1/projects/{projectsId}/brokers/{brokersId}/instances/{instancesId}", + "path": "v1beta1/{+name}", + "id": "servicebroker.projects.brokers.instances.get", + "description": "Gets the given service instance from the system.\nThe API call accepts both OSB style API and standard google style API\nresource path.\ni.e. both `projects/*/brokers/*/instances/*`\n and `projects/*/brokers/*/v2/service_instances/*` are acceptable paths." + }, + "getLast_operation": { + "description": "Returns the state of the last operation for the service instance.\nOnly last (or current) operation can be polled.", + "response": { + "$ref": "GoogleCloudServicebrokerV1beta1__Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "planId": { + "location": "query", + "description": "Plan id.", + "type": "string" + }, + "serviceId": { + "description": "Service id.", + "type": "string", + "location": "query" + }, + "name": { + "description": "Name must match\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/v2/`+\n `service_instances/[INSTANCE_ID]`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/brokers/[^/]+/instances/[^/]+$", + "location": "path" + }, + "operation": { + "location": "query", + "description": "If `operation` was returned during mutation operation, this field must be\npopulated with the provided value.", + "type": "string" + } + }, + "flatPath": "v1beta1/projects/{projectsId}/brokers/{brokersId}/instances/{instancesId}/last_operation", + "path": "v1beta1/{+name}/last_operation", + "id": "servicebroker.projects.brokers.instances.getLast_operation" } }, "resources": { "bindings": { "methods": { + "list": { + "description": "Lists all the bindings in the instance.", + "response": { + "$ref": "GoogleCloudServicebrokerV1beta1__ListBindingsResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "parent": { + "description": "Parent must match\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/` +\n`v2/service_instances/[INSTANCE_ID]`\nor\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/instances/[INSTANCE_ID]`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/brokers/[^/]+/instances/[^/]+$", + "location": "path" + }, + "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.\nOptional. Acceptable values are 0 to 200, inclusive. (Default: 100)", + "format": "int32", + "type": "integer" + } + }, + "flatPath": "v1beta1/projects/{projectsId}/brokers/{brokersId}/instances/{instancesId}/bindings", + "path": "v1beta1/{+parent}/bindings", + "id": "servicebroker.projects.brokers.instances.bindings.list" + }, "getLast_operation": { + "flatPath": "v1beta1/projects/{projectsId}/brokers/{brokersId}/instances/{instancesId}/bindings/{bindingsId}/last_operation", + "path": "v1beta1/{+name}/last_operation", + "id": "servicebroker.projects.brokers.instances.bindings.getLast_operation", "description": "Returns the state of the last operation for the binding.\nOnly last (or current) operation can be polled.", "response": { "$ref": "GoogleCloudServicebrokerV1beta1__Operation" @@ -734,21 +165,18 @@ "name" ], "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { "serviceId": { + "description": "Service id.", "type": "string", - "location": "query", - "description": "Service id." + "location": "query" }, "name": { + "location": "path", "description": "Name must match\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/v2/service_instances/[INSTANCE_ID]/service_binding/[BINDING_ID]`.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/brokers/[^/]+/instances/[^/]+/bindings/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/brokers/[^/]+/instances/[^/]+/bindings/[^/]+$" }, "operation": { "location": "query", @@ -756,74 +184,72 @@ "type": "string" }, "planId": { + "location": "query", "description": "Plan id.", - "type": "string", - "location": "query" + "type": "string" } }, - "flatPath": "v1beta1/projects/{projectsId}/brokers/{brokersId}/instances/{instancesId}/bindings/{bindingsId}/last_operation", - "path": "v1beta1/{+name}/last_operation", - "id": "servicebroker.projects.brokers.instances.bindings.getLast_operation" - }, - "list": { - "description": "Lists all the bindings in the instance.", - "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "v2": { + "resources": { + "service_instances": { + "methods": { + "delete": { + "description": "Deprovisions a service instance.\nFor synchronous/asynchronous request details see CreateServiceInstance\nmethod.\nIf service instance does not exist HTTP 410 status will be returned.", "response": { - "$ref": "GoogleCloudServicebrokerV1beta1__ListBindingsResponse" + "$ref": "GoogleCloudServicebrokerV1beta1__DeleteServiceInstanceResponse" }, "parameterOrder": [ - "parent" + "name" ], + "httpMethod": "DELETE", "parameters": { - "pageToken": { + "planId": { "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.", + "description": "The plan id of the service instance.", "type": "string" }, - "pageSize": { + "serviceId": { "location": "query", - "description": "Specifies the number of results to return per page. If there are fewer\nelements than the specified number, returns all elements.\nOptional. Acceptable values are 0 to 200, inclusive. (Default: 100)", - "format": "int32", - "type": "integer" + "description": "The service id of the service instance.", + "type": "string" }, - "parent": { - "description": "Parent must match\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/` +\n`v2/service_instances/[INSTANCE_ID]`\nor\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/instances/[INSTANCE_ID]`.", + "acceptsIncomplete": { + "description": "See CreateServiceInstanceRequest for details.", + "type": "boolean", + "location": "query" + }, + "name": { + "location": "path", + "description": "Name must match\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/` +\n`v2/service_instances/[INSTANCE_ID]`\nor\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/instances/[INSTANCE_ID]`.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/brokers/[^/]+/instances/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/brokers/[^/]+/v2/service_instances/[^/]+$" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta1/projects/{projectsId}/brokers/{brokersId}/instances/{instancesId}/bindings", - "id": "servicebroker.projects.brokers.instances.bindings.list", - "path": "v1beta1/{+parent}/bindings" - } - } - } - } - }, - "v2": { - "resources": { - "service_instances": { - "methods": { - "get": { "flatPath": "v1beta1/projects/{projectsId}/brokers/{brokersId}/v2/service_instances/{service_instancesId}", - "id": "servicebroker.projects.brokers.v2.service_instances.get", "path": "v1beta1/{+name}", + "id": "servicebroker.projects.brokers.v2.service_instances.delete" + }, + "get": { "description": "Gets the given service instance from the system.\nThe API call accepts both OSB style API and standard google style API\nresource path.\ni.e. both `projects/*/brokers/*/instances/*`\n and `projects/*/brokers/*/v2/service_instances/*` are acceptable paths.", - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], "response": { "$ref": "GoogleCloudServicebrokerV1beta1__ServiceInstance" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "parameterOrder": [ + "name" ], + "httpMethod": "GET", "parameters": { "name": { "description": "The resource name of the instance to return.\nName must match\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/` +\n`v2/service_instances/[INSTANCE_ID]`\nor\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/instances/[INSTANCE_ID]`.", @@ -832,13 +258,15 @@ "pattern": "^projects/[^/]+/brokers/[^/]+/v2/service_instances/[^/]+$", "location": "path" } - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/projects/{projectsId}/brokers/{brokersId}/v2/service_instances/{service_instancesId}", + "path": "v1beta1/{+name}", + "id": "servicebroker.projects.brokers.v2.service_instances.get" }, "patch": { - "request": { - "$ref": "GoogleCloudServicebrokerV1beta1__ServiceInstance" - }, - "description": "Updates an existing service instance.\nSee CreateServiceInstance for possible response codes.", "response": { "$ref": "GoogleCloudServicebrokerV1beta1__UpdateServiceInstanceResponse" }, @@ -856,16 +284,20 @@ "type": "boolean" }, "name": { - "pattern": "^projects/[^/]+/brokers/[^/]+/v2/service_instances/[^/]+$", - "location": "path", "description": "Name must match\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/v2/service_instances/[INSTANCE_ID]`.", "required": true, - "type": "string" + "type": "string", + "pattern": "^projects/[^/]+/brokers/[^/]+/v2/service_instances/[^/]+$", + "location": "path" } }, "flatPath": "v1beta1/projects/{projectsId}/brokers/{brokersId}/v2/service_instances/{service_instancesId}", "path": "v1beta1/{+name}", - "id": "servicebroker.projects.brokers.v2.service_instances.patch" + "id": "servicebroker.projects.brokers.v2.service_instances.patch", + "request": { + "$ref": "GoogleCloudServicebrokerV1beta1__ServiceInstance" + }, + "description": "Updates an existing service instance.\nSee CreateServiceInstance for possible response codes." }, "create": { "request": { @@ -884,24 +316,24 @@ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { + "acceptsIncomplete": { + "location": "query", + "description": "Value indicating that API client supports asynchronous operations. If\nBroker cannot execute the request synchronously HTTP 422 code will be\nreturned to HTTP clients along with FAILED_PRECONDITION error.\nIf true and broker will execute request asynchronously 202 HTTP code will\nbe returned.\nThis broker always requires this to be true as all mutator operations are\nasynchronous.", + "type": "boolean" + }, "instance_id": { - "pattern": "^[^/]+$", - "location": "path", "description": "The id of the service instance. Must be unique within GCP project.\nMaximum length is 64, GUID recommended.\nRequired.", "required": true, - "type": "string" + "type": "string", + "pattern": "^[^/]+$", + "location": "path" }, "parent": { - "pattern": "^projects/[^/]+/brokers/[^/]+$", "location": "path", "description": "Parent must match `projects/[PROJECT_ID]/brokers/[BROKER_ID]`.", "required": true, - "type": "string" - }, - "acceptsIncomplete": { - "type": "boolean", - "location": "query", - "description": "Value indicating that API client supports asynchronous operations. If\nBroker cannot execute the request synchronously HTTP 422 code will be\nreturned to HTTP clients along with FAILED_PRECONDITION error.\nIf true and broker will execute request asynchronously 202 HTTP code will\nbe returned.\nThis broker always requires this to be true as all mutator operations are\nasynchronous." + "type": "string", + "pattern": "^projects/[^/]+/brokers/[^/]+$" } }, "flatPath": "v1beta1/projects/{projectsId}/brokers/{brokersId}/v2/service_instances/{service_instancesId}", @@ -909,244 +341,204 @@ "id": "servicebroker.projects.brokers.v2.service_instances.create" }, "getLast_operation": { - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], "response": { "$ref": "GoogleCloudServicebrokerV1beta1__Operation" }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { - "serviceId": { - "location": "query", - "description": "Service id.", - "type": "string" - }, "name": { - "pattern": "^projects/[^/]+/brokers/[^/]+/v2/service_instances/[^/]+$", "location": "path", "description": "Name must match\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/v2/`+\n `service_instances/[INSTANCE_ID]`.", "required": true, - "type": "string" + "type": "string", + "pattern": "^projects/[^/]+/brokers/[^/]+/v2/service_instances/[^/]+$" }, "operation": { "location": "query", "description": "If `operation` was returned during mutation operation, this field must be\npopulated with the provided value.", "type": "string" }, - "planId": { - "description": "Plan id.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/brokers/{brokersId}/v2/service_instances/{service_instancesId}/last_operation", - "id": "servicebroker.projects.brokers.v2.service_instances.getLast_operation", - "path": "v1beta1/{+name}/last_operation", - "description": "Returns the state of the last operation for the service instance.\nOnly last (or current) operation can be polled." - }, - "delete": { - "path": "v1beta1/{+name}", - "id": "servicebroker.projects.brokers.v2.service_instances.delete", - "description": "Deprovisions a service instance.\nFor synchronous/asynchronous request details see CreateServiceInstance\nmethod.\nIf service instance does not exist HTTP 410 status will be returned.", - "response": { - "$ref": "GoogleCloudServicebrokerV1beta1__DeleteServiceInstanceResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "planId": { - "description": "The plan id of the service instance.", - "type": "string", - "location": "query" + "planId": { + "location": "query", + "description": "Plan id.", + "type": "string" }, "serviceId": { - "description": "The service id of the service instance.", + "description": "Service id.", "type": "string", "location": "query" - }, - "acceptsIncomplete": { - "description": "See CreateServiceInstanceRequest for details.", - "type": "boolean", - "location": "query" - }, - "name": { - "description": "Name must match\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/` +\n`v2/service_instances/[INSTANCE_ID]`\nor\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/instances/[INSTANCE_ID]`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/brokers/[^/]+/v2/service_instances/[^/]+$", - "location": "path" } }, - "flatPath": "v1beta1/projects/{projectsId}/brokers/{brokersId}/v2/service_instances/{service_instancesId}" + "flatPath": "v1beta1/projects/{projectsId}/brokers/{brokersId}/v2/service_instances/{service_instancesId}/last_operation", + "path": "v1beta1/{+name}/last_operation", + "id": "servicebroker.projects.brokers.v2.service_instances.getLast_operation", + "description": "Returns the state of the last operation for the service instance.\nOnly last (or current) operation can be polled." } }, "resources": { "service_bindings": { "methods": { - "get": { + "getLast_operation": { "response": { - "$ref": "GoogleCloudServicebrokerV1beta1__GetBindingResponse" + "$ref": "GoogleCloudServicebrokerV1beta1__Operation" }, "parameterOrder": [ "name" ], "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { - "serviceId": { - "location": "query", - "description": "Service id.", - "type": "string" - }, "name": { - "location": "path", - "description": "Name must match\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/v2/service_instances/[INSTANCE_ID]/service_bindings`.", + "description": "Name must match\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/v2/service_instances/[INSTANCE_ID]/service_binding/[BINDING_ID]`.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/brokers/[^/]+/v2/service_instances/[^/]+/service_bindings/[^/]+$" + "pattern": "^projects/[^/]+/brokers/[^/]+/v2/service_instances/[^/]+/service_bindings/[^/]+$", + "location": "path" + }, + "operation": { + "description": "If `operation` was returned during mutation operation, this field must be\npopulated with the provided value.", + "type": "string", + "location": "query" }, "planId": { - "location": "query", "description": "Plan id.", + "type": "string", + "location": "query" + }, + "serviceId": { + "location": "query", + "description": "Service id.", "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/brokers/{brokersId}/v2/service_instances/{service_instancesId}/service_bindings/{service_bindingsId}", - "path": "v1beta1/{+name}", - "id": "servicebroker.projects.brokers.v2.service_instances.service_bindings.get", - "description": "GetBinding returns the binding information." + "flatPath": "v1beta1/projects/{projectsId}/brokers/{brokersId}/v2/service_instances/{service_instancesId}/service_bindings/{service_bindingsId}/last_operation", + "path": "v1beta1/{+name}/last_operation", + "id": "servicebroker.projects.brokers.v2.service_instances.service_bindings.getLast_operation", + "description": "Returns the state of the last operation for the binding.\nOnly last (or current) operation can be polled." }, - "create": { - "description": "CreateBinding generates a service binding to an existing service instance.\nSee ProviServiceInstance for async operation details.", - "request": { - "$ref": "GoogleCloudServicebrokerV1beta1__Binding" + "delete": { + "response": { + "$ref": "GoogleCloudServicebrokerV1beta1__DeleteBindingResponse" }, - "httpMethod": "PUT", "parameterOrder": [ - "parent", - "binding_id" + "name" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "response": { - "$ref": "GoogleCloudServicebrokerV1beta1__CreateBindingResponse" - }, "parameters": { - "parent": { - "pattern": "^projects/[^/]+/brokers/[^/]+/v2/service_instances/[^/]+$", - "location": "path", - "description": "The GCP container.\nMust match\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/v2/service_instances/[INSTANCE_ID]`.", - "required": true, - "type": "string" + "planId": { + "description": "The plan id of the service instance.", + "type": "string", + "location": "query" }, - "binding_id": { - "pattern": "^[^/]+$", - "location": "path", - "description": "The id of the binding. Must be unique within GCP project.\nMaximum length is 64, GUID recommended.\nRequired.", - "required": true, + "serviceId": { + "location": "query", + "description": "Additional query parameter hints.\nThe service id of the service instance.", "type": "string" }, "acceptsIncomplete": { "location": "query", "description": "See CreateServiceInstanceRequest for details.", "type": "boolean" + }, + "name": { + "pattern": "^projects/[^/]+/brokers/[^/]+/v2/service_instances/[^/]+/service_bindings/[^/]+$", + "location": "path", + "description": "Name must match\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/`\n`v2/service_instances/[INSTANCE_ID]/service_bindings/[BINDING_ID]`\nor\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/`\n`/instances/[INSTANCE_ID]/bindings/[BINDING_ID]`.", + "required": true, + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "flatPath": "v1beta1/projects/{projectsId}/brokers/{brokersId}/v2/service_instances/{service_instancesId}/service_bindings/{service_bindingsId}", - "id": "servicebroker.projects.brokers.v2.service_instances.service_bindings.create", - "path": "v1beta1/{+parent}/service_bindings/{+binding_id}" + "path": "v1beta1/{+name}", + "id": "servicebroker.projects.brokers.v2.service_instances.service_bindings.delete", + "description": "Unbinds from a service instance.\nFor synchronous/asynchronous request details see CreateServiceInstance\nmethod.\nIf binding does not exist HTTP 410 status will be returned." }, - "getLast_operation": { - "description": "Returns the state of the last operation for the binding.\nOnly last (or current) operation can be polled.", - "httpMethod": "GET", + "get": { "response": { - "$ref": "GoogleCloudServicebrokerV1beta1__Operation" + "$ref": "GoogleCloudServicebrokerV1beta1__GetBindingResponse" }, "parameterOrder": [ "name" ], + "httpMethod": "GET", "parameters": { "name": { - "description": "Name must match\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/v2/service_instances/[INSTANCE_ID]/service_binding/[BINDING_ID]`.", + "description": "Name must match\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/v2/service_instances/[INSTANCE_ID]/service_bindings`.", "required": true, "type": "string", "pattern": "^projects/[^/]+/brokers/[^/]+/v2/service_instances/[^/]+/service_bindings/[^/]+$", "location": "path" }, - "operation": { - "type": "string", - "location": "query", - "description": "If `operation` was returned during mutation operation, this field must be\npopulated with the provided value." - }, "planId": { + "description": "Plan id.", "type": "string", - "location": "query", - "description": "Plan id." + "location": "query" }, "serviceId": { - "location": "query", "description": "Service id.", - "type": "string" + "type": "string", + "location": "query" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1beta1/projects/{projectsId}/brokers/{brokersId}/v2/service_instances/{service_instancesId}/service_bindings/{service_bindingsId}/last_operation", - "id": "servicebroker.projects.brokers.v2.service_instances.service_bindings.getLast_operation", - "path": "v1beta1/{+name}/last_operation" + "flatPath": "v1beta1/projects/{projectsId}/brokers/{brokersId}/v2/service_instances/{service_instancesId}/service_bindings/{service_bindingsId}", + "path": "v1beta1/{+name}", + "id": "servicebroker.projects.brokers.v2.service_instances.service_bindings.get", + "description": "GetBinding returns the binding information." }, - "delete": { + "create": { + "request": { + "$ref": "GoogleCloudServicebrokerV1beta1__Binding" + }, + "description": "CreateBinding generates a service binding to an existing service instance.\nSee ProviServiceInstance for async operation details.", "response": { - "$ref": "GoogleCloudServicebrokerV1beta1__DeleteBindingResponse" + "$ref": "GoogleCloudServicebrokerV1beta1__CreateBindingResponse" }, "parameterOrder": [ - "name" + "parent", + "binding_id" + ], + "httpMethod": "PUT", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" ], - "httpMethod": "DELETE", "parameters": { - "serviceId": { - "location": "query", - "description": "Additional query parameter hints.\nThe service id of the service instance.", - "type": "string" - }, "acceptsIncomplete": { + "location": "query", "description": "See CreateServiceInstanceRequest for details.", - "type": "boolean", - "location": "query" + "type": "boolean" }, - "name": { - "pattern": "^projects/[^/]+/brokers/[^/]+/v2/service_instances/[^/]+/service_bindings/[^/]+$", - "location": "path", - "description": "Name must match\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/`\n`v2/service_instances/[INSTANCE_ID]/service_bindings/[BINDING_ID]`\nor\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/`\n`/instances/[INSTANCE_ID]/bindings/[BINDING_ID]`.", + "parent": { + "description": "The GCP container.\nMust match\n`projects/[PROJECT_ID]/brokers/[BROKER_ID]/v2/service_instances/[INSTANCE_ID]`.", "required": true, - "type": "string" + "type": "string", + "pattern": "^projects/[^/]+/brokers/[^/]+/v2/service_instances/[^/]+$", + "location": "path" }, - "planId": { - "location": "query", - "description": "The plan id of the service instance.", - "type": "string" + "binding_id": { + "description": "The id of the binding. Must be unique within GCP project.\nMaximum length is 64, GUID recommended.\nRequired.", + "required": true, + "type": "string", + "pattern": "^[^/]+$", + "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "flatPath": "v1beta1/projects/{projectsId}/brokers/{brokersId}/v2/service_instances/{service_instancesId}/service_bindings/{service_bindingsId}", - "path": "v1beta1/{+name}", - "id": "servicebroker.projects.brokers.v2.service_instances.service_bindings.delete", - "description": "Unbinds from a service instance.\nFor synchronous/asynchronous request details see CreateServiceInstance\nmethod.\nIf binding does not exist HTTP 410 status will be returned." + "path": "v1beta1/{+parent}/service_bindings/{+binding_id}", + "id": "servicebroker.projects.brokers.v2.service_instances.service_bindings.create" } } } @@ -1156,313 +548,921 @@ "methods": { "list": { "description": "Lists all the Services registered with this broker for consumption for\ngiven service registry broker, which contains an set of services.\nNote, that Service producer API is separate from Broker API.", - "httpMethod": "GET", "response": { "$ref": "GoogleCloudServicebrokerV1beta1__ListCatalogResponse" }, "parameterOrder": [ "parent" ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { + "parent": { + "pattern": "^projects/[^/]+/brokers/[^/]+$", + "location": "path", + "description": "Parent must match `projects/[PROJECT_ID]/brokers/[BROKER_ID]`.", + "required": true, + "type": "string" + }, "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", - "location": "query" + "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.\nOptional. If unset or 0, all the results will be returned.", "format": "int32", - "type": "integer" - }, - "parent": { - "location": "path", - "description": "Parent must match `projects/[PROJECT_ID]/brokers/[BROKER_ID]`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/brokers/[^/]+$" + "type": "integer", + "location": "query" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "flatPath": "v1beta1/projects/{projectsId}/brokers/{brokersId}/v2/catalog", - "id": "servicebroker.projects.brokers.v2.catalog.list", - "path": "v1beta1/{+parent}/v2/catalog" + "path": "v1beta1/{+parent}/v2/catalog", + "id": "servicebroker.projects.brokers.v2.catalog.list" } } } - } + } + } + }, + "methods": { + "list": { + "description": "ListBrokers lists brokers.", + "httpMethod": "GET", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "GoogleCloudServicebrokerV1beta1__ListBrokersResponse" + }, + "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": { + "location": "query", + "description": "Specifies the number of results to return per page. If there are fewer\nelements than the specified number, returns all elements.\nOptional. Acceptable values are 0 to 200, inclusive. (Default: 100)", + "format": "int32", + "type": "integer" + }, + "parent": { + "location": "path", + "description": "Parent must match `projects/[PROJECT_ID]/brokers`.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/projects/{projectsId}/brokers", + "id": "servicebroker.projects.brokers.list", + "path": "v1beta1/{+parent}/brokers" + }, + "create": { + "description": "CreateBroker creates a Broker.", + "request": { + "$ref": "GoogleCloudServicebrokerV1beta1__Broker" + }, + "response": { + "$ref": "GoogleCloudServicebrokerV1beta1__Broker" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "parameters": { + "parent": { + "description": "The project in which to create broker.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/projects/{projectsId}/brokers", + "path": "v1beta1/{+parent}/brokers", + "id": "servicebroker.projects.brokers.create" + }, + "delete": { + "response": { + "$ref": "GoogleProtobuf__Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "description": "The broker to delete.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/brokers/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1beta1/projects/{projectsId}/brokers/{brokersId}", + "path": "v1beta1/{+name}", + "id": "servicebroker.projects.brokers.delete", + "description": "DeleteBroker deletes a Broker." + } + } + } + } + }, + "v1beta1": { + "methods": { + "setIamPolicy": { + "response": { + "$ref": "GoogleIamV1__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": "^.+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/{v1beta1Id}:setIamPolicy", + "path": "v1beta1/{+resource}:setIamPolicy", + "id": "servicebroker.setIamPolicy", + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", + "request": { + "$ref": "GoogleIamV1__SetIamPolicyRequest" + } + }, + "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": "GoogleIamV1__TestIamPermissionsRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "resource" + ], + "response": { + "$ref": "GoogleIamV1__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": "^.+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/{v1beta1Id}:testIamPermissions", + "id": "servicebroker.testIamPermissions", + "path": "v1beta1/{+resource}:testIamPermissions" + }, + "getIamPolicy": { + "path": "v1beta1/{+resource}:getIamPolicy", + "id": "servicebroker.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": "GoogleIamV1__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": "^.+$", + "location": "path" } }, - "methods": { - "create": { - "flatPath": "v1beta1/projects/{projectsId}/brokers", - "path": "v1beta1/{+parent}/brokers", - "id": "servicebroker.projects.brokers.create", - "request": { - "$ref": "GoogleCloudServicebrokerV1beta1__Broker" - }, - "description": "CreateBroker creates a Broker.", - "response": { - "$ref": "GoogleCloudServicebrokerV1beta1__Broker" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "location": "path", - "description": "The project in which to create broker.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$" - } - } - }, - "delete": { - "httpMethod": "DELETE", - "response": { - "$ref": "GoogleProtobuf__Empty" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "The broker to delete.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/brokers/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/projects/{projectsId}/brokers/{brokersId}", - "id": "servicebroker.projects.brokers.delete", - "path": "v1beta1/{+name}", - "description": "DeleteBroker deletes a Broker." - }, - "list": { - "flatPath": "v1beta1/projects/{projectsId}/brokers", - "id": "servicebroker.projects.brokers.list", - "path": "v1beta1/{+parent}/brokers", - "description": "ListBrokers lists brokers.", - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "GoogleCloudServicebrokerV1beta1__ListBrokersResponse" - }, - "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": { - "location": "query", - "description": "Specifies the number of results to return per page. If there are fewer\nelements than the specified number, returns all elements.\nOptional. Acceptable values are 0 to 200, inclusive. (Default: 100)", - "format": "int32", - "type": "integer" - }, - "parent": { - "description": "Parent must match `projects/[PROJECT_ID]/brokers`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "flatPath": "v1beta1/{v1beta1Id}:getIamPolicy" + } + } + } + }, + "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" + }, + "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": { + "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": { + "description": "V1 error format.", + "type": "string", + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "enum": [ + "1", + "2" + ] + }, + "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": { + "description": "OAuth access token.", + "type": "string", + "location": "query" + } + }, + "version": "v1beta1", + "baseUrl": "https://servicebroker.googleapis.com/", + "kind": "discovery#restDescription", + "description": "The Google Cloud Platform Service Broker API provides Google hosted\nimplementation of the Open Service Broker API\n(https://www.openservicebrokerapi.org/).\n", + "servicePath": "", + "basePath": "", + "revision": "20180509", + "documentationLink": "https://cloud.google.com/kubernetes-engine/docs/concepts/add-on/service-broker", + "id": "servicebroker:v1beta1", + "discoveryVersion": "v1", + "version_module": true, + "schemas": { + "GoogleCloudServicebrokerV1beta1__ListCatalogResponse": { + "description": "Response message for the `ListCatalog()` method.", + "type": "object", + "properties": { + "description": { + "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", + "type": "string" + }, + "services": { + "description": "The services available for the requested GCP project.", + "type": "array", + "items": { + "$ref": "GoogleCloudServicebrokerV1beta1__Service" + } + }, + "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": "GoogleCloudServicebrokerV1beta1__ListCatalogResponse" + }, + "GoogleProtobuf__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": "GoogleProtobuf__Empty" + }, + "GoogleIamV1__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` .\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": "GoogleIamV1__Binding" + }, + "GoogleIamV1__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": "GoogleIamV1__TestIamPermissionsRequest" + }, + "GoogleCloudServicebrokerV1beta1__Operation": { + "properties": { + "state": { + "description": "The state of the operation.\nValid values are: \"in progress\", \"succeeded\", and \"failed\".", + "type": "string" + }, + "description": { + "description": "Optional description of the Operation state.", + "type": "string" + } + }, + "id": "GoogleCloudServicebrokerV1beta1__Operation", + "description": "Describes a long running operation, which conforms to OpenService API.", + "type": "object" + }, + "GoogleCloudServicebrokerV1beta1__CreateServiceInstanceResponse": { + "properties": { + "operation": { + "description": "If broker executes operation asynchronously, this is the operation ID that\ncan be polled to check the completion status of said operation.\nThis broker always will return a non-empty operation on success.", + "type": "string" + }, + "description": { + "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", + "type": "string" + } + }, + "id": "GoogleCloudServicebrokerV1beta1__CreateServiceInstanceResponse", + "description": "Response for the `CreateServiceInstance()` method.", + "type": "object" + }, + "GoogleCloudServicebrokerV1beta1__Plan": { + "properties": { + "description": { + "description": "Textual description of the plan. Optional.", + "type": "string" + }, + "bindable": { + "description": "Specifies whether instances of the service can be bound to applications.\nIf not specified, `Service.bindable` will be presumed.", + "type": "boolean" + }, + "name": { + "description": "User friendly name of the plan.\nThe name must be globally unique within GCP project.\nNote, which is different from (\"This must be globally unique within a\nplatform marketplace\").", + "type": "string" + }, + "schemas": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Schema definitions for service instances and bindings for the plan.", + "type": "object" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "A list of metadata for a service offering.\nMetadata is an arbitrary JSON object.", + "type": "object" + }, + "id": { + "description": "ID is a globally unique identifier used to uniquely identify the plan.\nUser must make no presumption about the format of this field.", + "type": "string" + }, + "free": { + "description": "Whether the service is free.", + "type": "boolean" + } + }, + "id": "GoogleCloudServicebrokerV1beta1__Plan", + "description": "Plan message describes a Service Plan.", + "type": "object" + }, + "GoogleCloudServicebrokerV1beta1__Broker": { + "properties": { + "name": { + "description": "Name of the broker in the format:\n\u003cprojects\u003e/\u003cproject-id\u003e/brokers/\u003cbroker\u003e.\nThis allows for multiple brokers per project which can be used to\nenable having custom brokers per GKE cluster, for example.", + "type": "string" + }, + "url": { + "description": "Output only.\nURL of the broker OSB-compliant endpoint, for example:\nhttps://servicebroker.googleapis.com/projects/\u003cproject\u003e/brokers/\u003cbroker\u003e", + "type": "string" + }, + "createTime": { + "description": "Output only.\nTimestamp for when the broker was created.", + "format": "google-datetime", + "type": "string" + }, + "title": { + "description": "User friendly title of the broker.\nLimited to 1024 characters. Requests with longer titles will be rejected.", + "type": "string" + } + }, + "id": "GoogleCloudServicebrokerV1beta1__Broker", + "description": "Broker represents a consumable collection of Service Registry catalogs\nexposed as an OSB Broker.", + "type": "object" + }, + "GoogleCloudServicebrokerV1beta1__GetBindingResponse": { + "properties": { + "volume_mounts": { + "description": "An array of configurations for mounting volumes.", + "type": "array", + "items": { + "type": "object", + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" } } + }, + "syslog_drain_url": { + "description": "From where to read system logs.", + "type": "string" + }, + "route_service_url": { + "description": "A URL to which the platform may proxy requests for the address sent with\nbind_resource.route", + "type": "string" + }, + "credentials": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "Credentials to use the binding.", + "type": "object" + }, + "description": { + "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", + "type": "string" + } + }, + "id": "GoogleCloudServicebrokerV1beta1__GetBindingResponse", + "description": "Response for the `GetBinding()` method.", + "type": "object" + }, + "GoogleCloudServicebrokerV1beta1__ListBrokersResponse": { + "description": "The response for the `ListBrokers()` method.", + "type": "object", + "properties": { + "brokers": { + "description": "The list of brokers in the container.", + "type": "array", + "items": { + "$ref": "GoogleCloudServicebrokerV1beta1__Broker" + } + }, + "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": "GoogleCloudServicebrokerV1beta1__ListBrokersResponse" + }, + "GoogleCloudServicebrokerV1beta1__ListServiceInstancesResponse": { + "description": "The response for the `ListServiceInstances()` method.", + "type": "object", + "properties": { + "description": { + "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", + "type": "string" + }, + "instances": { + "description": "The list of instances in the broker.", + "type": "array", + "items": { + "$ref": "GoogleCloudServicebrokerV1beta1__ServiceInstance" + } + }, + "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": "GoogleCloudServicebrokerV1beta1__ListServiceInstancesResponse" }, - "v1beta1": { - "methods": { - "setIamPolicy": { - "path": "v1beta1/{+resource}:setIamPolicy", - "id": "servicebroker.setIamPolicy", - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "request": { - "$ref": "GoogleIamV1__SetIamPolicyRequest" - }, - "response": { - "$ref": "GoogleIamV1__Policy" + "GoogleCloudServicebrokerV1beta1__UpdateServiceInstanceResponse": { + "properties": { + "operation": { + "description": "If broker executes operation asynchronously, this is the operation ID that\ncan be polled to check the completion status of said operation.", + "type": "string" + }, + "description": { + "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", + "type": "string" + } + }, + "id": "GoogleCloudServicebrokerV1beta1__UpdateServiceInstanceResponse", + "description": "Response for the `UpdateServiceInstance()` method.", + "type": "object" + }, + "GoogleCloudServicebrokerV1beta1__ListBindingsResponse": { + "description": "The response for the `ListBindings()` method.", + "type": "object", + "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", + "type": "string" + }, + "description": { + "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", + "type": "string" + }, + "bindings": { + "description": "The list of bindings in the instance.", + "type": "array", + "items": { + "$ref": "GoogleCloudServicebrokerV1beta1__Binding" + } + } + }, + "id": "GoogleCloudServicebrokerV1beta1__ListBindingsResponse" + }, + "GoogleCloudServicebrokerV1beta1__DeleteBindingResponse": { + "description": "Response for the `DeleteBinding()` method.", + "type": "object", + "properties": { + "operation": { + "description": "If broker executes operation asynchronously, this is the operation ID that\ncan be polled to check the completion status of said operation.", + "type": "string" + }, + "description": { + "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", + "type": "string" + } + }, + "id": "GoogleCloudServicebrokerV1beta1__DeleteBindingResponse" + }, + "GoogleIamV1__TestIamPermissionsResponse": { + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "id": "GoogleIamV1__TestIamPermissionsResponse", + "description": "Response message for `TestIamPermissions` method.", + "type": "object" + }, + "GoogleCloudServicebrokerV1beta1__CreateBindingResponse": { + "description": "Response for the `CreateBinding()` method.", + "type": "object", + "properties": { + "volume_mounts": { + "description": "An array of configuration for mounting volumes.", + "type": "array", + "items": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "type": "object" + } + }, + "route_service_url": { + "description": "A URL to which the platform may proxy requests for the address sent with\nbind_resource.route", + "type": "string" + }, + "description": { + "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", + "type": "string" + }, + "syslog_drain_url": { + "description": "From where to read system logs.", + "type": "string" + }, + "credentials": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" }, - "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": "^.+$", - "location": "path" - } + "description": "Credentials to use the binding.", + "type": "object" + }, + "operation": { + "description": "If broker executes operation asynchronously, this is the operation ID that\ncan be polled to check the completion status of said operation.\nThis broker always executes all create/delete operations asynchronously.", + "type": "string" + } + }, + "id": "GoogleCloudServicebrokerV1beta1__CreateBindingResponse" + }, + "GoogleCloudServicebrokerV1beta1__DeleteServiceInstanceResponse": { + "description": "Response for the `DeleteServiceInstance()` method.", + "type": "object", + "properties": { + "operation": { + "description": "If broker executes operation asynchronously, this is the operation ID that\ncan be polled to check the completion status of said operation.", + "type": "string" + }, + "description": { + "description": "Used to communicate description of the response. Usually for non-standard\nerror codes.\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors", + "type": "string" + } + }, + "id": "GoogleCloudServicebrokerV1beta1__DeleteServiceInstanceResponse" + }, + "GoogleIamV1__SetIamPolicyRequest": { + "description": "Request message for `SetIamPolicy` method.", + "type": "object", + "properties": { + "policy": { + "$ref": "GoogleIamV1__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": "GoogleIamV1__SetIamPolicyRequest" + }, + "GoogleCloudServicebrokerV1beta1__Service": { + "properties": { + "description": { + "description": "Textual description of the service. Required.", + "type": "string" + }, + "instances_retrievable": { + "description": "Whether the service provides an endpoint to get service instances.", + "type": "boolean" + }, + "name": { + "description": "User friendly service name.\nName must match [a-z0-9]+ regexp.\nThe name must be globally unique within GCP project.\nNote, which is different from (\"This must be globally unique within a\nplatform marketplace\").\nRequired.", + "type": "string" + }, + "plans": { + "description": "A list of plans for this service.\nAt least one plan is required.", + "type": "array", + "items": { + "$ref": "GoogleCloudServicebrokerV1beta1__Plan" + } + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/{v1beta1Id}:setIamPolicy" + "description": "A list of metadata for a service offering.\nMetadata is an arbitrary JSON object.", + "type": "object" + }, + "tags": { + "description": "Tags provide a flexible mechanism to expose a classification, attribute, or\nbase technology of a service.", + "type": "array", + "items": { + "type": "string" + } + }, + "id": { + "description": "ID is a globally unique identifier used to uniquely identify the service.\nID is an opaque string.", + "type": "string" + }, + "plan_updateable": { + "description": "Whether the service supports upgrade/downgrade for some plans.", + "type": "boolean" + }, + "bindable": { + "description": "Specifies whether instances of the service can be bound to applications.\nRequired.", + "type": "boolean" + }, + "binding_retrievable": { + "description": "Whether the service provides an endpoint to get service bindings.", + "type": "boolean" + }, + "dashboard_client": { + "description": "Information to activate Dashboard SSO feature.", + "$ref": "GoogleCloudServicebrokerV1beta1__DashboardClient" + }, + "bindings_retrievable": { + "description": "Whether the service provides an endpoint to get service bindings.", + "type": "boolean" + } + }, + "id": "GoogleCloudServicebrokerV1beta1__Service", + "description": "The resource model mostly follows the Open Service Broker API, as\ndescribed here:\nhttps://github.com/openservicebrokerapi/servicebroker/blob/master/_spec.md\nThough due to Google Specifics it has additional optional fields.", + "type": "object" + }, + "GoogleIamV1__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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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": "GoogleIamV1__Binding" + } + } + }, + "id": "GoogleIamV1__Policy" + }, + "GoogleCloudServicebrokerV1beta1__Binding": { + "properties": { + "service_id": { + "description": "The id of the service. Must be a valid identifier of a service\ncontained in the list from a `ListServices()` call.\nMaximum length is 64, GUID recommended.\nRequired.", + "type": "string" }, - "testIamPermissions": { - "response": { - "$ref": "GoogleIamV1__TestIamPermissionsResponse" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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": "^.+$" - } - }, - "flatPath": "v1beta1/{v1beta1Id}:testIamPermissions", - "path": "v1beta1/{+resource}:testIamPermissions", - "id": "servicebroker.testIamPermissions", - "request": { - "$ref": "GoogleIamV1__TestIamPermissionsRequest" + "createTime": { + "description": "Output only.\nTimestamp for when the binding was created.", + "format": "google-datetime", + "type": "string" + }, + "binding_id": { + "description": "The id of the binding. Must be unique within GCP project.\nMaximum length is 64, GUID recommended.\nRequired.", + "type": "string" + }, + "parameters": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" }, - "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." + "description": "Configuration options for the service binding.", + "type": "object" }, - "getIamPolicy": { - "httpMethod": "GET", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "GoogleIamV1__Policy" + "plan_id": { + "description": "The ID of the plan. See `Service` and `Plan` resources for details.\nMaximum length is 64, GUID recommended.\nRequired.", + "type": "string" + }, + "bind_resource": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" }, - "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": "^.+$" - } + "description": "A JSON object that contains data for platform resources associated with\nthe binding to be created.", + "type": "object" + } + }, + "id": "GoogleCloudServicebrokerV1beta1__Binding", + "description": "Describes the binding.", + "type": "object" + }, + "GoogleCloudServicebrokerV1beta1__ServiceInstance": { + "description": "Message describing inputs to Provision and Update Service instance requests.", + "type": "object", + "properties": { + "context": { + "description": "Platform specific contextual information under which the service instance\nis to be provisioned. This replaces organization_guid and space_guid.\nBut can also contain anything.\nCurrently only used for logging context information.", + "type": "object", + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + } + }, + "resourceName": { + "description": "Output only.\nThe resource name of the instance, e.g.\nprojects/project_id/brokers/broker_id/service_instances/instance_id", + "type": "string" + }, + "space_guid": { + "description": "The identifier for the project space within the platform organization.\nRequired.", + "type": "string" + }, + "organization_guid": { + "description": "The platform GUID for the organization under which the service is to be\nprovisioned.\nRequired.", + "type": "string" + }, + "description": { + "description": "To return errors when GetInstance call is done via HTTP to be unified with\nother methods.", + "type": "string" + }, + "service_id": { + "description": "The id of the service. Must be a valid identifier of a service\ncontained in the list from a `ListServices()` call.\nMaximum length is 64, GUID recommended.\nRequired.", + "type": "string" + }, + "previous_values": { + "description": "Used only in UpdateServiceInstance request to optionally specify previous\nfields.", + "type": "object", + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + } + }, + "createTime": { + "description": "Output only.\nTimestamp for when the instance was created.", + "format": "google-datetime", + "type": "string" + }, + "parameters": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/{v1beta1Id}:getIamPolicy", - "id": "servicebroker.getIamPolicy", - "path": "v1beta1/{+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." + "description": "Configuration options for the service instance.\nParameters is JSON object serialized to string.", + "type": "object" + }, + "plan_id": { + "description": "The ID of the plan. See `Service` and `Plan` resources for details.\nMaximum length is 64, GUID recommended.\nRequired.", + "type": "string" + }, + "instance_id": { + "description": "The id of the service instance. Must be unique within GCP project.\nMaximum length is 64, GUID recommended.\nRequired.", + "type": "string" } - } + }, + "id": "GoogleCloudServicebrokerV1beta1__ServiceInstance" + }, + "GoogleCloudServicebrokerV1beta1__DashboardClient": { + "description": "Message containing information required to activate Dashboard SSO feature.", + "type": "object", + "properties": { + "id": { + "description": "The id of the Oauth client that the dashboard will use.", + "type": "string" + }, + "redirect_uri": { + "description": "A URI for the service dashboard.\nValidated by the OAuth token server when the dashboard requests a token.", + "type": "string" + }, + "secret": { + "description": "A secret for the dashboard client.", + "type": "string" + } + }, + "id": "GoogleCloudServicebrokerV1beta1__DashboardClient" } }, - "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": { - "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" - }, - "uploadType": { - "type": "string", - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." - }, - "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": { - "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": { - "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" + "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 Broker", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } } }, - "version": "v1beta1", - "baseUrl": "https://servicebroker.googleapis.com/" + "rootUrl": "https://servicebroker.googleapis.com/" } diff --git a/DiscoveryJson/serviceconsumermanagement_v1.json b/DiscoveryJson/serviceconsumermanagement_v1.json index 9ff71d455e..066fcf1a11 100644 --- a/DiscoveryJson/serviceconsumermanagement_v1.json +++ b/DiscoveryJson/serviceconsumermanagement_v1.json @@ -1,323 +1,551 @@ { - "schemas": { - "CustomAuthRequirements": { - "description": "Configuration for a custom authentication provider.", - "type": "object", - "properties": { - "provider": { - "type": "string", - "description": "A configuration string containing connection information for the\nauthentication provider, typically formatted as a SmartService string\n(go/smartservice)." + "fullyEncodeReservedExpansion": true, + "title": "Service Consumer Management API", + "ownerName": "Google", + "resources": { + "services": { + "methods": { + "search": { + "flatPath": "v1/services/{servicesId}:search", + "path": "v1/{+parent}:search", + "id": "serviceconsumermanagement.services.search", + "description": "Search tenancy units for a service.", + "response": { + "$ref": "SearchTenancyUnitsResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "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.\n\nOptional.", + "type": "string" + }, + "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", + "type": "integer", + "location": "query" + }, + "query": { + "location": "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" + }, + "parent": { + "pattern": "^services/[^/]+$", + "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" + } + } } }, - "id": "CustomAuthRequirements" + "resources": { + "tenancyUnits": { + "methods": { + "create": { + "response": { + "$ref": "TenancyUnit" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "parameters": { + "parent": { + "location": "path", + "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/[^/]+/[^/]+/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/services/{servicesId}/{servicesId1}/{servicesId2}/tenancyUnits", + "path": "v1/{+parent}/tenancyUnits", + "id": "serviceconsumermanagement.services.tenancyUnits.create", + "description": "Creates a tenancy unit with no tenant resources.", + "request": { + "$ref": "CreateTenancyUnitRequest" + } + }, + "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" + }, + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/services/{servicesId}/{servicesId1}/{servicesId2}/tenancyUnits/{tenancyUnitsId}:removeProject", + "path": "v1/{+name}:removeProject", + "id": "serviceconsumermanagement.services.tenancyUnits.removeProject" + }, + "delete": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "parameters": { + "name": { + "pattern": "^services/[^/]+/[^/]+/[^/]+/tenancyUnits/[^/]+$", + "location": "path", + "description": "Name of the tenancy unit to be deleted.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/services/{servicesId}/{servicesId1}/{servicesId2}/tenancyUnits/{tenancyUnitsId}", + "path": "v1/{+name}", + "id": "serviceconsumermanagement.services.tenancyUnits.delete", + "description": "Delete a tenancy unit. Before the tenancy unit is deleted, there should be\nno tenant resources in it.\nOperation\u003cresponse: Empty\u003e." + }, + "addProject": { + "flatPath": "v1/services/{servicesId}/{servicesId1}/{servicesId2}/tenancyUnits/{tenancyUnitsId}:addProject", + "path": "v1/{+parent}:addProject", + "id": "serviceconsumermanagement.services.tenancyUnits.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.", + "request": { + "$ref": "AddTenantProjectRequest" + }, + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "parameters": { + "parent": { + "description": "Name of the tenancy unit.", + "required": true, + "type": "string", + "pattern": "^services/[^/]+/[^/]+/[^/]+/tenancyUnits/[^/]+$", + "location": "path" + } + }, + "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.", + "response": { + "$ref": "ListTenancyUnitsResponse" + }, + "parameterOrder": [ + "parent" + ], + "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 returned by this request.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "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'.", + "required": true, + "type": "string", + "pattern": "^services/[^/]+/[^/]+/[^/]+$", + "location": "path" + }, + "filter": { + "location": "query", + "description": "Filter expression over tenancy resources field. Optional.", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/services/{servicesId}/{servicesId1}/{servicesId2}/tenancyUnits", + "path": "v1/{+parent}/tenancyUnits", + "id": "serviceconsumermanagement.services.tenancyUnits.list" + } + } + } + } + }, + "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", + "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 to be cancelled.", + "required": true, + "type": "string" + } + }, + "flatPath": "v1/operations/{operationsId}:cancel", + "path": "v1/{+name}:cancel", + "id": "serviceconsumermanagement.operations.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`.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "required": true, + "type": "string", + "pattern": "^operations/.+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ], + "flatPath": "v1/operations/{operationsId}", + "path": "v1/{+name}", + "id": "serviceconsumermanagement.operations.delete" + }, + "list": { + "response": { + "$ref": "ListOperationsResponse" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ], + "parameters": { + "name": { + "description": "The name of the operation's parent resource.", + "required": true, + "type": "string", + "pattern": "^operations$", + "location": "path" + }, + "pageToken": { + "description": "The standard list page token.", + "type": "string", + "location": "query" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "filter": { + "location": "query", + "description": "The standard list filter.", + "type": "string" + } + }, + "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." + }, + "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" + } + } + } + }, + "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": { + "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" }, - "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": { - "type": "boolean", - "description": "A boolean that determines if direct download from ESF should be used for\ndownload of this media." - } - }, - "id": "MediaDownload" + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "type": "string", + "location": "query" }, - "AuthorizationRule": { - "properties": { - "selector": { - "description": "Selects the API elements to which this rule applies.\n\nRefer to selector for syntax details.", - "type": "string" - }, - "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" - } - }, - "id": "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" + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string", + "location": "query" }, - "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": { - "maxSize": { - "type": "string", - "description": "Optional maximum acceptable size for an upload.\nThe size is specified in bytes.", - "format": "int64" - }, - "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" - }, - "progressNotification": { - "description": "Whether to receive a notification for progress changes of media upload.", - "type": "boolean" - }, - "enabled": { - "description": "Whether upload is enabled.", - "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" + "callback": { + "description": "JSONP", + "type": "string", + "location": "query" }, - "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, 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" - } - }, - "id": "CreateTenancyUnitRequest" + "$.xgafv": { + "enum": [ + "1", + "2" + ], + "description": "V1 error format.", + "type": "string", + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "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 `{}`.", - "type": "object", - "properties": {}, - "id": "Empty" + "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" }, - "BillingDestination": { - "description": "Configuration of a specific billing destination (Currently only support\nbill against consumer project).", - "type": "object", - "properties": { - "monitoredResource": { - "type": "string", - "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section." - }, - "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" + "access_token": { + "description": "OAuth access token.", + "type": "string", + "location": "query" }, - "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", + "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": "v1", + "baseUrl": "https://serviceconsumermanagement.googleapis.com/", + "kind": "discovery#restDescription", + "description": "Provides management methods for configuring service producer resources on Google Cloud.", + "servicePath": "", + "basePath": "", + "revision": "20180509", + "id": "serviceconsumermanagement:v1", + "documentationLink": "https://cloud.google.com/service-consumer-management/docs/overview", + "discoveryVersion": "v1", + "version_module": true, + "schemas": { + "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": { "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.", + "description": "Selects the methods to which this rule applies.\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.", + "allowWithoutCredential": { + "description": "If true, the service accepts API keys without any other credential.", "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": { - "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" - } + "oauth": { + "$ref": "OAuthRequirements", + "description": "The requirements for OAuth credentials." }, - "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" + "customAuth": { + "description": "Configuration for custom authentication.", + "$ref": "CustomAuthRequirements" }, - "pages": { - "description": "The top level pages for the documentation set.", + "requirements": { + "description": "Requirements for additional authentication providers.", "type": "array", "items": { - "$ref": "Page" + "$ref": "AuthRequirement" } } }, - "id": "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\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(== 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" + "id": "AuthenticationRule" }, "BackendRule": { "description": "A backend rule provides configuration for an individual API element.", "type": "object", "properties": { - "address": { - "type": "string", - "description": "The address of the API backend." - }, - "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": { - "type": "number", "description": "Minimum deadline in seconds needed for this method. Calls having deadline\nvalue lower than this will be rejected.", - "format": "double" - } - }, - "id": "BackendRule" - }, - "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": { - "type": "array", - "items": { - "$ref": "AuthRequirement" - }, - "description": "Requirements for additional authentication providers." + "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" - }, - "allowWithoutCredential": { - "description": "If true, the service accepts API keys without any other credential.", - "type": "boolean" - }, - "oauth": { - "$ref": "OAuthRequirements", - "description": "The requirements for OAuth credentials." - }, - "customAuth": { - "$ref": "CustomAuthRequirements", - "description": "Configuration for custom authentication." } }, - "id": "AuthenticationRule" + "id": "BackendRule" }, "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", "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" + } + }, "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" + "type": "string", + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ] }, "sourceContext": { - "$ref": "SourceContext", - "description": "Source context for the protocol buffer service represented by this\nmessage." + "description": "Source context for the protocol buffer service represented by this\nmessage.", + "$ref": "SourceContext" }, "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" - }, - "description": "Included interfaces. See 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" } } }, "id": "Api" }, "CancelOperationRequest": { - "properties": {}, - "id": "CancelOperationRequest", "description": "The request message for Operations.CancelOperation.", - "type": "object" + "type": "object", + "properties": {}, + "id": "CancelOperationRequest" }, "MetricRule": { - "id": "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": { @@ -333,7 +561,8 @@ "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" }, "TenantProjectPolicy": { "description": "Describes policy settings that need to be applied to a newly\ncreated tenant project.", @@ -350,82 +579,82 @@ "id": "TenantProjectPolicy" }, "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.", + "providers": { + "description": "Defines a set of authentication providers that a service supports.", "type": "array", "items": { - "$ref": "AuthenticationRule" + "$ref": "AuthProvider" } }, - "providers": { - "description": "Defines a set of authentication providers that a service supports.", + "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": "AuthProvider" + "$ref": "AuthenticationRule" } } }, - "id": "Authentication" + "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": { + "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": { - "$ref": "Status", - "description": "The error result of the operation in case of failure or cancellation." + "description": "The error result of the operation in case of failure or cancellation.", + "$ref": "Status" }, "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\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." + "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" - }, - "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" - } } }, - "id": "Operation", - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call." + "id": "Operation" }, "Page": { - "description": "Represents a documentation page. A page can contain subpages to represent\nnested documentation set structure.", - "type": "object", "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`.", + "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" } - }, - "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" - }, - "content": { - "type": "string", - "description": "The Markdown content of the page. You can use \u003ccode\u003e(== include {path} ==)\u003c/code\u003e\nto include content from a Markdown file." } }, - "id": "Page" + "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.", @@ -435,11 +664,11 @@ "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." - }, - "type": "object" + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + } } }, "code": { @@ -454,21 +683,6 @@ }, "id": "Status" }, - "AddTenantProjectRequest": { - "description": "Request to add a newly created and configured tenant project to a tenancy\nunit.", - "type": "object", - "properties": { - "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": "AddTenantProjectRequest" - }, "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", @@ -496,22 +710,48 @@ }, "id": "AuthProvider" }, - "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", + "AddTenantProjectRequest": { + "description": "Request to add a newly created and configured tenant project to a tenancy\nunit.", "type": "object", "properties": { - "backend": { - "description": "API backend configuration.", - "$ref": "Backend" + "projectConfig": { + "$ref": "TenantProjectConfig", + "description": "Configuration of the new tenant project that will be added to tenancy unit\nresources." }, - "systemParameters": { - "description": "System parameter configuration.", - "$ref": "SystemParameters" + "tag": { + "description": "Tag of the added project. Must be less than 128 characters. Required.", + "type": "string" + } + }, + "id": "AddTenantProjectRequest" + }, + "EnumValue": { + "description": "Enum value definition.", + "type": "object", + "properties": { + "name": { + "description": "Enum value name.", + "type": "string" }, - "documentation": { - "description": "Additional API documentation.", - "$ref": "Documentation" + "options": { + "description": "Protocol buffer options.", + "type": "array", + "items": { + "$ref": "Option" + } }, + "number": { + "description": "Enum value number.", + "format": "int32", + "type": "integer" + } + }, + "id": "EnumValue" + }, + "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", + "properties": { "logging": { "description": "Logging configuration.", "$ref": "Logging" @@ -523,6 +763,10 @@ "$ref": "MonitoredResourceDescriptor" } }, + "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", @@ -530,10 +774,6 @@ "$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" @@ -567,8 +807,12 @@ "type": "integer" }, "monitoring": { - "$ref": "Monitoring", - "description": "Monitoring configuration." + "description": "Monitoring configuration.", + "$ref": "Monitoring" + }, + "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.", @@ -577,36 +821,32 @@ "$ref": "Type" } }, - "producerProjectId": { - "description": "The Google project that owns this service.", - "type": "string" - }, "quota": { - "$ref": "Quota", - "description": "Quota configuration." + "description": "Quota configuration.", + "$ref": "Quota" }, "billing": { - "$ref": "Billing", - "description": "Billing configuration." + "description": "Billing configuration.", + "$ref": "Billing" }, "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." + "description": "Custom error configuration.", + "$ref": "CustomError" }, "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" - }, - "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." + } }, "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.", @@ -630,38 +870,27 @@ } }, "sourceInfo": { - "$ref": "SourceInfo", - "description": "Output only. The source information for this configuration if available." + "description": "Output only. The source information for this configuration if available.", + "$ref": "SourceInfo" }, "http": { "description": "HTTP configuration.", "$ref": "Http" - } - }, - "id": "Service" - }, - "EnumValue": { - "description": "Enum value definition.", - "type": "object", - "properties": { - "number": { - "description": "Enum value number.", - "format": "int32", - "type": "integer" }, - "name": { - "description": "Enum value name.", - "type": "string" + "systemParameters": { + "description": "System parameter configuration.", + "$ref": "SystemParameters" }, - "options": { - "description": "Protocol buffer options.", - "type": "array", - "items": { - "$ref": "Option" - } + "backend": { + "description": "API backend configuration.", + "$ref": "Backend" + }, + "documentation": { + "$ref": "Documentation", + "description": "Additional API documentation." } }, - "id": "EnumValue" + "id": "Service" }, "ListOperationsResponse": { "description": "The response message for Operations.ListOperations.", @@ -697,6 +926,8 @@ "id": "CustomHttpPattern" }, "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.", @@ -710,11 +941,10 @@ } } }, - "id": "SystemParameterRule", - "description": "Define a system parameter rule mapping system parameter definitions to\nmethods.", - "type": "object" + "id": "SystemParameterRule" }, "BillingConfig": { + "description": "Describes billing configuration for a new tenant project.", "type": "object", "properties": { "billingAccount": { @@ -722,33 +952,24 @@ "type": "string" } }, - "id": "BillingConfig", - "description": "Describes billing configuration for a new tenant project." - }, - "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" + "id": "BillingConfig" }, "TenantResource": { "description": "Resource constituting the TenancyUnit.", "type": "object", "properties": { - "tag": { - "description": "Unique per single tenancy unit.", - "type": "string" - }, "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": { + "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", @@ -757,64 +978,42 @@ "FAILED" ], "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." - ] + "type": "string" + }, + "tag": { + "description": "Unique per single tenancy unit.", + "type": "string" } }, "id": "TenantResource" }, - "HttpRule": { + "RemoveTenantProjectRequest": { + "description": "Request message to remove tenant project resource from the tenancy unit.", "type": "object", "properties": { - "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.", + "tag": { + "description": "Tag of the resource within the tenancy unit.", "type": "string" - }, - "patch": { - "description": "Used for updating a resource.", + } + }, + "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": { + "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" }, - "put": { - "description": "Used for updating a resource.", + "post": { + "description": "Used for creating 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" - } - }, - "delete": { - "type": "string", - "description": "Used for deleting a resource." - }, - "body": { - "type": "string", - "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." - }, "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." }, - "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" @@ -833,12 +1032,43 @@ "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" + }, + "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." + }, + "patch": { + "description": "Used for updating a resource.", + "type": "string" + }, + "get": { + "description": "Used for listing and getting information about resources.", + "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" } }, - "id": "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." + "id": "HttpRule" }, "MonitoringDestination": { + "description": "Configuration of a specific monitoring destination (the producer project\nor the consumer project).", "type": "object", "properties": { "monitoredResource": { @@ -853,19 +1083,10 @@ } } }, - "id": "MonitoringDestination", - "description": "Configuration of a specific monitoring destination (the producer project\nor the consumer project)." + "id": "MonitoringDestination" }, "TenancyUnit": { - "type": "object", "properties": { - "tenantResources": { - "description": "Resources constituting the tenancy unit.\nThere can be at most 512 tenant resources in a tenancy unit.", - "type": "array", - "items": { - "$ref": "TenantResource" - } - }, "consumer": { "description": "@OutputOnly Cloud resource name of the consumer of this service.\nFor example 'projects/123456'.", "type": "string" @@ -880,47 +1101,73 @@ "type": "string" }, "name": { - "type": "string", - "description": "Globally unique identifier of this tenancy unit\n\"services/{service}/{collection id}/{resource id}/tenancyUnits/{unit}\"" + "description": "Globally unique identifier of this tenancy unit\n\"services/{service}/{collection id}/{resource id}/tenancyUnits/{unit}\"", + "type": "string" + }, + "tenantResources": { + "description": "Resources constituting the tenancy unit.\nThere can be at most 512 tenant resources in a tenancy unit.", + "type": "array", + "items": { + "$ref": "TenantResource" + } } }, "id": "TenancyUnit", - "description": "Representation of a tenancy unit." + "description": "Representation of a tenancy unit.", + "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.", "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" - }, - "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." + } } }, "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" + } + }, "metricRules": { "description": "List of `MetricRule` definitions, each one mapping a selected method to one\nor more metrics.", "type": "array", "items": { "$ref": "MetricRule" } - }, - "limits": { + } + }, + "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" + }, + "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. For example, `user:{emailId}`,\n`serviceAccount:{emailId}`, `group:{emailId}`.", "type": "array", "items": { - "$ref": "QuotaLimit" - }, - "description": "List of `QuotaLimit` definitions for the service." + "type": "string" + } + }, + "role": { + "description": "Role. (https://cloud.google.com/iam/docs/understanding-roles)\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.", + "type": "string" } }, - "id": "Quota" + "id": "PolicyBinding" }, "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.", @@ -934,51 +1181,32 @@ } }, "billingConfig": { - "$ref": "BillingConfig", - "description": "Billing account properties.\nIt might be specified explicitly, or created from the specified group\nduring provisioning" + "description": "Billing account properties.\nIt might be specified explicitly, or created from the specified group\nduring provisioning", + "$ref": "BillingConfig" }, "tenantProjectPolicy": { - "$ref": "TenantProjectPolicy", - "description": "Describes ownership and policies for the new tenant project. Required." + "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": { - "type": "object", "additionalProperties": { "type": "string" }, - "description": "Labels that will be applied to this project." + "description": "Labels that will be applied to this project.", + "type": "object" }, "serviceAccountConfig": { - "$ref": "ServiceAccountConfig", - "description": "Configuration for IAM service account on tenant project." + "description": "Configuration for IAM service account on tenant project.", + "$ref": "ServiceAccountConfig" } }, "id": "TenantProjectConfig" }, - "PolicyBinding": { - "description": "Translates to IAM Policy bindings (without auditing at this level)", - "type": "object", - "properties": { - "members": { - "type": "array", - "items": { - "type": "string" - }, - "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}`." - }, - "role": { - "description": "Role. (https://cloud.google.com/iam/docs/understanding-roles)\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.", - "type": "string" - } - }, - "id": "PolicyBinding" - }, "LoggingDestination": { - "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 \"/\".", @@ -993,12 +1221,17 @@ } }, "id": "LoggingDestination", - "description": "Configuration of a specific logging destination (the producer project\nor the consumer project)." + "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", "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.", @@ -1006,10 +1239,6 @@ }, "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" @@ -1035,64 +1264,38 @@ }, "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`.", + "Method": { + "description": "Method represents a method of an API interface.", "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." + "responseStreaming": { + "description": "If true, the response is streamed.", + "type": "boolean" }, - "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", + "name": { + "description": "The simple name of this method.", "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`).", + "requestTypeUrl": { + "description": "A URL of the input message type.", "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" + "requestStreaming": { + "description": "If true, the request is streamed.", + "type": "boolean" }, - "displayName": { + "syntax": { + "description": "The source syntax of this method.", "type": "string", - "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." - }, - "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" + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ], + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ] }, - "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" @@ -1103,88 +1306,114 @@ "items": { "$ref": "Option" } + } + }, + "id": "Method" + }, + "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": { + "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" }, - "responseStreaming": { - "description": "If true, the response is streamed.", - "type": "boolean" + "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" + }, + "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" + }, + "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": "The simple name of this method.", + "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" }, - "requestTypeUrl": { - "description": "A URL of the input message type.", + "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" + }, + "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" }, - "requestStreaming": { - "description": "If true, the request is streamed.", - "type": "boolean" + "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" }, - "syntax": { - "enumDescriptions": [ - "Syntax `proto2`.", - "Syntax `proto3`." - ], - "enum": [ - "SYNTAX_PROTO2", - "SYNTAX_PROTO3" - ], - "description": "The source syntax of this method.", + "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": "Method" + "id": "QuotaLimit" }, "Mixin": { - "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", "properties": { - "root": { - "description": "If non-empty specifies a path under which inherited HTTP paths\nare rooted.", - "type": "string" - }, "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'.", + "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": { - "type": "string" + "$ref": "CustomErrorRule" } }, - "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.", + "types": { + "description": "The list of custom error detail types, e.g. 'google.foo.v1.CustomError'.", "type": "array", "items": { - "$ref": "CustomErrorRule" + "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" + "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" } - }, - "fullyDecodeReservedExpansion": { - "type": "boolean", - "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." } }, "id": "Http" @@ -1198,8 +1427,8 @@ "type": "array", "items": { "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" }, "type": "object" } @@ -1208,15 +1437,15 @@ "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": { - "type": "string", - "description": "The service control environment to use. If empty, no control plane\nfeature (like quota and billing) will be enabled." + "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" + "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.", @@ -1227,8 +1456,8 @@ "type": "string" }, "httpHeader": { - "type": "string", - "description": "Define the HTTP header name to use for the parameter. It is case\ninsensitive." + "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.", @@ -1237,73 +1466,39 @@ }, "id": "SystemParameter" }, - "Field": { - "description": "A single field of a message type.", + "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": { - "kind": { - "description": "The field type.", - "type": "string", - "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." - ], - "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" - ] - }, - "jsonName": { - "type": "string", - "description": "The field JSON name." - }, - "options": { - "description": "The protocol buffer options.", + "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": "Option" + "$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": { "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": { + "description": "The field cardinality.", + "type": "string", "enumDescriptions": [ "For fields with unknown cardinality.", "For optional fields.", @@ -1315,13 +1510,11 @@ "CARDINALITY_OPTIONAL", "CARDINALITY_REQUIRED", "CARDINALITY_REPEATED" - ], - "description": "The field cardinality.", - "type": "string" + ] }, "packed": { - "type": "boolean", - "description": "Whether to use alternative packed wire representation." + "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.", @@ -1336,36 +1529,71 @@ "type": "string" }, "number": { - "type": "integer", "description": "The field number.", - "format": "int32" - } - }, - "id": "Field" - }, - "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" - } + "format": "int32", + "type": "integer" }, - "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.", + "jsonName": { + "description": "The field JSON name.", + "type": "string" + }, + "kind": { + "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" + ], + "description": "The field type.", + "type": "string", + "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." + ] + }, + "options": { + "description": "The protocol buffer options.", "type": "array", "items": { - "$ref": "MonitoringDestination" + "$ref": "Option" } } }, - "id": "Monitoring" + "id": "Field" }, "Enum": { - "id": "Enum", "description": "Enum type definition.", "type": "object", "properties": { @@ -1392,8 +1620,6 @@ "description": "The source context." }, "syntax": { - "description": "The source syntax.", - "type": "string", "enumDescriptions": [ "Syntax `proto2`.", "Syntax `proto3`." @@ -1401,16 +1627,24 @@ "enum": [ "SYNTAX_PROTO2", "SYNTAX_PROTO3" - ] + ], + "description": "The source syntax.", + "type": "string" } - } + }, + "id": "Enum" }, "LabelDescriptor": { - "description": "A description of a label.", - "type": "object", "properties": { + "key": { + "description": "The label key.", + "type": "string" + }, + "description": { + "description": "A human-readable description for the label.", + "type": "string" + }, "valueType": { - "type": "string", "enumDescriptions": [ "A variable-length string. This is the default.", "Boolean; true or false.", @@ -1421,23 +1655,34 @@ "BOOL", "INT64" ], - "description": "The type of data that can be assigned to the label." - }, - "key": { - "description": "The label key.", - "type": "string" - }, - "description": { - "description": "A human-readable description for the label.", + "description": "The type of data that can be assigned to the label.", "type": "string" } }, - "id": "LabelDescriptor" + "id": "LabelDescriptor", + "description": "A description of a label.", + "type": "object" }, "Type": { "description": "A protocol buffer message type.", "type": "object", "properties": { + "syntax": { + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ], + "description": "The source syntax.", + "type": "string", + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ] + }, + "sourceContext": { + "description": "The source context.", + "$ref": "SourceContext" + }, "options": { "description": "The protocol buffer options.", "type": "array", @@ -1462,22 +1707,6 @@ "items": { "type": "string" } - }, - "syntax": { - "enumDescriptions": [ - "Syntax `proto2`.", - "Syntax `proto3`." - ], - "enum": [ - "SYNTAX_PROTO2", - "SYNTAX_PROTO3" - ], - "description": "The source syntax.", - "type": "string" - }, - "sourceContext": { - "$ref": "SourceContext", - "description": "The source context." } }, "id": "Type" @@ -1487,8 +1716,8 @@ "type": "object", "properties": { "authorization": { - "$ref": "AuthorizationConfig", - "description": "Authorization configuration." + "description": "Authorization configuration.", + "$ref": "AuthorizationConfig" } }, "id": "Experimental" @@ -1498,11 +1727,11 @@ "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" - }, - "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." + } } }, "id": "Backend" @@ -1545,7 +1774,6 @@ "id": "ServiceAccountConfig" }, "AuthorizationConfig": { - "type": "object", "properties": { "provider": { "description": "The name of the authorization provider, such as\nfirebaserules.googleapis.com.", @@ -1553,10 +1781,20 @@ } }, "id": "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" + "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" }, "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", @@ -1581,37 +1819,36 @@ "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" - } } }, - "id": "ContextRule", - "description": "A context rule provides information about the context for an individual API\nelement.", - "type": "object" + "id": "ContextRule" }, - "Billing": { - "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", + "SourceContext": { + "description": "`SourceContext` represents information about the source of a\nprotobuf element, like the file in which it is defined.", "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" - } + "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" }, "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": { + "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" + }, + "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" @@ -1643,12 +1880,6 @@ ] }, "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." - ], "enum": [ "METRIC_KIND_UNSPECIFIED", "GAUGE", @@ -1656,7 +1887,13 @@ "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": "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.", @@ -1665,52 +1902,25 @@ "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 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" - }, - "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" }, - "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.", + "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": { - "nextPageToken": { - "description": "Pagination token for large results.", - "type": "string" - }, - "tenancyUnits": { - "description": "Tenancy units matching the request.", + "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": "TenancyUnit" + "$ref": "BillingDestination" } } }, - "id": "ListTenancyUnitsResponse" + "id": "Billing" }, "SearchTenancyUnitsResponse": { - "id": "SearchTenancyUnitsResponse", "description": "Response for the search query.", "type": "object", "properties": { @@ -1725,615 +1935,405 @@ "$ref": "TenancyUnit" } } - } - }, - "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`.\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.", - "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": { - "type": "object", - "properties": { - "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" - }, - "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" - } - } }, - "id": "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": "SearchTenancyUnitsResponse" }, - "CustomErrorRule": { - "id": "CustomErrorRule", - "description": "A custom error rule.", + "ListTenancyUnitsResponse": { + "description": "Response for the list request.", "type": "object", "properties": { - "selector": { - "description": "Selects messages to which this rule applies.\n\nRefer to selector for syntax details.", + "nextPageToken": { + "description": "Pagination token for large results.", "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" - } - } - }, - "MonitoredResourceDescriptor": { - "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\"`.", + "tenancyUnits": { + "description": "Tenancy units matching the request.", "type": "array", "items": { - "$ref": "LabelDescriptor" + "$ref": "TenancyUnit" } - }, + } + }, + "id": "ListTenancyUnitsResponse" + }, + "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": { "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}\"`.", + "description": "The canonical name of this endpoint.", "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\"`.", + "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" }, - "description": { - "description": "Optional. A detailed description of the monitored resource type that might\nbe used in documentation.", - "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" + } }, - "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.", - "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": "Service Consumer Management", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/service.management": { - "description": "Manage your Google API service configuration" + "features": { + "description": "The list of features enabled on this endpoint.", + "type": "array", + "items": { + "type": "string" + } }, - "https://www.googleapis.com/auth/cloud-platform": { - "description": "View and manage your data across Google Cloud Platform services" - } - } - } - }, - "rootUrl": "https://serviceconsumermanagement.googleapis.com/", - "ownerDomain": "google.com", - "name": "serviceconsumermanagement", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Service Consumer Management API", - "ownerName": "Google", - "resources": { - "services": { - "methods": { - "search": { - "response": { - "$ref": "SearchTenancyUnitsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "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.\n\nOptional.", - "type": "string" - }, - "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", - "type": "integer", - "location": "query" - }, - "query": { - "location": "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" - }, - "parent": { - "pattern": "^services/[^/]+$", - "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" - } - }, - "flatPath": "v1/services/{servicesId}:search", - "path": "v1/{+parent}:search", - "id": "serviceconsumermanagement.services.search", - "description": "Search tenancy units for a service." + "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" } }, - "resources": { - "tenancyUnits": { - "methods": { - "list": { - "response": { - "$ref": "ListTenancyUnitsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "parameters": { - "parent": { - "pattern": "^services/[^/]+/[^/]+/[^/]+$", - "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" - }, - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/services/{servicesId}/{servicesId1}/{servicesId2}/tenancyUnits", - "path": "v1/{+parent}/tenancyUnits", - "id": "serviceconsumermanagement.services.tenancyUnits.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." - }, - "create": { - "request": { - "$ref": "CreateTenancyUnitRequest" - }, - "description": "Creates a tenancy unit with no tenant resources.", - "response": { - "$ref": "TenancyUnit" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "location": "path", - "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/[^/]+/[^/]+/[^/]+$" - } - }, - "flatPath": "v1/services/{servicesId}/{servicesId1}/{servicesId2}/tenancyUnits", - "path": "v1/{+parent}/tenancyUnits", - "id": "serviceconsumermanagement.services.tenancyUnits.create" - }, - "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" - }, - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Operation" - }, - "parameters": { - "name": { - "location": "path", - "description": "Name of the tenancy unit.\nSuch as 'services/service.googleapis.com/projects/12345/tenancyUnits/abcd'.", - "required": true, - "type": "string", - "pattern": "^services/[^/]+/[^/]+/[^/]+/tenancyUnits/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/services/{servicesId}/{servicesId1}/{servicesId2}/tenancyUnits/{tenancyUnitsId}:removeProject", - "id": "serviceconsumermanagement.services.tenancyUnits.removeProject", - "path": "v1/{+name}:removeProject" - }, - "delete": { - "path": "v1/{+name}", - "id": "serviceconsumermanagement.services.tenancyUnits.delete", - "description": "Delete a tenancy unit. Before the tenancy unit is deleted, there should be\nno tenant resources in it.\nOperation\u003cresponse: Empty\u003e.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "description": "Name of the tenancy unit to be deleted.", - "required": true, - "type": "string", - "pattern": "^services/[^/]+/[^/]+/[^/]+/tenancyUnits/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/services/{servicesId}/{servicesId1}/{servicesId2}/tenancyUnits/{tenancyUnitsId}" - }, - "addProject": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "parent": { - "description": "Name of the tenancy unit.", - "required": true, - "type": "string", - "pattern": "^services/[^/]+/[^/]+/[^/]+/tenancyUnits/[^/]+$", - "location": "path" - } - }, - "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 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." - } + "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": { + "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" + } + }, + "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" } } - } + }, + "id": "Usage" }, - "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", - "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 to be cancelled.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/operations/{operationsId}:cancel", - "path": "v1/{+name}:cancel", - "id": "serviceconsumermanagement.operations.cancel" + "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.", + "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": { + "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" }, - "delete": { - "flatPath": "v1/operations/{operationsId}", - "id": "serviceconsumermanagement.operations.delete", - "path": "v1/{+name}", - "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`.", - "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "name": { - "location": "path", - "description": "The name of the operation resource to be deleted.", - "required": true, - "type": "string", - "pattern": "^operations/.+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ] + "description": { + "description": "A human-readable description of this log. This information appears in\nthe documentation and can contain details.", + "type": "string" }, - "list": { - "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": { - "type": "string", - "location": "query", - "description": "The standard list filter." - }, - "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": { - "type": "integer", - "location": "query", - "description": "The standard list page size.", - "format": "int32" - } - }, - "flatPath": "v1/operations" + "displayName": { + "description": "The human-readable name for this log. This information appears on\nthe user interface and should be concise.", + "type": "string" }, - "get": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "description": "The name of the operation resource.", - "required": true, - "type": "string", - "pattern": "^operations/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], - "flatPath": "v1/operations/{operationsId}", - "path": "v1/{+name}", - "id": "serviceconsumermanagement.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." + "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" + } + } + }, + "id": "LogDescriptor" + }, + "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" + }, + "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" + }, + "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": { + "useDirectDownload": { + "description": "A boolean that determines if direct download from ESF should be used for\ndownload of this media.", + "type": "boolean" + }, + "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" } - } - } - }, - "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": { - "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": { - "description": "JSONP", - "type": "string", - "location": "query" + }, + "id": "MediaDownload" }, - "$.xgafv": { - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ], - "description": "V1 error format." + "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": { + "selector": { + "description": "Selects the API elements to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + }, + "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" + } + }, + "id": "AuthorizationRule" }, - "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" + "MediaUpload": { + "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" + }, + "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" + }, + "progressNotification": { + "description": "Whether to receive a notification for progress changes of media upload.", + "type": "boolean" + }, + "enabled": { + "description": "Whether upload is enabled.", + "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", + "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" }, - "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." + "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" + } + }, + "id": "CreateTenancyUnitRequest", + "description": "Request to create a tenancy unit for a consumer of a service.", + "type": "object" }, - "access_token": { - "description": "OAuth access token.", - "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 `{}`.", + "type": "object", + "properties": {}, + "id": "Empty" }, - "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" + "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" }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" + "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" }, - "bearer_token": { - "type": "string", - "location": "query", - "description": "OAuth bearer token." + "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" }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" + "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\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(== 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" } }, - "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": "20180506", - "discoveryVersion": "v1", - "version_module": true + "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": "Service Consumer Management", + "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" + } + } + } + }, + "rootUrl": "https://serviceconsumermanagement.googleapis.com/", + "ownerDomain": "google.com", + "name": "serviceconsumermanagement", + "batchPath": "batch" } diff --git a/DiscoveryJson/servicecontrol_v1.json b/DiscoveryJson/servicecontrol_v1.json index d48138efa4..c469888913 100644 --- a/DiscoveryJson/servicecontrol_v1.json +++ b/DiscoveryJson/servicecontrol_v1.json @@ -1,1148 +1,1144 @@ { - "baseUrl": "https://servicecontrol.googleapis.com/", - "kind": "discovery#restDescription", - "description": "Google Service Control provides control plane functionality to managed services, such as logging, monitoring, and status checks.", - "servicePath": "", "basePath": "", - "revision": "20180430", - "documentationLink": "https://cloud.google.com/service-control/", "id": "servicecontrol:v1", + "documentationLink": "https://cloud.google.com/service-control/", + "revision": "20180507", "discoveryVersion": "v1", "version_module": true, "schemas": { - "QuotaOperation": { - "description": "Represents information regarding a quota operation.", - "type": "object", + "ReleaseQuotaRequest": { "properties": { - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "Labels describing the operation.", - "type": "object" + "releaseOperation": { + "$ref": "QuotaOperation", + "description": "Operation that describes the quota release." }, - "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.", + "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", + "description": "Request message for the ReleaseQuota method.", + "type": "object" + }, + "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" }, - "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": { + "description": "Free-form text that provides details on the cause of the error.", "type": "string" }, - "quotaMode": { - "description": "Quota mode for this operation.", - "type": "string", - "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." - ], + "code": { "enum": [ "UNSPECIFIED", - "NORMAL", - "BEST_EFFORT", - "CHECK_ONLY" + "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" + ], + "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." ] - }, - "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" - }, - "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", - "items": { - "$ref": "MetricValueSet" - } } }, - "id": "QuotaOperation" + "id": "QuotaError" }, - "EndReconciliationRequest": { - "description": "Request message for QuotaController.EndReconciliation.", - "type": "object", + "RequestMetadata": { "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.", + "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" }, - "reconciliationOperation": { - "$ref": "QuotaOperation", - "description": "Operation that describes the quota reconciliation." - } - }, - "id": "EndReconciliationRequest" - }, - "ReportInfo": { - "properties": { - "operationId": { - "description": "The Operation.operation_id value from the request.", + "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" }, - "quotaInfo": { - "description": "Quota usage info when processing the `Operation`.", - "$ref": "QuotaInfo" + "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": "ReportInfo", - "description": "Contains additional info about the report operation.", + "id": "RequestMetadata", + "description": "Metadata about the request.", "type": "object" }, - "ReportResponse": { - "description": "Response message for the Report method.", - "type": "object", + "CheckInfo": { "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.", - "type": "array", - "items": { - "$ref": "ReportError" - } - }, - "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", + "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": { - "$ref": "ReportInfo" + "type": "string" } }, - "serviceConfigId": { - "description": "The actual config id used to process the request.", - "type": "string" + "consumerInfo": { + "description": "Consumer info of this check.", + "$ref": "ConsumerInfo" } }, - "id": "ReportResponse" + "id": "CheckInfo", + "description": "Contains additional information about the check operation.", + "type": "object" }, - "Operation": { + "ReleaseQuotaResponse": { + "description": "Response message for the ReleaseQuota method.", + "type": "object", "properties": { - "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" - }, - "resources": { - "description": "The resources that are involved in the operation.\nThe maximum supported number of entries in this field is 100.", - "type": "array", - "items": { - "$ref": "ResourceInfo" - } - }, - "logEntries": { - "description": "Represents information to be logged.", + "releaseErrors": { + "description": "Indicates the decision of the release.", "type": "array", "items": { - "$ref": "LogEntry" + "$ref": "QuotaError" } }, - "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.", + "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" } }, - "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" - }, - "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.", + "description": "The same operation_id value used in the ReleaseQuotaRequest. Used for\nlogging and diagnostics purposes.", "type": "string" }, - "operationName": { - "description": "Fully qualified name of the operation. Reserved for future use.", + "serviceConfigId": { + "description": "ID of the actual config used to process the request.", "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", + } + }, + "id": "ReleaseQuotaResponse" + }, + "AllocateQuotaRequest": { + "description": "Request message for the AllocateQuota method.", + "type": "object", + "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" }, - "startTime": { - "description": "Required. Start time of the operation.", - "format": "google-datetime", + "allocateOperation": { + "$ref": "QuotaOperation", + "description": "Operation that describes the quota allocation." + } + }, + "id": "AllocateQuotaRequest" + }, + "MetricValueSet": { + "properties": { + "metricName": { + "description": "The metric name defined in the service configuration.", "type": "string" }, - "importance": { - "enum": [ - "LOW", - "HIGH", - "DEBUG" - ], - "description": "DO NOT USE. This is an experimental field.", - "type": "string", - "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." - ] - }, - "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" + "metricValues": { + "description": "The values in this metric.", + "type": "array", + "items": { + "$ref": "MetricValue" + } } }, - "id": "Operation", - "description": "Represents information regarding an operation.", + "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" }, - "CheckResponse": { - "description": "Response message for the Check method.", - "type": "object", + "ReportError": { "properties": { "operationId": { - "description": "The same operation_id value used in the CheckRequest.\nUsed for logging and diagnostics purposes.", + "description": "The Operation.operation_id value from the request.", "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" + "status": { + "$ref": "Status", + "description": "Details of the error when processing the Operation." } }, - "id": "CheckResponse" + "id": "ReportError", + "description": "Represents the processing error of one Operation in the request.", + "type": "object" }, - "Status": { + "CheckError": { "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" - } - } + "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 status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" + "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.", + "The consumer doesn't have access to the specified resource.\nSame as google.rpc.Code.PERMISSION_DENIED.", + "Quota check failed. Same as google.rpc.Code.RESOURCE_EXHAUSTED.", + "Budget check failed.", + "The consumer's request has been flagged as a DoS attack.", + "The consumer's request should be rejected in order to protect the service\nfrom being overloaded.", + "The consumer has been flagged as an abuser.", + "The consumer hasn't activated the service.", + "The consumer cannot access the service due to visibility configuration.", + "The consumer cannot access the service because billing is disabled.", + "The consumer's project has been marked as deleted (soft deletion).", + "The consumer's project number or id does not represent a valid project.", + "The IP address of the consumer is invalid for the specific consumer\nproject.", + "The referer address of the consumer request is invalid for the specific\nconsumer project.", + "The client application of the consumer request is invalid for the\nspecific consumer project.", + "The API targeted by this request is invalid for the specified consumer\nproject.", + "The consumer's API key is invalid.", + "The consumer's API Key has expired.", + "The consumer's API Key was not found in config record.", + "The consumer's spatula header is invalid.", + "The consumer's LOAS role is invalid.", + "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.", + "The backend server for checking quota limits is unavailable.", + "The Spanner for looking up LOAS project is unavailable.", + "Cloud Resource Manager backend server is unavailable.", + "Backend server for evaluating security policy is unavailable." + ], + "enum": [ + "ERROR_CODE_UNSPECIFIED", + "NOT_FOUND", + "PERMISSION_DENIED", + "RESOURCE_EXHAUSTED", + "BUDGET_EXCEEDED", + "DENIAL_OF_SERVICE_DETECTED", + "LOAD_SHEDDING", + "ABUSER_DETECTED", + "SERVICE_NOT_ACTIVATED", + "VISIBILITY_DENIED", + "BILLING_DISABLED", + "PROJECT_DELETED", + "PROJECT_INVALID", + "IP_ADDRESS_BLOCKED", + "REFERER_BLOCKED", + "CLIENT_APP_BLOCKED", + "API_TARGET_BLOCKED", + "API_KEY_INVALID", + "API_KEY_EXPIRED", + "API_KEY_NOT_FOUND", + "SPATULA_HEADER_INVALID", + "LOAS_ROLE_INVALID", + "NO_LOAS_PROJECT", + "LOAS_PROJECT_DISABLED", + "SECURITY_POLICY_VIOLATED", + "INVALID_CREDENTIAL", + "NAMESPACE_LOOKUP_UNAVAILABLE", + "SERVICE_STATUS_UNAVAILABLE", + "BILLING_STATUS_UNAVAILABLE", + "QUOTA_CHECK_UNAVAILABLE", + "LOAS_PROJECT_LOOKUP_UNAVAILABLE", + "CLOUD_RESOURCE_MANAGER_BACKEND_UNAVAILABLE", + "SECURITY_POLICY_BACKEND_UNAVAILABLE" + ], + "description": "The error code.", + "type": "string" }, - "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.", + "detail": { + "description": "Free-form text providing details on the error cause of the error.", "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.", + "id": "CheckError", + "description": "Defines the errors to be returned in\ngoogle.api.servicecontrol.v1.CheckResponse.check_errors.", "type": "object" }, - "ReportRequest": { + "StartReconciliationRequest": { "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" - } + "reconciliationOperation": { + "$ref": "QuotaOperation", + "description": "Operation that describes the quota reconciliation." }, "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.", + "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": "ReportRequest", - "description": "Request message for the Report method.", + "id": "StartReconciliationRequest", + "description": "Request message for QuotaController.StartReconciliation.", "type": "object" }, - "AllocateInfo": { + "QuotaInfo": { + "description": "Contains the quota information for a quota check response.", + "type": "object", "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.", + "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" + } + }, + "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", "items": { "type": "string" } } }, - "id": "AllocateInfo", - "type": "object" + "id": "QuotaInfo" }, - "AuditLog": { - "description": "Common audit log format for Google Cloud Platform API operations.\n\n", + "ConsumerInfo": { + "description": "`ConsumerInfo` provides information about the consumer project.", "type": "object", "properties": { - "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": { - "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" + "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" + }, + "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" }, - "requestMetadata": { - "description": "Metadata about the operation.", - "$ref": "RequestMetadata" + "operation": { + "$ref": "Operation", + "description": "The operation to be checked." }, - "status": { - "description": "The status of the overall operation.", - "$ref": "Status" + "requestProjectSettings": { + "description": "Requests the project settings to be returned as part of the check response.", + "type": "boolean" }, - "authenticationInfo": { - "$ref": "AuthenticationInfo", - "description": "Authentication information." + "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" + } + }, + "id": "CheckRequest", + "description": "Request message for the Check method.", + "type": "object" + }, + "QuotaOperation": { + "properties": { + "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" }, - "serviceName": { - "description": "The name of the API service performing the operation. For example,\n`\"datastore.googleapis.com\"`.", + "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" }, - "response": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "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" + "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", + "items": { + "$ref": "MetricValueSet" + } }, - "metadata": { + "labels": { "additionalProperties": { - "description": "Properties of the object.", - "type": "any" + "type": "string" }, - "description": "Other service-specific data about the request, response, and other\ninformation associated with the current audited event.", + "description": "Labels describing the operation.", "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\"", + "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" }, - "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\"", + "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" + } + }, + "id": "QuotaOperation", + "description": "Represents information regarding a quota operation.", + "type": "object" + }, + "EndReconciliationRequest": { + "properties": { + "reconciliationOperation": { + "description": "Operation that describes the quota reconciliation.", + "$ref": "QuotaOperation" }, - "serviceData": { - "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" - } - }, - "numResponseItems": { - "description": "The number of items returned from a List or Query API method,\nif applicable.", - "format": "int64", + "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": "AuditLog" + "id": "EndReconciliationRequest", + "description": "Request message for QuotaController.EndReconciliation.", + "type": "object" }, - "LogEntry": { - "description": "An individual log entry.", + "ReportInfo": { + "description": "Contains additional info about the report operation.", "type": "object", "properties": { - "labels": { - "additionalProperties": { - "type": "string" - }, - "description": "A set of user-defined (key, value) data that provides additional\ninformation about the log entry.", - "type": "object" - }, - "severity": { - "description": "The severity of the log entry. The default value is\n`LogSeverity.DEFAULT`.", - "type": "string", - "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" - ] - }, - "name": { - "description": "Required. The log to which this log entry belongs. Examples: `\"syslog\"`,\n`\"book_log\"`.", - "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": { - "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).", + "operationId": { + "description": "The Operation.operation_id value from the request.", "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" + "quotaInfo": { + "description": "Quota usage info when processing the `Operation`.", + "$ref": "QuotaInfo" } }, - "id": "LogEntry" + "id": "ReportInfo" }, - "MetricValue": { - "description": "Represents a single metric value.", - "type": "object", + "Operation": { "properties": { - "doubleValue": { - "description": "A double precision floating point value.", - "format": "double", - "type": "number" + "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." }, - "int64Value": { - "description": "A signed 64-bit integer value.", - "format": "int64", + "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" }, - "distributionValue": { - "$ref": "Distribution", - "description": "A distribution value." + "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" }, - "boolValue": { - "description": "A boolean value.", - "type": "boolean" + "operationName": { + "description": "Fully qualified name of the operation. Reserved for future use.", + "type": "string" }, "endTime": { - "description": "The end of the time period over which this metric value's measurement\napplies.", + "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": "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.", + "description": "Required. Start time of the operation.", "format": "google-datetime", "type": "string" }, - "moneyValue": { - "description": "A money value.", - "$ref": "Money" + "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" }, - "description": "The labels describing the metric value.\nSee comments on google.api.servicecontrol.v1.Operation.labels for\nthe overriding relationship.", + "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" }, - "stringValue": { - "description": "A text string value.", - "type": "string" - } - }, - "id": "MetricValue" - }, - "EndReconciliationResponse": { - "description": "Response message for QuotaController.EndReconciliation.", - "type": "object", - "properties": { - "operationId": { - "description": "The same operation_id value used in the EndReconciliationRequest. Used for\nlogging and diagnostics purposes.", - "type": "string" + "resources": { + "description": "The resources that are involved in the operation.\nThe maximum supported number of entries in this field is 100.", + "type": "array", + "items": { + "$ref": "ResourceInfo" + } }, - "reconciliationErrors": { - "description": "Indicates the decision of the reconciliation end.", + "logEntries": { + "description": "Represents information to be logged.", "type": "array", "items": { - "$ref": "QuotaError" + "$ref": "LogEntry" } }, - "serviceConfigId": { - "description": "ID of the actual config used to process the request.", - "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" }, - "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.", + "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" } } }, - "id": "EndReconciliationResponse" + "id": "Operation", + "description": "Represents information regarding an operation.", + "type": "object" }, - "Money": { - "description": "Represents an amount of money with its currency type.", + "ReportResponse": { + "description": "Response message for the Report method.", "type": "object", "properties": { - "currencyCode": { - "description": "The 3-letter currency code defined in ISO 4217.", - "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" + } }, - "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" + "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" + } }, - "units": { - "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.", - "format": "int64", + "serviceConfigId": { + "description": "The actual config id used to process the request.", "type": "string" } }, - "id": "Money" + "id": "ReportResponse" }, - "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", + "CheckResponse": { "properties": { - "exponentialBuckets": { - "$ref": "ExponentialBuckets", - "description": "Buckets with exponentially growing width." - }, - "minimum": { - "description": "The minimum of the population of values. Ignored if `count` is zero.", - "format": "double", - "type": "number" - }, - "linearBuckets": { - "$ref": "LinearBuckets", - "description": "Buckets with constant width." - }, - "count": { - "description": "The total number of samples in the distribution. Must be \u003e= 0.", - "format": "int64", + "operationId": { + "description": "The same operation_id value used in the CheckRequest.\nUsed for logging and diagnostics purposes.", "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.", + "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": { - "format": "int64", - "type": "string" + "$ref": "CheckError" } }, - "explicitBuckets": { - "$ref": "ExplicitBuckets", - "description": "Buckets with arbitrary user-provided width." + "checkInfo": { + "description": "Feedback data returned from the server during processing a Check request.", + "$ref": "CheckInfo" }, - "maximum": { - "description": "The maximum of the population of values. Ignored if `count` is zero.", - "format": "double", - "type": "number" + "quotaInfo": { + "description": "Quota information for the check request associated with this response.\n", + "$ref": "QuotaInfo" }, - "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" + "serviceConfigId": { + "description": "The actual config id used to process the request.", + "type": "string" } }, - "id": "Distribution" + "id": "CheckResponse", + "description": "Response message for the Check method.", + "type": "object" }, - "ExplicitBuckets": { - "description": "Describing buckets with arbitrary user-provided width.", + "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": { - "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", + "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": { - "format": "double", - "type": "number" + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" } - } - }, - "id": "ExplicitBuckets" - }, - "ExponentialBuckets": { - "description": "Describing buckets with exponentially growing width.", - "type": "object", - "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.", + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", "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" + "id": "Status" }, - "AuthorizationInfo": { + "ReportRequest": { + "description": "Request message for the Report method.", + "type": "object", "properties": { - "resource": { - "description": "The resource being accessed, as a REST-style string. For example:\n\n bigquery.googleapis.com/projects/PROJECTID/datasets/DATASETID", - "type": "string" - }, - "granted": { - "description": "Whether or not authorization for `resource` and `permission`\nwas granted.", - "type": "boolean" + "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" + } }, - "permission": { - "description": "The required IAM permission.", + "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": "AuthorizationInfo", - "description": "Authorization information for the operation.", - "type": "object" + "id": "ReportRequest" }, - "ResourceInfo": { - "description": "Describes a resource associated with this operation.", + "AllocateInfo": { "type": "object", "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" + "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" + } } }, - "id": "ResourceInfo" + "id": "AllocateInfo" }, - "StartReconciliationResponse": { - "description": "Response message for QuotaController.StartReconciliation.", - "type": "object", + "AuditLog": { "properties": { - "operationId": { - "description": "The same operation_id value used in the StartReconciliationRequest. Used\nfor logging and diagnostics purposes.", + "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" + }, + "numResponseItems": { + "description": "The number of items returned from a List or Query API method,\nif applicable.", + "format": "int64", "type": "string" }, - "reconciliationErrors": { - "description": "Indicates the decision of the reconciliation start.", + "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": "QuotaError" + "$ref": "AuthorizationInfo" } }, - "serviceConfigId": { - "description": "ID of the actual config used to process the request.", + "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." + }, + "authenticationInfo": { + "$ref": "AuthenticationInfo", + "description": "Authentication information." + }, + "status": { + "description": "The status of the overall operation.", + "$ref": "Status" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "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" + }, + "serviceName": { + "description": "The name of the API service performing the operation. For example,\n`\"datastore.googleapis.com\"`.", "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\"", - "type": "array", - "items": { - "$ref": "MetricValueSet" - } + "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" + }, + "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" } }, - "id": "StartReconciliationResponse" + "id": "AuditLog", + "description": "Common audit log format for Google Cloud Platform API operations.\n\n", + "type": "object" }, - "QuotaProperties": { - "description": "Represents the properties needed for quota operations.", + "LogEntry": { + "description": "An individual log entry.", "type": "object", "properties": { - "quotaMode": { + "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.", + "type": "object" + }, + "severity": { "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." + "(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": [ - "ACQUIRE", - "ACQUIRE_BEST_EFFORT", - "CHECK", - "RELEASE" + "DEFAULT", + "DEBUG", + "INFO", + "NOTICE", + "WARNING", + "ERROR", + "CRITICAL", + "ALERT", + "EMERGENCY" ], - "description": "Quota mode for this operation.", + "description": "The severity of the log entry. The default value is\n`LogSeverity.DEFAULT`.", "type": "string" - } - }, - "id": "QuotaProperties" - }, - "LinearBuckets": { - "description": "Describing buckets with constant width.", - "type": "object", - "properties": { - "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" + "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" }, - "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" - } - }, - "id": "LinearBuckets" - }, - "AuthenticationInfo": { - "properties": { - "authoritySelector": { - "description": "The authority selector specified by the requestor, if any.\nIt is not guaranteed that the principal was allowed to use this authority.", + "name": { + "description": "Required. The log to which this log entry belongs. Examples: `\"syslog\"`,\n`\"book_log\"`.", "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", + "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" }, - "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.", + "textPayload": { + "description": "The log entry payload, represented as a Unicode string (UTF-8).", "type": "string" } }, - "id": "AuthenticationInfo", - "description": "Authentication information for the operation.", - "type": "object" + "id": "LogEntry" }, - "AllocateQuotaResponse": { - "description": "Response message for the AllocateQuota method.", + "MetricValue": { + "description": "Represents a single metric value.", "type": "object", "properties": { - "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" - } - }, - "operationId": { - "description": "The same operation_id value used in the AllocateQuotaRequest. Used for\nlogging and diagnostics purposes.", + "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" }, - "serviceConfigId": { - "description": "ID of the actual config used to process the request.", - "type": "string" + "moneyValue": { + "description": "A money value.", + "$ref": "Money" }, - "allocateInfo": { - "$ref": "AllocateInfo", - "description": "WARNING: DO NOT use this field until this warning message is removed." + "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" }, - "allocateErrors": { - "description": "Indicates the decision of the allocate.", - "type": "array", - "items": { - "$ref": "QuotaError" - } - } - }, - "id": "AllocateQuotaResponse" - }, - "ReleaseQuotaRequest": { - "description": "Request message for the ReleaseQuota method.", - "type": "object", - "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.", + "stringValue": { + "description": "A text string value.", "type": "string" }, - "releaseOperation": { - "$ref": "QuotaOperation", - "description": "Operation that describes the quota release." - } - }, - "id": "ReleaseQuotaRequest" - }, - "RequestMetadata": { - "description": "Metadata about the request.", - "type": "object", - "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" + "doubleValue": { + "description": "A double precision floating point value.", + "format": "double", + "type": "number" }, - "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", + "int64Value": { + "description": "A signed 64-bit integer value.", + "format": "int64", "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" - } - }, - "id": "RequestMetadata" - }, - "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" + "distributionValue": { + "description": "A distribution value.", + "$ref": "Distribution" }, - "description": { - "description": "Free-form text that provides details on the cause of the error.", - "type": "string" + "boolValue": { + "description": "A boolean value.", + "type": "boolean" }, - "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" - ] + "endTime": { + "description": "The end of the time period over which this metric value's measurement\napplies.", + "format": "google-datetime", + "type": "string" } }, - "id": "QuotaError" + "id": "MetricValue" }, - "CheckInfo": { - "description": "Contains additional information about the check operation.", + "Money": { + "description": "Represents an amount of money with its currency type.", "type": "object", "properties": { - "consumerInfo": { - "$ref": "ConsumerInfo", - "description": "Consumer info of this check." + "currencyCode": { + "description": "The 3-letter currency code defined in ISO 4217.", + "type": "string" }, - "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" - } - } - }, - "id": "CheckInfo" - }, - "AllocateQuotaRequest": { - "properties": { - "allocateOperation": { - "$ref": "QuotaOperation", - "description": "Operation that describes the quota allocation." + "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" }, - "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.", + "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": "AllocateQuotaRequest", - "description": "Request message for the AllocateQuota method.", - "type": "object" + "id": "Money" }, - "ReleaseQuotaResponse": { - "description": "Response message for the ReleaseQuota method.", + "EndReconciliationResponse": { + "description": "Response message for QuotaController.EndReconciliation.", "type": "object", "properties": { - "releaseErrors": { - "description": "Indicates the decision of the release.", - "type": "array", - "items": { - "$ref": "QuotaError" - } - }, "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\"", + "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 ReleaseQuotaRequest. Used for\nlogging and diagnostics purposes.", + "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": "ReleaseQuotaResponse" + "id": "EndReconciliationResponse" }, - "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.", + "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": { - "metricName": { - "description": "The metric name defined in the service configuration.", + "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" + }, + "count": { + "description": "The total number of samples in the distribution. Must be \u003e= 0.", + "format": "int64", "type": "string" }, - "metricValues": { - "description": "The values in this metric.", + "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": { - "$ref": "MetricValue" + "format": "int64", + "type": "string" } + }, + "explicitBuckets": { + "$ref": "ExplicitBuckets", + "description": "Buckets with arbitrary user-provided width." + }, + "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": "MetricValueSet" + "id": "Distribution" }, - "ReportError": { - "description": "Represents the processing error of one Operation in the request.", + "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" + }, + "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" + } + }, + "id": "ExponentialBuckets", + "description": "Describing buckets with exponentially growing width.", + "type": "object" + }, + "AuthorizationInfo": { + "description": "Authorization information for the operation.", "type": "object", "properties": { - "status": { - "$ref": "Status", - "description": "Details of the error when processing the Operation." + "granted": { + "description": "Whether or not authorization for `resource` and `permission`\nwas granted.", + "type": "boolean" }, - "operationId": { - "description": "The Operation.operation_id value from the request.", + "permission": { + "description": "The required IAM permission.", + "type": "string" + }, + "resource": { + "description": "The resource being accessed, as a REST-style string. For example:\n\n bigquery.googleapis.com/projects/PROJECTID/datasets/DATASETID", "type": "string" } }, - "id": "ReportError" + "id": "AuthorizationInfo" }, - "StartReconciliationRequest": { - "description": "Request message for QuotaController.StartReconciliation.", - "type": "object", + "ResourceInfo": { "properties": { - "reconciliationOperation": { - "description": "Operation that describes the quota reconciliation.", - "$ref": "QuotaOperation" + "resourceName": { + "description": "Name of the resource. This is used for auditing purposes.", + "type": "string" }, - "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.", + "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": "StartReconciliationRequest" + "id": "ResourceInfo", + "description": "Describes a resource associated with this operation.", + "type": "object" }, - "CheckError": { - "description": "Defines the errors to be returned in\ngoogle.api.servicecontrol.v1.CheckResponse.check_errors.", - "type": "object", + "StartReconciliationResponse": { "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”", + "operationId": { + "description": "The same operation_id value used in the StartReconciliationRequest. Used\nfor logging and diagnostics purposes.", "type": "string" }, - "code": { + "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" + }, + "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" + } + } + }, + "id": "StartReconciliationResponse", + "description": "Response message for QuotaController.StartReconciliation.", + "type": "object" + }, + "QuotaProperties": { + "properties": { + "quotaMode": { "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.", - "The consumer doesn't have access to the specified resource.\nSame as google.rpc.Code.PERMISSION_DENIED.", - "Quota check failed. Same as google.rpc.Code.RESOURCE_EXHAUSTED.", - "Budget check failed.", - "The consumer's request has been flagged as a DoS attack.", - "The consumer's request should be rejected in order to protect the service\nfrom being overloaded.", - "The consumer has been flagged as an abuser.", - "The consumer hasn't activated the service.", - "The consumer cannot access the service due to visibility configuration.", - "The consumer cannot access the service because billing is disabled.", - "The consumer's project has been marked as deleted (soft deletion).", - "The consumer's project number or id does not represent a valid project.", - "The IP address of the consumer is invalid for the specific consumer\nproject.", - "The referer address of the consumer request is invalid for the specific\nconsumer project.", - "The client application of the consumer request is invalid for the\nspecific consumer project.", - "The API targeted by this request is invalid for the specified consumer\nproject.", - "The consumer's API key is invalid.", - "The consumer's API Key has expired.", - "The consumer's API Key was not found in config record.", - "The consumer's spatula header is invalid.", - "The consumer's LOAS role is invalid.", - "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.", - "The backend server for checking quota limits is unavailable.", - "The Spanner for looking up LOAS project is unavailable.", - "Cloud Resource Manager backend server is unavailable.", - "Backend server for evaluating security policy is unavailable." + "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": [ - "ERROR_CODE_UNSPECIFIED", - "NOT_FOUND", - "PERMISSION_DENIED", - "RESOURCE_EXHAUSTED", - "BUDGET_EXCEEDED", - "DENIAL_OF_SERVICE_DETECTED", - "LOAD_SHEDDING", - "ABUSER_DETECTED", - "SERVICE_NOT_ACTIVATED", - "VISIBILITY_DENIED", - "BILLING_DISABLED", - "PROJECT_DELETED", - "PROJECT_INVALID", - "IP_ADDRESS_BLOCKED", - "REFERER_BLOCKED", - "CLIENT_APP_BLOCKED", - "API_TARGET_BLOCKED", - "API_KEY_INVALID", - "API_KEY_EXPIRED", - "API_KEY_NOT_FOUND", - "SPATULA_HEADER_INVALID", - "LOAS_ROLE_INVALID", - "NO_LOAS_PROJECT", - "LOAS_PROJECT_DISABLED", - "SECURITY_POLICY_VIOLATED", - "INVALID_CREDENTIAL", - "NAMESPACE_LOOKUP_UNAVAILABLE", - "SERVICE_STATUS_UNAVAILABLE", - "BILLING_STATUS_UNAVAILABLE", - "QUOTA_CHECK_UNAVAILABLE", - "LOAS_PROJECT_LOOKUP_UNAVAILABLE", - "CLOUD_RESOURCE_MANAGER_BACKEND_UNAVAILABLE", - "SECURITY_POLICY_BACKEND_UNAVAILABLE" - ], - "description": "The error code.", - "type": "string" - }, - "detail": { - "description": "Free-form text providing details on the error cause of the error.", + "ACQUIRE", + "ACQUIRE_BEST_EFFORT", + "CHECK", + "RELEASE" + ], + "description": "Quota mode for this operation.", "type": "string" } }, - "id": "CheckError" + "id": "QuotaProperties", + "description": "Represents the properties needed for quota operations.", + "type": "object" }, - "QuotaInfo": { - "description": "Contains the quota information for a quota check response.", + "LinearBuckets": { + "description": "Describing buckets with constant width.", "type": "object", "properties": { - "quotaConsumed": { - "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", - "additionalProperties": { - "format": "int32", - "type": "integer" - } + "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" }, - "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" - } + "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" }, - "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", - "items": { - "type": "string" - } + "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": "QuotaInfo" + "id": "LinearBuckets" }, - "ConsumerInfo": { - "description": "`ConsumerInfo` provides information about the consumer project.", - "type": "object", + "AuthenticationInfo": { "properties": { - "projectNumber": { - "description": "The Google cloud project number, e.g. 1234567890. A value of 0 indicates\nno project number is found.", - "format": "int64", + "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": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "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" + }, + "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" } }, - "id": "ConsumerInfo" + "id": "AuthenticationInfo", + "description": "Authentication information for the operation.", + "type": "object" }, - "CheckRequest": { - "description": "Request message for the Check method.", - "type": "object", + "AllocateQuotaResponse": { "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" + "allocateErrors": { + "description": "Indicates the decision of the allocate.", + "type": "array", + "items": { + "$ref": "QuotaError" + } }, - "operation": { - "description": "The operation to be checked.", - "$ref": "Operation" + "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" + } }, - "requestProjectSettings": { - "description": "Requests the project settings to be returned as part of the check response.", - "type": "boolean" + "operationId": { + "description": "The same operation_id value used in the AllocateQuotaRequest. Used for\nlogging and diagnostics purposes.", + "type": "string" }, "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.", + "description": "ID of the actual config used to process the request.", "type": "string" + }, + "allocateInfo": { + "description": "WARNING: DO NOT use this field until this warning message is removed.", + "$ref": "AllocateInfo" } }, - "id": "CheckRequest" + "id": "AllocateQuotaResponse", + "description": "Response message for the AllocateQuota method.", + "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" }, + "protocol": "rest", "canonicalName": "Service Control", "auth": { "oauth2": { @@ -1167,31 +1163,31 @@ "services": { "methods": { "startReconciliation": { - "flatPath": "v1/services/{serviceName}:startReconciliation", - "path": "v1/services/{serviceName}:startReconciliation", - "id": "servicecontrol.services.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" - }, + "httpMethod": "POST", "parameterOrder": [ "serviceName" ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/servicecontrol" - ], + "response": { + "$ref": "StartReconciliationResponse" + }, "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", - "location": "path" + "type": "string" } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/servicecontrol" + ], + "flatPath": "v1/services/{serviceName}:startReconciliation", + "id": "servicecontrol.services.startReconciliation", + "path": "v1/services/{serviceName}: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).", + "request": { + "$ref": "StartReconciliationRequest" } }, "check": { @@ -1223,12 +1219,6 @@ "id": "servicecontrol.services.check" }, "releaseQuota": { - "path": "v1/services/{serviceName}:releaseQuota", - "id": "servicecontrol.services.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" }, @@ -1238,17 +1228,23 @@ "httpMethod": "POST", "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", - "location": "path" + "type": "string" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/servicecontrol" ], - "flatPath": "v1/services/{serviceName}:releaseQuota" + "flatPath": "v1/services/{serviceName}:releaseQuota", + "path": "v1/services/{serviceName}:releaseQuota", + "id": "servicecontrol.services.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" + } }, "endReconciliation": { "response": { @@ -1260,10 +1256,10 @@ "httpMethod": "POST", "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", - "location": "path" + "type": "string" } }, "scopes": [ @@ -1279,6 +1275,12 @@ } }, "report": { + "path": "v1/services/{serviceName}:report", + "id": "servicecontrol.services.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" }, @@ -1292,34 +1294,32 @@ ], "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" + "type": "string", + "location": "path" } }, - "flatPath": "v1/services/{serviceName}:report", - "path": "v1/services/{serviceName}:report", - "id": "servicecontrol.services.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)." + "flatPath": "v1/services/{serviceName}:report" }, "allocateQuota": { - "response": { - "$ref": "AllocateQuotaResponse" + "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.", + "request": { + "$ref": "AllocateQuotaRequest" }, + "httpMethod": "POST", "parameterOrder": [ "serviceName" ], - "httpMethod": "POST", + "response": { + "$ref": "AllocateQuotaResponse" + }, "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" + "type": "string", + "location": "path" } }, "scopes": [ @@ -1327,50 +1327,35 @@ "https://www.googleapis.com/auth/servicecontrol" ], "flatPath": "v1/services/{serviceName}:allocateQuota", - "path": "v1/services/{serviceName}:allocateQuota", "id": "servicecontrol.services.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.", - "request": { - "$ref": "AllocateQuotaRequest" - } + "path": "v1/services/{serviceName}:allocateQuota" } } } }, "parameters": { - "upload_protocol": { + "uploadType": { "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "description": "Legacy upload protocol for media (e.g. \"media\", \"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": { + "enum": [ + "1", + "2" + ], "description": "V1 error format.", "type": "string", "enumDescriptions": [ "v1 error format", "v2 error format" ], - "location": "query", - "enum": [ - "1", - "2" - ] + "location": "query" }, "callback": { "location": "query", @@ -1378,12 +1363,6 @@ "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": [ @@ -1391,11 +1370,12 @@ "media", "proto" ], - "type": "string" - }, - "access_token": { - "description": "OAuth access token.", "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": { @@ -1403,11 +1383,16 @@ "description": "API key. 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": { + "access_token": { "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.", + "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.", @@ -1415,15 +1400,30 @@ "default": "true" }, "oauth_token": { - "location": "query", "description": "OAuth 2.0 token for the current user.", - "type": "string" + "type": "string", + "location": "query" }, "bearer_token": { - "location": "query", "description": "OAuth bearer token.", - "type": "string" + "type": "string", + "location": "query" + }, + "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" } }, - "version": "v1" + "version": "v1", + "baseUrl": "https://servicecontrol.googleapis.com/", + "servicePath": "", + "description": "Google Service Control provides control plane functionality to managed services, such as logging, monitoring, and status checks.", + "kind": "discovery#restDescription" } diff --git a/DiscoveryJson/servicemanagement_v1.json b/DiscoveryJson/servicemanagement_v1.json index fdbae216ec..ec0e93de44 100644 --- a/DiscoveryJson/servicemanagement_v1.json +++ b/DiscoveryJson/servicemanagement_v1.json @@ -1,2241 +1,2239 @@ { - "version": "v1", - "baseUrl": "https://servicemanagement.googleapis.com/", - "servicePath": "", - "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.", "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": "20180501", + "revision": "20180504", "documentationLink": "https://cloud.google.com/service-management/", "id": "servicemanagement:v1", "discoveryVersion": "v1", "schemas": { - "Api": { - "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.", + "SetIamPolicyRequest": { + "description": "Request message for `SetIamPolicy` method.", "type": "object", "properties": { - "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" - } + "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" }, - "name": { - "description": "The fully qualified name of this interface, including package name\nfollowed by the interface's simple name.", + "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" + }, + "Step": { + "description": "Represents the status of one operation step.", + "type": "object", + "properties": { + "description": { + "description": "The short description of the step.", "type": "string" }, - "syntax": { + "status": { "enumDescriptions": [ - "Syntax `proto2`.", - "Syntax `proto3`." + "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": [ - "SYNTAX_PROTO2", - "SYNTAX_PROTO3" + "STATUS_UNSPECIFIED", + "DONE", + "NOT_STARTED", + "IN_PROGRESS", + "FAILED", + "CANCELLED" ], - "description": "The source syntax of the service.", - "type": "string" - }, - "sourceContext": { - "description": "Source context for the protocol buffer service represented by this\nmessage.", - "$ref": "SourceContext" - }, - "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", + "description": "The status code.", "type": "string" } - } - }, - "MetricRule": { - "type": "object", - "properties": { - "selector": { - "type": "string", - "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details." - }, - "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", - "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": "Step" }, - "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", + "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" + }, + "LoggingDestination": { "properties": { - "providers": { - "description": "Defines a set of authentication providers that a service supports.", + "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": { - "$ref": "AuthProvider" + "type": "string" } }, - "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" - } + "monitoredResource": { + "description": "The monitored resource type. The type must be defined in the\nService.monitored_resources section.", + "type": "string" } }, - "id": "Authentication" + "id": "LoggingDestination", + "description": "Configuration of a specific logging destination (the producer project\nor the consumer project).", + "type": "object" }, - "Operation": { - "id": "Operation", - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "Option": { + "description": "A protocol buffer option, which can be attached to a message, field,\nenumeration, etc.", "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": { + "value": { "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": "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 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 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" - }, - "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" - } } - } + }, + "id": "Option" }, - "Page": { + "Logging": { "properties": { - "subpages": { - "description": "Subpages of this page. The order of subpages specified here will be\nhonored in the generated docset.", + "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": "Page" + "$ref": "LoggingDestination" } }, - "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" - }, - "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" + "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": "Page", - "description": "Represents a documentation page. A page can contain subpages to represent\nnested documentation set structure.", + "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" }, - "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.", + "Method": { + "description": "Method represents a method of an API interface.", "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" - } - } + "responseStreaming": { + "description": "If true, the response is streamed.", + "type": "boolean" }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" + "name": { + "description": "The simple name of this method.", + "type": "string" }, - "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.", + "requestTypeUrl": { + "description": "A URL of the input message type.", "type": "string" - } - }, - "id": "Status" - }, - "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` .\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", + }, + "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" + }, + "responseTypeUrl": { + "description": "The URL of the output message type.", + "type": "string" + }, + "options": { + "description": "Any metadata attached to the method.", "type": "array", "items": { - "type": "string" + "$ref": "Option" } - }, - "role": { - "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.\nRequired", - "type": "string" } }, - "id": "Binding" + "id": "Method" }, - "AuthProvider": { + "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": { - "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", + "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" }, - "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", + "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" }, - "id": { - "type": "string", - "description": "The unique identifier of the auth provider. It will be referred to by\n`AuthRequirement.provider_id`.\n\nExample: \"bookstore_auth\"." - }, - "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", + "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" }, - "authorizationUrl": { - "description": "Redirect URL if JWT token is required but no present or is expired.\nImplement authorizationUrl of securityDefinitions in OpenAPI spec.", + "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" - } - }, - "id": "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)." - }, - "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", - "properties": { - "experimental": { - "$ref": "Experimental", - "description": "Experimental configuration." - }, - "control": { - "$ref": "Control", - "description": "Configuration for the service control plane." - }, - "configVersion": { - "type": "integer", - "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" }, - "monitoring": { - "description": "Monitoring configuration.", - "$ref": "Monitoring" - }, - "producerProjectId": { - "description": "The Google project that owns this service.", + "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" }, - "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" - } - }, - "quota": { - "description": "Quota configuration.", - "$ref": "Quota" - }, - "billing": { - "$ref": "Billing", - "description": "Billing configuration." - }, - "name": { - "description": "The DNS address at which this service is available,\ne.g. `calendar.googleapis.com`.", + "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" }, - "customError": { - "$ref": "CustomError", - "description": "Custom error configuration." - }, - "title": { - "description": "The product title for this service.", + "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" }, - "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" - } - }, - "sourceInfo": { - "$ref": "SourceInfo", - "description": "Output only. The source information for this configuration if available." - }, - "http": { - "description": "HTTP configuration.", - "$ref": "Http" - }, - "systemParameters": { - "$ref": "SystemParameters", - "description": "System parameter configuration." - }, - "backend": { - "$ref": "Backend", - "description": "API backend 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": { - "$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.", + "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" }, - "usage": { - "description": "Configuration controlling usage of this service.", - "$ref": "Usage" - }, - "metrics": { - "description": "Defines the metrics used by this service.", - "type": "array", - "items": { - "$ref": "MetricDescriptor" - } + "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" }, - "authentication": { - "$ref": "Authentication", - "description": "Auth configuration." + "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" } }, - "id": "Service" + "id": "QuotaLimit" }, - "EnumValue": { + "ConfigRef": { + "description": "Represents a service configuration with its name and id.", "type": "object", "properties": { "name": { - "description": "Enum value name.", + "description": "Resource name of a service config. It must have the following\nformat: \"services/{service name}/configs/{config id}\".", "type": "string" - }, - "options": { - "type": "array", - "items": { - "$ref": "Option" - }, - "description": "Protocol buffer options." - }, - "number": { - "description": "Enum value number.", - "format": "int32", - "type": "integer" } }, - "id": "EnumValue", - "description": "Enum value definition." + "id": "ConfigRef" }, - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", + "ListServiceRolloutsResponse": { + "description": "Response message for ListServiceRollouts method.", "type": "object", "properties": { - "operations": { - "description": "A list of operations that matches the specified filter in the request.", + "nextPageToken": { + "description": "The token of the next page of results.", + "type": "string" + }, + "rollouts": { + "description": "The list of rollout resources.", "type": "array", "items": { - "$ref": "Operation" + "$ref": "Rollout" } - }, - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" } }, - "id": "ListOperationsResponse" + "id": "ListServiceRolloutsResponse" }, - "CustomHttpPattern": { - "description": "A custom pattern is used for defining custom HTTP verb.", - "type": "object", + "Mixin": { "properties": { - "kind": { - "description": "The name of this custom HTTP verb.", + "name": { + "description": "The fully qualified name of the interface which is included.", "type": "string" }, - "path": { - "description": "The path matched by this custom verb.", + "root": { + "description": "If non-empty specifies a path under which inherited HTTP paths\nare rooted.", "type": "string" } }, - "id": "CustomHttpPattern" + "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" }, - "OperationMetadata": { - "description": "The metadata associated with a long running operation resource.", + "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": { - "startTime": { - "type": "string", - "description": "The start time of the operation.", - "format": "google-datetime" - }, - "resourceNames": { + "types": { + "description": "The list of custom error detail types, e.g. 'google.foo.v1.CustomError'.", "type": "array", "items": { "type": "string" - }, - "description": "The full name of the resources that this operation is directly\nassociated with." + } }, - "steps": { - "description": "Detailed status information for each step. The order is undetermined.", + "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": "Step" + "$ref": "CustomErrorRule" } - }, - "progressPercentage": { - "type": "integer", - "description": "Percentage of completion of this operation, ranging from 0 to 100.", - "format": "int32" } }, - "id": "OperationMetadata" + "id": "CustomError" }, - "SystemParameterRule": { + "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": { - "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.", + "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": "SystemParameter" + "$ref": "HttpRule" } }, - "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" + "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" } }, - "id": "SystemParameterRule", - "description": "Define a system parameter rule mapping system parameter definitions to\nmethods." + "id": "Http" }, - "HttpRule": { - "id": "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.", + "SourceInfo": { + "description": "Source information used to create a Service Config", "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.", + "sourceFiles": { + "description": "All files used during config generation.", + "type": "array", + "items": { + "type": "object", + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + } + } + } + }, + "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" - }, - "selector": { - "type": "string", - "description": "Selects methods to which this rule applies.\n\nRefer to selector for syntax details." - }, - "post": { - "type": "string", - "description": "Used for creating a resource." - }, - "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" - }, - "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" - }, - "get": { - "description": "Used for listing and getting information about resources.", + } + }, + "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": { + "httpHeader": { + "description": "Define the HTTP header name to use for the parameter. It is case\ninsensitive.", "type": "string" }, - "patch": { - "description": "Used for updating a resource.", + "name": { + "description": "Define the name of the parameter, such as \"api_key\" . It is case sensitive.", "type": "string" }, - "put": { - "description": "Used for updating a resource.", + "urlQueryParameter": { + "description": "Define the URL query parameter name to use for the parameter. It is case\nsensitive.", + "type": "string" + } + }, + "id": "SystemParameter" + }, + "Field": { + "description": "A single field of a message type.", + "type": "object", + "properties": { + "typeUrl": { + "description": "The field type URL, without the scheme, for message or enumeration\ntypes. Example: `\"type.googleapis.com/google.protobuf.Timestamp\"`.", "type": "string" }, - "delete": { - "description": "Used for deleting a resource.", + "number": { + "description": "The field number.", + "format": "int32", + "type": "integer" + }, + "jsonName": { + "description": "The field JSON name.", "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).", + "kind": { + "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" + ], + "description": "The field type.", + "type": "string", + "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." + ] + }, + "options": { + "description": "The protocol buffer options.", "type": "array", "items": { - "$ref": "HttpRule" + "$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": { + "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" + }, + "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" } - } + }, + "id": "Field" }, - "MonitoringDestination": { - "description": "Configuration of a specific monitoring destination (the producer project\nor the consumer project).", - "type": "object", + "Monitoring": { "properties": { - "monitoredResource": { - "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.", - "type": "string" + "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" + } }, - "metrics": { + "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": { - "type": "string" - }, - "description": "Names of the metrics to report to this monitoring destination.\nEach name must be defined in Service.metrics section." + "$ref": "MonitoringDestination" + } } }, - "id": "MonitoringDestination" + "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" }, - "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.", + "TestIamPermissionsRequest": { + "description": "Request message for `TestIamPermissions` method.", "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.", + "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": { - "$ref": "SystemParameterRule" + "type": "string" } } }, - "id": "SystemParameters" + "id": "TestIamPermissionsRequest" }, - "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", + "Enum": { "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" + "options": { + "description": "Protocol buffer options.", + "type": "array", + "items": { + "$ref": "Option" + } }, - "changeType": { + "sourceContext": { + "$ref": "SourceContext", + "description": "The source context." + }, + "syntax": { "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." + "Syntax `proto2`.", + "Syntax `proto3`." ], "enum": [ - "CHANGE_TYPE_UNSPECIFIED", - "ADDED", - "REMOVED", - "MODIFIED" + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" ], - "description": "The type for this change, either ADDED, REMOVED, or MODIFIED.", - "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]", + "description": "The source syntax.", "type": "string" }, - "oldValue": { - "description": "Value of the changed object in the old Service configuration,\nin JSON format. This field will not be populated if ChangeType == ADDED.", + "name": { + "description": "Enum type name.", "type": "string" }, - "advices": { - "type": "array", - "items": { - "$ref": "Advice" - }, - "description": "Collection of advice provided for this change, useful for determining the\npossible impact of this change." - } - }, - "id": "ConfigChange" - }, - "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.", + "enumvalue": { + "description": "Enum value definitions.", "type": "array", "items": { - "$ref": "MetricRule" + "$ref": "EnumValue" } } }, - "id": "Quota" + "id": "Enum", + "description": "Enum type definition.", + "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.", + "LabelDescriptor": { + "description": "A description of a label.", "type": "object", "properties": { - "createdBy": { - "description": "The user who created the Rollout. Readonly.", + "key": { + "description": "The label key.", "type": "string" }, - "trafficPercentStrategy": { - "description": "Google Service Control selects service configurations based on\ntraffic percentage.", - "$ref": "TrafficPercentStrategy" - }, - "rolloutId": { - "type": "string", - "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'" + "description": { + "description": "A human-readable description for the label.", + "type": "string" }, - "deleteServiceStrategy": { - "description": "The strategy associated with a rollout to delete a `ManagedService`.\nReadonly.", - "$ref": "DeleteServiceStrategy" - }, - "createTime": { - "type": "string", - "description": "Creation time of the rollout. Readonly.", - "format": "google-datetime" - }, - "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.", + "valueType": { + "enum": [ + "STRING", + "BOOL", + "INT64" + ], + "description": "The type of data that can be assigned to the label.", "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." - ], - "enum": [ - "ROLLOUT_STATUS_UNSPECIFIED", - "IN_PROGRESS", - "SUCCESS", - "CANCELLED", - "FAILED", - "PENDING", - "FAILED_ROLLED_BACK" + "A variable-length string. This is the default.", + "Boolean; true or false.", + "A 64-bit signed integer." ] - }, - "serviceName": { - "description": "The name of the service associated with this Rollout.", - "type": "string" } }, - "id": "Rollout" + "id": "LabelDescriptor" }, - "GenerateConfigReportRequest": { - "type": "object", + "Diagnostic": { "properties": { - "oldConfig": { - "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", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } + "kind": { + "enumDescriptions": [ + "Warnings and errors", + "Only errors" + ], + "enum": [ + "WARNING", + "ERROR" + ], + "description": "The kind of diagnostic information provided.", + "type": "string" }, - "newConfig": { - "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", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } + "message": { + "description": "Message describing the error or warning.", + "type": "string" + }, + "location": { + "description": "File name and line number of the error or warning.", + "type": "string" } }, - "id": "GenerateConfigReportRequest", - "description": "Request message for GenerateConfigReport method." + "id": "Diagnostic", + "description": "Represents a diagnostic message (error or warning)", + "type": "object" }, - "SetIamPolicyRequest": { - "description": "Request message for `SetIamPolicy` method.", + "EnableServiceRequest": { + "description": "Request message for EnableService 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", + "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": "SetIamPolicyRequest" - }, - "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" + "id": "EnableServiceRequest" }, - "Step": { - "id": "Step", - "description": "Represents the status of one operation step.", - "type": "object", + "Type": { "properties": { - "description": { - "type": "string", - "description": "The short description of the step." - }, - "status": { + "syntax": { "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." + "Syntax `proto2`.", + "Syntax `proto3`." ], "enum": [ - "STATUS_UNSPECIFIED", - "DONE", - "NOT_STARTED", - "IN_PROGRESS", - "FAILED", - "CANCELLED" + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" ], - "description": "The status code.", + "description": "The source syntax.", + "type": "string" + }, + "sourceContext": { + "$ref": "SourceContext", + "description": "The source context." + }, + "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" + }, + "oneofs": { + "description": "The list of types appearing in `oneof` definitions in this type.", + "type": "array", + "items": { + "type": "string" + } } - } + }, + "id": "Type", + "description": "A protocol buffer message type.", + "type": "object" }, - "LoggingDestination": { - "description": "Configuration of a specific logging destination (the producer project\nor the consumer project).", + "GenerateConfigReportResponse": { + "description": "Response message for GenerateConfigReport method.", "type": "object", "properties": { - "monitoredResource": { - "description": "The monitored resource type. The type must be defined in the\nService.monitored_resources section.", + "changeReports": { + "description": "list of ChangeReport, each corresponding to comparison between two\nservice configurations.", + "type": "array", + "items": { + "$ref": "ChangeReport" + } + }, + "id": { + "description": "ID of the service configuration this report belongs to.", "type": "string" }, - "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 \"/\".", + "diagnostics": { + "description": "Errors / Linter warnings associated with the service definition this\nreport\nbelongs to.", "type": "array", "items": { - "type": "string" + "$ref": "Diagnostic" } + }, + "serviceName": { + "description": "Name of the service this report belongs to.", + "type": "string" } }, - "id": "LoggingDestination" + "id": "GenerateConfigReportResponse" }, - "Option": { - "description": "A protocol buffer option, which can be attached to a message, field,\nenumeration, etc.", - "type": "object", + "ListServiceConfigsResponse": { "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\"`.", + "nextPageToken": { + "description": "The token of the next page of results.", "type": "string" }, - "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" + "serviceConfigs": { + "description": "The list of service configuration resources.", + "type": "array", + "items": { + "$ref": "Service" } } }, - "id": "Option" + "id": "ListServiceConfigsResponse", + "description": "Response message for ListServiceConfigs method.", + "type": "object" }, - "Logging": { - "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", + "Experimental": { + "properties": { + "authorization": { + "description": "Authorization configuration.", + "$ref": "AuthorizationConfig" + } + }, + "id": "Experimental", + "description": "Experimental service configuration. These configuration options can\nonly be used by whitelisted users.", + "type": "object" + }, + "Backend": { + "description": "`Backend` defines the backend configuration for a service.", "type": "object", "properties": { - "consumerDestinations": { - "type": "array", - "items": { - "$ref": "LoggingDestination" - }, - "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." - }, - "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.", + "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": "LoggingDestination" + "$ref": "BackendRule" } } - } + }, + "id": "Backend" }, - "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`.", + "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.", "type": "object", "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.", + "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" }, - "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" + "auditLogConfigs": { + "description": "The configuration for logging of each type of permission.", + "type": "array", + "items": { + "$ref": "AuditLogConfig" + } + } + }, + "id": "AuditConfig" + }, + "SubmitConfigSourceRequest": { + "properties": { + "configSource": { + "$ref": "ConfigSource", + "description": "The source configuration for the service." }, - "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.", + "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" + } + }, + "id": "SubmitConfigSourceRequest", + "description": "Request message for SubmitConfigSource method.", + "type": "object" + }, + "DocumentationRule": { + "description": "A documentation rule provides information about individual API elements.", + "type": "object", + "properties": { + "deprecationDescription": { + "description": "Deprecation description of the selected element(s). It can be provided if an\nelement is marked as `deprecated`.", "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", + "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" }, - "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.", + "description": { + "description": "Description of the selected API(s).", "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", + } + }, + "id": "DocumentationRule" + }, + "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" + }, + "ContextRule": { + "description": "A context rule provides information about the context for an individual API\nelement.", + "type": "object", + "properties": { + "requested": { + "description": "A list of full type names of requested contexts.", + "type": "array", + "items": { + "type": "string" + } }, - "displayName": { - "type": "string", - "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." + "allowedRequestExtensions": { + "description": "A list of full type names or extension IDs of extensions allowed in grpc\nside channel from client to backend.", + "type": "array", + "items": { + "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" + "allowedResponseExtensions": { + "description": "A list of full type names or extension IDs of extensions allowed in grpc\nside channel from backend to client.", + "type": "array", + "items": { + "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`).", + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", "type": "string" }, - "values": { - "type": "object", - "additionalProperties": { - "format": "int64", + "provided": { + "description": "A list of full type names of provided contexts.", + "type": "array", + "items": { "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." + } } }, - "id": "QuotaLimit" + "id": "ContextRule" }, - "Method": { - "description": "Method represents a method of an API interface.", + "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": { - "requestTypeUrl": { - "description": "A URL of the input message type.", + "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" }, - "requestStreaming": { - "type": "boolean", - "description": "If true, the request is streamed." - }, - "syntax": { - "type": "string", - "enumDescriptions": [ - "Syntax `proto2`.", - "Syntax `proto3`." - ], - "enum": [ - "SYNTAX_PROTO2", - "SYNTAX_PROTO3" - ], - "description": "The source syntax of this method." + "description": { + "description": "A detailed description of the metric, which can be used in documentation.", + "type": "string" }, - "responseTypeUrl": { - "type": "string", - "description": "The URL of the output message type." + "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" }, - "options": { - "description": "Any metadata attached to the method.", + "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": "Option" + "$ref": "LabelDescriptor" } }, - "responseStreaming": { - "description": "If true, the response is streamed.", - "type": "boolean" - }, "name": { - "description": "The simple name of this method.", + "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": { + "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" + ] } }, - "id": "Method" + "id": "MetricDescriptor" }, - "ListServiceRolloutsResponse": { - "type": "object", + "SourceContext": { "properties": { - "nextPageToken": { - "description": "The token of the next page of results.", + "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" - }, - "rollouts": { - "description": "The list of rollout resources.", - "type": "array", - "items": { - "$ref": "Rollout" - } } }, - "id": "ListServiceRolloutsResponse", - "description": "Response message for ListServiceRollouts method." + "id": "SourceContext", + "description": "`SourceContext` represents information about the source of a\nprotobuf element, like the file in which it is defined.", + "type": "object" }, - "ConfigRef": { - "description": "Represents a service configuration with its name and 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", "properties": { - "name": { - "description": "Resource name of a service config. It must have the following\nformat: \"services/{service name}/configs/{config id}\".", - "type": "string" + "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": "ConfigRef" + "id": "Billing" }, - "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 }", + "ListServicesResponse": { + "description": "Response message for `ListServices` method.", "type": "object", "properties": { - "name": { - "description": "The fully qualified name of the interface which is included.", - "type": "string" + "services": { + "description": "The returned services will only have the name field set.", + "type": "array", + "items": { + "$ref": "ManagedService" + } }, - "root": { - "description": "If non-empty specifies a path under which inherited HTTP paths\nare rooted.", + "nextPageToken": { + "description": "Token that can be passed to `ListServices` to resume a paginated query.", "type": "string" } }, - "id": "Mixin" + "id": "ListServicesResponse" }, - "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", + "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": { - "types": { + "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" - }, - "description": "The list of custom error detail types, e.g. 'google.foo.v1.CustomError'." + } }, - "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.", + "features": { + "description": "The list of features enabled on this endpoint.", "type": "array", "items": { - "$ref": "CustomErrorRule" + "type": "string" } - } - }, - "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.", + }, + "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" }, - "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" - } + "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": "Http" + "id": "Endpoint" }, - "SourceInfo": { - "description": "Source information used to create a Service Config", - "type": "object", - "properties": { - "sourceFiles": { - "type": "array", - "items": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } - }, - "description": "All files used during config generation." - } - }, - "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.", + "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": { - "environment": { - "description": "The service control environment to use. If empty, no control plane\nfeature (like quota and billing) will be enabled.", + "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": "Control" + "id": "OAuthRequirements" }, - "SystemParameter": { + "Usage": { "properties": { - "name": { - "type": "string", - "description": "Define the name of the parameter, such as \"api_key\" . It is case sensitive." - }, - "urlQueryParameter": { - "description": "Define the URL query parameter name to use for the parameter. It is case\nsensitive.", + "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" }, - "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.", - "type": "object" - }, - "Monitoring": { - "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", - "properties": { - "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.", + "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": "MonitoringDestination" + "$ref": "UsageRule" } }, - "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.", + "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": { - "$ref": "MonitoringDestination" + "type": "string" } } - } + }, + "id": "Usage", + "description": "Configuration controlling usage of a service.", + "type": "object" }, - "Field": { - "description": "A single field of a message type.", + "GetIamPolicyRequest": { + "description": "Request message for `GetIamPolicy` method.", + "type": "object", + "properties": {}, + "id": "GetIamPolicyRequest" + }, + "TestIamPermissionsResponse": { + "description": "Response message for `TestIamPermissions` method.", "type": "object", "properties": { - "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" - }, - "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." - ], - "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" - ], - "description": "The field type.", - "type": "string" - }, - "jsonName": { - "description": "The field JSON name.", - "type": "string" - }, - "options": { - "description": "The protocol buffer options.", + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", "type": "array", "items": { - "$ref": "Option" + "type": "string" } - }, - "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" - }, - "packed": { - "description": "Whether to use alternative packed wire representation.", - "type": "boolean" - }, - "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" - }, - "defaultValue": { - "type": "string", - "description": "The string value of the default value of this field. Proto2 syntax only." - }, - "name": { - "description": "The field name.", - "type": "string" } }, - "id": "Field" + "id": "TestIamPermissionsResponse" }, - "TestIamPermissionsRequest": { - "description": "Request message for `TestIamPermissions` method.", - "type": "object", + "Context": { "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).", + "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": { - "type": "string" + "$ref": "ContextRule" } } }, - "id": "TestIamPermissionsRequest" + "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`.\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.", + "type": "object" }, - "Enum": { - "description": "Enum type definition.", + "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": { - "options": { - "description": "Protocol buffer options.", + "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": "Option" + "$ref": "LabelDescriptor" } }, - "sourceContext": { - "description": "The source context.", - "$ref": "SourceContext" - }, - "syntax": { - "enumDescriptions": [ - "Syntax `proto2`.", - "Syntax `proto3`." - ], - "enum": [ - "SYNTAX_PROTO2", - "SYNTAX_PROTO3" - ], - "description": "The source syntax.", + "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" }, - "name": { - "description": "Enum type name.", + "description": { + "description": "A human-readable description of this log. This information appears in\nthe documentation and can contain details.", "type": "string" }, - "enumvalue": { - "description": "Enum value definitions.", - "type": "array", - "items": { - "$ref": "EnumValue" - } + "displayName": { + "description": "The human-readable name for this log. This information appears on\nthe user interface and should be concise.", + "type": "string" } }, - "id": "Enum" + "id": "LogDescriptor" }, - "LabelDescriptor": { - "description": "A description of a label.", + "ConfigFile": { + "description": "Generic specification of a source configuration file", "type": "object", "properties": { - "valueType": { + "fileType": { "enumDescriptions": [ - "A variable-length string. This is the default.", - "Boolean; true or false.", - "A 64-bit signed integer." + "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." ], "enum": [ - "STRING", - "BOOL", - "INT64" + "FILE_TYPE_UNSPECIFIED", + "SERVICE_CONFIG_YAML", + "OPEN_API_JSON", + "OPEN_API_YAML", + "FILE_DESCRIPTOR_SET_PROTO", + "PROTO_FILE" ], - "description": "The type of data that can be assigned to the label.", + "description": "The type of configuration file this represents.", "type": "string" }, - "key": { - "description": "The label key.", + "fileContents": { + "description": "The bytes that constitute the file.", + "format": "byte", "type": "string" }, - "description": { - "type": "string", - "description": "A human-readable description for the label." + "filePath": { + "description": "The file name of the configuration file (full or relative path).", + "type": "string" } }, - "id": "LabelDescriptor" + "id": "ConfigFile" }, - "EnableServiceRequest": { - "description": "Request message for EnableService method.", + "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": { - "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.", + "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", + "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" } }, - "id": "EnableServiceRequest" + "id": "MonitoredResourceDescriptor" }, - "Diagnostic": { - "description": "Represents a diagnostic message (error or warning)", + "CustomErrorRule": { + "description": "A custom error rule.", "type": "object", "properties": { - "kind": { - "enumDescriptions": [ - "Warnings and errors", - "Only errors" - ], - "enum": [ - "WARNING", - "ERROR" - ], - "description": "The kind of diagnostic information provided.", - "type": "string" - }, - "message": { - "description": "Message describing the error or warning.", - "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" }, - "location": { - "description": "File name and line number of the error or warning.", + "selector": { + "description": "Selects messages to which this rule applies.\n\nRefer to selector for syntax details.", "type": "string" } }, - "id": "Diagnostic" + "id": "CustomErrorRule" }, - "Type": { - "description": "A protocol buffer message type.", + "CustomAuthRequirements": { + "description": "Configuration for a custom authentication provider.", "type": "object", "properties": { - "sourceContext": { - "description": "The source context.", - "$ref": "SourceContext" - }, - "syntax": { - "description": "The source syntax.", - "type": "string", - "enumDescriptions": [ - "Syntax `proto2`.", - "Syntax `proto3`." - ], - "enum": [ - "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.", + "provider": { + "description": "A configuration string containing connection information for the\nauthentication provider, typically formatted as a SmartService string\n(go/smartservice).", "type": "string" - }, - "oneofs": { - "description": "The list of types appearing in `oneof` definitions in this type.", - "type": "array", - "items": { - "type": "string" - } } }, - "id": "Type" + "id": "CustomAuthRequirements" }, - "GenerateConfigReportResponse": { - "description": "Response message for GenerateConfigReport method.", + "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": { - "diagnostics": { - "description": "Errors / Linter warnings associated with the service definition this\nreport\nbelongs to.", - "type": "array", - "items": { - "$ref": "Diagnostic" - } + "useDirectDownload": { + "description": "A boolean that determines if direct download from ESF should be used for\ndownload of this media.", + "type": "boolean" }, - "serviceName": { - "description": "Name of the service this report belongs to.", + "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" }, - "changeReports": { - "description": "list of ChangeReport, each corresponding to comparison between two\nservice configurations.", - "type": "array", - "items": { - "$ref": "ChangeReport" - } + "completeNotification": { + "description": "A boolean that determines whether a notification for the completion of a\ndownload should be sent to the backend.", + "type": "boolean" }, - "id": { - "description": "ID of the service configuration this report belongs to.", + "dropzone": { + "description": "Name of the Scotty dropzone to use for the current API.", + "type": "string" + }, + "maxDirectDownloadSize": { + "description": "Optional maximum acceptable size for direct download.\nThe size is specified in bytes.", + "format": "int64", "type": "string" } }, - "id": "GenerateConfigReportResponse" + "id": "MediaDownload" }, - "ListServiceConfigsResponse": { - "description": "Response message for ListServiceConfigs method.", + "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": { - "serviceConfigs": { - "description": "The list of service configuration resources.", + "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": "Service" + "$ref": "ConfigChange" } - }, - "nextPageToken": { - "description": "The token of the next page of results.", - "type": "string" } }, - "id": "ListServiceConfigsResponse" + "id": "ChangeReport" }, - "Experimental": { - "description": "Experimental service configuration. These configuration options can\nonly be used by whitelisted users.", + "DisableServiceRequest": { + "description": "Request message for DisableService method.", "type": "object", "properties": { - "authorization": { - "$ref": "AuthorizationConfig", - "description": "Authorization configuration." + "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": "Experimental" + "id": "DisableServiceRequest" }, - "Backend": { - "id": "Backend", - "description": "`Backend` defines the backend configuration for a service.", + "SubmitConfigSourceResponse": { + "description": "Response message for SubmitConfigSource method.", "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" - } + "serviceConfig": { + "$ref": "Service", + "description": "The generated service configuration." } - } + }, + "id": "SubmitConfigSourceResponse" }, - "AuditConfig": { + "MediaUpload": { "properties": { - "auditLogConfigs": { - "description": "The configuration for logging of each type of permission.", + "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": { + "description": "An array of mimetype patterns. Esf will only accept uploads that match one\nof the given patterns.", "type": "array", "items": { - "$ref": "AuditLogConfig" + "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.", + "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" + }, + "progressNotification": { + "description": "Whether to receive a notification for progress changes of media upload.", + "type": "boolean" + }, + "enabled": { + "description": "Whether upload is enabled.", + "type": "boolean" + }, + "dropzone": { + "description": "Name of the Scotty dropzone to use for the current API.", "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\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": "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" }, - "SubmitConfigSourceRequest": { - "description": "Request message for SubmitConfigSource method.", + "BillingDestination": { + "description": "Configuration of a specific billing destination (Currently only support\nbill against consumer project).", "type": "object", "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" + "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" + } }, - "configSource": { - "description": "The source configuration for the service.", - "$ref": "ConfigSource" + "monitoredResource": { + "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.", + "type": "string" } }, - "id": "SubmitConfigSourceRequest" + "id": "BillingDestination" }, - "DocumentationRule": { + "Advice": { "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.", + "description": "Useful description for why this advice was applied and what actions should\nbe taken to mitigate any implied risks.", "type": "string" } }, - "id": "DocumentationRule", - "description": "A documentation rule provides information about individual API elements.", + "id": "Advice", + "description": "Generated advice about this change, used for providing more\ninformation about how a change will affect the existing service.", "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", + "ManagedService": { + "description": "The full representation of a Service that is managed by\nGoogle Service Management.", "type": "object", "properties": { - "provider": { - "description": "The name of the authorization provider, such as\nfirebaserules.googleapis.com.", + "producerProjectId": { + "description": "ID of the project that produces and owns this service.", "type": "string" - } - }, - "id": "AuthorizationConfig" + }, + "serviceName": { + "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements.", + "type": "string" + } + }, + "id": "ManagedService" }, - "ContextRule": { - "description": "A context rule provides information about the context for an individual API\nelement.", + "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": { - "provided": { - "description": "A list of full type names of provided contexts.", - "type": "array", - "items": { - "type": "string" - } - }, - "requested": { - "type": "array", - "items": { - "type": "string" - }, - "description": "A list of full type names of requested contexts." - }, - "allowedRequestExtensions": { - "description": "A list of full type names or extension IDs of extensions allowed in grpc\nside channel from client to backend.", - "type": "array", - "items": { - "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" }, - "allowedResponseExtensions": { - "description": "A list of full type names or extension IDs of extensions allowed in grpc\nside channel from backend to client.", - "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.\n\nRefer to selector for syntax details.", + "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": "ContextRule" + "id": "UsageRule" }, - "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", + "AuthRequirement": { "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" - } + "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": "Billing" + "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" }, - "SourceContext": { - "description": "`SourceContext` represents information about the source of a\nprotobuf element, like the file in which it is defined.", + "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": { - "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" + "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": "SourceContext" + "id": "TrafficPercentStrategy" }, - "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.", + "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\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(== 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": { - "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.", + "summary": { + "description": "A short summary of what the service does. Can only be provided by\nplain text.", "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.", + "documentationRootUrl": { + "description": "The URL to the root of documentation.", "type": "string" }, - "unit": { - "type": "string", - "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." - }, - "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.", + "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": "LabelDescriptor" + "$ref": "DocumentationRule" } }, - "name": { - "description": "The resource name of the metric descriptor.", + "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" }, - "type": { - "type": "string", - "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\"" - }, - "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" + "pages": { + "description": "The top level pages for the documentation set.", + "type": "array", + "items": { + "$ref": "Page" + } } }, - "id": "MetricDescriptor" + "id": "Documentation" }, - "ListServicesResponse": { - "description": "Response message for `ListServices` method.", + "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": { - "services": { - "description": "The returned services will only have the name field set.", + "logType": { + "enum": [ + "LOG_TYPE_UNSPECIFIED", + "ADMIN_READ", + "DATA_WRITE", + "DATA_READ" + ], + "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" + ] + }, + "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": { - "$ref": "ManagedService" + "type": "string" } - }, - "nextPageToken": { - "description": "Token that can be passed to `ListServices` to resume a paginated query.", - "type": "string" } }, - "id": "ListServicesResponse" + "id": "AuditLogConfig" }, - "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", + "ConfigSource": { + "description": "Represents a source file which is used to generate the service configuration\ndefined by `google.api.Service`.", "type": "object", "properties": { - "aliases": { - "type": "array", - "items": { - "type": "string" - }, - "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." + "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" }, - "features": { - "description": "The list of features enabled on this endpoint.", + "files": { + "description": "Set of source configuration files that are used to generate a service\nconfiguration (`google.api.Service`).", "type": "array", "items": { - "type": "string" + "$ref": "ConfigFile" } - }, - "allowCors": { - "type": "boolean", - "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." - }, - "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" + "id": "ConfigSource" }, - "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.", + "BackendRule": { + "description": "A backend rule provides configuration for an individual API element.", "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", + "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": "OAuthRequirements" + "id": "BackendRule" }, - "TestIamPermissionsResponse": { - "description": "Response message for `TestIamPermissions` method.", + "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": { - "permissions": { - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.", + "requirements": { + "description": "Requirements for additional authentication providers.", "type": "array", "items": { - "type": "string" - } - } - }, - "id": "TestIamPermissionsResponse" - }, - "GetIamPolicyRequest": { - "description": "Request message for `GetIamPolicy` method.", - "type": "object", - "properties": {}, - "id": "GetIamPolicyRequest" - }, - "Usage": { - "description": "Configuration controlling usage of a service.", - "type": "object", - "properties": { - "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": "AuthRequirement" } }, - "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.", + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", "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" - } + "allowWithoutCredential": { + "description": "If true, the service accepts API keys without any other credential.", + "type": "boolean" + }, + "oauth": { + "$ref": "OAuthRequirements", + "description": "The requirements for OAuth credentials." + }, + "customAuth": { + "description": "Configuration for custom authentication.", + "$ref": "CustomAuthRequirements" } }, - "id": "Usage" + "id": "AuthenticationRule" }, - "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.", + "UndeleteServiceResponse": { + "description": "Response message for UndeleteService method.", "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" - } + "service": { + "$ref": "ManagedService", + "description": "Revived service resource." } }, - "id": "Context" + "id": "UndeleteServiceResponse" }, - "LogDescriptor": { - "type": "object", + "Policy": { "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.", + "auditConfigs": { + "description": "Specifies cloud audit logging configuration for this policy.", "type": "array", "items": { - "$ref": "LabelDescriptor" + "$ref": "AuditConfig" } }, - "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" + "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" + } }, - "description": { - "description": "A human-readable description of this log. This information appears in\nthe documentation and can contain details.", + "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" }, - "displayName": { - "description": "The human-readable name for this log. This information appears on\nthe user interface and should be concise.", - "type": "string" + "version": { + "description": "Deprecated.", + "format": "int32", + "type": "integer" } }, - "id": "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": "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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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" }, - "ConfigFile": { - "description": "Generic specification of a source configuration file", - "type": "object", + "Api": { "properties": { - "fileType": { - "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." - ], + "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" + }, + "syntax": { "enum": [ - "FILE_TYPE_UNSPECIFIED", - "SERVICE_CONFIG_YAML", - "OPEN_API_JSON", - "OPEN_API_YAML", - "FILE_DESCRIPTOR_SET_PROTO", - "PROTO_FILE" + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" ], - "description": "The type of configuration file this represents." + "description": "The source syntax of the service.", + "type": "string", + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ] }, - "fileContents": { - "description": "The bytes that constitute the file.", - "format": "byte", - "type": "string" + "sourceContext": { + "$ref": "SourceContext", + "description": "Source context for the protocol buffer service represented by this\nmessage." }, - "filePath": { - "description": "The file name of the configuration file (full or relative path).", + "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" } }, - "id": "ConfigFile" + "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" }, - "CustomErrorRule": { - "id": "CustomErrorRule", - "description": "A custom error rule.", + "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": { - "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.", + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", "type": "string" + }, + "metricCosts": { + "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", + "additionalProperties": { + "format": "int64", + "type": "string" + } } - } + }, + "id": "MetricRule" }, - "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.", + "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": { - "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" + "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" + } }, - "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\"`.", + "providers": { + "description": "Defines a set of authentication providers that a service supports.", "type": "array", "items": { - "$ref": "LabelDescriptor" + "$ref": "AuthProvider" } } }, - "id": "MonitoredResourceDescriptor" + "id": "Authentication" }, - "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.", + "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", "type": "object", "properties": { - "enabled": { - "description": "Whether download is enabled.", - "type": "boolean" + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." }, - "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" + "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" }, - "completeNotification": { - "description": "A boolean that determines whether a notification for the completion of a\ndownload should be sent to the backend.", + "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" }, - "maxDirectDownloadSize": { - "description": "Optional maximum acceptable size for direct download.\nThe size is specified in bytes.", - "format": "int64", - "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" }, - "dropzone": { - "description": "Name of the Scotty dropzone to use for the current API.", + "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" - }, - "useDirectDownload": { - "description": "A boolean that determines if direct download from ESF should be used for\ndownload of this media.", - "type": "boolean" } }, - "id": "MediaDownload" + "id": "Operation" }, - "CustomAuthRequirements": { + "Page": { + "description": "Represents a documentation page. A page can contain subpages to represent\nnested documentation set structure.", "type": "object", "properties": { - "provider": { - "description": "A configuration string containing connection information for the\nauthentication provider, typically formatted as a SmartService string\n(go/smartservice).", + "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" + }, + "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" } }, - "id": "CustomAuthRequirements", - "description": "Configuration for a custom authentication provider." + "id": "Page" }, - "ChangeReport": { + "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": { - "configChanges": { + "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": { - "$ref": "ConfigChange" - }, - "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" + "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": "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": "Status" }, - "DisableServiceRequest": { - "description": "Request message for DisableService method.", + "Binding": { + "description": "Associates `members` with a `role`.", "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.", + "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` .\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": "DisableServiceRequest" + "id": "Binding" }, - "SubmitConfigSourceResponse": { - "id": "SubmitConfigSourceResponse", - "description": "Response message for SubmitConfigSource method.", + "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": { - "serviceConfig": { - "description": "The generated service configuration.", - "$ref": "Service" + "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" }, - "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.", + "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", "properties": { - "startNotification": { - "description": "Whether to receive a notification on the start of media upload.", - "type": "boolean" + "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" + } }, - "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" + "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" + } }, - "mimeTypes": { - "description": "An array of mimetype patterns. Esf will only accept uploads that match one\nof the given patterns.", + "logs": { + "description": "Defines the logs used by this service.", "type": "array", "items": { - "type": "string" + "$ref": "LogDescriptor" } }, - "maxSize": { - "description": "Optional maximum acceptable size for an upload.\nThe size is specified in bytes.", - "format": "int64", - "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", + "type": "array", + "items": { + "$ref": "Type" + } }, - "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" + "sourceInfo": { + "description": "Output only. The source information for this configuration if available.", + "$ref": "SourceInfo" }, - "progressNotification": { - "description": "Whether to receive a notification for progress changes of media upload.", - "type": "boolean" + "http": { + "$ref": "Http", + "description": "HTTP configuration." }, - "enabled": { - "description": "Whether upload is enabled.", - "type": "boolean" + "systemParameters": { + "$ref": "SystemParameters", + "description": "System parameter configuration." }, - "dropzone": { - "description": "Name of the Scotty dropzone to use for the current API.", - "type": "string" - } - }, - "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.", + "backend": { + "$ref": "Backend", + "description": "API backend 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" + } + }, + "context": { + "description": "Context configuration.", + "$ref": "Context" + }, + "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" }, + "usage": { + "description": "Configuration controlling usage of this service.", + "$ref": "Usage" + }, "metrics": { - "description": "Names of the metrics to report to this billing destination.\nEach name must be defined in Service.metrics section.", + "description": "Defines the metrics used by this service.", "type": "array", "items": { - "type": "string" + "$ref": "MetricDescriptor" } - } - }, - "id": "BillingDestination" - }, - "Advice": { - "description": "Generated advice about this change, used for providing more\ninformation about how a change will affect the existing service.", - "type": "object", - "properties": { - "description": { - "description": "Useful description for why this advice was applied and what actions should\nbe taken to mitigate any implied risks.", + }, + "authentication": { + "description": "Auth configuration.", + "$ref": "Authentication" + }, + "experimental": { + "$ref": "Experimental", + "description": "Experimental configuration." + }, + "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": { + "description": "Monitoring configuration.", + "$ref": "Monitoring" + }, + "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" + } + }, + "quota": { + "$ref": "Quota", + "description": "Quota configuration." + }, + "name": { + "description": "The DNS address at which this service is available,\ne.g. `calendar.googleapis.com`.", + "type": "string" + }, + "billing": { + "$ref": "Billing", + "description": "Billing configuration." + }, + "customError": { + "$ref": "CustomError", + "description": "Custom error configuration." + }, + "title": { + "description": "The product title for this service.", "type": "string" } }, - "id": "Advice" + "id": "Service" }, - "ManagedService": { + "EnumValue": { + "description": "Enum value definition.", + "type": "object", "properties": { - "serviceName": { - "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements.", - "type": "string" + "options": { + "description": "Protocol buffer options.", + "type": "array", + "items": { + "$ref": "Option" + } }, - "producerProjectId": { - "description": "ID of the project that produces and owns this service.", + "number": { + "description": "Enum value number.", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "Enum value name.", "type": "string" } }, - "id": "ManagedService", - "description": "The full representation of a Service that is managed by\nGoogle Service Management.", - "type": "object" + "id": "EnumValue" }, - "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", + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", "type": "object", "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": { - "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." + "nextPageToken": { + "description": "The standard List next-page token.", + "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" + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "type": "array", + "items": { + "$ref": "Operation" + } } }, - "id": "UsageRule" + "id": "ListOperationsResponse" }, - "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).", + "CustomHttpPattern": { + "description": "A custom pattern is used for defining custom HTTP verb.", "type": "object", "properties": { - "providerId": { - "description": "id from authentication provider.\n\nExample:\n\n provider_id: bookstore_auth", + "kind": { + "description": "The name of this custom HTTP verb.", "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", + "path": { + "description": "The path matched by this custom verb.", "type": "string" } }, - "id": "AuthRequirement" + "id": "CustomHttpPattern" }, - "TrafficPercentStrategy": { + "OperationMetadata": { + "description": "The metadata associated with a long running operation resource.", "type": "object", "properties": { - "percentages": { - "type": "object", - "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." + "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" } }, - "id": "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": "OperationMetadata" }, - "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\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(== 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.", + "SystemParameterRule": { + "description": "Define a system parameter rule mapping system parameter definitions to\nmethods.", "type": "object", "properties": { - "documentationRootUrl": { - "description": "The URL to the root of documentation.", + "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" }, - "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.", + "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": "DocumentationRule" + "$ref": "SystemParameter" } - }, - "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.", + } + }, + "id": "SystemParameterRule" + }, + "HttpRule": { + "properties": { + "delete": { + "description": "Used for deleting a resource.", "type": "string" }, - "pages": { - "description": "The top level pages for the documentation set.", + "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": "Page" + "$ref": "HttpRule" } }, - "summary": { - "description": "A short summary of what the service does. Can only be provided by\nplain text.", + "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": { + "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" + }, + "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." + }, + "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" + }, + "post": { + "description": "Used for creating a resource.", + "type": "string" + }, + "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" } }, - "id": "Documentation" + "id": "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" }, - "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.", + "MonitoringDestination": { + "description": "Configuration of a specific monitoring destination (the producer project\nor the consumer project).", "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.", + "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" } }, - "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.", + "monitoredResource": { + "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.", "type": "string" } }, - "id": "AuditLogConfig" + "id": "MonitoringDestination" }, - "ConfigSource": { - "description": "Represents a source file which is used to generate the service configuration\ndefined by `google.api.Service`.", + "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", "properties": { - "files": { - "description": "Set of source configuration files that are used to generate a service\nconfiguration (`google.api.Service`).", + "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" + }, + "changeType": { + "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." + ] + }, + "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": { + "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" + }, + "advices": { + "description": "Collection of advice provided for this change, useful for determining the\npossible impact of this change.", "type": "array", "items": { - "$ref": "ConfigFile" + "$ref": "Advice" } - }, - "id": { - "type": "string", - "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." } }, - "id": "ConfigSource" + "id": "ConfigChange" }, - "AuthenticationRule": { - "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.", + "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": { - "oauth": { - "$ref": "OAuthRequirements", - "description": "The requirements for OAuth credentials." - }, - "customAuth": { - "$ref": "CustomAuthRequirements", - "description": "Configuration for custom authentication." - }, - "requirements": { - "description": "Requirements for additional authentication providers.", + "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": "AuthRequirement" + "$ref": "SystemParameterRule" } - }, - "selector": { - "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", - "type": "string" - }, - "allowWithoutCredential": { - "description": "If true, the service accepts API keys without any other credential.", - "type": "boolean" } - } + }, + "id": "SystemParameters" }, - "BackendRule": { - "description": "A backend rule provides configuration for an individual API element.", + "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", "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" + "createdBy": { + "description": "The user who created the Rollout. Readonly.", + "type": "string" }, - "address": { - "description": "The address of the API backend.", + "trafficPercentStrategy": { + "$ref": "TrafficPercentStrategy", + "description": "Google Service Control selects service configurations based on\ntraffic percentage." + }, + "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" }, - "selector": { + "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", + "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.", "type": "string", - "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details." + "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." + ], + "enum": [ + "ROLLOUT_STATUS_UNSPECIFIED", + "IN_PROGRESS", + "SUCCESS", + "CANCELLED", + "FAILED", + "PENDING", + "FAILED_ROLLED_BACK" + ] }, - "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" + "serviceName": { + "description": "The name of the service associated with this Rollout.", + "type": "string" } }, - "id": "BackendRule" + "id": "Rollout" }, - "Policy": { - "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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\n\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs).", + "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": { - "bindings": { - "description": "Associates a list of `members` to a `role`.\n`bindings` with no members will result in an error.", + "limits": { + "description": "List of `QuotaLimit` definitions for the service.", "type": "array", "items": { - "$ref": "Binding" + "$ref": "QuotaLimit" } }, - "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.", + "metricRules": { + "description": "List of `MetricRule` definitions, each one mapping a selected method to one\nor more metrics.", "type": "array", "items": { - "$ref": "AuditConfig" + "$ref": "MetricRule" } } - } + }, + "id": "Quota" }, - "UndeleteServiceResponse": { - "id": "UndeleteServiceResponse", - "description": "Response message for UndeleteService method.", + "GenerateConfigReportRequest": { + "description": "Request message for GenerateConfigReport method.", "type": "object", "properties": { - "service": { - "$ref": "ManagedService", - "description": "Revived service resource." + "oldConfig": { + "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", + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + } + }, + "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" } }, "icons": { @@ -2247,9 +2245,6 @@ "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" }, @@ -2258,6 +2253,9 @@ }, "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" } } } @@ -2272,33 +2270,6 @@ "resources": { "services": { "methods": { - "get": { - "httpMethod": "GET", - "parameterOrder": [ - "serviceName" - ], - "response": { - "$ref": "ManagedService" - }, - "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" - } - }, - "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}", - "id": "servicemanagement.services.get", - "path": "v1/services/{serviceName}", - "description": "Gets a managed service. Authentication is required unless the service is\npublic." - }, "testIamPermissions": { "response": { "$ref": "TestIamPermissionsResponse" @@ -2307,12 +2278,6 @@ "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": { "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", @@ -2322,15 +2287,22 @@ "location": "path" } }, + "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}:testIamPermissions", "path": "v1/{+resource}:testIamPermissions", "id": "servicemanagement.services.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" - }, - "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." + } }, "getConfig": { + "description": "Gets a service configuration (version) for a managed service.", "response": { "$ref": "Service" }, @@ -2338,72 +2310,64 @@ "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": { - "view": { - "description": "Specifies which parts of the Service Config should be returned in the\nresponse.", - "type": "string", - "location": "query", - "enum": [ - "BASIC", - "FULL" - ] - }, "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", - "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`." + "location": "path" }, "configId": { "description": "The id of the service configuration resource.", "type": "string", "location": "query" + }, + "view": { + "location": "query", + "enum": [ + "BASIC", + "FULL" + ], + "description": "Specifies which parts of the Service Config should be returned in the\nresponse.", + "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/{serviceName}/config", "path": "v1/services/{serviceName}/config", - "id": "servicemanagement.services.getConfig", - "description": "Gets a service configuration (version) for a managed service." + "id": "servicemanagement.services.getConfig" }, "delete": { + "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", + "httpMethod": "DELETE", "response": { "$ref": "Operation" }, "parameterOrder": [ "serviceName" ], - "httpMethod": "DELETE", - "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" + "type": "string", + "location": "path" } }, - "flatPath": "v1/services/{serviceName}", - "path": "v1/services/{serviceName}", - "id": "servicemanagement.services.delete" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ] }, "enable": { - "flatPath": "v1/services/{serviceName}: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" }, @@ -2411,34 +2375,45 @@ "serviceName" ], "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], "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" + "type": "string", + "location": "path" } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ], + "flatPath": "v1/services/{serviceName}:enable", + "path": "v1/services/{serviceName}:enable", + "id": "servicemanagement.services.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", + "request": { + "$ref": "EnableServiceRequest" } }, "setIamPolicy": { - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", + "request": { + "$ref": "SetIamPolicyRequest" + }, "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", - "pattern": "^services/[^/]+$", - "location": "path" + "type": "string" } }, "scopes": [ @@ -2446,14 +2421,14 @@ "https://www.googleapis.com/auth/service.management" ], "flatPath": "v1/services/{servicesId}:setIamPolicy", - "id": "servicemanagement.services.setIamPolicy", "path": "v1/{+resource}:setIamPolicy", - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", - "request": { - "$ref": "SetIamPolicyRequest" - } + "id": "servicemanagement.services.setIamPolicy" }, "disable": { + "request": { + "$ref": "DisableServiceRequest" + }, + "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", "response": { "$ref": "Operation" }, @@ -2475,13 +2450,12 @@ }, "flatPath": "v1/services/{serviceName}:disable", "path": "v1/services/{serviceName}:disable", - "id": "servicemanagement.services.disable", - "request": { - "$ref": "DisableServiceRequest" - }, - "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" + "id": "servicemanagement.services.disable" }, "getIamPolicy": { + "flatPath": "v1/services/{servicesId}:getIamPolicy", + "path": "v1/{+resource}:getIamPolicy", + "id": "servicemanagement.services.getIamPolicy", "request": { "$ref": "GetIamPolicyRequest" }, @@ -2501,54 +2475,46 @@ ], "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" + "type": "string", + "pattern": "^services/[^/]+$", + "location": "path" } - }, - "flatPath": "v1/services/{servicesId}:getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "id": "servicemanagement.services.getIamPolicy" + } }, "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", + "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", - "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`." + "location": "path" } }, "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", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "serviceName" - ], - "httpMethod": "POST" + "id": "servicemanagement.services.undelete" }, "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}\".", + "httpMethod": "GET", + "parameterOrder": [], "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": { "description": "Include services consumed by the specified consumer.\n\nThe Google Service Management implementation accepts the following\nforms:\n- project:\u003cproject_id\u003e", @@ -2567,17 +2533,28 @@ "location": "query" }, "producerProjectId": { - "location": "query", "description": "Include services produced by the specified project.", - "type": "string" + "type": "string", + "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", - "path": "v1/services", "id": "servicemanagement.services.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}\"." + "path": "v1/services" }, "create": { + "id": "servicemanagement.services.create", + "path": "v1/services", + "description": "Creates a new managed service.\nPlease note one producer project can own no more than 20 services.\n\nOperation\u003cresponse: ManagedService\u003e", + "request": { + "$ref": "ManagedService" + }, "httpMethod": "POST", "parameterOrder": [], "response": { @@ -2588,43 +2565,62 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/service.management" ], - "flatPath": "v1/services", - "id": "servicemanagement.services.create", - "path": "v1/services", - "description": "Creates a new managed service.\nPlease note one producer project can own no more than 20 services.\n\nOperation\u003cresponse: ManagedService\u003e", - "request": { - "$ref": "ManagedService" - } + "flatPath": "v1/services" }, "generateConfigReport": { + "response": { + "$ref": "GenerateConfigReportResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", "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", + "id": "servicemanagement.services.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.", "request": { "$ref": "GenerateConfigReportRequest" - }, - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "GenerateConfigReportResponse" } + }, + "get": { + "description": "Gets a managed service. Authentication is required unless the service is\npublic.", + "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" } }, "resources": { - "configs": { + "rollouts": { "methods": { "list": { - "path": "v1/services/{serviceName}/configs", - "id": "servicemanagement.services.configs.list", - "description": "Lists the history of the service configuration for a managed service,\nfrom the newest to the oldest.", + "description": "Lists the history of the service configuration rollouts for a managed\nservice, from the newest to the oldest.", "response": { - "$ref": "ListServiceConfigsResponse" + "$ref": "ListServiceRolloutsResponse" }, "parameterOrder": [ "serviceName" @@ -2637,16 +2633,21 @@ "https://www.googleapis.com/auth/service.management.readonly" ], "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'", + "type": "string", + "location": "query" + }, "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" + "type": "string", + "location": "path" }, "pageToken": { + "location": "query", "description": "The token of the page to retrieve.", - "type": "string", - "location": "query" + "type": "string" }, "pageSize": { "description": "The max number of items to include in the response list.", @@ -2655,38 +2656,34 @@ "location": "query" } }, - "flatPath": "v1/services/{serviceName}/configs" + "flatPath": "v1/services/{serviceName}/rollouts", + "path": "v1/services/{serviceName}/rollouts", + "id": "servicemanagement.services.rollouts.list" }, "get": { - "httpMethod": "GET", + "path": "v1/services/{serviceName}/rollouts/{rolloutId}", + "id": "servicemanagement.services.rollouts.get", + "description": "Gets a service configuration rollout.", + "response": { + "$ref": "Rollout" + }, "parameterOrder": [ "serviceName", - "configId" + "rolloutId" ], - "response": { - "$ref": "Service" - }, + "httpMethod": "GET", "parameters": { - "view": { - "location": "query", - "enum": [ - "BASIC", - "FULL" - ], - "description": "Specifies which parts of the Service Config should be returned in the\nresponse.", - "type": "string" - }, "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": "path", - "description": "The id of the service configuration resource.", + "rolloutId": { + "description": "The id of the rollout resource.", "required": true, - "type": "string" + "type": "string", + "location": "path" } }, "scopes": [ @@ -2695,14 +2692,17 @@ "https://www.googleapis.com/auth/service.management", "https://www.googleapis.com/auth/service.management.readonly" ], - "flatPath": "v1/services/{serviceName}/configs/{configId}", - "id": "servicemanagement.services.configs.get", - "path": "v1/services/{serviceName}/configs/{configId}", - "description": "Gets a service configuration (version) for a managed service." + "flatPath": "v1/services/{serviceName}/rollouts/{rolloutId}" }, "create": { + "path": "v1/services/{serviceName}/rollouts", + "id": "servicemanagement.services.rollouts.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", + "request": { + "$ref": "Rollout" + }, "response": { - "$ref": "Service" + "$ref": "Operation" }, "parameterOrder": [ "serviceName" @@ -2720,13 +2720,120 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/service.management" ], + "flatPath": "v1/services/{serviceName}/rollouts" + } + } + }, + "configs": { + "methods": { + "list": { + "response": { + "$ref": "ListServiceConfigsResponse" + }, + "parameterOrder": [ + "serviceName" + ], + "httpMethod": "GET", + "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" + }, + "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", "path": "v1/services/{serviceName}/configs", - "id": "servicemanagement.services.configs.create", + "id": "servicemanagement.services.configs.list", + "description": "Lists the history of the service configuration for a managed service,\nfrom the newest to the oldest." + }, + "get": { + "path": "v1/services/{serviceName}/configs/{configId}", + "id": "servicemanagement.services.configs.get", + "description": "Gets a service configuration (version) for a managed service.", + "response": { + "$ref": "Service" + }, + "parameterOrder": [ + "serviceName", + "configId" + ], + "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" + }, + "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" + ] + } + }, + "flatPath": "v1/services/{serviceName}/configs/{configId}" + }, + "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.", "request": { "$ref": "Service" - } + }, + "httpMethod": "POST", + "parameterOrder": [ + "serviceName" + ], + "response": { + "$ref": "Service" + }, + "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", + "id": "servicemanagement.services.configs.create", + "path": "v1/services/{serviceName}/configs" }, "submit": { "request": { @@ -2746,10 +2853,10 @@ ], "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" + "type": "string", + "location": "path" } }, "flatPath": "v1/services/{serviceName}/configs:submit", @@ -2760,67 +2867,40 @@ }, "consumers": { "methods": { - "getIamPolicy": { - "flatPath": "v1/services/{servicesId}/consumers/{consumersId}:getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "id": "servicemanagement.services.consumers.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.", - "response": { - "$ref": "Policy" - }, - "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 is being requested.\nSee the operation documentation for the appropriate value for this field.", - "required": true, - "type": "string" - } - } - }, - "setIamPolicy": { - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" + "setIamPolicy": { + "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", - "pattern": "^services/[^/]+/consumers/[^/]+$", - "location": "path" + "type": "string" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ], "flatPath": "v1/services/{servicesId}/consumers/{consumersId}:setIamPolicy", - "path": "v1/{+resource}:setIamPolicy", "id": "servicemanagement.services.consumers.setIamPolicy", + "path": "v1/{+resource}:setIamPolicy", + "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", "request": { "$ref": "SetIamPolicyRequest" - }, - "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy." + } }, "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" }, @@ -2830,11 +2910,11 @@ "httpMethod": "POST", "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", - "pattern": "^services/[^/]+/consumers/[^/]+$" + "type": "string" } }, "scopes": [ @@ -2845,120 +2925,38 @@ ], "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" - } - } - } - }, - "rollouts": { - "methods": { - "list": { - "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": { - "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" - }, - "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}/rollouts", - "id": "servicemanagement.services.rollouts.list", - "path": "v1/services/{serviceName}/rollouts", - "description": "Lists the history of the service configuration rollouts for a managed\nservice, from the newest to the oldest.", - "httpMethod": "GET", - "response": { - "$ref": "ListServiceRolloutsResponse" - }, - "parameterOrder": [ - "serviceName" - ] + "id": "servicemanagement.services.consumers.testIamPermissions" }, - "get": { - "httpMethod": "GET", + "getIamPolicy": { "response": { - "$ref": "Rollout" + "$ref": "Policy" }, "parameterOrder": [ - "serviceName", - "rolloutId" + "resource" ], - "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": { - "required": true, - "type": "string", - "location": "path", - "description": "The id of the rollout 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" ], - "flatPath": "v1/services/{serviceName}/rollouts/{rolloutId}", - "id": "servicemanagement.services.rollouts.get", - "path": "v1/services/{serviceName}/rollouts/{rolloutId}", - "description": "Gets a service configuration rollout." - }, - "create": { - "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\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", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "serviceName" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], "parameters": { - "serviceName": { + "resource": { "location": "path", - "description": "The name of the service. See the [overview](/service-management/overview)\nfor naming requirements. For example: `example.googleapis.com`.", + "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" + "type": "string", + "pattern": "^services/[^/]+/consumers/[^/]+$" } }, - "flatPath": "v1/services/{serviceName}/rollouts", - "path": "v1/services/{serviceName}/rollouts", - "id": "servicemanagement.services.rollouts.create" + "flatPath": "v1/services/{servicesId}/consumers/{consumersId}:getIamPolicy", + "path": "v1/{+resource}:getIamPolicy", + "id": "servicemanagement.services.consumers.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." } } } @@ -2967,16 +2965,14 @@ "operations": { "methods": { "list": { + "path": "v1/operations", + "id": "servicemanagement.operations.list", "description": "Lists service operations that match the specified filter in the request.", "response": { "$ref": "ListOperationsResponse" }, "parameterOrder": [], "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], "parameters": { "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\")`", @@ -2984,9 +2980,9 @@ "location": "query" }, "name": { + "location": "query", "description": "Not used.", - "type": "string", - "location": "query" + "type": "string" }, "pageToken": { "location": "query", @@ -3000,26 +2996,27 @@ "type": "integer" } }, - "flatPath": "v1/operations", - "path": "v1/operations", - "id": "servicemanagement.operations.list" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ], + "flatPath": "v1/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.", - "httpMethod": "GET", "response": { "$ref": "Operation" }, "parameterOrder": [ "name" ], + "httpMethod": "GET", "parameters": { "name": { - "required": true, - "type": "string", "pattern": "^operations/.+$", "location": "path", - "description": "The name of the operation resource." + "description": "The name of the operation resource.", + "required": true, + "type": "string" } }, "scopes": [ @@ -3027,19 +3024,54 @@ "https://www.googleapis.com/auth/service.management" ], "flatPath": "v1/operations/{operationsId}", + "path": "v1/{+name}", "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": { - "callback": { - "description": "JSONP", + "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" @@ -3048,17 +3080,14 @@ "enum": [ "1", "2" - ], - "description": "V1 error format.", - "type": "string" + ] }, - "alt": { - "enum": [ - "json", - "media", - "proto" - ], + "callback": { + "description": "JSONP", "type": "string", + "location": "query" + }, + "alt": { "enumDescriptions": [ "Responses with Content-Type of application/json", "Media download with context-dependent Content-Type", @@ -3066,59 +3095,30 @@ ], "location": "query", "description": "Data format for response.", - "default": "json" - }, - "access_token": { - "type": "string", - "location": "query", - "description": "OAuth access token." + "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" }, - "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": { + "access_token": { "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "description": "OAuth access token.", "type": "string" }, - "prettyPrint": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" - }, - "fields": { + "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", - "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" + "location": "query" } - } + }, + "version": "v1", + "baseUrl": "https://servicemanagement.googleapis.com/" } diff --git a/DiscoveryJson/serviceusage_v1beta1.json b/DiscoveryJson/serviceusage_v1beta1.json index c39b58449f..30445b3fab 100644 --- a/DiscoveryJson/serviceusage_v1beta1.json +++ b/DiscoveryJson/serviceusage_v1beta1.json @@ -1,75 +1,50 @@ { - "fullyEncodeReservedExpansion": true, - "title": "Service Usage API", "ownerName": "Google", "resources": { - "services": { + "operations": { "methods": { - "batchEnable": { - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], + "list": { + "path": "v1beta1/operations", + "id": "serviceusage.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": "Operation" - }, - "parameters": { - "parent": { - "pattern": "^[^/]+/[^/]+$", - "location": "path", - "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.", - "required": true, - "type": "string" - } + "$ref": "ListOperationsResponse" }, + "parameterOrder": [], + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/service.management" ], - "flatPath": "v1beta1/{v1beta1Id}/{v1beta1Id1}/services:batchEnable", - "id": "serviceusage.services.batchEnable", - "path": "v1beta1/{+parent}/services: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", - "request": { - "$ref": "BatchEnableServicesRequest" - } - }, - "enable": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", "parameters": { + "filter": { + "location": "query", + "description": "The standard list filter.", + "type": "string" + }, "name": { - "location": "path", - "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).", - "required": true, + "description": "The name of the operation's parent resource.", "type": "string", - "pattern": "^[^/]+/[^/]+/services/[^/]+$" + "location": "query" + }, + "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", - "https://www.googleapis.com/auth/service.management" - ], - "flatPath": "v1beta1/{v1beta1Id}/{v1beta1Id1}/services/{servicesId}:enable", - "path": "v1beta1/{+name}:enable", - "id": "serviceusage.services.enable", - "description": "Enable a service so that it can be used with a project.\n\nOperation\u003cresponse: google.protobuf.Empty\u003e", - "request": { - "$ref": "EnableServiceRequest" - } + "flatPath": "v1beta1/operations" }, "get": { - "flatPath": "v1beta1/{v1beta1Id}/{v1beta1Id1}/services/{servicesId}", - "path": "v1beta1/{+name}", - "id": "serviceusage.services.get", - "description": "Returns the service configuration and enabled state for a given service.", + "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": "Service" + "$ref": "Operation" }, "parameterOrder": [ "name" @@ -77,61 +52,42 @@ "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" ], "parameters": { "name": { + "pattern": "^operations/[^/]+$", "location": "path", - "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).", + "description": "The name of the operation resource.", "required": true, - "type": "string", - "pattern": "^[^/]+/[^/]+/services/[^/]+$" + "type": "string" } - } - }, - "list": { - "response": { - "$ref": "ListServicesResponse" }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], + "flatPath": "v1beta1/operations/{operationsId}", + "path": "v1beta1/{+name}", + "id": "serviceusage.operations.get" + } + } + }, + "services": { + "methods": { + "disable": { "parameters": { - "filter": { - "type": "string", - "location": "query", - "description": "Only list services that conform to the given filter.\nThe allowed filter strings are `state:ENABLED` and `state:DISABLED`." - }, - "pageToken": { - "description": "Token identifying which result to start with, which is returned by a\nprevious list call.", - "type": "string", - "location": "query" - }, - "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", - "type": "integer", - "location": "query" - }, - "parent": { - "pattern": "^[^/]+/[^/]+$", + "name": { + "pattern": "^[^/]+/[^/]+/services/[^/]+$", "location": "path", - "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).", + "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).", "required": true, "type": "string" } }, - "flatPath": "v1beta1/{v1beta1Id}/{v1beta1Id1}/services", - "path": "v1beta1/{+parent}/services", - "id": "serviceusage.services.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." - }, - "disable": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ], + "flatPath": "v1beta1/{v1beta1Id}/{v1beta1Id1}/services/{servicesId}:disable", + "path": "v1beta1/{+name}:disable", + "id": "serviceusage.services.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", "request": { "$ref": "DisableServiceRequest" @@ -142,70 +98,70 @@ "parameterOrder": [ "name" ], + "httpMethod": "POST" + }, + "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", + "request": { + "$ref": "BatchEnableServicesRequest" + }, "httpMethod": "POST", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "Operation" + }, "parameters": { - "name": { - "location": "path", - "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).", + "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.", "required": true, "type": "string", - "pattern": "^[^/]+/[^/]+/services/[^/]+$" + "pattern": "^[^/]+/[^/]+$", + "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/service.management" ], - "flatPath": "v1beta1/{v1beta1Id}/{v1beta1Id1}/services/{servicesId}:disable", - "path": "v1beta1/{+name}:disable", - "id": "serviceusage.services.disable" - } - } - }, - "operations": { - "methods": { - "list": { + "flatPath": "v1beta1/{v1beta1Id}/{v1beta1Id1}/services:batchEnable", + "id": "serviceusage.services.batchEnable", + "path": "v1beta1/{+parent}/services:batchEnable" + }, + "enable": { + "request": { + "$ref": "EnableServiceRequest" + }, + "description": "Enable a service so that it can be used with a project.\n\nOperation\u003cresponse: google.protobuf.Empty\u003e", + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], "response": { - "$ref": "ListOperationsResponse" + "$ref": "Operation" }, - "parameterOrder": [], - "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/service.management" ], "parameters": { "name": { - "type": "string", - "location": "query", - "description": "The name of the operation's parent resource." - }, - "pageToken": { - "description": "The standard list page token.", - "type": "string", - "location": "query" - }, - "pageSize": { - "description": "The standard list page size.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "filter": { - "type": "string", - "location": "query", - "description": "The standard list filter." + "pattern": "^[^/]+/[^/]+/services/[^/]+$", + "location": "path", + "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).", + "required": true, + "type": "string" } }, - "flatPath": "v1beta1/operations", - "path": "v1beta1/operations", - "id": "serviceusage.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." + "flatPath": "v1beta1/{v1beta1Id}/{v1beta1Id1}/services/{servicesId}:enable", + "id": "serviceusage.services.enable", + "path": "v1beta1/{+name}:enable" }, "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.", + "description": "Returns the service configuration and enabled state for a given service.", "response": { - "$ref": "Operation" + "$ref": "Service" }, "parameterOrder": [ "name" @@ -214,49 +170,70 @@ "parameters": { "name": { "location": "path", - "description": "The name of the operation resource.", + "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).", "required": true, "type": "string", - "pattern": "^operations/[^/]+$" + "pattern": "^[^/]+/[^/]+/services/[^/]+$" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" + "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "flatPath": "v1beta1/operations/{operationsId}", + "flatPath": "v1beta1/{v1beta1Id}/{v1beta1Id1}/services/{servicesId}", "path": "v1beta1/{+name}", - "id": "serviceusage.operations.get" + "id": "serviceusage.services.get" + }, + "list": { + "response": { + "$ref": "ListServicesResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "parameters": { + "pageSize": { + "type": "integer", + "location": "query", + "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" + }, + "parent": { + "location": "path", + "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).", + "required": true, + "type": "string", + "pattern": "^[^/]+/[^/]+$" + }, + "filter": { + "description": "Only list services that conform to the given filter.\nThe allowed filter strings are `state:ENABLED` and `state:DISABLED`.", + "type": "string", + "location": "query" + }, + "pageToken": { + "location": "query", + "description": "Token identifying which result to start with, which is returned by a\nprevious list call.", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "flatPath": "v1beta1/{v1beta1Id}/{v1beta1Id1}/services", + "path": "v1beta1/{+parent}/services", + "id": "serviceusage.services.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." } } } }, "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": { - "type": "string", "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")." + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "type": "string" }, "prettyPrint": { "description": "Returns response with indentations and line breaks.", @@ -293,6 +270,11 @@ "type": "string" }, "alt": { + "enum": [ + "json", + "media", + "proto" + ], "type": "string", "enumDescriptions": [ "Responses with Content-Type of application/json", @@ -301,1553 +283,1321 @@ ], "location": "query", "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ] + "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" + "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": { + "description": "OAuth bearer token.", "type": "string", "location": "query" } }, "version": "v1beta1", "baseUrl": "https://serviceusage.googleapis.com/", - "kind": "discovery#restDescription", - "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.", "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": "", - "revision": "20180506", + "revision": "20180509", "documentationLink": "https://cloud.google.com/service-usage/", "id": "serviceusage:v1beta1", "discoveryVersion": "v1", "version_module": true, "schemas": { - "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.", + "Step": { + "description": "Represents the status of one operation step.", "type": "object", "properties": { - "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.", + "description": { + "description": "The short description of the step.", "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\"`.", + "status": { + "enum": [ + "STATUS_UNSPECIFIED", + "DONE", + "NOT_STARTED", + "IN_PROGRESS", + "FAILED", + "CANCELLED" + ], + "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." + ] + } + }, + "id": "Step" + }, + "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": { - "$ref": "LabelDescriptor" + "type": "string" } }, - "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.", + "monitoredResource": { + "description": "The monitored resource type. The type must be defined in the\nService.monitored_resources section.", "type": "string" } }, - "id": "MonitoredResourceDescriptor" + "id": "LoggingDestination" }, - "CustomErrorRule": { - "description": "A custom error rule.", + "Option": { + "id": "Option", + "description": "A protocol buffer option, which can be attached to a message, field,\nenumeration, etc.", "type": "object", "properties": { - "selector": { - "description": "Selects messages to which this rule applies.\n\nRefer to selector for syntax details.", - "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" }, - "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" + "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": "CustomErrorRule" + } }, - "CustomAuthRequirements": { - "description": "Configuration for a custom authentication provider.", + "Logging": { + "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", "properties": { - "provider": { - "description": "A configuration string containing connection information for the\nauthentication provider, typically formatted as a SmartService string\n(go/smartservice).", - "type": "string" + "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": "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.", + "QuotaLimit": { + "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", "properties": { - "enabled": { - "description": "Whether download is enabled.", - "type": "boolean" + "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" }, - "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.", + "description": { + "type": "string", + "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`)." + }, + "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" }, - "completeNotification": { - "description": "A boolean that determines whether a notification for the completion of a\ndownload should be sent to the backend.", - "type": "boolean" + "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" }, - "maxDirectDownloadSize": { - "description": "Optional maximum acceptable size for direct download.\nThe size is specified in bytes.", + "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" + }, + "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" }, - "dropzone": { - "description": "Name of the Scotty dropzone to use for the current API.", + "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" }, - "useDirectDownload": { - "description": "A boolean that determines if direct download from ESF should be used for\ndownload of this media.", - "type": "boolean" - } - }, - "id": "MediaDownload" - }, - "DisableServiceRequest": { - "description": "Request message for the `DisableService` method.", - "type": "object", - "properties": {}, - "id": "DisableServiceRequest" - }, - "AuthorizationRule": { - "id": "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.", + "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" }, - "selector": { - "description": "Selects the API elements to which this rule applies.\n\nRefer to selector for syntax details.", + "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" } } }, - "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.", + "Method": { + "description": "Method represents a method of an API interface.", "type": "object", "properties": { - "enabled": { - "description": "Whether upload is enabled.", - "type": "boolean" + "responseTypeUrl": { + "description": "The URL of the output message type.", + "type": "string" }, - "progressNotification": { - "description": "Whether to receive a notification for progress changes of media upload.", - "type": "boolean" + "options": { + "description": "Any metadata attached to the method.", + "type": "array", + "items": { + "$ref": "Option" + } }, - "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.", + "responseStreaming": { + "description": "If true, the response is streamed.", "type": "boolean" }, - "dropzone": { - "description": "Name of the Scotty dropzone to use for the current API.", + "name": { + "description": "The simple name of this method.", "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.", + "requestTypeUrl": { + "description": "A URL of the input message type.", "type": "string" }, - "mimeTypes": { - "description": "An array of mimetype patterns. Esf will only accept uploads that match one\nof the given patterns.", - "type": "array", - "items": { - "type": "string" - } + "requestStreaming": { + "description": "If true, the request is streamed.", + "type": "boolean" }, - "maxSize": { - "description": "Optional maximum acceptable size for an upload.\nThe size is specified in bytes.", - "format": "int64", + "syntax": { + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ], + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ], + "description": "The source syntax of this method.", "type": "string" } }, - "id": "MediaUpload" + "id": "Method" }, - "BillingDestination": { - "description": "Configuration of a specific billing destination (Currently only support\nbill against consumer project).", + "EnableFailure": { "type": "object", "properties": { - "monitoredResource": { - "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.", + "errorMessage": { + "description": "An error message describing why the service could not be enabled.", "type": "string" }, - "metrics": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Names of the metrics to report to this billing destination.\nEach name must be defined in Service.metrics section." + "serviceId": { + "description": "The service id of a service that could not be enabled.", + "type": "string" } }, - "id": "BillingDestination" - }, - "BatchEnableServicesRequest": { - "id": "BatchEnableServicesRequest", - "description": "Request message for the `BatchEnableServices` method.", - "type": "object", - "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.", - "type": "array", - "items": { - "type": "string" - } - } - } + "id": "EnableFailure" }, - "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", + "Mixin": { "type": "object", "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.", + "name": { + "description": "The fully qualified name of the interface which is included.", "type": "string" }, - "skipServiceControl": { - "type": "boolean", - "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." + "root": { + "description": "If non-empty specifies a path under which inherited HTTP paths\nare rooted.", + "type": "string" } }, - "id": "UsageRule" + "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 }" }, - "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).", + "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": { - "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" + "types": { + "description": "The list of custom error detail types, e.g. 'google.foo.v1.CustomError'.", + "type": "array", + "items": { + "type": "string" + } }, - "providerId": { - "description": "id from authentication provider.\n\nExample:\n\n provider_id: bookstore_auth", - "type": "string" + "rules": { + "type": "array", + "items": { + "$ref": "CustomErrorRule" + }, + "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." } }, - "id": "AuthRequirement" + "id": "CustomError" }, - "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\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(== 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.", + "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": { - "summary": { - "type": "string", - "description": "A short summary of what the service does. Can only be provided by\nplain text." - }, - "documentationRootUrl": { - "description": "The URL to the root of documentation.", - "type": "string" + "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 documentation rules that apply to individual API elements.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "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": "DocumentationRule" + "$ref": "HttpRule" } - }, - "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" + "id": "Http" }, - "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.", + "SourceInfo": { + "description": "Source information used to create a Service Config", "type": "object", "properties": { - "requirements": { - "description": "Requirements for additional authentication providers.", + "sourceFiles": { + "description": "All files used during config generation.", "type": "array", "items": { - "$ref": "AuthRequirement" + "type": "object", + "additionalProperties": { + "type": "any", + "description": "Properties of the object. Contains field @type with type URL." + } } - }, - "selector": { - "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", - "type": "string" - }, - "allowWithoutCredential": { - "description": "If true, the service accepts API keys without any other credential.", - "type": "boolean" - }, - "oauth": { - "$ref": "OAuthRequirements", - "description": "The requirements for OAuth credentials." - }, - "customAuth": { - "description": "Configuration for custom authentication.", - "$ref": "CustomAuthRequirements" } }, - "id": "AuthenticationRule" + "id": "SourceInfo" }, - "BackendRule": { + "Control": { "properties": { - "address": { - "description": "The address of the API backend.", - "type": "string" - }, - "selector": { + "environment": { "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" + "description": "The service control environment to use. If empty, no control plane\nfeature (like quota and billing) will be enabled." } }, - "id": "BackendRule", - "description": "A backend rule provides configuration for an individual API element.", + "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" }, - "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.", + "GoogleApiServiceusageV1Service": { + "description": "A service that is available for use by the consumer.", "type": "object", "properties": { - "mixins": { - "description": "Included interfaces. See Mixin.", - "type": "array", - "items": { - "$ref": "Mixin" - } - }, - "options": { - "type": "array", - "items": { - "$ref": "Option" - }, - "description": "Any metadata attached to the interface." - }, - "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.", + "description": "The resource name of the consumer and service.\n\nA valid name would be:\n- projects/123/services/serviceusage.googleapis.com", "type": "string" }, - "syntax": { + "parent": { + "description": "The resource name of the consumer.\n\nA valid name would be:\n- projects/123", + "type": "string" + }, + "config": { + "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.", + "$ref": "GoogleApiServiceusageV1ServiceConfig" + }, + "state": { + "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." + ], "enum": [ - "SYNTAX_PROTO2", - "SYNTAX_PROTO3" + "STATE_UNSPECIFIED", + "DISABLED", + "ENABLED" ], - "description": "The source syntax of the service.", - "type": "string", - "enumDescriptions": [ - "Syntax `proto2`.", - "Syntax `proto3`." - ] + "description": "Whether or not the service has been enabled for use by the consumer.", + "type": "string" + } + }, + "id": "GoogleApiServiceusageV1Service" + }, + "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": { + "httpHeader": { + "description": "Define the HTTP header name to use for the parameter. It is case\ninsensitive.", + "type": "string" }, - "sourceContext": { - "$ref": "SourceContext", - "description": "Source context for the protocol buffer service represented by this\nmessage." + "name": { + "description": "Define the name of the parameter, such as \"api_key\" . It is case sensitive.", + "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", + "urlQueryParameter": { + "description": "Define the URL query parameter name to use for the parameter. It is case\nsensitive.", "type": "string" } }, - "id": "Api" + "id": "SystemParameter" }, - "BatchEnableServicesResponse": { + "Monitoring": { "type": "object", "properties": { - "services": { - "description": "The new state of the services after enabling.", + "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": "GoogleApiServiceusageV1Service" + "$ref": "MonitoringDestination" } }, - "failures": { - "description": "If allow_partial_success is true, and one or more services could not be\nenabled, this field contains the details about each failure.", + "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": "EnableFailure" + "$ref": "MonitoringDestination" } } }, - "id": "BatchEnableServicesResponse", - "description": "Response message for the `BatchEnableServices` method.\nThis response message is assigned to the `response` field of the returned\nOperation when that operation is done." - }, - "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", - "type": "object", - "properties": { - "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" - } - }, - "authentication": { - "$ref": "Authentication", - "description": "Auth configuration." - }, - "experimental": { - "$ref": "Experimental", - "description": "Experimental configuration." - }, - "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." - }, - "systemTypes": { - "type": "array", - "items": { - "$ref": "Type" - }, - "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." - }, - "producerProjectId": { - "type": "string", - "description": "The Google project that owns this service." - }, - "quota": { - "description": "Quota configuration.", - "$ref": "Quota" - }, - "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": { - "description": "Custom error configuration.", - "$ref": "CustomError" - }, - "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": { - "type": "array", - "items": { - "$ref": "Api" - }, - "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." - }, - "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" - } - }, - "sourceInfo": { - "$ref": "SourceInfo", - "description": "Output only. The source information for this configuration if available." - }, - "http": { - "description": "HTTP configuration.", - "$ref": "Http" - }, - "backend": { - "$ref": "Backend", - "description": "API backend configuration." - }, - "systemParameters": { - "description": "System parameter configuration.", - "$ref": "SystemParameters" - }, - "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" - } - } - }, - "id": "GoogleApiService" - }, - "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": { - "type": "object", - "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." - } - }, - "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" - } - } - }, - "id": "Authentication" - }, - "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": { - "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": { - "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": { - "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" + "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" }, - "Page": { - "description": "Represents a documentation page. A page can contain subpages to represent\nnested documentation set structure.", + "Field": { + "description": "A single field of a message type.", "type": "object", "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`.", - "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.", + "defaultValue": { + "description": "The string value of the default value of this field. Proto2 syntax only.", "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" - } - } - }, - "id": "Page" - }, - "GoogleApiServiceusageV1ServiceConfig": { - "description": "The configuration of the service.", - "type": "object", - "properties": { - "endpoints": { - "description": "Configuration for network endpoints. Contains only the names and aliases\nof the endpoints.", - "type": "array", - "items": { - "$ref": "Endpoint" - } - }, - "apis": { - "description": "A list of API interfaces exported by this service. Contains only the names,\nversions, and method names of the interfaces.", - "type": "array", - "items": { - "$ref": "Api" - } - }, - "documentation": { - "$ref": "Documentation", - "description": "Additional API documentation. Contains only the summary and the\ndocumentation URL." - }, - "usage": { - "$ref": "Usage", - "description": "Configuration controlling usage of this service." - }, - "quota": { - "description": "Quota configuration.", - "$ref": "Quota" - }, "name": { - "description": "The DNS address at which this service is available.\n\nAn example DNS address would be:\n`calendar.googleapis.com`.", - "type": "string" - }, - "authentication": { - "description": "Auth configuration. Contains only the OAuth rules.", - "$ref": "Authentication" - }, - "title": { - "description": "The product title for this service.", - "type": "string" - } - }, - "id": "GoogleApiServiceusageV1ServiceConfig" - }, - "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." - }, - "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\".", + "description": "The field name.", "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", + "typeUrl": { + "description": "The field type URL, without the scheme, for message or enumeration\ntypes. Example: `\"type.googleapis.com/google.protobuf.Timestamp\"`.", "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" + "number": { + "description": "The field number.", + "format": "int32", + "type": "integer" }, - "jwksUri": { + "kind": { + "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" + ], + "description": "The field type.", "type": "string", - "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" + "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." + ] }, - "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", + "jsonName": { + "description": "The field JSON name.", "type": "string" - } - }, - "id": "AuthProvider" - }, - "EnumValue": { - "id": "EnumValue", - "description": "Enum value definition.", - "type": "object", - "properties": { + }, "options": { - "description": "Protocol buffer options.", + "description": "The protocol buffer options.", "type": "array", "items": { "$ref": "Option" } }, - "number": { - "type": "integer", - "description": "Enum value number.", - "format": "int32" + "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" }, - "name": { - "description": "Enum value name.", - "type": "string" - } - } - }, - "Service": { - "description": "A service that is available for use by the consumer.", - "type": "object", - "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." + "packed": { + "description": "Whether to use alternative packed wire representation.", + "type": "boolean" }, - "state": { + "cardinality": { "enum": [ - "STATE_UNSPECIFIED", - "DISABLED", - "ENABLED" + "CARDINALITY_UNKNOWN", + "CARDINALITY_OPTIONAL", + "CARDINALITY_REQUIRED", + "CARDINALITY_REPEATED" ], - "description": "Whether or not the service has been enabled for use by the consumer.", + "description": "The field cardinality.", "type": "string", "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." + "For fields with unknown cardinality.", + "For optional fields.", + "For required fields. Proto2 syntax only.", + "For repeated fields." ] - }, - "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" } }, - "id": "Service" + "id": "Field" }, - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", + "Enum": { + "id": "Enum", + "description": "Enum type definition.", "type": "object", "properties": { - "operations": { - "description": "A list of operations that matches the specified filter in the request.", + "name": { + "description": "Enum type name.", + "type": "string" + }, + "enumvalue": { + "description": "Enum value definitions.", "type": "array", "items": { - "$ref": "Operation" + "$ref": "EnumValue" } }, - "nextPageToken": { - "type": "string", - "description": "The standard List next-page token." + "options": { + "description": "Protocol buffer options.", + "type": "array", + "items": { + "$ref": "Option" + } + }, + "sourceContext": { + "description": "The source context.", + "$ref": "SourceContext" + }, + "syntax": { + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ], + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ], + "description": "The source syntax.", + "type": "string" } - }, - "id": "ListOperationsResponse" + } }, - "CustomHttpPattern": { - "description": "A custom pattern is used for defining custom HTTP verb.", + "EnableServiceRequest": { + "description": "Request message for the `EnableService` method.", "type": "object", - "properties": { - "path": { - "type": "string", - "description": "The path matched by this custom verb." - }, - "kind": { - "type": "string", - "description": "The name of this custom HTTP verb." - } - }, - "id": "CustomHttpPattern" + "properties": {}, + "id": "EnableServiceRequest" }, - "OperationMetadata": { - "description": "The metadata associated with a long running operation resource.", + "LabelDescriptor": { + "id": "LabelDescriptor", + "description": "A description of a label.", "type": "object", "properties": { - "startTime": { - "description": "The start time of the operation.", - "format": "google-datetime", + "description": { + "description": "A human-readable description for the label.", "type": "string" }, - "resourceNames": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The full name of the resources that this operation is directly\nassociated with." - }, - "steps": { - "description": "Detailed status information for each step. The order is undetermined.", - "type": "array", - "items": { - "$ref": "Step" - } + "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." + ] }, - "progressPercentage": { - "description": "Percentage of completion of this operation, ranging from 0 to 100.", - "format": "int32", - "type": "integer" + "key": { + "description": "The label key.", + "type": "string" } - }, - "id": "OperationMetadata" + } }, - "SystemParameterRule": { - "description": "Define a system parameter rule mapping system parameter definitions to\nmethods.", + "EnableServiceResponse": { + "description": "Response message for the `EnableService` method.\nThis response message is assigned to the `response` field of the returned\nOperation when that operation is done.", "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" - } + "service": { + "description": "The new state of the service after enabling.", + "$ref": "GoogleApiServiceusageV1Service" } }, - "id": "SystemParameterRule" + "id": "EnableServiceResponse" }, - "HttpRule": { - "id": "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": { + "description": "A protocol buffer message type.", "type": "object", "properties": { - "post": { - "description": "Used for creating a resource.", - "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." - }, - "restMethodName": { - "type": "string", - "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." - }, - "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": { - "type": "string", - "description": "Selects methods to which this rule applies.\n\nRefer to selector for syntax details." - }, - "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." - }, - "patch": { - "description": "Used for updating a resource.", + "syntax": { + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ], + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ], + "description": "The source syntax.", "type": "string" }, - "get": { - "description": "Used for listing and getting information about resources.", - "type": "string" + "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.", + "options": { + "description": "The protocol buffer options.", "type": "array", "items": { - "$ref": "AuthorizationRule" + "$ref": "Option" } }, - "put": { - "description": "Used for updating a resource.", - "type": "string" - }, - "delete": { - "description": "Used for deleting a resource.", - "type": "string" + "fields": { + "type": "array", + "items": { + "$ref": "Field" + }, + "description": "The list of fields." }, - "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" - } - } - }, - "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.", + "name": { + "description": "The fully qualified message name.", "type": "string" }, - "metrics": { - "description": "Names of the metrics to report to this monitoring destination.\nEach name must be defined in Service.metrics section.", + "oneofs": { + "description": "The list of types appearing in `oneof` definitions in this type.", "type": "array", "items": { "type": "string" } } }, - "id": "MonitoringDestination" + "id": "Type" }, - "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.", + "Experimental": { + "id": "Experimental", + "description": "Experimental service configuration. These configuration options can\nonly be used by whitelisted users.", + "type": "object", + "properties": { + "authorization": { + "$ref": "AuthorizationConfig", + "description": "Authorization configuration." + } + } + }, + "Backend": { + "id": "Backend", + "description": "`Backend` defines the backend configuration for a service.", "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.", + "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": "SystemParameterRule" + "$ref": "BackendRule" } } + } + }, + "DocumentationRule": { + "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": { + "type": "string", + "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." + } }, - "id": "SystemParameters" + "id": "DocumentationRule", + "description": "A documentation rule provides information about individual API elements.", + "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", + "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": { - "limits": { - "description": "List of `QuotaLimit` definitions for the service.", + "provider": { + "description": "The name of the authorization provider, such as\nfirebaserules.googleapis.com.", + "type": "string" + } + }, + "id": "AuthorizationConfig" + }, + "ContextRule": { + "properties": { + "provided": { + "description": "A list of full type names of provided contexts.", "type": "array", "items": { - "$ref": "QuotaLimit" + "type": "string" } }, - "metricRules": { - "description": "List of `MetricRule` definitions, each one mapping a selected method to one\nor more metrics.", + "requested": { + "description": "A list of full type names of requested contexts.", "type": "array", "items": { - "$ref": "MetricRule" + "type": "string" } - } - }, - "id": "Quota" - }, - "ServiceConfig": { - "description": "The configuration of the service.", - "type": "object", - "properties": { - "title": { - "description": "The product title for this service.", - "type": "string" }, - "endpoints": { - "description": "Configuration for network endpoints. Contains only the names and aliases\nof the endpoints.", + "allowedRequestExtensions": { + "description": "A list of full type names or extension IDs of extensions allowed in grpc\nside channel from client to backend.", "type": "array", "items": { - "$ref": "Endpoint" + "type": "string" } }, - "documentation": { - "description": "Additional API documentation. Contains only the summary and the\ndocumentation URL.", - "$ref": "Documentation" - }, - "apis": { + "allowedResponseExtensions": { + "description": "A list of full type names or extension IDs of extensions allowed in grpc\nside channel from backend to client.", "type": "array", "items": { - "$ref": "Api" - }, - "description": "A list of API interfaces exported by this service. Contains only the names,\nversions, and method names of the interfaces." - }, - "usage": { - "description": "Configuration controlling usage of this service.", - "$ref": "Usage" - }, - "quota": { - "$ref": "Quota", - "description": "Quota configuration." + "type": "string" + } }, - "name": { - "description": "The DNS address at which this service is available.\n\nAn example DNS address would be:\n`calendar.googleapis.com`.", + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", "type": "string" - }, - "authentication": { - "$ref": "Authentication", - "description": "Auth configuration. Contains only the OAuth rules." } }, - "id": "ServiceConfig" + "id": "ContextRule", + "description": "A context rule provides information about the context for an individual API\nelement.", + "type": "object" }, - "Step": { - "description": "Represents the status of one operation step.", + "SourceContext": { + "description": "`SourceContext` represents information about the source of a\nprotobuf element, like the file in which it is defined.", "type": "object", "properties": { - "status": { - "description": "The status code.", + "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" + }, + "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": { + "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" + }, + "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": { + "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", "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." + "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": [ - "STATUS_UNSPECIFIED", - "DONE", - "NOT_STARTED", - "IN_PROGRESS", - "FAILED", - "CANCELLED" + "VALUE_TYPE_UNSPECIFIED", + "BOOL", + "INT64", + "DOUBLE", + "STRING", + "DISTRIBUTION", + "MONEY" + ] + }, + "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." ] }, + "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" + }, "description": { - "description": "The short description of the step.", + "description": "A detailed description of the metric, which can be used in documentation.", + "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" } }, - "id": "Step" + "id": "MetricDescriptor" + }, + "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" + }, + "ListServicesResponse": { + "description": "Response message for the `ListServices` method.", + "type": "object", + "properties": { + "services": { + "description": "The available services for the requested project.", + "type": "array", + "items": { + "$ref": "Service" + } + }, + "nextPageToken": { + "type": "string", + "description": "Token that can be passed to `ListServices` to resume a paginated\nquery." + } + }, + "id": "ListServicesResponse" }, - "LoggingDestination": { - "description": "Configuration of a specific logging destination (the producer project\nor the consumer project).", + "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": { - "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 \"/\".", + "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" } }, - "monitoredResource": { - "description": "The monitored resource type. The type must be defined in the\nService.monitored_resources section.", + "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": "LoggingDestination" + "id": "Endpoint" }, - "Option": { - "description": "A protocol buffer option, which can be attached to a message, field,\nenumeration, etc.", + "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": { - "value": { - "additionalProperties": { - "type": "any", - "description": "Properties of the object. Contains field @type with type URL." - }, - "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" + "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" } }, - "id": "Option" + "id": "OAuthRequirements" }, - "Logging": { + "Usage": { + "description": "Configuration controlling usage of a service.", "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.", + "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": "LoggingDestination" + "$ref": "UsageRule" } }, - "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.", + "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": { - "$ref": "LoggingDestination" + "type": "string" } } }, - "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" + "id": "Usage" }, - "Method": { + "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.", "type": "object", "properties": { - "requestStreaming": { - "type": "boolean", - "description": "If true, the request is streamed." - }, - "syntax": { - "enum": [ - "SYNTAX_PROTO2", - "SYNTAX_PROTO3" - ], - "description": "The source syntax of this method.", - "type": "string", - "enumDescriptions": [ - "Syntax `proto2`.", - "Syntax `proto3`." - ] - }, - "responseTypeUrl": { - "type": "string", - "description": "The URL of the output message type." - }, - "options": { - "description": "Any metadata attached to the method.", + "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": "Option" + "$ref": "ContextRule" } + } + }, + "id": "Context" + }, + "DisableServiceResponse": { + "description": "Response message for the `DisableService` method.\nThis response message is assigned to the `response` field of the returned\nOperation when that operation is done.", + "type": "object", + "properties": { + "service": { + "$ref": "GoogleApiServiceusageV1Service", + "description": "The new state of the service after disabling." + } + }, + "id": "DisableServiceResponse" + }, + "LogDescriptor": { + "properties": { + "description": { + "description": "A human-readable description of this log. This information appears in\nthe documentation and can contain details.", + "type": "string" }, - "responseStreaming": { - "description": "If true, the response is streamed.", - "type": "boolean" + "displayName": { + "description": "The human-readable name for this log. This information appears on\nthe user interface and should be concise.", + "type": "string" + }, + "labels": { + "type": "array", + "items": { + "$ref": "LabelDescriptor" + }, + "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." }, "name": { - "description": "The simple name of this method.", - "type": "string" + "type": "string", + "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 [/_-.]." + } + }, + "id": "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" + }, + "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" }, - "requestTypeUrl": { - "description": "A URL of the input message type.", + "selector": { + "description": "Selects messages to which this rule applies.\n\nRefer to selector for syntax details.", "type": "string" } }, - "id": "Method", - "description": "Method represents a method of an API interface." + "id": "CustomErrorRule", + "description": "A custom error rule.", + "type": "object" }, - "QuotaLimit": { + "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": { - "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" + "name": { + "type": "string", + "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}\"`." }, - "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.", + "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" }, - "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", + "description": { + "description": "Optional. A detailed description of the monitored resource type that might\nbe used in documentation.", "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": { + "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" }, - "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" + "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" + } + } + }, + "id": "MonitoredResourceDescriptor" + }, + "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" }, - "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.", + "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" }, - "defaultLimit": { - "type": "string", - "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" - }, - "displayName": { - "type": "string", - "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." + "completeNotification": { + "description": "A boolean that determines whether a notification for the completion of a\ndownload should be sent to the backend.", + "type": "boolean" }, - "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.", + "maxDirectDownloadSize": { + "description": "Optional maximum acceptable size for direct download.\nThe size is specified in bytes.", + "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`).", + "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": "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": "MediaDownload" }, - "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 }", + "CustomAuthRequirements": { + "description": "Configuration for a custom authentication provider.", "type": "object", "properties": { - "root": { - "description": "If non-empty specifies a path under which inherited HTTP paths\nare rooted.", + "provider": { + "description": "A configuration string containing connection information for the\nauthentication provider, typically formatted as a SmartService string\n(go/smartservice).", "type": "string" - }, - "name": { - "type": "string", - "description": "The fully qualified name of the interface which is included." } }, - "id": "Mixin" + "id": "CustomAuthRequirements" }, - "EnableFailure": { + "DisableServiceRequest": { + "description": "Request message for the `DisableService` method.", + "type": "object", + "properties": {}, + "id": "DisableServiceRequest" + }, + "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": { - "serviceId": { - "description": "The service id of a service that could not be enabled.", + "selector": { + "description": "Selects the API elements to which this rule applies.\n\nRefer to selector for syntax details.", "type": "string" }, - "errorMessage": { - "description": "An error message describing why the service could not be enabled.", - "type": "string" + "permissions": { + "type": "string", + "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." } }, - "id": "EnableFailure" + "id": "AuthorizationRule" }, - "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", + "MediaUpload": { "properties": { - "types": { - "description": "The list of custom error detail types, e.g. 'google.foo.v1.CustomError'.", + "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" + }, + "mimeTypes": { + "description": "An array of mimetype patterns. Esf will only accept uploads that match one\nof the given patterns.", "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" - } + "maxSize": { + "description": "Optional maximum acceptable size for an upload.\nThe size is specified in bytes.", + "format": "int64", + "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" + }, + "progressNotification": { + "type": "boolean", + "description": "Whether to receive a notification for progress changes of media upload." + }, + "enabled": { + "description": "Whether upload is enabled.", + "type": "boolean" + }, + "dropzone": { + "description": "Name of the Scotty dropzone to use for the current API.", + "type": "string" } }, - "id": "CustomError" + "id": "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" }, - "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.", + "BillingDestination": { + "description": "Configuration of a specific billing destination (Currently only support\nbill against consumer project).", "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.", + "metrics": { + "description": "Names of the metrics to report to this billing destination.\nEach name must be defined in Service.metrics section.", "type": "array", "items": { - "$ref": "HttpRule" + "type": "string" } + }, + "monitoredResource": { + "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.", + "type": "string" } }, - "id": "Http" + "id": "BillingDestination" }, - "SourceInfo": { + "BatchEnableServicesRequest": { + "id": "BatchEnableServicesRequest", + "description": "Request message for the `BatchEnableServices` method.", + "type": "object", "properties": { - "sourceFiles": { - "description": "All files used during config generation.", + "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.", "type": "array", "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" + "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.", + "UsageRule": { "type": "object", "properties": { - "environment": { - "description": "The service control environment to use. If empty, no control plane\nfeature (like quota and billing) will be enabled.", + "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": { + "type": "boolean", + "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." } }, - "id": "Control" + "id": "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" }, - "GoogleApiServiceusageV1Service": { + "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": { - "config": { - "$ref": "GoogleApiServiceusageV1ServiceConfig", - "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." - }, - "state": { - "enum": [ - "STATE_UNSPECIFIED", - "DISABLED", - "ENABLED" - ], - "description": "Whether or not the service has been enabled for use by the consumer.", - "type": "string", - "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." - ] - }, - "name": { - "description": "The resource name of the consumer and service.\n\nA valid name would be:\n- projects/123/services/serviceusage.googleapis.com", + "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" }, - "parent": { - "description": "The resource name of the consumer.\n\nA valid name would be:\n- projects/123", + "providerId": { + "description": "id from authentication provider.\n\nExample:\n\n provider_id: bookstore_auth", "type": "string" } }, - "id": "GoogleApiServiceusageV1Service", - "description": "A service that is available for use by the consumer.", - "type": "object" + "id": "AuthRequirement" }, - "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.", + "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\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(== 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": { - "urlQueryParameter": { - "description": "Define the URL query parameter name to use for the parameter. It is case\nsensitive.", + "summary": { + "description": "A short summary of what the service does. Can only be provided by\nplain text.", "type": "string" }, - "httpHeader": { - "description": "Define the HTTP header name to use for the parameter. It is case\ninsensitive.", + "documentationRootUrl": { + "description": "The URL to the root of documentation.", "type": "string" }, - "name": { - "description": "Define the name of the parameter, such as \"api_key\" . It is case sensitive.", - "type": "string" - } - }, - "id": "SystemParameter" - }, - "Monitoring": { - "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.", + "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": "MonitoringDestination" + "$ref": "DocumentationRule" } }, - "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.", + "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": "MonitoringDestination" + "$ref": "Page" } } }, - "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" + "id": "Documentation" }, - "Field": { - "description": "A single field of a message type.", + "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": { - "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.", - "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" + "requirements": { + "description": "Requirements for additional authentication providers.", + "type": "array", + "items": { + "$ref": "AuthRequirement" + } }, - "jsonName": { - "description": "The field JSON name.", + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", "type": "string" }, - "kind": { - "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" - ], - "description": "The field type.", - "type": "string", - "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." - ] + "allowWithoutCredential": { + "description": "If true, the service accepts API keys without any other credential.", + "type": "boolean" }, - "options": { - "description": "The protocol buffer options.", - "type": "array", - "items": { - "$ref": "Option" - } + "oauth": { + "$ref": "OAuthRequirements", + "description": "The requirements for OAuth credentials." + }, + "customAuth": { + "description": "Configuration for custom authentication.", + "$ref": "CustomAuthRequirements" } }, - "id": "Field" + "id": "AuthenticationRule" }, - "Enum": { - "description": "Enum type definition.", + "BackendRule": { + "description": "A backend rule provides configuration for an individual API element.", "type": "object", "properties": { - "name": { - "description": "Enum type name.", + "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" }, - "enumvalue": { - "description": "Enum value definitions.", + "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" + } + }, + "id": "BackendRule" + }, + "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", + "properties": { + "mixins": { + "description": "Included interfaces. See Mixin.", "type": "array", "items": { - "$ref": "EnumValue" + "$ref": "Mixin" } }, "options": { - "description": "Protocol buffer 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" + }, "sourceContext": { - "description": "The source context.", - "$ref": "SourceContext" + "$ref": "SourceContext", + "description": "Source context for the protocol buffer service represented by this\nmessage." }, "syntax": { - "type": "string", "enumDescriptions": [ "Syntax `proto2`.", "Syntax `proto3`." @@ -1856,433 +1606,681 @@ "SYNTAX_PROTO2", "SYNTAX_PROTO3" ], - "description": "The source syntax." - } - }, - "id": "Enum" - }, - "EnableServiceRequest": { - "description": "Request message for the `EnableService` method.", - "type": "object", - "properties": {}, - "id": "EnableServiceRequest" - }, - "LabelDescriptor": { - "description": "A description of a label.", - "type": "object", - "properties": { - "key": { - "description": "The label key.", + "description": "The source syntax of the service.", "type": "string" }, - "description": { - "type": "string", - "description": "A human-readable description for the label." - }, - "valueType": { - "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." - ], - "enum": [ - "STRING", - "BOOL", - "INT64" - ] + "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" } }, - "id": "LabelDescriptor" + "id": "Api" }, - "EnableServiceResponse": { - "description": "Response message for the `EnableService` method.\nThis response message is assigned to the `response` field of the returned\nOperation when that operation is done.", + "BatchEnableServicesResponse": { + "description": "Response message for the `BatchEnableServices` method.\nThis response message is assigned to the `response` field of the returned\nOperation when that operation is done.", "type": "object", "properties": { - "service": { - "description": "The new state of the service after enabling.", - "$ref": "GoogleApiServiceusageV1Service" + "services": { + "description": "The new state of the services after enabling.", + "type": "array", + "items": { + "$ref": "GoogleApiServiceusageV1Service" + } + }, + "failures": { + "description": "If allow_partial_success is true, and one or more services could not be\nenabled, this field contains the details about each failure.", + "type": "array", + "items": { + "$ref": "EnableFailure" + } } }, - "id": "EnableServiceResponse" + "id": "BatchEnableServicesResponse" }, - "Type": { - "description": "A protocol buffer message type.", + "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", "type": "object", "properties": { - "options": { - "description": "The protocol buffer options.", + "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": "Option" + "$ref": "MonitoredResourceDescriptor" } }, - "fields": { - "description": "The list of fields.", + "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": "Field" + "$ref": "Enum" + } + }, + "context": { + "$ref": "Context", + "description": "Context configuration." + }, + "id": { + "type": "string", + "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." + }, + "usage": { + "$ref": "Usage", + "description": "Configuration controlling usage of this service." + }, + "metrics": { + "type": "array", + "items": { + "$ref": "MetricDescriptor" + }, + "description": "Defines the metrics used by this service." + }, + "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.", + "type": "string" + }, + "quota": { + "description": "Quota configuration.", + "$ref": "Quota" + }, + "billing": { + "description": "Billing configuration.", + "$ref": "Billing" + }, "name": { - "description": "The fully qualified message name.", + "description": "The DNS address at which this service is available,\ne.g. `calendar.googleapis.com`.", "type": "string" }, - "oneofs": { - "description": "The list of types appearing in `oneof` definitions in this type.", + "customError": { + "$ref": "CustomError", + "description": "Custom error configuration." + }, + "title": { + "type": "string", + "description": "The product title for this service." + }, + "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": { - "type": "string" + "$ref": "Endpoint" } }, - "syntax": { - "enumDescriptions": [ - "Syntax `proto2`.", - "Syntax `proto3`." - ], - "enum": [ - "SYNTAX_PROTO2", - "SYNTAX_PROTO3" - ], - "description": "The source syntax.", - "type": "string" + "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" + } }, - "sourceContext": { - "$ref": "SourceContext", - "description": "The source context." + "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" + } + }, + "sourceInfo": { + "$ref": "SourceInfo", + "description": "Output only. The source information for this configuration if available." + }, + "http": { + "$ref": "Http", + "description": "HTTP configuration." + }, + "systemParameters": { + "description": "System parameter configuration.", + "$ref": "SystemParameters" + }, + "backend": { + "description": "API backend configuration.", + "$ref": "Backend" } }, - "id": "Type" + "id": "GoogleApiService" }, - "Experimental": { + "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": { - "authorization": { - "description": "Authorization configuration.", - "$ref": "AuthorizationConfig" + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + "type": "string" + }, + "metricCosts": { + "type": "object", + "additionalProperties": { + "type": "string", + "format": "int64" + }, + "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." } }, - "id": "Experimental", - "description": "Experimental service configuration. These configuration options can\nonly be used by whitelisted users." + "id": "MetricRule" }, - "Backend": { + "Authentication": { "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 API backend rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "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": "BackendRule" + "$ref": "AuthenticationRule" } } }, - "id": "Backend", - "description": "`Backend` defines the backend configuration for a service." + "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" }, - "DocumentationRule": { + "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "type": "object", "properties": { - "description": { + "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": { "type": "string", - "description": "Description of the selected API(s)." + "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`." }, - "deprecationDescription": { - "description": "Deprecation description of the selected element(s). It can be provided if an\nelement is marked as `deprecated`.", - "type": "string" + "error": { + "description": "The error result of the operation in case of failure or cancellation.", + "$ref": "Status" }, - "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" + "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\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." } }, - "id": "DocumentationRule", - "description": "A documentation rule provides information about individual API elements.", - "type": "object" + "id": "Operation" }, - "AuthorizationConfig": { + "Page": { + "type": "object", "properties": { - "provider": { - "description": "The name of the authorization provider, such as\nfirebaserules.googleapis.com.", + "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" + }, + "content": { + "type": "string", + "description": "The Markdown content of the page. You can use \u003ccode\u003e(== include {path} ==)\u003c/code\u003e\nto include content from a Markdown file." + }, + "subpages": { + "description": "Subpages of this page. The order of subpages specified here will be\nhonored in the generated docset.", + "type": "array", + "items": { + "$ref": "Page" + } } }, - "id": "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" + "id": "Page", + "description": "Represents a documentation page. A page can contain subpages to represent\nnested documentation set structure." }, - "ContextRule": { - "id": "ContextRule", - "description": "A context rule provides information about the context for an individual API\nelement.", - "type": "object", + "GoogleApiServiceusageV1ServiceConfig": { "properties": { - "allowedRequestExtensions": { - "description": "A list of full type names or extension IDs of extensions allowed in grpc\nside channel from client to backend.", + "apis": { + "description": "A list of API interfaces exported by this service. Contains only the names,\nversions, and method names of the interfaces.", "type": "array", "items": { - "type": "string" + "$ref": "Api" } }, - "allowedResponseExtensions": { - "description": "A list of full type names or extension IDs of extensions allowed in grpc\nside channel from backend to client.", - "type": "array", - "items": { - "type": "string" - } + "documentation": { + "description": "Additional API documentation. Contains only the summary and the\ndocumentation URL.", + "$ref": "Documentation" }, - "selector": { - "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + "usage": { + "$ref": "Usage", + "description": "Configuration controlling usage of this service." + }, + "quota": { + "description": "Quota configuration.", + "$ref": "Quota" + }, + "name": { + "description": "The DNS address at which this service is available.\n\nAn example DNS address would be:\n`calendar.googleapis.com`.", "type": "string" }, - "provided": { - "description": "A list of full type names of provided contexts.", - "type": "array", - "items": { - "type": "string" - } + "authentication": { + "description": "Auth configuration. Contains only the OAuth rules.", + "$ref": "Authentication" }, - "requested": { + "title": { + "type": "string", + "description": "The product title for this service." + }, + "endpoints": { + "description": "Configuration for network endpoints. Contains only the names and aliases\nof the endpoints.", "type": "array", "items": { - "type": "string" - }, - "description": "A list of full type names of requested contexts." + "$ref": "Endpoint" + } } - } + }, + "id": "GoogleApiServiceusageV1ServiceConfig", + "description": "The configuration of the service.", + "type": "object" }, - "SourceContext": { - "description": "`SourceContext` represents information about the source of a\nprotobuf element, like the file in which it is defined.", + "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": { - "fileName": { - "description": "The path-qualified name of the .proto file that contained the associated\nprotobuf element. For example: `\"google/protobuf/source_context.proto\"`.", + "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": "SourceContext" + "id": "Status" }, - "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.", + "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": { - "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.", + "jwksUri": { "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": "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" }, - "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.", + "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" }, - "description": { - "description": "A detailed description of the metric, which can be used in documentation.", + "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" }, - "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.", + "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" }, - "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.", + "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": "AuthProvider" + }, + "EnumValue": { + "description": "Enum value definition.", + "type": "object", + "properties": { + "number": { + "description": "Enum value number.", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "Enum value name.", + "type": "string" + }, + "options": { "type": "array", "items": { - "$ref": "LabelDescriptor" - } - }, + "$ref": "Option" + }, + "description": "Protocol buffer options." + } + }, + "id": "EnumValue" + }, + "Service": { + "description": "A service that is available for use by the consumer.", + "type": "object", + "properties": { "name": { - "description": "The resource name of the metric descriptor.", + "description": "The resource name of the consumer and service.\n\nA valid name would be:\n- projects/123/services/serviceusage.googleapis.com", "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\"", + "parent": { + "description": "The resource name of the consumer.\n\nA valid name would be:\n- projects/123", "type": "string" }, - "valueType": { + "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." + }, + "state": { + "description": "Whether or not the service has been enabled for use by the consumer.", + "type": "string", "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" + "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." ], - "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" - } - }, - "id": "MetricDescriptor" - }, - "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" - } + "enum": [ + "STATE_UNSPECIFIED", + "DISABLED", + "ENABLED" + ] } }, - "id": "Billing" + "id": "Service" }, - "ListServicesResponse": { - "id": "ListServicesResponse", - "description": "Response message for the `ListServices` method.", + "ListOperationsResponse": { "type": "object", "properties": { - "services": { - "description": "The available services for the requested project.", + "operations": { "type": "array", "items": { - "$ref": "Service" - } + "$ref": "Operation" + }, + "description": "A list of operations that matches the specified filter in the request." }, "nextPageToken": { - "description": "Token that can be passed to `ListServices` to resume a paginated\nquery.", + "description": "The standard List next-page token.", "type": "string" } - } + }, + "id": "ListOperationsResponse", + "description": "The response message for Operations.ListOperations." }, - "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", + "OperationMetadata": { + "id": "OperationMetadata", + "description": "The metadata associated with a long running operation resource.", "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.", + "startTime": { + "description": "The start time of the operation.", + "format": "google-datetime", + "type": "string" + }, + "resourceNames": { "type": "array", "items": { "type": "string" - } + }, + "description": "The full name of the resources that this operation is directly\nassociated with." }, - "features": { - "description": "The list of features enabled on this endpoint.", + "steps": { + "description": "Detailed status information for each step. The order is undetermined.", "type": "array", "items": { - "type": "string" + "$ref": "Step" } }, - "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.", + "progressPercentage": { + "description": "Percentage of completion of this operation, ranging from 0 to 100.", + "format": "int32", + "type": "integer" + } + } + }, + "CustomHttpPattern": { + "type": "object", + "properties": { + "kind": { + "description": "The name of this custom HTTP verb.", "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\".", + "path": { + "description": "The path matched by this custom verb.", "type": "string" } }, - "id": "Endpoint" + "id": "CustomHttpPattern", + "description": "A custom pattern is used for defining custom HTTP verb." }, - "OAuthRequirements": { + "SystemParameterRule": { + "description": "Define a system parameter rule mapping system parameter definitions to\nmethods.", "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", + "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": "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": "SystemParameterRule" }, - "Usage": { + "HttpRule": { "type": "object", "properties": { - "producerNotificationChannel": { + "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": { "type": "string", - "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." + "description": "Selects methods to which this rule applies.\n\nRefer to selector for syntax details." }, - "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.", + "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." + }, + "patch": { + "description": "Used for updating a resource.", + "type": "string" + }, + "get": { + "description": "Used for listing and getting information about resources.", + "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": "UsageRule" + "$ref": "AuthorizationRule" } }, - "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'.", + "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" + }, + "post": { + "description": "Used for creating a resource.", + "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." + } + }, + "id": "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." + }, + "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": "Usage", - "description": "Configuration controlling usage of a service." + "id": "MonitoringDestination" }, - "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.", + "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": "A list of RPC context rules that apply to individual API methods.\n\n**NOTE:** All service configuration rules follow \"last one wins\" order.", + "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": "ContextRule" + "$ref": "SystemParameterRule" } } }, - "id": "Context" + "id": "SystemParameters" }, - "DisableServiceResponse": { + "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": { - "service": { - "$ref": "GoogleApiServiceusageV1Service", - "description": "The new state of the service after disabling." + "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": "DisableServiceResponse", - "description": "Response message for the `DisableService` method.\nThis response message is assigned to the `response` field of the returned\nOperation when that operation is done." + "id": "Quota" }, - "LogDescriptor": { - "id": "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", + "ServiceConfig": { "properties": { - "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.", + "title": { + "description": "The product title for this service.", "type": "string" }, - "displayName": { - "description": "The human-readable name for this log. This information appears on\nthe user interface and should be concise.", - "type": "string" + "endpoints": { + "description": "Configuration for network endpoints. Contains only the names and aliases\nof the endpoints.", + "type": "array", + "items": { + "$ref": "Endpoint" + } }, - "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.", + "apis": { + "description": "A list of API interfaces exported by this service. Contains only the names,\nversions, and method names of the interfaces.", "type": "array", "items": { - "$ref": "LabelDescriptor" + "$ref": "Api" } + }, + "documentation": { + "description": "Additional API documentation. Contains only the summary and the\ndocumentation URL.", + "$ref": "Documentation" + }, + "usage": { + "$ref": "Usage", + "description": "Configuration controlling usage of this service." + }, + "quota": { + "description": "Quota configuration.", + "$ref": "Quota" + }, + "name": { + "description": "The DNS address at which this service is available.\n\nAn example DNS address would be:\n`calendar.googleapis.com`.", + "type": "string" + }, + "authentication": { + "$ref": "Authentication", + "description": "Auth configuration. Contains only the OAuth rules." } - } + }, + "id": "ServiceConfig", + "description": "The configuration of the service.", + "type": "object" } }, "protocol": "rest", @@ -2294,14 +2292,14 @@ "auth": { "oauth2": { "scopes": { + "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" }, "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" } } } @@ -2309,5 +2307,7 @@ "rootUrl": "https://serviceusage.googleapis.com/", "ownerDomain": "google.com", "name": "serviceusage", - "batchPath": "batch" + "batchPath": "batch", + "fullyEncodeReservedExpansion": true, + "title": "Service Usage API" } diff --git a/DiscoveryJson/serviceuser_v1.json b/DiscoveryJson/serviceuser_v1.json index 43b195c798..495ebc18ab 100644 --- a/DiscoveryJson/serviceuser_v1.json +++ b/DiscoveryJson/serviceuser_v1.json @@ -1,975 +1,702 @@ { - "ownerName": "Google", - "resources": { - "projects": { - "resources": { - "services": { - "methods": { - "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", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], - "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", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/services/[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/projects/{projectsId}/services/{servicesId}:disable", - "path": "v1/{+name}:disable", - "id": "serviceuser.projects.services.disable" - }, - "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", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/service.management" - ], - "parameters": { - "name": { - "required": true, - "type": "string", - "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" - } - }, - "flatPath": "v1/projects/{projectsId}/services/{servicesId}:enable", - "path": "v1/{+name}:enable", - "id": "serviceuser.projects.services.enable" - }, - "list": { - "flatPath": "v1/projects/{projectsId}/services", - "path": "v1/{+parent}/services", - "id": "serviceuser.projects.services.list", - "description": "List enabled services for the specified consumer.", - "response": { - "$ref": "ListEnabledServicesResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-platform.read-only" - ], - "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": { - "location": "query", - "description": "Requested size of the next page of data.", - "format": "int32", - "type": "integer" - } - } - } - } - } - } - }, - "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": { - "description": "Token identifying which result to start with; returned by a previous list\ncall.", - "type": "string", - "location": "query" - }, - "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." - } - } - } - }, - "parameters": { - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" - }, - "fields": { - "type": "string", - "location": "query", - "description": "Selector specifying which fields to include in a partial response." - }, - "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" - }, - "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": { - "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" - } - }, "version": "v1", "baseUrl": "https://serviceuser.googleapis.com/", - "kind": "discovery#restDescription", - "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.", "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": "", - "revision": "20180501", + "revision": "20180504", "documentationLink": "https://cloud.google.com/service-management/", "id": "serviceuser:v1", "discoveryVersion": "v1", "version_module": true, "schemas": { - "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", + "DocumentationRule": { + "description": "A documentation rule provides information about individual API elements.", "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.", + "deprecationDescription": { + "description": "Deprecation description of the selected element(s). It can be provided if an\nelement is marked as `deprecated`.", "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" + "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" }, - "allowUnregisteredCalls": { - "description": "If true, the selected method allows unregistered calls, e.g. calls\nthat don't identify any user or application.", - "type": "boolean" + "description": { + "description": "Description of the selected API(s).", + "type": "string" } }, - "id": "UsageRule" + "id": "DocumentationRule" }, - "AuthRequirement": { + "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": { - "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", + "provider": { + "description": "The name of the authorization provider, such as\nfirebaserules.googleapis.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" + "id": "AuthorizationConfig" }, - "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\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(== 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.", + "ContextRule": { + "description": "A context rule provides information about the context for an individual API\nelement.", "type": "object", "properties": { - "summary": { - "description": "A short summary of what the service does. Can only be provided by\nplain text.", - "type": "string" + "requested": { + "description": "A list of full type names of requested contexts.", + "type": "array", + "items": { + "type": "string" + } }, - "documentationRootUrl": { - "description": "The URL to the root of documentation.", - "type": "string" + "allowedRequestExtensions": { + "description": "A list of full type names or extension IDs of extensions allowed in grpc\nside channel from client to backend.", + "type": "array", + "items": { + "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.", + "allowedResponseExtensions": { + "description": "A list of full type names or extension IDs of extensions allowed in grpc\nside channel from backend to client.", "type": "array", "items": { - "$ref": "DocumentationRule" + "type": "string" } }, - "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.", + "selector": { + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", "type": "string" }, - "pages": { - "description": "The top level pages for the documentation set.", + "provided": { + "description": "A list of full type names of provided contexts.", "type": "array", "items": { - "$ref": "Page" + "type": "string" } } }, - "id": "Documentation" + "id": "ContextRule" }, - "BackendRule": { - "id": "BackendRule", - "description": "A backend rule provides configuration for an individual API element.", + "Billing": { "type": "object", "properties": { - "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" - }, - "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" + "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" }, - "AuthenticationRule": { + "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": { - "requirements": { - "description": "Requirements for additional authentication providers.", + "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": "AuthRequirement" + "$ref": "LabelDescriptor" } }, - "selector": { - "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + "name": { + "description": "The resource name of the metric descriptor.", "type": "string" }, - "allowWithoutCredential": { - "description": "If true, the service accepts API keys without any other credential.", - "type": "boolean" + "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" }, - "oauth": { - "$ref": "OAuthRequirements", - "description": "The requirements for OAuth credentials." + "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" }, - "customAuth": { - "description": "Configuration for custom authentication.", - "$ref": "CustomAuthRequirements" + "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." + ], + "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" + }, + "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" + }, + "description": { + "description": "A detailed description of the metric, which can be used in documentation.", + "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" } }, - "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.", + "id": "MetricDescriptor" + }, + "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" }, - "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.", + "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": { - "syntax": { - "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." + "name": { + "description": "The canonical name of this endpoint.", + "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", + "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" }, - "mixins": { - "description": "Included interfaces. See Mixin.", + "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": { - "$ref": "Mixin" + "type": "string" } }, - "options": { - "description": "Any metadata attached to the interface.", + "features": { + "description": "The list of features enabled on this endpoint.", "type": "array", "items": { - "$ref": "Option" + "type": "string" } }, - "methods": { + "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" + }, + "ListEnabledServicesResponse": { + "description": "Response message for `ListEnabledServices` method.", + "type": "object", + "properties": { + "services": { "type": "array", "items": { - "$ref": "Method" + "$ref": "PublishedService" }, - "description": "The methods of this interface, in unspecified order." + "description": "Services enabled for the specified parent." }, - "name": { - "description": "The fully qualified name of this interface, including package name\nfollowed by the interface's simple name.", + "nextPageToken": { + "description": "Token that can be passed to `ListEnabledServices` to resume a paginated\nquery.", "type": "string" } }, - "id": "Api" + "id": "ListEnabledServicesResponse" }, - "MetricRule": { + "OAuthRequirements": { "properties": { - "selector": { - "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details.", + "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" - }, - "metricCosts": { - "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", - "additionalProperties": { - "format": "int64", - "type": "string" - } } }, - "id": "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": "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" }, - "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", + "Usage": { + "description": "Configuration controlling usage of a service.", "type": "object", "properties": { - "providers": { - "description": "Defines a set of authentication providers that a service supports.", + "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": "AuthProvider" + "$ref": "UsageRule" } }, - "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.", + "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": { - "$ref": "AuthenticationRule" + "type": "string" } } }, - "id": "Authentication" - }, - "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": { - "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": { - "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": { - "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" + "id": "Usage" }, - "Page": { - "description": "Represents a documentation page. A page can contain subpages to represent\nnested documentation set structure.", - "type": "object", - "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`.", - "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.", + "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.", + "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": "Page" + "$ref": "ContextRule" } } }, - "id": "Page" + "id": "Context" }, - "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.", + "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": { - "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.", + "description": { + "description": "A human-readable description of this log. This information appears in\nthe documentation and can contain details.", "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.", + "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": { - "type": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } + "$ref": "LabelDescriptor" } }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" + "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" }, - "AuthProvider": { + "CustomErrorRule": { + "description": "A custom error rule.", + "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" + "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" }, - "authorizationUrl": { - "description": "Redirect URL if JWT token is required but no present or is expired.\nImplement authorizationUrl of securityDefinitions in OpenAPI spec.", + "selector": { + "description": "Selects messages to which this rule applies.\n\nRefer to selector for syntax details.", "type": "string" - }, - "jwksUri": { - "type": "string", - "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" - }, - "audiences": { - "type": "string", - "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" } }, - "id": "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": "CustomErrorRule" }, - "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", + "MonitoredResourceDescriptor": { "type": "object", "properties": { - "sourceInfo": { - "$ref": "SourceInfo", - "description": "Output only. The source information for this configuration if available." - }, - "http": { - "description": "HTTP configuration.", - "$ref": "Http" - }, - "backend": { - "description": "API backend configuration.", - "$ref": "Backend" + "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" }, - "systemParameters": { - "$ref": "SystemParameters", - "description": "System parameter configuration." + "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" }, - "documentation": { - "$ref": "Documentation", - "description": "Additional API documentation." + "description": { + "description": "Optional. A detailed description of the monitored resource type that might\nbe used in documentation.", + "type": "string" }, - "logging": { - "description": "Logging configuration.", - "$ref": "Logging" + "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" }, - "monitoredResources": { - "description": "Defines the monitored resources used by this service. This is required\nby the Service.monitoring and Service.logging configurations.", + "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": "MonitoredResourceDescriptor" + "$ref": "LabelDescriptor" } + } + }, + "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." + }, + "MediaDownload": { + "type": "object", + "properties": { + "enabled": { + "description": "Whether download is enabled.", + "type": "boolean" }, - "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" - } + "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" }, - "context": { - "$ref": "Context", - "description": "Context configuration." + "completeNotification": { + "description": "A boolean that determines whether a notification for the completion of a\ndownload should be sent to the backend.", + "type": "boolean" }, - "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.", + "maxDirectDownloadSize": { + "description": "Optional maximum acceptable size for direct download.\nThe size is specified in bytes.", + "format": "int64", "type": "string" }, - "usage": { - "description": "Configuration controlling usage of this service.", - "$ref": "Usage" + "dropzone": { + "description": "Name of the Scotty dropzone to use for the current API.", + "type": "string" }, - "metrics": { - "description": "Defines the metrics used by this service.", + "useDirectDownload": { + "type": "boolean", + "description": "A boolean that determines if direct download from ESF should be used for\ndownload of this media." + } + }, + "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." + }, + "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" + }, + "DisableServiceRequest": { + "description": "Request message for DisableService method.", + "type": "object", + "properties": {}, + "id": "DisableServiceRequest" + }, + "SearchServicesResponse": { + "id": "SearchServicesResponse", + "description": "Response message for SearchServices method.", + "type": "object", + "properties": { + "services": { + "description": "Services available publicly or available to the authenticated caller.", "type": "array", "items": { - "$ref": "MetricDescriptor" + "$ref": "PublishedService" } }, - "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.", + "nextPageToken": { + "description": "Token that can be passed to `ListAvailableServices` to resume a paginated\nquery.", + "type": "string" + } + } + }, + "MediaUpload": { + "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": { - "$ref": "Type" + "type": "string" } }, - "producerProjectId": { - "description": "The Google project that owns this service.", - "type": "string" - }, - "quota": { - "description": "Quota configuration.", - "$ref": "Quota" - }, - "name": { - "type": "string", - "description": "The DNS address at which this service is available,\ne.g. `calendar.googleapis.com`." - }, - "billing": { - "$ref": "Billing", - "description": "Billing configuration." - }, - "customError": { - "$ref": "CustomError", - "description": "Custom error configuration." - }, - "title": { - "description": "The product title for this service.", + "maxSize": { + "description": "Optional maximum acceptable size for an upload.\nThe size is specified in bytes.", + "format": "int64", "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" - } + "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" }, - "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" - } + "progressNotification": { + "description": "Whether to receive a notification for progress changes of media upload.", + "type": "boolean" }, - "logs": { - "description": "Defines the logs used by this service.", - "type": "array", - "items": { - "$ref": "LogDescriptor" - } + "enabled": { + "description": "Whether upload is enabled.", + "type": "boolean" }, - "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" - }, - "EnumValue": { - "description": "Enum value definition.", - "type": "object", - "properties": { - "name": { - "description": "Enum value name.", + "dropzone": { + "description": "Name of the Scotty dropzone to use for the current API.", "type": "string" }, - "options": { - "description": "Protocol buffer options.", - "type": "array", - "items": { - "$ref": "Option" - } + "startNotification": { + "description": "Whether to receive a notification on the start of media upload.", + "type": "boolean" }, - "number": { - "description": "Enum value number.", - "format": "int32", - "type": "integer" + "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": "EnumValue" + "id": "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." }, - "CustomHttpPattern": { + "BillingDestination": { + "description": "Configuration of a specific billing destination (Currently only support\nbill against consumer project).", "type": "object", "properties": { - "kind": { - "description": "The name of this custom HTTP verb.", + "monitoredResource": { + "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.", "type": "string" }, - "path": { - "description": "The path matched by this custom verb.", - "type": "string" - } - }, - "id": "CustomHttpPattern", - "description": "A custom pattern is used for defining custom HTTP verb." - }, - "OperationMetadata": { - "description": "The metadata associated with a long running operation resource.", - "type": "object", - "properties": { - "resourceNames": { - "description": "The full name of the resources that this operation is directly\nassociated with.", + "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" } - }, - "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" + "id": "BillingDestination" }, - "PublishedService": { - "description": "The published version of a Service that is managed by\nGoogle Service Management.", + "UsageRule": { "type": "object", "properties": { - "service": { - "description": "The service's published configuration.", - "$ref": "Service" + "allowUnregisteredCalls": { + "description": "If true, the selected method allows unregistered calls, e.g. calls\nthat don't identify any user or application.", + "type": "boolean" }, - "name": { - "description": "The resource name of the service.\n\nA valid name would be:\n- services/serviceuser.googleapis.com", + "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": "PublishedService" + "id": "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" }, - "SystemParameterRule": { - "description": "Define a system parameter rule mapping system parameter definitions to\nmethods.", + "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": { - "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" - } + "audiences": { + "type": "string", + "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" }, - "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.", + "providerId": { + "description": "id from authentication provider.\n\nExample:\n\n provider_id: bookstore_auth", "type": "string" } }, - "id": "SystemParameterRule" + "id": "AuthRequirement" }, - "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.", + "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\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(== 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": { - "get": { - "description": "Used for listing and getting information about resources.", - "type": "string" + "pages": { + "description": "The top level pages for the documentation set.", + "type": "array", + "items": { + "$ref": "Page" + } }, - "patch": { - "description": "Used for updating a resource.", + "summary": { + "description": "A short summary of what the service does. Can only be provided by\nplain text.", "type": "string" }, - "put": { - "description": "Used for updating a resource.", + "documentationRootUrl": { + "description": "The URL to the root of documentation.", "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).", + "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": "HttpRule" + "$ref": "DocumentationRule" } }, - "delete": { - "description": "Used for deleting a resource.", - "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." - }, - "body": { - "type": "string", - "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." - }, - "selector": { - "type": "string", - "description": "Selects methods to which this rule applies.\n\nRefer to selector for syntax details." - }, - "post": { - "description": "Used for creating a resource.", + "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" - }, - "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": { - "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" } }, - "id": "HttpRule" + "id": "Documentation" }, - "MonitoringDestination": { - "description": "Configuration of a specific monitoring destination (the producer project\nor the consumer project).", + "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": { - "monitoredResource": { - "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.", - "type": "string" + "oauth": { + "$ref": "OAuthRequirements", + "description": "The requirements for OAuth credentials." }, - "metrics": { - "description": "Names of the metrics to report to this monitoring destination.\nEach name must be defined in Service.metrics section.", + "customAuth": { + "description": "Configuration for custom authentication.", + "$ref": "CustomAuthRequirements" + }, + "requirements": { + "description": "Requirements for additional authentication providers.", "type": "array", "items": { - "type": "string" + "$ref": "AuthRequirement" } + }, + "selector": { + "type": "string", + "description": "Selects the methods to which this rule applies.\n\nRefer to selector for syntax details." + }, + "allowWithoutCredential": { + "description": "If true, the service accepts API keys without any other credential.", + "type": "boolean" } }, - "id": "MonitoringDestination" + "id": "AuthenticationRule" }, - "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.", + "BackendRule": { + "description": "A backend rule provides configuration for an individual API element.", "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" - } + "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": { + "type": "string", + "description": "The address of the API backend." + }, + "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": "SystemParameters" + "id": "BackendRule" }, - "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", + "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", "properties": { - "limits": { - "description": "List of `QuotaLimit` definitions for the service.", + "options": { + "description": "Any metadata attached to the interface.", "type": "array", "items": { - "$ref": "QuotaLimit" + "$ref": "Option" } }, - "metricRules": { - "description": "List of `MetricRule` definitions, each one mapping a selected method to one\nor more metrics.", + "methods": { + "description": "The methods of this interface, in unspecified order.", "type": "array", "items": { - "$ref": "MetricRule" + "$ref": "Method" } - } - }, - "id": "Quota" - }, - "Step": { - "description": "Represents the status of one operation step.", - "type": "object", - "properties": { - "status": { - "description": "The status code.", + }, + "name": { "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": "The fully qualified name of this interface, including package name\nfollowed by the interface's simple name." + }, + "syntax": { "enum": [ - "STATUS_UNSPECIFIED", - "DONE", - "NOT_STARTED", - "IN_PROGRESS", - "FAILED", - "CANCELLED" + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ], + "description": "The source syntax of the service.", + "type": "string", + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." ] }, - "description": { - "description": "The short description of the step.", + "sourceContext": { + "$ref": "SourceContext", + "description": "Source context for the protocol buffer service represented by this\nmessage." + }, + "version": { + "type": "string", + "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" + }, + "mixins": { + "description": "Included interfaces. See Mixin.", + "type": "array", + "items": { + "$ref": "Mixin" + } + } + }, + "id": "Api" + }, + "MetricRule": { + "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": "Step" + "id": "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." }, - "LoggingDestination": { - "description": "Configuration of a specific logging destination (the producer project\nor the consumer project).", + "Authentication": { "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 \"/\".", + "providers": { + "description": "Defines a set of authentication providers that a service supports.", "type": "array", "items": { - "type": "string" + "$ref": "AuthProvider" } }, - "monitoredResource": { - "description": "The monitored resource type. The type must be defined in the\nService.monitored_resources section.", - "type": "string" + "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": "LoggingDestination" + "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" }, - "Option": { - "description": "A protocol buffer option, which can be attached to a message, field,\nenumeration, etc.", + "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", "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.", + "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.", @@ -977,462 +704,566 @@ } }, "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\"`.", + "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": { + "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": { + "type": "any", + "description": "Properties of the object. Contains field @type with type URL." + } + }, + "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": "Option" + "id": "Operation" }, - "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", + "Page": { + "description": "Represents a documentation page. A page can contain subpages to represent\nnested documentation set structure.", "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.", + "subpages": { "type": "array", "items": { - "$ref": "LoggingDestination" - } + "$ref": "Page" + }, + "description": "Subpages of this page. The order of subpages specified here will be\nhonored in the generated docset." }, - "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.", + "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" + }, + "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" + } + }, + "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": { - "$ref": "LoggingDestination" + "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": "Logging" + "id": "Status" }, - "Method": { - "description": "Method represents a method of an API interface.", + "AuthProvider": { + "id": "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": { - "responseStreaming": { - "description": "If true, the response is streamed.", - "type": "boolean" + "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" }, - "name": { - "description": "The simple name of this method.", + "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" }, - "requestTypeUrl": { - "description": "A URL of the input message type.", + "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" }, - "requestStreaming": { - "description": "If true, the request is streamed.", - "type": "boolean" + "authorizationUrl": { + "type": "string", + "description": "Redirect URL if JWT token is required but no present or is expired.\nImplement authorizationUrl of securityDefinitions in OpenAPI spec." }, - "syntax": { - "enumDescriptions": [ - "Syntax `proto2`.", - "Syntax `proto3`." - ], - "enum": [ - "SYNTAX_PROTO2", - "SYNTAX_PROTO3" - ], - "description": "The source syntax of this method.", + "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" - }, - "responseTypeUrl": { - "description": "The URL of the output message type.", + } + } + }, + "EnumValue": { + "description": "Enum value definition.", + "type": "object", + "properties": { + "name": { + "description": "Enum value name.", "type": "string" }, "options": { - "description": "Any metadata attached to the method.", + "description": "Protocol buffer options.", "type": "array", "items": { "$ref": "Option" } + }, + "number": { + "type": "integer", + "description": "Enum value number.", + "format": "int32" } }, - "id": "Method" + "id": "EnumValue" }, - "QuotaLimit": { - "type": "object", + "Service": { "properties": { - "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" + "usage": { + "$ref": "Usage", + "description": "Configuration controlling usage of this service." }, - "freeTier": { - "type": "string", - "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" + "metrics": { + "description": "Defines the metrics used by this service.", + "type": "array", + "items": { + "$ref": "MetricDescriptor" + } }, - "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" + "authentication": { + "$ref": "Authentication", + "description": "Auth configuration." }, - "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" + "experimental": { + "$ref": "Experimental", + "description": "Experimental configuration." }, - "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" + "control": { + "$ref": "Control", + "description": "Configuration for the service control plane." }, - "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.", + "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" }, - "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" + "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" } }, - "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" + "quota": { + "description": "Quota configuration.", + "$ref": "Quota" }, - "maxLimit": { + "name": { "type": "string", - "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" + "description": "The DNS address at which this service is available,\ne.g. `calendar.googleapis.com`." }, - "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", - "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`." - }, - "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", - "properties": { - "name": { - "description": "The fully qualified name of the interface which is included.", + "billing": { + "$ref": "Billing", + "description": "Billing configuration." + }, + "customError": { + "$ref": "CustomError", + "description": "Custom error configuration." + }, + "title": { + "description": "The product title for this service.", "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": { - "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.", + "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" + } + }, + "logs": { + "type": "array", + "items": { + "$ref": "LogDescriptor" + }, + "description": "Defines the logs used by this service." + }, + "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": "CustomErrorRule" + "$ref": "Api" } }, "types": { - "description": "The list of custom error detail types, e.g. 'google.foo.v1.CustomError'.", + "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": { - "type": "string" + "$ref": "Type" } - } - }, - "id": "CustomError" - }, - "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.", + "sourceInfo": { + "description": "Output only. The source information for this configuration if available.", + "$ref": "SourceInfo" + }, + "http": { + "$ref": "Http", + "description": "HTTP configuration." + }, + "systemParameters": { + "description": "System parameter configuration.", + "$ref": "SystemParameters" + }, + "backend": { + "$ref": "Backend", + "description": "API backend configuration." + }, + "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": "HttpRule" + "$ref": "MonitoredResourceDescriptor" + } + }, + "logging": { + "$ref": "Logging", + "description": "Logging 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" } + }, + "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" } }, - "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.", + "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" }, - "SourceInfo": { - "description": "Source information used to create a Service Config", + "OperationMetadata": { + "id": "OperationMetadata", + "description": "The metadata associated with a long running operation resource.", "type": "object", "properties": { - "sourceFiles": { - "description": "All files used during config generation.", + "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": "object", - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - } + "type": "string" + } + }, + "steps": { + "description": "Detailed status information for each step. The order is undetermined.", + "type": "array", + "items": { + "$ref": "Step" } + }, + "progressPercentage": { + "type": "integer", + "description": "Percentage of completion of this operation, ranging from 0 to 100.", + "format": "int32" } - }, - "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.", + "CustomHttpPattern": { "type": "object", "properties": { - "environment": { - "description": "The service control environment to use. If empty, no control plane\nfeature (like quota and billing) will be enabled.", + "path": { + "description": "The path matched by this custom verb.", + "type": "string" + }, + "kind": { + "description": "The name of this custom HTTP verb.", "type": "string" } }, - "id": "Control" + "id": "CustomHttpPattern", + "description": "A custom pattern is used for defining custom HTTP verb." }, - "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.", + "SystemParameterRule": { + "id": "SystemParameterRule", + "description": "Define a system parameter rule mapping system parameter definitions to\nmethods.", "type": "object", "properties": { - "urlQueryParameter": { - "type": "string", - "description": "Define the URL query parameter name to use for the parameter. It is case\nsensitive." - }, - "httpHeader": { - "description": "Define the HTTP header name to use for the parameter. It is case\ninsensitive.", + "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" }, - "name": { - "description": "Define the name of the parameter, such as \"api_key\" . It is case sensitive.", - "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": "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", + "PublishedService": { + "description": "The published version of a Service that is managed by\nGoogle Service Management.", "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" - } + "service": { + "description": "The service's published configuration.", + "$ref": "Service" }, - "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" - } + "name": { + "description": "The resource name of the service.\n\nA valid name would be:\n- services/serviceuser.googleapis.com", + "type": "string" } }, - "id": "Monitoring" + "id": "PublishedService" }, - "Field": { - "description": "A single field of a message type.", + "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": { - "jsonName": { - "description": "The field JSON name.", + "put": { + "description": "Used for updating a resource.", "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." - ], - "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" - ], - "description": "The field type.", + "delete": { + "description": "Used for deleting a resource.", "type": "string" }, - "options": { - "description": "The protocol buffer options.", + "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": "Option" + "$ref": "HttpRule" } }, - "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" + "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" }, - "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.", + "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" }, - "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.", + "selector": { + "description": "Selects methods to which this rule applies.\n\nRefer to selector for syntax details.", "type": "string" }, - "name": { - "description": "The field name.", + "post": { + "description": "Used for creating a resource.", "type": "string" }, - "typeUrl": { - "description": "The field type URL, without the scheme, for message or enumeration\ntypes. Example: `\"type.googleapis.com/google.protobuf.Timestamp\"`.", + "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" + }, + "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" }, - "number": { - "type": "integer", - "description": "The field number.", - "format": "int32" + "patch": { + "description": "Used for updating a resource.", + "type": "string" } }, - "id": "Field" + "id": "HttpRule" }, - "Enum": { - "description": "Enum type definition.", + "MonitoringDestination": { "type": "object", "properties": { - "options": { - "description": "Protocol buffer options.", + "metrics": { + "description": "Names of the metrics to report to this monitoring destination.\nEach name must be defined in Service.metrics section.", "type": "array", "items": { - "$ref": "Option" + "type": "string" } }, - "sourceContext": { - "description": "The source context.", - "$ref": "SourceContext" - }, - "syntax": { - "enumDescriptions": [ - "Syntax `proto2`.", - "Syntax `proto3`." - ], - "enum": [ - "SYNTAX_PROTO2", - "SYNTAX_PROTO3" - ], - "description": "The source syntax.", - "type": "string" - }, - "name": { - "description": "Enum type name.", + "monitoredResource": { + "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.", "type": "string" - }, - "enumvalue": { - "description": "Enum value definitions.", + } + }, + "id": "MonitoringDestination", + "description": "Configuration of a specific monitoring destination (the producer project\nor the consumer project)." + }, + "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": "EnumValue" + "$ref": "SystemParameterRule" } } }, - "id": "Enum" + "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" }, - "EnableServiceRequest": { + "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": {}, - "id": "EnableServiceRequest", - "description": "Request message for EnableService method." + "properties": { + "metricRules": { + "description": "List of `MetricRule` definitions, each one mapping a selected method to one\nor more metrics.", + "type": "array", + "items": { + "$ref": "MetricRule" + } + }, + "limits": { + "description": "List of `QuotaLimit` definitions for the service.", + "type": "array", + "items": { + "$ref": "QuotaLimit" + } + } + }, + "id": "Quota" }, - "LabelDescriptor": { - "description": "A description of a label.", + "Step": { + "id": "Step", + "description": "Represents the status of one operation step.", "type": "object", "properties": { - "key": { - "description": "The label key.", - "type": "string" - }, - "description": { - "description": "A human-readable description for the label.", - "type": "string" - }, - "valueType": { + "status": { + "type": "string", "enumDescriptions": [ - "A variable-length string. This is the default.", - "Boolean; true or false.", - "A 64-bit signed integer." + "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": [ - "STRING", - "BOOL", - "INT64" + "STATUS_UNSPECIFIED", + "DONE", + "NOT_STARTED", + "IN_PROGRESS", + "FAILED", + "CANCELLED" ], - "description": "The type of data that can be assigned to the label.", + "description": "The status code." + }, + "description": { + "description": "The short description of the step.", "type": "string" } - }, - "id": "LabelDescriptor" + } }, - "Type": { + "LoggingDestination": { "type": "object", "properties": { - "fields": { - "description": "The list of fields.", + "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": { - "$ref": "Field" + "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)." + }, + "Option": { + "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 fully qualified message 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", + "description": "A protocol buffer option, which can be attached to a message, field,\nenumeration, etc." + }, + "Logging": { + "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" + } }, - "oneofs": { - "description": "The list of types appearing in `oneof` definitions in this type.", + "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": { - "type": "string" + "$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" + }, + "Method": { + "type": "object", + "properties": { + "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" }, "syntax": { - "description": "The source syntax.", - "type": "string", "enumDescriptions": [ "Syntax `proto2`.", "Syntax `proto3`." @@ -1440,532 +1271,475 @@ "enum": [ "SYNTAX_PROTO2", "SYNTAX_PROTO3" - ] + ], + "description": "The source syntax of this method.", + "type": "string" }, - "sourceContext": { - "description": "The source context.", - "$ref": "SourceContext" + "responseTypeUrl": { + "type": "string", + "description": "The URL of the output message type." }, "options": { - "description": "The protocol buffer options.", + "description": "Any metadata attached to the method.", "type": "array", "items": { "$ref": "Option" } } }, - "id": "Type", - "description": "A protocol buffer message type." - }, - "Experimental": { - "description": "Experimental service configuration. These configuration options can\nonly be used by whitelisted users.", - "type": "object", - "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" + "id": "Method", + "description": "Method represents a method of an API interface." }, - "AuthorizationConfig": { - "id": "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", + "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": { - "provider": { - "description": "The name of the authorization provider, such as\nfirebaserules.googleapis.com.", + "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." + }, + "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" + }, + "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" + }, + "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" + }, + "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" + }, + "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" }, - "DocumentationRule": { - "description": "A documentation rule provides information about individual API elements.", + "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", "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`.", + "name": { + "description": "The fully qualified name of the interface which is included.", "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.", + "root": { + "description": "If non-empty specifies a path under which inherited HTTP paths\nare rooted.", "type": "string" } }, - "id": "DocumentationRule" + "id": "Mixin" }, - "ContextRule": { + "CustomError": { "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.", + "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": { - "type": "string" + "$ref": "CustomErrorRule" } }, - "requested": { + "types": { + "description": "The list of custom error detail types, e.g. 'google.foo.v1.CustomError'.", "type": "array", "items": { "type": "string" - }, - "description": "A list of full type names of requested contexts." - }, - "allowedRequestExtensions": { - "description": "A list of full type names or extension IDs of extensions allowed in grpc\nside channel from client to backend.", + } + } + }, + "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" + }, + "Http": { + "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": { - "type": "string" + "$ref": "HttpRule" } }, - "allowedResponseExtensions": { - "description": "A list of full type names or extension IDs of extensions allowed in grpc\nside channel from backend to client.", + "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" + } + }, + "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" + }, + "SourceInfo": { + "properties": { + "sourceFiles": { + "description": "All files used during config generation.", "type": "array", "items": { - "type": "string" + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" } } }, - "id": "ContextRule", - "description": "A context rule provides information about the context for an individual API\nelement." + "id": "SourceInfo", + "description": "Source information used to create a Service Config", + "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", + "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": { - "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" - } + "environment": { + "description": "The service control environment to use. If empty, no control plane\nfeature (like quota and billing) will be enabled.", + "type": "string" } }, - "id": "Billing" + "id": "Control" }, - "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.", + "SystemParameter": { "type": "object", "properties": { - "unit": { - "type": "string", - "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." - }, - "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" - }, - "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\"", + "description": "Define the name of the parameter, such as \"api_key\" . It is case sensitive.", "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.", + "urlQueryParameter": { + "description": "Define the URL query parameter name to use for the parameter. It is case\nsensitive.", "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." - ] - }, - "displayName": { - "type": "string", - "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." - }, - "description": { - "description": "A detailed description of the metric, which can be used in documentation.", + "httpHeader": { + "description": "Define the HTTP header name to use for the parameter. It is case\ninsensitive.", "type": "string" } }, - "id": "MetricDescriptor" + "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." }, - "SourceContext": { - "description": "`SourceContext` represents information about the source of a\nprotobuf element, like the file in which it is defined.", + "Field": { + "id": "Field", + "description": "A single field of a message type.", "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\"`.", + "cardinality": { + "type": "string", + "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." + }, + "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" - } - }, - "id": "SourceContext" - }, - "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": { + }, "name": { - "description": "The canonical name of this endpoint.", + "description": "The field name.", "type": "string" }, - "target": { - "type": "string", - "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\"." + "typeUrl": { + "description": "The field type URL, without the scheme, for message or enumeration\ntypes. Example: `\"type.googleapis.com/google.protobuf.Timestamp\"`.", + "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" - } + "number": { + "description": "The field number.", + "format": "int32", + "type": "integer" }, - "features": { - "description": "The list of features enabled on this endpoint.", - "type": "array", - "items": { - "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." + ], + "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" + ], + "description": "The field type.", + "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" - }, - "ListEnabledServicesResponse": { - "description": "Response message for `ListEnabledServices` method.", - "type": "object", - "properties": { - "services": { - "description": "Services enabled for the specified parent.", + "options": { + "description": "The protocol buffer options.", "type": "array", "items": { - "$ref": "PublishedService" + "$ref": "Option" } }, - "nextPageToken": { - "description": "Token that can be passed to `ListEnabledServices` to resume a paginated\nquery.", - "type": "string" - } - }, - "id": "ListEnabledServicesResponse" - }, - "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" + "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" } - }, - "id": "OAuthRequirements" + } }, - "Usage": { - "description": "Configuration controlling usage of a service.", + "Monitoring": { + "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", "properties": { - "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'.", + "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": { - "type": "string" + "$ref": "MonitoringDestination" } }, - "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" - } - }, - "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`.\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.", - "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.", + "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": "ContextRule" + "$ref": "MonitoringDestination" } } - }, - "id": "Context" + } }, - "LogDescriptor": { + "Enum": { "type": "object", "properties": { - "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" + "sourceContext": { + "description": "The source context.", + "$ref": "SourceContext" }, - "description": { - "description": "A human-readable description of this log. This information appears in\nthe documentation and can contain details.", - "type": "string" + "syntax": { + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ], + "description": "The source syntax.", + "type": "string", + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ] }, - "displayName": { - "description": "The human-readable name for this log. This information appears on\nthe user interface and should be concise.", - "type": "string" + "name": { + "type": "string", + "description": "Enum type name." }, - "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.", + "enumvalue": { + "description": "Enum value definitions.", "type": "array", "items": { - "$ref": "LabelDescriptor" + "$ref": "EnumValue" } - } - }, - "id": "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" - }, - "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": { - "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\"`.", + "options": { + "description": "Protocol buffer options.", "type": "array", "items": { - "$ref": "LabelDescriptor" + "$ref": "Option" } - }, - "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" - } - }, - "id": "MonitoredResourceDescriptor" - }, - "CustomErrorRule": { - "description": "A custom error rule.", - "type": "object", - "properties": { - "selector": { - "description": "Selects messages to which this rule applies.\n\nRefer to selector for syntax details.", - "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" - } - }, - "id": "CustomErrorRule" - }, - "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" } }, - "id": "CustomAuthRequirements", - "description": "Configuration for a custom authentication provider.", - "type": "object" + "id": "Enum", + "description": "Enum type definition." }, - "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.", + "LabelDescriptor": { + "description": "A description of a label.", "type": "object", "properties": { - "useDirectDownload": { - "description": "A boolean that determines if direct download from ESF should be used for\ndownload of this media.", - "type": "boolean" - }, - "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.", + "key": { + "description": "The label key.", "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", + "description": { + "description": "A human-readable description for the label.", "type": "string" }, - "dropzone": { - "description": "Name of the Scotty dropzone to use for the current API.", + "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" } }, - "id": "MediaDownload" + "id": "LabelDescriptor" }, - "DisableServiceRequest": { - "description": "Request message for DisableService method.", + "EnableServiceRequest": { + "description": "Request message for EnableService method.", "type": "object", "properties": {}, - "id": "DisableServiceRequest" + "id": "EnableServiceRequest" }, - "SearchServicesResponse": { - "description": "Response message for SearchServices method.", + "Type": { + "description": "A protocol buffer message type.", "type": "object", "properties": { - "services": { - "description": "Services available publicly or available to the authenticated caller.", + "fields": { "type": "array", "items": { - "$ref": "PublishedService" - } + "$ref": "Field" + }, + "description": "The list of fields." }, - "nextPageToken": { - "description": "Token that can be passed to `ListAvailableServices` to resume a paginated\nquery.", - "type": "string" - } - }, - "id": "SearchServicesResponse" - }, - "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.", + "name": { + "type": "string", + "description": "The fully qualified message name." + }, + "oneofs": { + "description": "The list of types appearing in `oneof` definitions in this type.", "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": { - "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." - }, - "dropzone": { - "description": "Name of the Scotty dropzone to use for the current API.", - "type": "string" + "sourceContext": { + "description": "The source context.", + "$ref": "SourceContext" }, - "startNotification": { - "description": "Whether to receive a notification on the start of media upload.", - "type": "boolean" + "syntax": { + "enum": [ + "SYNTAX_PROTO2", + "SYNTAX_PROTO3" + ], + "description": "The source syntax.", + "type": "string", + "enumDescriptions": [ + "Syntax `proto2`.", + "Syntax `proto3`." + ] }, - "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" + "options": { + "description": "The protocol buffer options.", + "type": "array", + "items": { + "$ref": "Option" + } } }, - "id": "MediaUpload" + "id": "Type" }, - "BillingDestination": { - "description": "Configuration of a specific billing destination (Currently only support\nbill against consumer project).", + "Experimental": { + "description": "Experimental service configuration. These configuration options can\nonly be used by whitelisted users.", "type": "object", "properties": { - "monitoredResource": { - "description": "The monitored resource type. The type must be defined in\nService.monitored_resources section.", - "type": "string" - }, - "metrics": { + "authorization": { + "$ref": "AuthorizationConfig", + "description": "Authorization configuration." + } + }, + "id": "Experimental" + }, + "Backend": { + "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": { - "type": "string" - }, - "description": "Names of the metrics to report to this billing destination.\nEach name must be defined in Service.metrics section." + "$ref": "BackendRule" + } } }, - "id": "BillingDestination" + "id": "Backend", + "description": "`Backend` defines the backend configuration for a service." } }, - "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" }, + "protocol": "rest", "canonicalName": "Service User", "auth": { "oauth2": { "scopes": { + "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" }, "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" } } } @@ -1974,5 +1748,231 @@ "ownerDomain": "google.com", "name": "serviceuser", "batchPath": "batch", - "title": "Service User API" + "title": "Service User API", + "ownerName": "Google", + "resources": { + "projects": { + "resources": { + "services": { + "methods": { + "list": { + "flatPath": "v1/projects/{projectsId}/services", + "path": "v1/{+parent}/services", + "id": "serviceuser.projects.services.list", + "description": "List enabled services for the specified consumer.", + "response": { + "$ref": "ListEnabledServicesResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "parameters": { + "pageToken": { + "description": "Token identifying which result to start with; returned by a previous list\ncall.", + "type": "string", + "location": "query" + }, + "pageSize": { + "description": "Requested size of the next page of data.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "parent": { + "pattern": "^projects/[^/]+$", + "location": "path", + "description": "List enabled services for the specified parent.\n\nAn example valid parent would be:\n- projects/my-project", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, + "disable": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ], + "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", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/services/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/projects/{projectsId}/services/{servicesId}: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" + }, + "enable": { + "path": "v1/{+name}:enable", + "id": "serviceuser.projects.services.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", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/service.management" + ], + "parameters": { + "name": { + "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", + "pattern": "^projects/[^/]+/services/[^/]+$" + } + }, + "flatPath": "v1/projects/{projectsId}/services/{servicesId}:enable" + } + } + } + } + }, + "services": { + "methods": { + "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.", + "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" + } + } + } + }, + "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" + }, + "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": { + "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": { + "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" + } + } } diff --git a/DiscoveryJson/sheets_v4.json b/DiscoveryJson/sheets_v4.json index 2c4aeda03a..cf7b75976a 100644 --- a/DiscoveryJson/sheets_v4.json +++ b/DiscoveryJson/sheets_v4.json @@ -1,4 +1,29 @@ { + "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" + }, + "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" + }, + "https://www.googleapis.com/auth/spreadsheets.readonly": { + "description": "View your Google Spreadsheets" + }, + "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", @@ -6,25 +31,27 @@ "spreadsheets": { "methods": { "get": { + "id": "sheets.spreadsheets.get", + "path": "v4/spreadsheets/{spreadsheetId}", "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.", "httpMethod": "GET", - "parameterOrder": [ - "spreadsheetId" - ], "response": { "$ref": "Spreadsheet" }, + "parameterOrder": [ + "spreadsheetId" + ], "parameters": { "ranges": { - "description": "The ranges to retrieve from the spreadsheet.", - "type": "string", "repeated": true, - "location": "query" + "location": "query", + "description": "The ranges to retrieve from the spreadsheet.", + "type": "string" }, "includeGridData": { + "location": "query", "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" + "type": "boolean" }, "spreadsheetId": { "description": "The spreadsheet to request.", @@ -40,18 +67,25 @@ "https://www.googleapis.com/auth/spreadsheets", "https://www.googleapis.com/auth/spreadsheets.readonly" ], - "flatPath": "v4/spreadsheets/{spreadsheetId}", - "id": "sheets.spreadsheets.get", - "path": "v4/spreadsheets/{spreadsheetId}" + "flatPath": "v4/spreadsheets/{spreadsheetId}" }, "getByDataFilter": { - "httpMethod": "POST", - "parameterOrder": [ - "spreadsheetId" - ], + "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" + ], + "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 spreadsheet to request.", @@ -60,38 +94,29 @@ "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/spreadsheets" - ], "flatPath": "v4/spreadsheets/{spreadsheetId}:getByDataFilter", - "id": "sheets.spreadsheets.getByDataFilter", "path": "v4/spreadsheets/{spreadsheetId}: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.", - "request": { - "$ref": "GetSpreadsheetByDataFilterRequest" - } + "id": "sheets.spreadsheets.getByDataFilter" }, "create": { - "httpMethod": "POST", - "parameterOrder": [], + "path": "v4/spreadsheets", + "id": "sheets.spreadsheets.create", + "request": { + "$ref": "Spreadsheet" + }, + "description": "Creates a spreadsheet, returning the newly created spreadsheet.", "response": { "$ref": "Spreadsheet" }, - "parameters": {}, + "parameterOrder": [], + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/drive", "https://www.googleapis.com/auth/drive.file", "https://www.googleapis.com/auth/spreadsheets" ], - "flatPath": "v4/spreadsheets", - "id": "sheets.spreadsheets.create", - "path": "v4/spreadsheets", - "description": "Creates a spreadsheet, returning the newly created spreadsheet.", - "request": { - "$ref": "Spreadsheet" - } + "parameters": {}, + "flatPath": "v4/spreadsheets" }, "batchUpdate": { "response": { @@ -103,10 +128,10 @@ "httpMethod": "POST", "parameters": { "spreadsheetId": { - "location": "path", "description": "The spreadsheet to apply the updates to.", "required": true, - "type": "string" + "type": "string", + "location": "path" } }, "scopes": [ @@ -124,160 +149,63 @@ } }, "resources": { - "values": { + "sheets": { "methods": { - "get": { - "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.", - "httpMethod": "GET", - "parameterOrder": [ - "spreadsheetId", - "range" - ], - "response": { - "$ref": "ValueRange" - }, - "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": { - "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" - } - }, - "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": { - "flatPath": "v4/spreadsheets/{spreadsheetId}/values/{range}", - "path": "v4/spreadsheets/{spreadsheetId}/values/{range}", - "id": "sheets.spreadsheets.values.update", - "request": { - "$ref": "ValueRange" - }, - "description": "Sets values in a range of a spreadsheet.\nThe caller must specify the spreadsheet ID, range, and\na valueInputOption.", + "copyTo": { "response": { - "$ref": "UpdateValuesResponse" + "$ref": "SheetProperties" }, "parameterOrder": [ "spreadsheetId", - "range" + "sheetId" ], - "httpMethod": "PUT", + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/drive", "https://www.googleapis.com/auth/drive.file", "https://www.googleapis.com/auth/spreadsheets" ], "parameters": { - "range": { + "sheetId": { + "description": "The ID of the sheet to copy.", + "format": "int32", "required": true, - "type": "string", - "location": "path", - "description": "The A1 notation of the values to update." - }, - "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" + "type": "integer", + "location": "path" }, "spreadsheetId": { - "description": "The ID of the spreadsheet to update.", + "description": "The ID of the spreadsheet containing the sheet to copy.", "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" - }, - "valueInputOption": { - "description": "How the input data should be interpreted.", - "type": "string", - "location": "query", - "enum": [ - "INPUT_VALUE_OPTION_UNSPECIFIED", - "RAW", - "USER_ENTERED" - ] - }, - "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" } - } - }, - "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.", - "request": { - "$ref": "BatchUpdateValuesByDataFilterRequest" }, - "response": { - "$ref": "BatchUpdateValuesByDataFilterResponse" + "flatPath": "v4/spreadsheets/{spreadsheetId}/sheets/{sheetId}:copyTo", + "path": "v4/spreadsheets/{spreadsheetId}/sheets/{sheetId}:copyTo", + "id": "sheets.spreadsheets.sheets.copyTo", + "request": { + "$ref": "CopySheetToAnotherSpreadsheetRequest" }, + "description": "Copies a single sheet from a spreadsheet to another spreadsheet.\nReturns the properties of the newly created sheet." + } + } + }, + "developerMetadata": { + "methods": { + "search": { + "httpMethod": "POST", "parameterOrder": [ "spreadsheetId" ], - "httpMethod": "POST", + "response": { + "$ref": "SearchDeveloperMetadataResponse" + }, "parameters": { "spreadsheetId": { - "location": "path", - "description": "The ID of the spreadsheet to update.", + "description": "The ID of the spreadsheet to retrieve metadata from.", "required": true, - "type": "string" + "type": "string", + "location": "path" } }, "scopes": [ @@ -285,64 +213,37 @@ "https://www.googleapis.com/auth/drive.file", "https://www.googleapis.com/auth/spreadsheets" ], - "flatPath": "v4/spreadsheets/{spreadsheetId}/values:batchUpdateByDataFilter", - "path": "v4/spreadsheets/{spreadsheetId}/values:batchUpdateByDataFilter", - "id": "sheets.spreadsheets.values.batchUpdateByDataFilter" - }, - "batchUpdate": { + "flatPath": "v4/spreadsheets/{spreadsheetId}/developerMetadata:search", + "id": "sheets.spreadsheets.developerMetadata.search", + "path": "v4/spreadsheets/{spreadsheetId}/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": "BatchUpdateValuesRequest" - }, - "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.", + "$ref": "SearchDeveloperMetadataRequest" + } + }, + "get": { + "description": "Returns the developer metadata with the specified ID.\nThe caller must specify the spreadsheet ID and the developer metadata's\nunique metadataId.", + "httpMethod": "GET", "response": { - "$ref": "BatchUpdateValuesResponse" + "$ref": "DeveloperMetadata" }, "parameterOrder": [ - "spreadsheetId" - ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/drive", - "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/spreadsheets" + "spreadsheetId", + "metadataId" ], "parameters": { "spreadsheetId": { - "location": "path", - "description": "The ID of the spreadsheet to update.", - "required": true, - "type": "string" - } - }, - "flatPath": "v4/spreadsheets/{spreadsheetId}/values:batchUpdate", - "path": "v4/spreadsheets/{spreadsheetId}/values:batchUpdate", - "id": "sheets.spreadsheets.values.batchUpdate" - }, - "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" - }, - "httpMethod": "POST", - "parameterOrder": [ - "spreadsheetId", - "range" - ], - "response": { - "$ref": "ClearValuesResponse" - }, - "parameters": { - "range": { - "location": "path", - "description": "The A1 notation of the values to clear.", + "description": "The ID of the spreadsheet to retrieve metadata from.", "required": true, - "type": "string" + "type": "string", + "location": "path" }, - "spreadsheetId": { + "metadataId": { "location": "path", - "description": "The ID of the spreadsheet to update.", + "description": "The ID of the developer metadata to retrieve.", + "format": "int32", "required": true, - "type": "string" + "type": "integer" } }, "scopes": [ @@ -350,10 +251,14 @@ "https://www.googleapis.com/auth/drive.file", "https://www.googleapis.com/auth/spreadsheets" ], - "flatPath": "v4/spreadsheets/{spreadsheetId}/values/{range}:clear", - "id": "sheets.spreadsheets.values.clear", - "path": "v4/spreadsheets/{spreadsheetId}/values/{range}:clear" - }, + "flatPath": "v4/spreadsheets/{spreadsheetId}/developerMetadata/{metadataId}", + "id": "sheets.spreadsheets.developerMetadata.get", + "path": "v4/spreadsheets/{spreadsheetId}/developerMetadata/{metadataId}" + } + } + }, + "values": { + "methods": { "batchGet": { "response": { "$ref": "BatchGetValuesResponse" @@ -362,6 +267,13 @@ "spreadsheetId" ], "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/spreadsheets", + "https://www.googleapis.com/auth/spreadsheets.readonly" + ], "parameters": { "spreadsheetId": { "location": "path", @@ -380,43 +292,72 @@ "type": "string" }, "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", - "location": "query" + "type": "string" }, "ranges": { - "description": "The A1 notation of the values to retrieve.", - "type": "string", "repeated": true, - "location": "query" + "location": "query", + "description": "The A1 notation of the values to retrieve.", + "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]]`.", - "type": "string", "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", "path": "v4/spreadsheets/{spreadsheetId}/values:batchGet", "id": "sheets.spreadsheets.values.batchGet", "description": "Returns one or more ranges of values from a spreadsheet.\nThe caller must specify the spreadsheet ID and one or more ranges." }, + "clear": { + "request": { + "$ref": "ClearValuesRequest" + }, + "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.", + "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": { + "location": "path", + "description": "The ID of the spreadsheet to update.", + "required": true, + "type": "string" + }, + "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" + }, "batchClearByDataFilter": { "path": "v4/spreadsheets/{spreadsheetId}/values:batchClearByDataFilter", "id": "sheets.spreadsheets.values.batchClearByDataFilter", @@ -438,57 +379,45 @@ ], "parameters": { "spreadsheetId": { + "description": "The ID of the spreadsheet to update.", "required": true, "type": "string", - "location": "path", - "description": "The ID of the spreadsheet to update." + "location": "path" } }, "flatPath": "v4/spreadsheets/{spreadsheetId}/values:batchClearByDataFilter" }, "append": { - "flatPath": "v4/spreadsheets/{spreadsheetId}/values/{range}:append", - "path": "v4/spreadsheets/{spreadsheetId}/values/{range}:append", "id": "sheets.spreadsheets.values.append", + "path": "v4/spreadsheets/{spreadsheetId}/values/{range}: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.", "request": { "$ref": "ValueRange" }, - "response": { - "$ref": "AppendValuesResponse" - }, + "httpMethod": "POST", "parameterOrder": [ "spreadsheetId", "range" ], - "httpMethod": "POST", + "response": { + "$ref": "AppendValuesResponse" + }, "parameters": { - "includeValuesInResponse": { - "type": "boolean", - "location": "query", - "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." - }, - "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" - }, "spreadsheetId": { - "location": "path", "description": "The ID of the spreadsheet to update.", "required": true, - "type": "string" + "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" + "type": "string", + "location": "query" }, "insertDataOption": { "location": "query", @@ -500,14 +429,14 @@ "type": "string" }, "valueInputOption": { - "type": "string", - "location": "query", "enum": [ "INPUT_VALUE_OPTION_UNSPECIFIED", "RAW", "USER_ENTERED" ], - "description": "How the input data should be interpreted." + "description": "How the input data should be interpreted.", + "type": "string", + "location": "query" }, "responseDateTimeRenderOption": { "location": "query", @@ -517,19 +446,33 @@ ], "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": { + "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", + "location": "path" + }, + "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": { - "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.", + "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" }, @@ -537,28 +480,22 @@ "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 retrieve data from.", "required": true, - "type": "string" + "type": "string", + "location": "path" } }, - "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" + "flatPath": "v4/spreadsheets/{spreadsheetId}/values:batchGetByDataFilter" }, "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" }, @@ -566,106 +503,99 @@ "spreadsheetId" ], "httpMethod": "POST", - "parameters": { - "spreadsheetId": { - "description": "The ID of the spreadsheet to update.", - "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/spreadsheets" ], - "flatPath": "v4/spreadsheets/{spreadsheetId}/values:batchClear", - "path": "v4/spreadsheets/{spreadsheetId}/values:batchClear", - "id": "sheets.spreadsheets.values.batchClear" - } - } - }, - "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" - }, - "httpMethod": "POST", - "parameterOrder": [ - "spreadsheetId", - "sheetId" - ], - "response": { - "$ref": "SheetProperties" - }, "parameters": { - "sheetId": { - "location": "path", - "description": "The ID of the sheet to copy.", - "format": "int32", - "required": true, - "type": "integer" - }, "spreadsheetId": { - "description": "The ID of the spreadsheet containing the sheet to copy.", + "description": "The ID of the spreadsheet to update.", "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/spreadsheets" - ], - "flatPath": "v4/spreadsheets/{spreadsheetId}/sheets/{sheetId}:copyTo", - "id": "sheets.spreadsheets.sheets.copyTo", - "path": "v4/spreadsheets/{spreadsheetId}/sheets/{sheetId}:copyTo" - } - } - }, - "developerMetadata": { - "methods": { - "search": { + "flatPath": "v4/spreadsheets/{spreadsheetId}/values:batchClear", + "path": "v4/spreadsheets/{spreadsheetId}/values:batchClear", + "id": "sheets.spreadsheets.values.batchClear", + "request": { + "$ref": "BatchClearValuesRequest" + }, + "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." + }, + "get": { + "description": "Returns a range of values from a spreadsheet.\nThe caller must specify the spreadsheet ID and a range.", "response": { - "$ref": "SearchDeveloperMetadataResponse" + "$ref": "ValueRange" }, "parameterOrder": [ - "spreadsheetId" + "spreadsheetId", + "range" ], - "httpMethod": "POST", + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/drive", "https://www.googleapis.com/auth/drive.file", - "https://www.googleapis.com/auth/spreadsheets" + "https://www.googleapis.com/auth/drive.readonly", + "https://www.googleapis.com/auth/spreadsheets", + "https://www.googleapis.com/auth/spreadsheets.readonly" ], "parameters": { "spreadsheetId": { "location": "path", - "description": "The ID of the spreadsheet to retrieve metadata from.", + "description": "The ID of the spreadsheet to retrieve data from.", "required": true, "type": "string" - } - }, - "flatPath": "v4/spreadsheets/{spreadsheetId}/developerMetadata:search", - "path": "v4/spreadsheets/{spreadsheetId}/developerMetadata:search", - "id": "sheets.spreadsheets.developerMetadata.search", - "request": { - "$ref": "SearchDeveloperMetadataRequest" - }, - "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." + }, + "range": { + "description": "The A1 notation of the values to retrieve.", + "required": true, + "type": "string", + "location": "path" + }, + "valueRenderOption": { + "location": "query", + "enum": [ + "FORMATTED_VALUE", + "UNFORMATTED_VALUE", + "FORMULA" + ], + "description": "How values should be represented in the output.\nThe default render option is ValueRenderOption.FORMATTED_VALUE.", + "type": "string" + }, + "dateTimeRenderOption": { + "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", + "location": "query" + }, + "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" + } + }, + "flatPath": "v4/spreadsheets/{spreadsheetId}/values/{range}", + "path": "v4/spreadsheets/{spreadsheetId}/values/{range}", + "id": "sheets.spreadsheets.values.get" }, - "get": { - "httpMethod": "GET", - "parameterOrder": [ - "spreadsheetId", - "metadataId" - ], + "batchUpdateByDataFilter": { "response": { - "$ref": "DeveloperMetadata" + "$ref": "BatchUpdateValuesByDataFilterResponse" }, + "parameterOrder": [ + "spreadsheetId" + ], + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/drive", "https://www.googleapis.com/auth/drive.file", @@ -673,23 +603,118 @@ ], "parameters": { "spreadsheetId": { - "description": "The ID of the spreadsheet to retrieve metadata from.", + "description": "The ID of the spreadsheet to update.", "required": true, "type": "string", "location": "path" + } + }, + "flatPath": "v4/spreadsheets/{spreadsheetId}/values: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." + }, + "update": { + "response": { + "$ref": "UpdateValuesResponse" + }, + "parameterOrder": [ + "spreadsheetId", + "range" + ], + "httpMethod": "PUT", + "parameters": { + "spreadsheetId": { + "location": "path", + "description": "The ID of the spreadsheet to update.", + "required": true, + "type": "string" }, - "metadataId": { - "description": "The ID of the developer metadata to retrieve.", - "format": "int32", + "responseValueRenderOption": { + "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", + "location": "query" + }, + "valueInputOption": { + "enum": [ + "INPUT_VALUE_OPTION_UNSPECIFIED", + "RAW", + "USER_ENTERED" + ], + "description": "How the input data should be interpreted.", + "type": "string", + "location": "query" + }, + "responseDateTimeRenderOption": { + "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", + "location": "query" + }, + "range": { + "location": "path", + "description": "The A1 notation of the values to update.", "required": true, - "type": "integer", - "location": "path" + "type": "string" + }, + "includeValuesInResponse": { + "location": "query", + "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" } }, - "flatPath": "v4/spreadsheets/{spreadsheetId}/developerMetadata/{metadataId}", - "id": "sheets.spreadsheets.developerMetadata.get", - "path": "v4/spreadsheets/{spreadsheetId}/developerMetadata/{metadataId}", - "description": "Returns the developer metadata with the specified ID.\nThe caller must specify the spreadsheet ID and the developer metadata's\nunique metadataId." + "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", + "description": "Sets values in a range of a spreadsheet.\nThe caller must specify the spreadsheet ID, range, and\na valueInputOption.", + "request": { + "$ref": "ValueRange" + } + }, + "batchUpdate": { + "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": { + "location": "path", + "description": "The ID of the spreadsheet to update.", + "required": true, + "type": "string" + } + }, + "flatPath": "v4/spreadsheets/{spreadsheetId}/values:batchUpdate", + "path": "v4/spreadsheets/{spreadsheetId}/values:batchUpdate", + "id": "sheets.spreadsheets.values.batchUpdate", + "request": { + "$ref": "BatchUpdateValuesRequest" + }, + "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." } } } @@ -697,33 +722,44 @@ } }, "parameters": { - "uploadType": { + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", "type": "string", - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." + "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", - "location": "query" + "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", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query" + "type": "string" }, "callback": { - "location": "query", "description": "JSONP", - "type": "string" + "type": "string", + "location": "query" }, "alt": { "enumDescriptions": [ @@ -741,14 +777,14 @@ ], "type": "string" }, - "key": { + "access_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.", + "description": "OAuth access token.", "type": "string" }, - "access_token": { + "key": { "location": "query", - "description": "OAuth access token.", + "description": "API key. 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": { @@ -757,66 +793,180 @@ "type": "string" }, "pp": { - "location": "query", "description": "Pretty-print response.", "type": "boolean", - "default": "true" + "default": "true", + "location": "query" }, "oauth_token": { + "location": "query", "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" + "type": "string" }, "bearer_token": { + "description": "OAuth 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" + "location": "query" } }, "version": "v4", "baseUrl": "https://sheets.googleapis.com/", - "servicePath": "", - "description": "Reads and writes Google Sheets.", "kind": "discovery#restDescription", + "description": "Reads and writes Google Sheets.", + "servicePath": "", "basePath": "", - "documentationLink": "https://developers.google.com/sheets/", "revision": "20180503", + "documentationLink": "https://developers.google.com/sheets/", "id": "sheets:v4", "discoveryVersion": "v1", "version_module": true, "schemas": { - "UpdateNamedRangeRequest": { - "description": "Updates properties of the named range with the specified\nnamedRangeId.", + "BatchUpdateValuesByDataFilterResponse": { + "description": "The response when updating a range of values in a spreadsheet.", "type": "object", "properties": { - "namedRange": { - "description": "The named range to update with the new properties.", - "$ref": "NamedRange" + "totalUpdatedColumns": { + "description": "The total number of columns where at least one cell in the column was\nupdated.", + "format": "int32", + "type": "integer" }, - "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", + "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": "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" + }, + "totalUpdatedCells": { + "description": "The total number of cells updated.", + "format": "int32", + "type": "integer" + } + }, + "id": "BatchUpdateValuesByDataFilterResponse" + }, + "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" + } } }, - "id": "UpdateNamedRangeRequest" + "id": "RowData" + }, + "GridData": { + "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", + "description": "Data in the grid, as well as metadata about the dimensions.", + "type": "object" + }, + "Border": { + "description": "A border along a cell.", + "type": "object", + "properties": { + "width": { + "description": "The width of the border, in pixels.\nDeprecated; the width is determined by the \"style\" field.", + "format": "int32", + "type": "integer" + }, + "style": { + "enum": [ + "STYLE_UNSPECIFIED", + "DOTTED", + "DASHED", + "SOLID", + "SOLID_MEDIUM", + "SOLID_THICK", + "NONE", + "DOUBLE" + ], + "description": "The style of the border.", + "type": "string", + "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." + ] + }, + "color": { + "$ref": "Color", + "description": "The color of the border." + } + }, + "id": "Border" }, "FindReplaceRequest": { - "id": "FindReplaceRequest", "description": "Finds and replaces data in cells over a range, sheet, or all sheets.", "type": "object", "properties": { + "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" + }, "replacement": { "description": "The value to use as the replacement.", "type": "string" @@ -841,44 +991,41 @@ "includeFormulas": { "description": "True if the search should include cells with formulas.\nFalse to skip cells with formulas.", "type": "boolean" + } + }, + "id": "FindReplaceRequest" + }, + "UpdateNamedRangeRequest": { + "properties": { + "namedRange": { + "description": "The named range to update with the new properties.", + "$ref": "NamedRange" }, - "matchEntireCell": { - "description": "True if the find value should match the entire cell.", - "type": "boolean" - }, - "find": { - "description": "The value to search.", + "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" - }, - "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": "UpdateNamedRangeRequest", + "description": "Updates properties of the named range with the specified\nnamedRangeId.", + "type": "object" }, "AddSheetRequest": { - "type": "object", "properties": { "properties": { - "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.)", - "$ref": "SheetProperties" + "$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.)" } }, "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." + "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" }, "UpdateCellsRequest": { "description": "Updates all cells in a range with new data.", "type": "object", "properties": { - "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." - }, - "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.", "type": "array", @@ -890,35 +1037,41 @@ "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": { + "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.", + "$ref": "GridCoordinate" + }, + "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." } }, "id": "UpdateCellsRequest" }, - "RandomizeRangeRequest": { - "description": "Randomizes the order of the rows in a range.", - "type": "object", + "DeleteConditionalFormatRuleResponse": { "properties": { - "range": { - "$ref": "GridRange", - "description": "The range to randomize." + "rule": { + "description": "The rule that was deleted.", + "$ref": "ConditionalFormatRule" } }, - "id": "RandomizeRangeRequest" - }, - "DeleteConditionalFormatRuleResponse": { + "id": "DeleteConditionalFormatRuleResponse", "description": "The result of deleting a conditional format rule.", - "type": "object", + "type": "object" + }, + "RandomizeRangeRequest": { "properties": { - "rule": { - "$ref": "ConditionalFormatRule", - "description": "The rule that was deleted." + "range": { + "description": "The range to randomize.", + "$ref": "GridRange" } }, - "id": "DeleteConditionalFormatRuleResponse" + "id": "RandomizeRangeRequest", + "description": "Randomizes the order of the rows in a range.", + "type": "object" }, "DeleteRangeRequest": { - "description": "Deletes a range of cells, shifting other cells into the deleted area.", - "type": "object", "properties": { "shiftDimension": { "enumDescriptions": [ @@ -935,11 +1088,13 @@ "type": "string" }, "range": { - "description": "The range of cells to delete.", - "$ref": "GridRange" + "$ref": "GridRange", + "description": "The range of cells to delete." } }, - "id": "DeleteRangeRequest" + "id": "DeleteRangeRequest", + "description": "Deletes a range of cells, shifting other cells into the deleted area.", + "type": "object" }, "GridCoordinate": { "description": "A coordinate in a sheet.\nAll indexes are zero-based.", @@ -956,28 +1111,39 @@ "type": "integer" }, "columnIndex": { - "type": "integer", "description": "The column index of the coordinate.", - "format": "int32" + "format": "int32", + "type": "integer" } }, "id": "GridCoordinate" }, "UpdateSheetPropertiesRequest": { + "description": "Updates properties of the sheet with the specified\nsheetId.", + "type": "object", "properties": { "properties": { "description": "The properties to update.", "$ref": "SheetProperties" }, "fields": { - "type": "string", "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" + "format": "google-fieldmask", + "type": "string" } }, - "id": "UpdateSheetPropertiesRequest", - "description": "Updates properties of the sheet with the specified\nsheetId.", - "type": "object" + "id": "UpdateSheetPropertiesRequest" + }, + "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." + } + }, + "id": "UnmergeCellsRequest" }, "GridProperties": { "description": "Properties of a grid.", @@ -1018,70 +1184,30 @@ }, "id": "GridProperties" }, - "UnmergeCellsRequest": { - "description": "Unmerges cells in the given range.", - "type": "object", - "properties": { - "range": { - "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.", - "$ref": "GridRange" - } - }, - "id": "UnmergeCellsRequest" - }, - "SortSpec": { - "description": "A sort order associated with a specific column or row.", - "type": "object", + "UpdateEmbeddedObjectPositionResponse": { "properties": { - "dimensionIndex": { - "type": "integer", - "description": "The dimension the sort should be applied to.", - "format": "int32" - }, - "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" - ] + "position": { + "$ref": "EmbeddedObjectPosition", + "description": "The new position of the embedded object." } }, - "id": "SortSpec" + "id": "UpdateEmbeddedObjectPositionResponse", + "description": "The result of updating an embedded object's position.", + "type": "object" }, "Sheet": { "description": "A sheet in a spreadsheet.", "type": "object", "properties": { - "rowGroups": { - "type": "array", - "items": { - "$ref": "DimensionGroup" - }, - "description": "All row groups on this sheet, ordered by increasing range start index, then\nby group depth." - }, - "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" - } - }, "properties": { - "description": "The properties of the sheet.", - "$ref": "SheetProperties" + "$ref": "SheetProperties", + "description": "The properties of the sheet." }, - "conditionalFormats": { - "description": "The conditional format rules in this sheet.", + "developerMetadata": { + "description": "The developer metadata associated with a sheet.", "type": "array", "items": { - "$ref": "ConditionalFormatRule" + "$ref": "DeveloperMetadata" } }, "columnGroups": { @@ -1091,18 +1217,18 @@ "$ref": "DimensionGroup" } }, - "protectedRanges": { - "description": "The protected ranges in this sheet.", + "conditionalFormats": { + "description": "The conditional format rules in this sheet.", "type": "array", "items": { - "$ref": "ProtectedRange" + "$ref": "ConditionalFormatRule" } }, - "developerMetadata": { - "description": "The developer metadata associated with a sheet.", + "protectedRanges": { + "description": "The protected ranges in this sheet.", "type": "array", "items": { - "$ref": "DeveloperMetadata" + "$ref": "ProtectedRange" } }, "basicFilter": { @@ -1110,11 +1236,11 @@ "description": "The filter on this sheet, if any." }, "merges": { + "description": "The ranges that are merged together.", "type": "array", "items": { "$ref": "GridRange" - }, - "description": "The ranges that are merged together." + } }, "bandedRanges": { "description": "The banded (i.e. alternating colors) ranges on this sheet.", @@ -1136,40 +1262,81 @@ "items": { "$ref": "FilterView" } + }, + "rowGroups": { + "description": "All row groups on this sheet, ordered by increasing range start index, then\nby group depth.", + "type": "array", + "items": { + "$ref": "DimensionGroup" + } + }, + "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" + } } }, "id": "Sheet" }, - "UpdateEmbeddedObjectPositionResponse": { - "description": "The result of updating an embedded object's position.", + "SortSpec": { + "description": "A sort order associated with a specific column or row.", "type": "object", "properties": { - "position": { - "$ref": "EmbeddedObjectPosition", - "description": "The new position of the embedded object." + "dimensionIndex": { + "description": "The dimension the sort should be applied to.", + "format": "int32", + "type": "integer" + }, + "sortOrder": { + "enum": [ + "SORT_ORDER_UNSPECIFIED", + "ASCENDING", + "DESCENDING" + ], + "description": "The order data should be sorted.", + "type": "string", + "enumDescriptions": [ + "Default value, do not use this.", + "Sort ascending.", + "Sort descending." + ] } }, - "id": "UpdateEmbeddedObjectPositionResponse" + "id": "SortSpec" }, "BooleanRule": { "description": "A rule that may or may not match, depending on the condition.", "type": "object", "properties": { + "condition": { + "description": "The condition of the rule. If the condition evaluates to true,\nthe format will be applied.", + "$ref": "BooleanCondition" + }, "format": { "description": "The format to apply.\nConditional formatting can only apply a subset of formatting:\nbold, italic,\nstrikethrough,\nforeground color &\nbackground color.", "$ref": "CellFormat" - }, - "condition": { - "$ref": "BooleanCondition", - "description": "The condition of the rule. If the condition evaluates to true,\nthe format will be applied." } }, "id": "BooleanRule" }, - "FilterCriteria": { - "id": "FilterCriteria", - "description": "Criteria for showing/hiding rows in a filter or filter view.", + "PivotGroupValueMetadata": { + "description": "Metadata about a value in a pivot grouping.", "type": "object", + "properties": { + "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.)" + }, + "collapsed": { + "description": "True if the data corresponding to the value is collapsed.", + "type": "boolean" + } + }, + "id": "PivotGroupValueMetadata" + }, + "FilterCriteria": { "properties": { "hiddenValues": { "description": "Values that should be hidden.", @@ -1179,66 +1346,54 @@ } }, "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": { - "type": "object", - "properties": { - "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.)" - }, - "collapsed": { - "type": "boolean", - "description": "True if the data corresponding to the value is collapsed." + "$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.)" } }, - "id": "PivotGroupValueMetadata", - "description": "Metadata about a value in a pivot grouping." + "id": "FilterCriteria", + "description": "Criteria for showing/hiding rows in a filter or filter view.", + "type": "object" }, "WaterfallChartSpec": { "description": "A waterfall chart.", "type": "object", "properties": { - "series": { - "description": "The data this waterfall chart is visualizing.", - "type": "array", - "items": { - "$ref": "WaterfallChartSeries" - } - }, "connectorLineStyle": { - "$ref": "LineStyle", - "description": "The line style for the connector lines." + "description": "The line style for the connector lines.", + "$ref": "LineStyle" }, "domain": { - "description": "The domain data (horizontal axis) for the waterfall chart.", - "$ref": "WaterfallChartDomain" + "$ref": "WaterfallChartDomain", + "description": "The domain data (horizontal axis) for the waterfall chart." }, "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" + "type": "string", + "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." + ] }, "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" + } } }, "id": "WaterfallChartSpec" @@ -1272,81 +1427,79 @@ "description": "Updates a conditional format rule at the given index,\nor moves a conditional format rule to another index.", "type": "object", "properties": { - "rule": { - "$ref": "ConditionalFormatRule", - "description": "The rule that should replace the rule at the given index." - }, "index": { "description": "The zero-based index of the rule that should be replaced or moved.", "format": "int32", "type": "integer" }, "sheetId": { - "type": "integer", "description": "The sheet of the rule to move. Required if new_index is set,\nunused otherwise.", - "format": "int32" + "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." } }, "id": "UpdateConditionalFormatRuleRequest" }, - "BasicChartDomain": { - "id": "BasicChartDomain", - "description": "The domain of a chart.\nFor example, if charting stock prices over time, this would be the date.", + "DataValidationRule": { + "description": "A data validation rule.", "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).", + "strict": { + "description": "True if invalid data should be rejected.", "type": "boolean" - } - } - }, - "DataValidationRule": { - "properties": { + }, + "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" + "$ref": "BooleanCondition", + "description": "The condition that data in the cell must match." }, "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" + } + }, + "id": "DataValidationRule" + }, + "BasicChartDomain": { + "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" }, - "strict": { - "description": "True if invalid data should be rejected.", + "reversed": { + "description": "True to reverse the order of the domain values (horizontal axis).", "type": "boolean" - }, - "inputMessage": { - "description": "A message to show the user when adding data to the cell.", - "type": "string" } }, - "id": "DataValidationRule", - "description": "A data validation rule.", + "id": "BasicChartDomain", + "description": "The domain of a chart.\nFor example, if charting stock prices over time, this would be the date.", "type": "object" }, "PasteDataRequest": { "description": "Inserts data into the spreadsheet starting at the specified coordinate.", "type": "object", "properties": { - "type": { - "type": "string", - "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." - ], + "data": { + "description": "The data to insert.", + "type": "string" + }, + "delimiter": { + "description": "The delimiter in the data.", + "type": "string" + }, + "type": { "enum": [ "PASTE_NORMAL", "PASTE_VALUES", @@ -1356,7 +1509,17 @@ "PASTE_DATA_VALIDATION", "PASTE_CONDITIONAL_FORMATTING" ], - "description": "How the data should be pasted." + "description": "How the data should be pasted.", + "type": "string", + "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." + ] }, "html": { "description": "True if the data is HTML.", @@ -1365,21 +1528,11 @@ "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" } }, "id": "PasteDataRequest" }, "UpdateDeveloperMetadataResponse": { - "description": "The response from updating developer metadata.", - "type": "object", "properties": { "developerMetadata": { "description": "The updated developer metadata.", @@ -1389,65 +1542,69 @@ } } }, - "id": "UpdateDeveloperMetadataResponse" + "id": "UpdateDeveloperMetadataResponse", + "description": "The response from updating developer metadata.", + "type": "object" }, "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": { + "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": "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." - ] + "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" } }, "id": "AppendDimensionRequest" }, "AddNamedRangeRequest": { + "description": "Adds a named range to the spreadsheet.", "type": "object", "properties": { "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.)", - "$ref": "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", - "description": "Adds a named range to the spreadsheet." + "id": "AddNamedRangeRequest" }, "CreateDeveloperMetadataResponse": { - "description": "The response from creating developer metadata.", - "type": "object", "properties": { "developerMetadata": { "$ref": "DeveloperMetadata", "description": "The developer metadata that was created." } }, - "id": "CreateDeveloperMetadataResponse" + "id": "CreateDeveloperMetadataResponse", + "description": "The response from creating developer metadata.", + "type": "object" }, "UpdateEmbeddedObjectPositionRequest": { - "description": "Update an embedded object's position (such as a moving or resizing a\nchart or image).", - "type": "object", "properties": { + "newPosition": { + "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.", + "$ref": "EmbeddedObjectPosition" + }, "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", @@ -1457,16 +1614,13 @@ "description": "The ID of the object to moved.", "format": "int32", "type": "integer" - }, - "newPosition": { - "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.", - "$ref": "EmbeddedObjectPosition" } }, - "id": "UpdateEmbeddedObjectPositionRequest" + "id": "UpdateEmbeddedObjectPositionRequest", + "description": "Update an embedded object's position (such as a moving or resizing a\nchart or image).", + "type": "object" }, "TextRotation": { - "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", @@ -1479,7 +1633,8 @@ } }, "id": "TextRotation", - "description": "The rotation applied to text in a cell." + "description": "The rotation applied to text in a cell.", + "type": "object" }, "DeleteDimensionGroupResponse": { "description": "The result of deleting a group.", @@ -1496,7 +1651,6 @@ "id": "DeleteDimensionGroupResponse" }, "UpdateDeveloperMetadataRequest": { - "type": "object", "properties": { "dataFilters": { "description": "The filters matching the developer metadata entries to update.", @@ -1516,10 +1670,10 @@ } }, "id": "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." + "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" }, "PieChartSpec": { - "id": "PieChartSpec", "description": "A \u003ca href=\"/chart/interactive/docs/gallery/piechart\"\u003epie chart\u003c/a\u003e.", "type": "object", "properties": { @@ -1536,16 +1690,6 @@ "$ref": "ChartData" }, "legendPosition": { - "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", @@ -1555,306 +1699,159 @@ "NO_LEGEND", "LABELED_LEGEND" ], - "description": "Where the legend of the pie chart should be drawn." + "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." + ] }, "pieHole": { "description": "The size of the hole in the pie chart.", "format": "double", "type": "number" } - } + }, + "id": "PieChartSpec" }, - "WaterfallChartColumnStyle": { - "id": "WaterfallChartColumnStyle", - "description": "Styles for a waterfall chart column.", + "UpdateFilterViewRequest": { + "description": "Updates properties of the filter view.", "type": "object", "properties": { - "label": { - "description": "The label of the column's legend.", - "type": "string" + "filter": { + "description": "The new properties of the filter view.", + "$ref": "FilterView" }, - "color": { - "description": "The color of the column.", - "$ref": "Color" - } - } - }, - "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." } }, - "id": "UpdateFilterViewRequest", - "description": "Updates properties of the filter view.", - "type": "object" + "id": "UpdateFilterViewRequest" }, - "ConditionalFormatRule": { - "description": "A rule describing a conditional format.", + "WaterfallChartColumnStyle": { + "description": "Styles for a waterfall chart column.", "type": "object", "properties": { - "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" - }, - "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" - } - } - }, - "id": "ConditionalFormatRule" - }, - "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": { - "type": "string", - "enumDescriptions": [ - "Paste normally.", - "Paste transposed, where all rows become columns and vice versa." - ], - "enum": [ - "NORMAL", - "TRANSPOSE" - ], - "description": "How that data should be oriented when pasting." - }, - "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.", + "label": { + "description": "The label of the column's legend.", "type": "string" + }, + "color": { + "description": "The color of the column.", + "$ref": "Color" } }, - "id": "CopyPasteRequest", - "description": "Copies data from the source to the destination.", - "type": "object" + "id": "WaterfallChartColumnStyle" }, - "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", - "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 be 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.", - "The cell's value must be TRUE/FALSE or in the list of condition values.\nSupported by data validation.\nRenders as a cell checkbox.\nSupports zero, one or two ConditionValue. No\nvalues indicates the cell must be TRUE or FALSE, where TRUE renders as\nchecked and FALSE renders as unchecked. One value indicates the cell\nwill render as checked when it contains that value and unchecked when it\nis blank. Two values indicate that the cell will render as checked when\nit contains the first value and unchecked when it contains the second\nvalue. For example, [\"Yes\",\"\"No\"] indicates that the cell will render a\nchecked box when it has the value \"Yes\" and an unchecked box when it has\nthe value \"No\"." - ], - "enum": [ - "CONDITION_TYPE_UNSPECIFIED", - "NUMBER_GREATER", - "NUMBER_GREATER_THAN_EQ", - "NUMBER_LESS", - "NUMBER_LESS_THAN_EQ", - "NUMBER_EQ", - "NUMBER_NOT_EQ", - "NUMBER_BETWEEN", - "NUMBER_NOT_BETWEEN", - "TEXT_CONTAINS", - "TEXT_NOT_CONTAINS", - "TEXT_STARTS_WITH", - "TEXT_ENDS_WITH", - "TEXT_EQ", - "TEXT_IS_EMAIL", - "TEXT_IS_URL", - "DATE_EQ", - "DATE_BEFORE", - "DATE_AFTER", - "DATE_ON_OR_BEFORE", - "DATE_ON_OR_AFTER", - "DATE_BETWEEN", - "DATE_NOT_BETWEEN", - "DATE_IS_VALID", - "ONE_OF_RANGE", - "ONE_OF_LIST", - "BLANK", - "NOT_BLANK", - "CUSTOM_FORMULA", - "BOOLEAN" - ], - "description": "The type of condition.", - "type": "string" + "ConditionalFormatRule": { + "description": "A rule describing a conditional format.", + "type": "object", + "properties": { + "gradientRule": { + "$ref": "GradientRule", + "description": "The formatting will vary based on the gradients in the rule." }, - "values": { + "booleanRule": { + "description": "The formatting is either \"on\" or \"off\" according to the rule.", + "$ref": "BooleanRule" + }, + "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": "ConditionValue" - }, - "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." + "$ref": "GridRange" + } } }, - "id": "BooleanCondition" + "id": "ConditionalFormatRule" }, - "Request": { - "description": "A single kind of update to apply to a spreadsheet.", + "CopyPasteRequest": { + "description": "Copies data from the source to the destination.", "type": "object", "properties": { - "addProtectedRange": { - "description": "Adds a protected range.", - "$ref": "AddProtectedRangeRequest" - }, - "deleteNamedRange": { - "$ref": "DeleteNamedRangeRequest", - "description": "Deletes a named range." - }, - "duplicateSheet": { - "$ref": "DuplicateSheetRequest", - "description": "Duplicates a sheet." - }, - "deleteSheet": { - "description": "Deletes a sheet.", - "$ref": "DeleteSheetRequest" - }, - "unmergeCells": { - "description": "Unmerges merged cells.", - "$ref": "UnmergeCellsRequest" - }, - "updateEmbeddedObjectPosition": { - "$ref": "UpdateEmbeddedObjectPositionRequest", - "description": "Updates an embedded object's (e.g. chart, image) position." - }, - "addDimensionGroup": { - "$ref": "AddDimensionGroupRequest", - "description": "Creates a group over the specified range." - }, - "updateDeveloperMetadata": { - "$ref": "UpdateDeveloperMetadataRequest", - "description": "Updates an existing developer metadata entry" - }, - "updateDimensionProperties": { - "description": "Updates dimensions' properties.", - "$ref": "UpdateDimensionPropertiesRequest" - }, - "updateDimensionGroup": { - "description": "Updates the state of the specified group.", - "$ref": "UpdateDimensionGroupRequest" - }, - "pasteData": { - "$ref": "PasteDataRequest", - "description": "Pastes data (HTML or delimited) into a sheet." - }, - "setBasicFilter": { - "$ref": "SetBasicFilterRequest", - "description": "Sets the basic filter on a sheet." - }, - "addConditionalFormatRule": { - "$ref": "AddConditionalFormatRuleRequest", - "description": "Adds a new conditional format rule." - }, - "addNamedRange": { - "$ref": "AddNamedRangeRequest", - "description": "Adds a named range." - }, - "updateCells": { - "$ref": "UpdateCellsRequest", - "description": "Updates many cells at once." - }, - "updateSpreadsheetProperties": { - "$ref": "UpdateSpreadsheetPropertiesRequest", - "description": "Updates the spreadsheet's 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" }, - "deleteEmbeddedObject": { - "$ref": "DeleteEmbeddedObjectRequest", - "description": "Deletes an embedded object (e.g, chart, image) in a sheet." + "pasteOrientation": { + "enumDescriptions": [ + "Paste normally.", + "Paste transposed, where all rows become columns and vice versa." + ], + "enum": [ + "NORMAL", + "TRANSPOSE" + ], + "description": "How that data should be oriented when pasting.", + "type": "string" }, - "updateFilterView": { - "$ref": "UpdateFilterViewRequest", - "description": "Updates the properties of a filter view." + "source": { + "description": "The source range to copy.", + "$ref": "GridRange" }, - "addBanding": { - "description": "Adds a new banded range", - "$ref": "AddBandingRequest" + "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" + } + }, + "id": "CopyPasteRequest" + }, + "Request": { + "description": "A single kind of update to apply to a spreadsheet.", + "type": "object", + "properties": { + "appendCells": { + "$ref": "AppendCellsRequest", + "description": "Appends cells after the last row with data in a sheet." }, "autoResizeDimensions": { "description": "Automatically resizes one or more dimensions based on the contents\nof the cells in that dimension.", "$ref": "AutoResizeDimensionsRequest" }, - "appendCells": { - "$ref": "AppendCellsRequest", - "description": "Appends cells after the last row with data in a sheet." - }, "cutPaste": { "description": "Cuts data from one area and pastes it to another.", "$ref": "CutPasteRequest" }, "mergeCells": { - "description": "Merges cells together.", - "$ref": "MergeCellsRequest" + "$ref": "MergeCellsRequest", + "description": "Merges cells together." }, "updateNamedRange": { - "$ref": "UpdateNamedRangeRequest", - "description": "Updates a named range." + "description": "Updates a named range.", + "$ref": "UpdateNamedRangeRequest" }, "updateSheetProperties": { - "$ref": "UpdateSheetPropertiesRequest", - "description": "Updates a sheet's properties." + "description": "Updates a sheet's properties.", + "$ref": "UpdateSheetPropertiesRequest" }, "deleteDimension": { - "description": "Deletes rows or columns in a sheet.", - "$ref": "DeleteDimensionRequest" + "$ref": "DeleteDimensionRequest", + "description": "Deletes rows or columns in a sheet." }, "autoFill": { "$ref": "AutoFillRequest", @@ -1873,28 +1870,28 @@ "description": "Deletes a protected range." }, "duplicateFilterView": { - "$ref": "DuplicateFilterViewRequest", - "description": "Duplicates a filter view." + "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." + "description": "Finds and replaces occurrences of some text with other text.", + "$ref": "FindReplaceRequest" }, "textToColumns": { "$ref": "TextToColumnsRequest", "description": "Converts a column of text into many columns of text." }, "updateChartSpec": { - "$ref": "UpdateChartSpecRequest", - "description": "Updates a chart's specifications." + "description": "Updates a chart's specifications.", + "$ref": "UpdateChartSpecRequest" }, "addSheet": { - "description": "Adds a sheet.", - "$ref": "AddSheetRequest" + "$ref": "AddSheetRequest", + "description": "Adds a sheet." }, "updateProtectedRange": { "$ref": "UpdateProtectedRangeRequest", @@ -1913,8 +1910,8 @@ "description": "Inserts new rows or columns in a sheet." }, "deleteRange": { - "$ref": "DeleteRangeRequest", - "description": "Deletes a range of cells from a sheet, shifting the remaining cells." + "description": "Deletes a range of cells from a sheet, shifting the remaining cells.", + "$ref": "DeleteRangeRequest" }, "deleteBanding": { "$ref": "DeleteBandingRequest", @@ -1924,33 +1921,33 @@ "description": "Adds a filter view.", "$ref": "AddFilterViewRequest" }, - "updateBorders": { - "$ref": "UpdateBordersRequest", - "description": "Updates the borders in a range of cells." - }, "setDataValidation": { - "description": "Sets data validation for one or more cells.", - "$ref": "SetDataValidationRequest" + "$ref": "SetDataValidationRequest", + "description": "Sets data validation for one or more cells." + }, + "updateBorders": { + "description": "Updates the borders in a range of cells.", + "$ref": "UpdateBordersRequest" }, "deleteConditionalFormatRule": { - "description": "Deletes an existing conditional format rule.", - "$ref": "DeleteConditionalFormatRuleRequest" + "$ref": "DeleteConditionalFormatRuleRequest", + "description": "Deletes an existing conditional format rule." }, "repeatCell": { - "$ref": "RepeatCellRequest", - "description": "Repeats a single cell across a range." + "description": "Repeats a single cell across a range.", + "$ref": "RepeatCellRequest" }, "clearBasicFilter": { - "$ref": "ClearBasicFilterRequest", - "description": "Clears the basic filter on a sheet." + "description": "Clears the basic filter on a sheet.", + "$ref": "ClearBasicFilterRequest" }, "appendDimension": { - "$ref": "AppendDimensionRequest", - "description": "Appends dimensions to the end of a sheet." + "description": "Appends dimensions to the end of a sheet.", + "$ref": "AppendDimensionRequest" }, "updateConditionalFormatRule": { - "$ref": "UpdateConditionalFormatRuleRequest", - "description": "Updates an existing conditional format rule." + "description": "Updates an existing conditional format rule.", + "$ref": "UpdateConditionalFormatRuleRequest" }, "createDeveloperMetadata": { "$ref": "CreateDeveloperMetadataRequest", @@ -1969,20 +1966,175 @@ "description": "Deletes developer metadata" }, "randomizeRange": { - "$ref": "RandomizeRangeRequest", - "description": "Randomizes the order of the rows in a range." + "description": "Randomizes the order of the rows in a range.", + "$ref": "RandomizeRangeRequest" + }, + "updateBanding": { + "$ref": "UpdateBandingRequest", + "description": "Updates a banded range" + }, + "deleteNamedRange": { + "description": "Deletes a named range.", + "$ref": "DeleteNamedRangeRequest" + }, + "addProtectedRange": { + "$ref": "AddProtectedRangeRequest", + "description": "Adds a protected range." + }, + "duplicateSheet": { + "$ref": "DuplicateSheetRequest", + "description": "Duplicates a sheet." + }, + "deleteSheet": { + "$ref": "DeleteSheetRequest", + "description": "Deletes a sheet." + }, + "unmergeCells": { + "description": "Unmerges merged cells.", + "$ref": "UnmergeCellsRequest" + }, + "updateEmbeddedObjectPosition": { + "description": "Updates an embedded object's (e.g. chart, image) position.", + "$ref": "UpdateEmbeddedObjectPositionRequest" + }, + "addDimensionGroup": { + "$ref": "AddDimensionGroupRequest", + "description": "Creates a group over the specified range." + }, + "updateDimensionProperties": { + "description": "Updates dimensions' properties.", + "$ref": "UpdateDimensionPropertiesRequest" + }, + "updateDeveloperMetadata": { + "$ref": "UpdateDeveloperMetadataRequest", + "description": "Updates an existing developer metadata entry" + }, + "pasteData": { + "$ref": "PasteDataRequest", + "description": "Pastes data (HTML or delimited) into a sheet." + }, + "updateDimensionGroup": { + "$ref": "UpdateDimensionGroupRequest", + "description": "Updates the state of the specified group." + }, + "setBasicFilter": { + "$ref": "SetBasicFilterRequest", + "description": "Sets the basic filter on a sheet." + }, + "addConditionalFormatRule": { + "description": "Adds a new conditional format rule.", + "$ref": "AddConditionalFormatRuleRequest" + }, + "addNamedRange": { + "description": "Adds a named range.", + "$ref": "AddNamedRangeRequest" + }, + "updateCells": { + "description": "Updates many cells at once.", + "$ref": "UpdateCellsRequest" + }, + "updateSpreadsheetProperties": { + "$ref": "UpdateSpreadsheetPropertiesRequest", + "description": "Updates the spreadsheet's properties." + }, + "deleteEmbeddedObject": { + "$ref": "DeleteEmbeddedObjectRequest", + "description": "Deletes an embedded object (e.g, chart, image) in a sheet." + }, + "updateFilterView": { + "description": "Updates the properties of a filter view.", + "$ref": "UpdateFilterViewRequest" + }, + "addBanding": { + "description": "Adds a new banded range", + "$ref": "AddBandingRequest" + } + }, + "id": "Request" + }, + "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", + "properties": { + "type": { + "enum": [ + "CONDITION_TYPE_UNSPECIFIED", + "NUMBER_GREATER", + "NUMBER_GREATER_THAN_EQ", + "NUMBER_LESS", + "NUMBER_LESS_THAN_EQ", + "NUMBER_EQ", + "NUMBER_NOT_EQ", + "NUMBER_BETWEEN", + "NUMBER_NOT_BETWEEN", + "TEXT_CONTAINS", + "TEXT_NOT_CONTAINS", + "TEXT_STARTS_WITH", + "TEXT_ENDS_WITH", + "TEXT_EQ", + "TEXT_IS_EMAIL", + "TEXT_IS_URL", + "DATE_EQ", + "DATE_BEFORE", + "DATE_AFTER", + "DATE_ON_OR_BEFORE", + "DATE_ON_OR_AFTER", + "DATE_BETWEEN", + "DATE_NOT_BETWEEN", + "DATE_IS_VALID", + "ONE_OF_RANGE", + "ONE_OF_LIST", + "BLANK", + "NOT_BLANK", + "CUSTOM_FORMULA", + "BOOLEAN" + ], + "description": "The type of condition.", + "type": "string", + "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 be 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.", + "The cell's value must be TRUE/FALSE or in the list of condition values.\nSupported by data validation.\nRenders as a cell checkbox.\nSupports zero, one or two ConditionValue. No\nvalues indicates the cell must be TRUE or FALSE, where TRUE renders as\nchecked and FALSE renders as unchecked. One value indicates the cell\nwill render as checked when it contains that value and unchecked when it\nis blank. Two values indicate that the cell will render as checked when\nit contains the first value and unchecked when it contains the second\nvalue. For example, [\"Yes\",\"\"No\"] indicates that the cell will render a\nchecked box when it has the value \"Yes\" and an unchecked box when it has\nthe value \"No\"." + ] }, - "updateBanding": { - "$ref": "UpdateBandingRequest", - "description": "Updates a banded range" + "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" + } } }, - "id": "Request" + "id": "BooleanCondition" }, "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": { "endRowIndex": { "description": "The end row (exclusive) of the range, or not set if unbounded.", @@ -2009,22 +2161,25 @@ "format": "int32", "type": "integer" } - } + }, + "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" }, "WaterfallChartDomain": { - "id": "WaterfallChartDomain", "description": "The domain of a waterfall chart.", "type": "object", "properties": { "data": { - "description": "The data of the WaterfallChartDomain.", - "$ref": "ChartData" + "$ref": "ChartData", + "description": "The data of the WaterfallChartDomain." }, "reversed": { "description": "True to reverse the order of the domain values (horizontal axis).", "type": "boolean" } - } + }, + "id": "WaterfallChartDomain" }, "AddDimensionGroupRequest": { "description": "Creates a group over the specified range.\n\nIf the requested range is a superset of the range of an existing group G,\nthen the depth of G will be incremented and this new group G' will have the\ndepth of that group. For example, a group [C:D, depth 1] + [B:E] results in\ngroups [B:E, depth 1] and [C:D, depth 2].\nIf the requested range is a subset of the range of an existing group G,\nthen the depth of the new group G' will be one greater than the depth of G.\nFor example, a group [B:E, depth 1] + [C:D] results in groups [B:E, depth 1]\nand [C:D, depth 2].\nIf the requested range starts before and ends within, or starts within and\nends after, the range of an existing group G, then the range of the existing\ngroup G will become the union of the ranges, and the new group G' will have\ndepth one greater than the depth of G and range as the intersection of the\nranges. For example, a group [B:D, depth 1] + [C:E] results in groups [B:E,\ndepth 1] and [C:D, depth 2].", @@ -2038,8 +2193,6 @@ "id": "AddDimensionGroupRequest" }, "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.", @@ -2084,17 +2237,11 @@ "$ref": "BasicChartAxis" } }, + "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" + }, "chartType": { - "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", @@ -2106,11 +2253,17 @@ "STEPPED_AREA" ], "description": "The type of the chart.", - "type": "string" - }, - "interpolateNulls": { - "type": "boolean", - "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": "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." + ] }, "series": { "description": "The data this chart is visualizing.", @@ -2120,14 +2273,6 @@ } }, "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." - ], "enum": [ "BASIC_CHART_LEGEND_POSITION_UNSPECIFIED", "BOTTOM_LEGEND", @@ -2137,7 +2282,15 @@ "NO_LEGEND" ], "description": "The position of the chart legend.", - "type": "string" + "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." + ] }, "compareMode": { "enum": [ @@ -2154,7 +2307,9 @@ ] } }, - "id": "BasicChartSpec" + "id": "BasicChartSpec", + "description": "The specification for a basic chart. See BasicChartType for the list\nof charts this supports.", + "type": "object" }, "DeleteDimensionGroupRequest": { "description": "Deletes a group over the specified range by decrementing the depth of the\ndimensions in the range.\n\nFor example, assume the sheet has a depth-1 group over B:E and a depth-2\ngroup over C:D. Deleting a group over D:E would leave the sheet with a\ndepth-1 group over B:D and a depth-2 group over C:C.", @@ -2168,7 +2323,6 @@ "id": "DeleteDimensionGroupRequest" }, "SetDataValidationRequest": { - "id": "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": { @@ -2177,29 +2331,22 @@ "$ref": "DataValidationRule" }, "range": { - "description": "The range the data validation rule should apply to.", - "$ref": "GridRange" + "$ref": "GridRange", + "description": "The range the data validation rule should apply to." } - } + }, + "id": "SetDataValidationRequest" }, "BubbleChartSpec": { - "id": "BubbleChartSpec", - "description": "A \u003ca href=\"/chart/interactive/docs/gallery/bubblechart\"\u003ebubble chart\u003c/a\u003e.", - "type": "object", "properties": { - "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": { - "description": "The data contianing the bubble y-values. These values locate the bubbles\nin the chart vertically.", - "$ref": "ChartData" + "$ref": "ChartData", + "description": "The data contianing the bubble y-values. These values locate the bubbles\nin the chart vertically." }, "legendPosition": { "enum": [ @@ -2224,25 +2371,25 @@ ] }, "domain": { - "description": "The data containing the bubble x-values. These values locate the bubbles\nin the chart horizontally.", - "$ref": "ChartData" - }, - "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" + "$ref": "ChartData", + "description": "The data containing the bubble x-values. These values locate the bubbles\nin the chart horizontally." }, "bubbleOpacity": { - "type": "number", "description": "The opacity of the bubbles between 0 and 1.0.\n0 is fully transparent and 1 is fully opaque.", - "format": "float" + "format": "float", + "type": "number" + }, + "bubbleSizes": { + "$ref": "ChartData", + "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." }, "bubbleBorderColor": { "description": "The bubble border color.", "$ref": "Color" }, "bubbleTextStyle": { - "$ref": "TextFormat", - "description": "The format of the text inside the bubbles.\nUnderline and Strikethrough are not supported." + "description": "The format of the text inside the bubbles.\nUnderline and Strikethrough are not supported.", + "$ref": "TextFormat" }, "groupIds": { "$ref": "ChartData", @@ -2251,16 +2398,21 @@ "bubbleLabels": { "description": "The data containing the bubble labels. These do not need to be unique.", "$ref": "ChartData" + }, + "bubbleMinRadiusSize": { + "description": "The minimum radius size of the bubbles, in pixels.\nIf specific, the field must be a positive value.", + "format": "int32", + "type": "integer" } - } + }, + "id": "BubbleChartSpec", + "description": "A \u003ca href=\"/chart/interactive/docs/gallery/bubblechart\"\u003ebubble chart\u003c/a\u003e.", + "type": "object" }, "CellData": { + "description": "Data about a specific cell.", "type": "object", "properties": { - "formattedValue": { - "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", @@ -2268,6 +2420,10 @@ "$ref": "TextFormatRun" } }, + "formattedValue": { + "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" + }, "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" @@ -2277,50 +2433,72 @@ "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." }, "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." + "description": "The format the user entered for the cell.\n\nWhen writing, the new format will be merged with the existing format.", + "$ref": "CellFormat" + }, + "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" }, "note": { "description": "Any note on the cell.", "type": "string" }, - "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." + "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." }, "dataValidation": { "description": "A data validation rule on the cell, if any.\n\nWhen writing, the new data validation rule will overwrite any prior rule.", "$ref": "DataValidationRule" }, - "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." - }, "effectiveValue": { "$ref": "ExtendedValue", "description": "The effective value of the cell. For cells with formulas, this will be\nthe calculated value. For cells with literals, this will be\nthe same as the user_entered_value.\nThis field is read-only." } }, - "id": "CellData", - "description": "Data about a specific cell." + "id": "CellData" + }, + "TextPosition": { + "properties": { + "horizontalAlignment": { + "enum": [ + "HORIZONTAL_ALIGN_UNSPECIFIED", + "LEFT", + "CENTER", + "RIGHT" + ], + "description": "Horizontal alignment setting for the piece of text.", + "type": "string", + "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." + ] + } + }, + "id": "TextPosition", + "description": "Position settings for text.", + "type": "object" }, "BatchUpdateValuesByDataFilterRequest": { "description": "The request for updating more than one range of values in a spreadsheet.", "type": "object", "properties": { "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", - "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" }, "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.", @@ -2330,30 +2508,30 @@ } }, "responseDateTimeRenderOption": { + "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", "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" ] }, "responseValueRenderOption": { - "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\"`." - ], "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" + "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\"`." + ] }, "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).", @@ -2362,29 +2540,6 @@ }, "id": "BatchUpdateValuesByDataFilterRequest" }, - "TextPosition": { - "description": "Position settings for text.", - "type": "object", - "properties": { - "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." - ], - "enum": [ - "HORIZONTAL_ALIGN_UNSPECIFIED", - "LEFT", - "CENTER", - "RIGHT" - ], - "description": "Horizontal alignment setting for the piece of text.", - "type": "string" - } - }, - "id": "TextPosition" - }, "BatchUpdateSpreadsheetRequest": { "description": "The request for updating any aspect of a spreadsheet.", "type": "object", @@ -2415,18 +2570,14 @@ "id": "BatchUpdateSpreadsheetRequest" }, "BasicChartAxis": { - "description": "An axis of the chart.\nA chart may not have more than one axis per\naxis position.", - "type": "object", "properties": { - "titleTextPosition": { - "$ref": "TextPosition", - "description": "The axis title text position." - }, - "format": { - "$ref": "TextFormat", - "description": "The format of the title.\nOnly valid if the axis is not associated with the domain." - }, "position": { + "enum": [ + "BASIC_CHART_AXIS_POSITION_UNSPECIFIED", + "BOTTOM_AXIS", + "LEFT_AXIS", + "RIGHT_AXIS" + ], "description": "The position of this axis.", "type": "string", "enumDescriptions": [ @@ -2434,24 +2585,34 @@ "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" ] }, "title": { "description": "The title of this axis. If set, this overrides any title inferred\nfrom headers of the data.", "type": "string" + }, + "titleTextPosition": { + "description": "The axis title text position.", + "$ref": "TextPosition" + }, + "format": { + "$ref": "TextFormat", + "description": "The format of the title.\nOnly valid if the axis is not associated with the domain." } }, - "id": "BasicChartAxis" + "id": "BasicChartAxis", + "description": "An axis of the chart.\nA chart may not have more than one axis per\naxis position.", + "type": "object" }, "Padding": { + "description": "The amount of padding around the cell, in pixels.\nWhen updating padding, every field must be specified.", "type": "object", "properties": { + "right": { + "description": "The right padding of the cell.", + "format": "int32", + "type": "integer" + }, "bottom": { "description": "The bottom padding of the cell.", "format": "int32", @@ -2463,20 +2624,15 @@ "type": "integer" }, "left": { - "type": "integer", "description": "The left padding of the cell.", - "format": "int32" - }, - "right": { - "description": "The right padding of the cell.", "format": "int32", "type": "integer" } }, - "id": "Padding", - "description": "The amount of padding around the cell, in pixels.\nWhen updating padding, every field must be specified." + "id": "Padding" }, "DeleteDimensionRequest": { + "description": "Deletes the dimensions from the sheet.", "type": "object", "properties": { "range": { @@ -2484,24 +2640,23 @@ "$ref": "DimensionRange" } }, - "id": "DeleteDimensionRequest", - "description": "Deletes the dimensions from the sheet." + "id": "DeleteDimensionRequest" }, "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": { - "spec": { - "$ref": "ChartSpec", - "description": "The specification to apply to the chart." - }, "chartId": { "description": "The ID of the chart to update.", "format": "int32", "type": "integer" + }, + "spec": { + "description": "The specification to apply to the chart.", + "$ref": "ChartSpec" } }, - "id": "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" }, "DeleteFilterViewRequest": { "description": "Deletes a particular filter view.", @@ -2519,22 +2674,46 @@ "description": "Updates the state of the specified group.", "type": "object", "properties": { + "dimensionGroup": { + "$ref": "DimensionGroup", + "description": "The group whose state should be updated. The range and depth of the group\nshould specify a valid group on the sheet, and all other fields updated." + }, "fields": { "description": "The fields that should be updated. At least one field must be specified.\nThe root `dimensionGroup` is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.", "format": "google-fieldmask", "type": "string" - }, - "dimensionGroup": { - "$ref": "DimensionGroup", - "description": "The group whose state should be updated. The range and depth of the group\nshould specify a valid group on the sheet, and all other fields updated." } }, "id": "UpdateDimensionGroupRequest" }, "BatchGetValuesByDataFilterRequest": { - "description": "The request for retrieving a range of values in a spreadsheet selected by a\nset of DataFilters.", - "type": "object", "properties": { + "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\"`." + ], + "enum": [ + "FORMATTED_VALUE", + "UNFORMATTED_VALUE", + "FORMULA" + ], + "description": "How values should be represented in the output.\nThe default render option is ValueRenderOption.FORMATTED_VALUE.", + "type": "string" + }, + "dateTimeRenderOption": { + "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" + ], + "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" + }, "majorDimension": { "enum": [ "DIMENSION_UNSPECIFIED", @@ -2555,35 +2734,11 @@ "items": { "$ref": "DataFilter" } - }, - "valueRenderOption": { - "enum": [ - "FORMATTED_VALUE", - "UNFORMATTED_VALUE", - "FORMULA" - ], - "description": "How values should be represented in the output.\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\"`." - ] - }, - "dateTimeRenderOption": { - "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" - ], - "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" } }, - "id": "BatchGetValuesByDataFilterRequest" + "id": "BatchGetValuesByDataFilterRequest", + "description": "The request for retrieving a range of values in a spreadsheet selected by a\nset of DataFilters.", + "type": "object" }, "DeleteDeveloperMetadataResponse": { "description": "The response from deleting developer metadata.", @@ -2600,9 +2755,12 @@ "id": "DeleteDeveloperMetadataResponse" }, "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", @@ -2625,20 +2783,16 @@ } }, "totalUpdatedSheets": { - "type": "integer", "description": "The total number of sheets where at least one cell in the sheet was\nupdated.", - "format": "int32" - }, - "totalUpdatedCells": { - "type": "integer", - "description": "The total number of cells updated.", - "format": "int32" + "format": "int32", + "type": "integer" } }, - "id": "BatchUpdateValuesResponse" + "id": "BatchUpdateValuesResponse", + "description": "The response when updating a range of values in a spreadsheet.", + "type": "object" }, "SortRangeRequest": { - "type": "object", "properties": { "sortSpecs": { "description": "The sort order per column. Later specifications are used when values\nare equal in the earlier specifications.", @@ -2653,12 +2807,10 @@ } }, "id": "SortRangeRequest", - "description": "Sorts data in rows based on a sort order per column." + "description": "Sorts data in rows based on a sort order per column.", + "type": "object" }, "MatchedDeveloperMetadata": { - "id": "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.", @@ -2671,11 +2823,12 @@ "description": "The developer metadata matching the specified filters.", "$ref": "DeveloperMetadata" } - } + }, + "id": "MatchedDeveloperMetadata", + "description": "A developer metadata entry and the data filters specified in the original\nrequest that matched it.", + "type": "object" }, "MergeCellsRequest": { - "description": "Merges all cells in the range.", - "type": "object", "properties": { "range": { "$ref": "GridRange", @@ -2696,22 +2849,22 @@ ] } }, - "id": "MergeCellsRequest" + "id": "MergeCellsRequest", + "description": "Merges all cells in the range.", + "type": "object" }, "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.)" + "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.)", + "$ref": "ProtectedRange" } - } + }, + "id": "AddProtectedRangeRequest" }, "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.", @@ -2721,11 +2874,11 @@ } } }, - "id": "BatchClearValuesRequest" + "id": "BatchClearValuesRequest", + "description": "The request for clearing more than one range of values in a spreadsheet.", + "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.", - "type": "object", "properties": { "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.", @@ -2759,7 +2912,9 @@ "type": "string" } }, - "id": "DeveloperMetadata" + "id": "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" }, "DuplicateFilterViewResponse": { "description": "The result of a filter view being duplicated.", @@ -2773,6 +2928,7 @@ "id": "DuplicateFilterViewResponse" }, "DuplicateSheetResponse": { + "description": "The result of duplicating a sheet.", "type": "object", "properties": { "properties": { @@ -2780,13 +2936,9 @@ "description": "The properties of the duplicate sheet." } }, - "id": "DuplicateSheetResponse", - "description": "The result of duplicating a sheet." + "id": "DuplicateSheetResponse" }, "DimensionGroup": { - "id": "DimensionGroup", - "description": "A group over an interval of rows or columns on a sheet, which can contain or\nbe contained within other groups. A group can be collapsed or expanded as a\nunit on the sheet.", - "type": "object", "properties": { "collapsed": { "description": "True if this group is collapsed. A collapsed group will remain collapsed if\nan overlapping group at a shallower depth is expanded.\n\ncollapsed == true does not imply that all dimensions within the group are\nhidden, since a dimension's visibility can change independently from this\ngroup property. However, when this property is updated, all dimensions\nwithin it will be set to hidden if collapsed == true, or set to visible if\ncollapsed == false.", @@ -2801,11 +2953,12 @@ "format": "int32", "type": "integer" } - } + }, + "id": "DimensionGroup", + "description": "A group over an interval of rows or columns on a sheet, which can contain or\nbe contained within other groups. A group can be collapsed or expanded as a\nunit on the sheet.", + "type": "object" }, "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.", @@ -2813,15 +2966,19 @@ "type": "integer" } }, - "id": "ClearBasicFilterRequest" + "id": "ClearBasicFilterRequest", + "description": "Clears the basic filter, if any exists on the sheet.", + "type": "object" }, "TextToColumnsRequest": { - "description": "Splits a column of text into multiple columns,\nbased on a delimiter in each cell.", - "type": "object", "properties": { + "delimiter": { + "description": "The delimiter to use. Used only if delimiterType is\nCUSTOM.", + "type": "string" + }, "source": { - "$ref": "GridRange", - "description": "The source data range. This must span exactly one column." + "description": "The source data range. This must span exactly one column.", + "$ref": "GridRange" }, "delimiterType": { "enum": [ @@ -2844,16 +3001,13 @@ "A custom value as defined in delimiter.", "Automatically detect columns." ] - }, - "delimiter": { - "description": "The delimiter to use. Used only if delimiterType is\nCUSTOM.", - "type": "string" } }, - "id": "TextToColumnsRequest" + "id": "TextToColumnsRequest", + "description": "Splits a column of text into multiple columns,\nbased on a delimiter in each cell.", + "type": "object" }, "DeleteBandingRequest": { - "type": "object", "properties": { "bandedRangeId": { "description": "The ID of the banded range to delete.", @@ -2862,11 +3016,10 @@ } }, "id": "DeleteBandingRequest", - "description": "Removes the banded range with the given ID from the spreadsheet." + "description": "Removes the banded range with the given ID from the spreadsheet.", + "type": "object" }, "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.", @@ -2876,21 +3029,23 @@ } }, "updatedSpreadsheet": { - "$ref": "Spreadsheet", - "description": "The spreadsheet after updates were applied. This is only set if\n[BatchUpdateSpreadsheetRequest.include_spreadsheet_in_response] is `true`." + "description": "The spreadsheet after updates were applied. This is only set if\n[BatchUpdateSpreadsheetRequest.include_spreadsheet_in_response] is `true`.", + "$ref": "Spreadsheet" }, "spreadsheetId": { "description": "The spreadsheet the updates were applied to.", "type": "string" } }, - "id": "BatchUpdateSpreadsheetResponse" + "id": "BatchUpdateSpreadsheetResponse", + "description": "The reply for batch updating a spreadsheet.", + "type": "object" }, "AppendValuesResponse": { "properties": { "updates": { - "$ref": "UpdateValuesResponse", - "description": "Information about the updates that were applied." + "description": "Information about the updates that were applied.", + "$ref": "UpdateValuesResponse" }, "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.", @@ -2905,20 +3060,32 @@ "description": "The response when updating a range of values in a spreadsheet.", "type": "object" }, + "PivotFilterCriteria": { + "properties": { + "visibleValues": { + "description": "Values that should be included. Values not listed here are excluded.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "id": "PivotFilterCriteria", + "description": "Criteria for showing/hiding rows in a pivot table.", + "type": "object" + }, "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" + "$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.)" } }, - "id": "AddFilterViewRequest" + "id": "AddFilterViewRequest", + "description": "Adds a filter view.", + "type": "object" }, "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`.", @@ -2930,84 +3097,43 @@ "description": "The source dimensions to move." } }, - "id": "MoveDimensionRequest" - }, - "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" - } - } - } + "id": "MoveDimensionRequest", + "description": "Moves one or more rows or columns.", + "type": "object" }, "AddConditionalFormatRuleRequest": { - "description": "Adds a new conditional format rule at the given index.\nAll subsequent rules' indexes are incremented.", - "type": "object", "properties": { - "rule": { - "description": "The rule to add.", - "$ref": "ConditionalFormatRule" - }, "index": { "description": "The zero-based index where the rule should be inserted.", "format": "int32", "type": "integer" + }, + "rule": { + "$ref": "ConditionalFormatRule", + "description": "The rule to add." } }, - "id": "AddConditionalFormatRuleRequest" - }, - "CreateDeveloperMetadataRequest": { - "description": "A request to create developer metadata.", - "type": "object", - "properties": { - "developerMetadata": { - "$ref": "DeveloperMetadata", - "description": "The developer metadata to create." - } - }, - "id": "CreateDeveloperMetadataRequest" + "id": "AddConditionalFormatRuleRequest", + "description": "Adds a new conditional format rule at the given index.\nAll subsequent rules' indexes are incremented.", + "type": "object" }, "ChartSpec": { - "description": "The specifications of a chart.", - "type": "object", "properties": { - "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" - }, - "titleTextPosition": { - "$ref": "TextPosition", - "description": "The title text position.\nThis field is optional." - }, - "histogramChart": { - "$ref": "HistogramChartSpec", - "description": "A histogram chart specification." - }, "candlestickChart": { "$ref": "CandlestickChartSpec", "description": "A candlestick chart specification." }, "bubbleChart": { - "$ref": "BubbleChartSpec", - "description": "A bubble chart specification." + "description": "A bubble chart specification.", + "$ref": "BubbleChartSpec" }, "waterfallChart": { - "$ref": "WaterfallChartSpec", - "description": "A waterfall chart specification." + "description": "A waterfall chart specification.", + "$ref": "WaterfallChartSpec" }, "fontName": { - "type": "string", - "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." + "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.)", @@ -3018,6 +3144,13 @@ "description": "A treemap chart specification." }, "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." + ], "enum": [ "CHART_HIDDEN_DIMENSION_STRATEGY_UNSPECIFIED", "SKIP_HIDDEN_ROWS_AND_COLUMNS", @@ -3026,18 +3159,11 @@ "SHOW_ALL" ], "description": "Determines how the charts will use hidden rows or columns.", - "type": "string", - "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": { - "$ref": "TextFormat", - "description": "The subtitle text format.\nStrikethrough and underline are not supported." + "description": "The subtitle text format.\nStrikethrough and underline are not supported.", + "$ref": "TextFormat" }, "subtitle": { "description": "The subtitle of the chart.", @@ -3048,97 +3174,133 @@ "$ref": "Color" }, "subtitleTextPosition": { - "$ref": "TextPosition", - "description": "The subtitle text position.\nThis field is optional." + "description": "The subtitle text position.\nThis field is optional.", + "$ref": "TextPosition" }, "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." }, "orgChart": { - "$ref": "OrgChartSpec", - "description": "An org chart specification." + "description": "An org chart specification.", + "$ref": "OrgChartSpec" }, "pieChart": { - "$ref": "PieChartSpec", - "description": "A pie chart specification." + "description": "A pie chart specification.", + "$ref": "PieChartSpec" }, "titleTextFormat": { "$ref": "TextFormat", "description": "The title text format.\nStrikethrough and underline are not supported." + }, + "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" + }, + "titleTextPosition": { + "$ref": "TextPosition", + "description": "The title text position.\nThis field is optional." + }, + "histogramChart": { + "description": "A histogram chart specification.", + "$ref": "HistogramChartSpec" + } + }, + "id": "ChartSpec", + "description": "The specifications of a chart.", + "type": "object" + }, + "CreateDeveloperMetadataRequest": { + "properties": { + "developerMetadata": { + "description": "The developer metadata to create.", + "$ref": "DeveloperMetadata" } }, - "id": "ChartSpec" + "id": "CreateDeveloperMetadataRequest", + "description": "A request to create developer metadata.", + "type": "object" }, "BatchGetValuesByDataFilterResponse": { "description": "The response when retrieving more than one range of values in a spreadsheet\nselected by DataFilters.", "type": "object", "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.", "type": "array", "items": { "$ref": "MatchedValueRange" - }, - "description": "The requested values with the list of data filters that matched them." - }, - "spreadsheetId": { - "description": "The ID of the spreadsheet the data was retrieved from.", - "type": "string" + } } }, "id": "BatchGetValuesByDataFilterResponse" }, - "NumberFormat": { - "description": "The number format of a cell.", + "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": [ - "NUMBER_FORMAT_TYPE_UNSPECIFIED", - "TEXT", - "NUMBER", - "PERCENT", - "CURRENCY", - "DATE", - "TIME", - "DATE_TIME", - "SCIENTIFIC" + "LINE_DASH_TYPE_UNSPECIFIED", + "INVISIBLE", + "CUSTOM", + "SOLID", + "DOTTED", + "MEDIUM_DASHED", + "MEDIUM_DASHED_DOTTED", + "LONG_DASHED", + "LONG_DASHED_DOTTED" ], - "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`" - ] + "description": "The dash type of the line.", + "type": "string" }, - "pattern": { - "type": "string", - "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." + "width": { + "description": "The thickness of the line, in px.", + "format": "int32", + "type": "integer" } }, - "id": "NumberFormat" + "id": "LineStyle" }, "DataFilterValueRange": { + "description": "A range of values whose location is specified by a DataFilter.", + "type": "object", "properties": { + "dataFilter": { + "description": "The data filter describing the location of the values in the spreadsheet.", + "$ref": "DataFilter" + }, "majorDimension": { + "enum": [ + "DIMENSION_UNSPECIFIED", + "ROWS", + "COLUMNS" + ], "description": "The major dimension of the values.", "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": { @@ -3150,56 +3312,48 @@ "type": "any" } } - }, - "dataFilter": { - "description": "The data filter describing the location of the values in the spreadsheet.", - "$ref": "DataFilter" } }, - "id": "DataFilterValueRange", - "description": "A range of values whose location is specified by a DataFilter.", - "type": "object" + "id": "DataFilterValueRange" }, - "LineStyle": { - "description": "Properties that describe the style of a line.", - "type": "object", + "NumberFormat": { "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.", + "type": "string" + }, "type": { - "description": "The dash type of the line.", + "enum": [ + "NUMBER_FORMAT_TYPE_UNSPECIFIED", + "TEXT", + "NUMBER", + "PERCENT", + "CURRENCY", + "DATE", + "TIME", + "DATE_TIME", + "SCIENTIFIC" + ], + "description": "The type of the number format.\nWhen writing, this field must be set.", "type": "string", "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" + "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`" ] - }, - "width": { - "type": "integer", - "description": "The thickness of the line, in px.", - "format": "int32" } }, - "id": "LineStyle" + "id": "NumberFormat", + "description": "The number format of a cell.", + "type": "object" }, "CandlestickDomain": { - "id": "CandlestickDomain", "description": "The domain of a CandlestickChart.", "type": "object", "properties": { @@ -3211,34 +3365,32 @@ "description": "True to reverse the order of the domain values (horizontal axis).", "type": "boolean" } - } + }, + "id": "CandlestickDomain" }, "SheetProperties": { - "id": "SheetProperties", - "description": "Properties of a sheet.", - "type": "object", "properties": { "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.", - "$ref": "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." }, "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" + "type": "string", + "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." + ] }, "title": { - "type": "string", - "description": "The name of the sheet." + "description": "The name of the sheet.", + "type": "string" }, "tabColor": { "$ref": "Color", @@ -3250,9 +3402,9 @@ "type": "integer" }, "sheetId": { - "type": "integer", "description": "The ID of the sheet. Must be non-negative.\nThis field cannot be changed once set.", - "format": "int32" + "format": "int32", + "type": "integer" }, "rightToLeft": { "description": "True if the sheet is an RTL sheet instead of an LTR sheet.", @@ -3262,31 +3414,32 @@ "description": "True if the sheet is hidden in the UI, false if it's visible.", "type": "boolean" } - } + }, + "id": "SheetProperties", + "description": "Properties of a sheet.", + "type": "object" }, "UpdateDimensionPropertiesRequest": { "description": "Updates properties of dimensions within the specified range.", "type": "object", "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": { - "description": "Properties to update.", - "$ref": "DimensionProperties" + "$ref": "DimensionProperties", + "description": "Properties to update." + }, + "range": { + "$ref": "DimensionRange", + "description": "The rows or columns to update." } }, "id": "UpdateDimensionPropertiesRequest" }, "SourceAndDestination": { - "description": "A combination of a source range and how to extend that source.", - "type": "object", "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.", @@ -3312,57 +3465,27 @@ "type": "string" } }, - "id": "SourceAndDestination" + "id": "SourceAndDestination", + "description": "A combination of a source range and how to extend that source.", + "type": "object" }, - "FilterView": { - "description": "A filter view.", - "type": "object", + "OrgChartSpec": { "properties": { - "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" - } - }, - "title": { - "description": "The name of the filter view.", - "type": "string" - }, - "range": { - "description": "The range this filter view covers.\n\nWhen writing, only one of range or named_range_id\nmay be set.", - "$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" - } + "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." }, - "namedRangeId": { - "type": "string", - "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." + "selectedNodeColor": { + "$ref": "Color", + "description": "The color of the selected org chart nodes." }, - "filterViewId": { - "description": "The ID of the filter view.", - "format": "int32", - "type": "integer" - } - }, - "id": "FilterView" - }, - "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", - "properties": { "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" + "$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." }, "labels": { - "description": "The data containing the labels for all the nodes in the chart. Labels\nmust be unique.", - "$ref": "ChartData" + "$ref": "ChartData", + "description": "The data containing the labels for all the nodes in the chart. Labels\nmust be unique." }, "nodeSize": { "enumDescriptions": [ @@ -3381,22 +3504,53 @@ "type": "string" }, "nodeColor": { - "$ref": "Color", - "description": "The color of the org chart nodes." + "description": "The color of the org chart nodes.", + "$ref": "Color" + } + }, + "id": "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" + }, + "FilterView": { + "properties": { + "sortSpecs": { + "description": "The sort order per column. Later specifications are used when values\nare equal in the earlier specifications.", + "type": "array", + "items": { + "$ref": "SortSpec" + } + }, + "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" + }, + "filterViewId": { + "description": "The ID of the filter view.", + "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" }, - "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." + "title": { + "description": "The name of the filter view.", + "type": "string" }, - "selectedNodeColor": { - "$ref": "Color", - "description": "The color of the selected org chart nodes." + "range": { + "description": "The range this filter view covers.\n\nWhen writing, only one of range or named_range_id\nmay be set.", + "$ref": "GridRange" } }, - "id": "OrgChartSpec" + "id": "FilterView", + "description": "A filter view.", + "type": "object" }, "SearchDeveloperMetadataRequest": { - "type": "object", "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.", @@ -3407,14 +3561,13 @@ } }, "id": "SearchDeveloperMetadataRequest", - "description": "A request to retrieve all developer metadata matching the set of specified\ncriteria." + "description": "A request to retrieve all developer metadata matching the set of specified\ncriteria.", + "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.", + "type": "object", "properties": { - "secondBandColor": { - "$ref": "Color", - "description": "The second color that is alternating. (Required)" - }, "footerColor": { "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.", "$ref": "Color" @@ -3426,30 +3579,39 @@ "firstBandColor": { "$ref": "Color", "description": "The first color that is alternating. (Required)" + }, + "secondBandColor": { + "$ref": "Color", + "description": "The second color that is alternating. (Required)" } }, - "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" + "id": "BandingProperties" }, - "AddProtectedRangeResponse": { - "description": "The result of adding a new protected range.", - "type": "object", + "CandlestickSeries": { "properties": { - "protectedRange": { - "description": "The newly added protected range.", - "$ref": "ProtectedRange" + "data": { + "description": "The data of the CandlestickSeries.", + "$ref": "ChartData" } }, - "id": "AddProtectedRangeResponse" + "id": "CandlestickSeries", + "description": "The series of a CandlestickData.", + "type": "object" }, "BasicFilter": { "description": "The default filter associated with a sheet.", "type": "object", "properties": { + "sortSpecs": { + "description": "The sort order per column. Later specifications are used when values\nare equal in the earlier specifications.", + "type": "array", + "items": { + "$ref": "SortSpec" + } + }, "range": { - "$ref": "GridRange", - "description": "The range the filter covers." + "description": "The range the filter covers.", + "$ref": "GridRange" }, "criteria": { "additionalProperties": { @@ -3457,53 +3619,23 @@ }, "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" - }, - "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": "BasicFilter" }, - "CandlestickSeries": { - "id": "CandlestickSeries", - "description": "The series of a CandlestickData.", + "AddProtectedRangeResponse": { + "description": "The result of adding a new protected range.", "type": "object", "properties": { - "data": { - "description": "The data of the CandlestickSeries.", - "$ref": "ChartData" + "protectedRange": { + "$ref": "ProtectedRange", + "description": "The newly added protected range." } - } + }, + "id": "AddProtectedRangeResponse" }, "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": { - "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" - }, - "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.", - "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", - "items": { - "$ref": "HistogramSeries" - } - }, "legendPosition": { "enum": [ "HISTOGRAM_CHART_LEGEND_POSITION_UNSPECIFIED", @@ -3525,12 +3657,44 @@ "No legend is rendered.", "The legend is rendered inside the chart area." ] + }, + "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" + }, + "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.", + "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", + "items": { + "$ref": "HistogramSeries" + } } }, - "id": "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" }, "UpdateValuesResponse": { "properties": { + "updatedColumns": { + "description": "The number of columns where at least one cell in the column was updated.", + "format": "int32", + "type": "integer" + }, + "spreadsheetId": { + "description": "The spreadsheet the updates were applied to.", + "type": "string" + }, "updatedRange": { "description": "The range (in A1 notation) that updates were applied to.", "type": "string" @@ -3540,71 +3704,21 @@ "format": "int32", "type": "integer" }, - "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.", "format": "int32", "type": "integer" }, - "updatedColumns": { - "type": "integer", - "description": "The number of columns where at least one cell in the column was updated.", - "format": "int32" - }, - "spreadsheetId": { - "description": "The spreadsheet the updates were applied to.", - "type": "string" + "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" } }, "id": "UpdateValuesResponse", "description": "The response when updating a range of values in a spreadsheet.", "type": "object" }, - "ErrorValue": { - "type": "object", - "properties": { - "type": { - "enumDescriptions": [ - "The default error type, do not use this.", - "Corresponds to the `#ERROR!` error.", - "Corresponds to the `#NULL!` error.", - "Corresponds to the `#DIV/0` error.", - "Corresponds to the `#VALUE!` error.", - "Corresponds to the `#REF!` error.", - "Corresponds to the `#NAME?` error.", - "Corresponds to the `#NUM`! error.", - "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" - ], - "description": "The type of error.", - "type": "string" - }, - "message": { - "type": "string", - "description": "A message with more information about the error\n(in the spreadsheet's locale)." - } - }, - "id": "ErrorValue", - "description": "An error in a cell." - }, "PivotValue": { - "description": "The definition of how a value in a pivot table should be calculated.", - "type": "object", "properties": { "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`.", @@ -3620,7 +3734,6 @@ "type": "string" }, "calculatedDisplayType": { - "type": "string", "enumDescriptions": [ "Default value, do not use.", "Shows the pivot values as percentage of the row total values.", @@ -3633,7 +3746,8 @@ "PERCENT_OF_COLUMN_TOTAL", "PERCENT_OF_GRAND_TOTAL" ], - "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." + "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.", + "type": "string" }, "summarizeFunction": { "enum": [ @@ -3674,57 +3788,79 @@ ] } }, - "id": "PivotValue" + "id": "PivotValue", + "description": "The definition of how a value in a pivot table should be calculated.", + "type": "object" }, - "CopySheetToAnotherSpreadsheetRequest": { - "description": "The request to copy a sheet across spreadsheets.", + "ErrorValue": { + "description": "An error in a cell.", "type": "object", "properties": { - "destinationSpreadsheetId": { - "description": "The ID of the spreadsheet to copy the sheet to.", + "message": { + "description": "A message with more information about the error\n(in the spreadsheet's locale).", + "type": "string" + }, + "type": { + "enumDescriptions": [ + "The default error type, do not use this.", + "Corresponds to the `#ERROR!` error.", + "Corresponds to the `#NULL!` error.", + "Corresponds to the `#DIV/0` error.", + "Corresponds to the `#VALUE!` error.", + "Corresponds to the `#REF!` error.", + "Corresponds to the `#NAME?` error.", + "Corresponds to the `#NUM`! error.", + "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" + ], + "description": "The type of error.", "type": "string" } }, - "id": "CopySheetToAnotherSpreadsheetRequest" + "id": "ErrorValue" }, - "PivotGroupSortValueBucket": { - "description": "Information about which values in a pivot group should be used for sorting.", - "type": "object", + "CopySheetToAnotherSpreadsheetRequest": { "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" + "destinationSpreadsheetId": { + "description": "The ID of the spreadsheet to copy the sheet to.", + "type": "string" } }, - "id": "PivotGroupSortValueBucket" + "id": "CopySheetToAnotherSpreadsheetRequest", + "description": "The request to copy a sheet across spreadsheets.", + "type": "object" }, "WaterfallChartSeries": { "description": "A single series of data for a waterfall chart.", "type": "object", "properties": { "positiveColumnsStyle": { - "description": "Styles for all columns in this series with positive values.", - "$ref": "WaterfallChartColumnStyle" + "$ref": "WaterfallChartColumnStyle", + "description": "Styles for all columns in this series with positive values." }, "data": { "$ref": "ChartData", "description": "The data being visualized in this series." }, "negativeColumnsStyle": { - "description": "Styles for all columns in this series with negative values.", - "$ref": "WaterfallChartColumnStyle" + "$ref": "WaterfallChartColumnStyle", + "description": "Styles for all columns in this series with negative values." }, "hideTrailingSubtotal": { - "type": "boolean", - "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." + "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" }, "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.", @@ -3738,7 +3874,26 @@ "$ref": "WaterfallChartColumnStyle" } }, - "id": "WaterfallChartSeries" + "id": "WaterfallChartSeries" + }, + "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 & 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", + "description": "Information about which values in a pivot group should be used for sorting.", + "type": "object" }, "DeleteDeveloperMetadataRequest": { "description": "A request to delete developer metadata.", @@ -3752,10 +3907,12 @@ "id": "DeleteDeveloperMetadataRequest" }, "CandlestickChartSpec": { + "description": "A \u003ca href=\"/chart/interactive/docs/gallery/candlestickchart\"\u003ecandlestick chart\u003c/a\u003e.", + "type": "object", "properties": { "domain": { - "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.", - "$ref": "CandlestickDomain" + "$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.", @@ -3765,13 +3922,9 @@ } } }, - "id": "CandlestickChartSpec", - "description": "A \u003ca href=\"/chart/interactive/docs/gallery/candlestickchart\"\u003ecandlestick chart\u003c/a\u003e.", - "type": "object" + "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.", @@ -3785,7 +3938,9 @@ } } }, - "id": "BatchClearValuesByDataFilterResponse" + "id": "BatchClearValuesByDataFilterResponse", + "description": "The response when clearing a range of values selected with\nDataFilters in a spreadsheet.", + "type": "object" }, "TreemapChartColorScale": { "description": "A color scale for a treemap chart.", @@ -3796,12 +3951,12 @@ "description": "The background color for cells with a color value less than or equal to\nminValue. Defaults to #dc3912 if not\nspecified." }, "noDataColor": { - "description": "The background color for cells that have no color data associated with\nthem. Defaults to #000000 if not specified.", - "$ref": "Color" + "$ref": "Color", + "description": "The background color for cells that have no color data associated with\nthem. Defaults to #000000 if not specified." }, "midValueColor": { - "description": "The background color for cells with a color value at the midpoint between\nminValue and\nmaxValue. Defaults to #efe6dc if not\nspecified.", - "$ref": "Color" + "$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." }, "maxValueColor": { "$ref": "Color", @@ -3811,31 +3966,29 @@ "id": "TreemapChartColorScale" }, "CandlestickData": { - "description": "The Candlestick chart data, each containing the low, open, close, and high\nvalues for a series.", - "type": "object", "properties": { - "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": { "$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." }, "highSeries": { - "description": "The range data (vertical axis) for the high/maximum value for each\ncandle. This is the top of the candle's center line.", + "$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": { + "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": { + "$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." } }, - "id": "CandlestickData" + "id": "CandlestickData", + "description": "The Candlestick chart data, each containing the low, open, close, and high\nvalues for a series.", + "type": "object" }, "EmbeddedObjectPosition": { - "description": "The position of an embedded object such as a chart.", - "type": "object", "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.", @@ -3851,7 +4004,9 @@ "$ref": "OverlayPosition" } }, - "id": "EmbeddedObjectPosition" + "id": "EmbeddedObjectPosition", + "description": "The position of an embedded object such as a chart.", + "type": "object" }, "DeleteProtectedRangeRequest": { "description": "Deletes the protected range with the given ID.", @@ -3866,17 +4021,41 @@ "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": { + "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": { + "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" + ], + "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" + }, + "metadataValue": { + "description": "Limits the selected developer metadata to that which has a matching\nDeveloperMetadata.metadata_value.", + "type": "string" + }, "metadataLocation": { - "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.", - "$ref": "DeveloperMetadataLocation" + "$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.", @@ -3886,16 +4065,11 @@ "DEVELOPER_METADATA_LOCATION_MATCHING_STRATEGY_UNSPECIFIED", "EXACT_LOCATION", "INTERSECTING_LOCATION" - ] + ], + "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" }, "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", @@ -3904,42 +4078,26 @@ "SPREADSHEET" ], "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" - }, - "metadataKey": { - "description": "Limits the selected developer metadata to that which has a matching\nDeveloperMetadata.metadata_key.", - "type": "string" - }, - "visibility": { + "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" - ], - "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" - }, - "metadataId": { - "description": "Limits the selected developer metadata to that which has a matching\nDeveloperMetadata.metadata_id.", - "format": "int32", - "type": "integer" - }, - "metadataValue": { - "description": "Limits the selected developer metadata to that which has a matching\nDeveloperMetadata.metadata_value.", - "type": "string" + "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." + ] } - } + }, + "id": "DeveloperMetadataLookup" }, "AutoFillRequest": { - "id": "AutoFillRequest", "description": "Fills in more data based on existing data.", "type": "object", "properties": { + "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." + }, "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." @@ -3947,41 +4105,27 @@ "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": { - "description": "The source and destination areas to autofill.\nThis explicitly lists the source of the autofill and where to\nextend that data.", - "$ref": "SourceAndDestination" } - } + }, + "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": { - "$ref": "InterpolationPoint", - "description": "The starting interpolation point." + "description": "The starting interpolation point.", + "$ref": "InterpolationPoint" }, "maxpoint": { - "description": "The final interpolation point.", - "$ref": "InterpolationPoint" + "$ref": "InterpolationPoint", + "description": "The final interpolation point." }, "midpoint": { "$ref": "InterpolationPoint", "description": "An optional midway interpolation point." } }, - "id": "GradientRule" - }, - "SetBasicFilterRequest": { - "properties": { - "filter": { - "description": "The filter to set.", - "$ref": "BasicFilter" - } - }, - "id": "SetBasicFilterRequest", - "description": "Sets the basic filter associated with a sheet.", + "id": "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" }, "ClearValuesRequest": { @@ -3990,41 +4134,30 @@ "properties": {}, "id": "ClearValuesRequest" }, - "BatchClearValuesByDataFilterRequest": { - "description": "The request for clearing more than one range selected by a\nDataFilter in a spreadsheet.", + "SetBasicFilterRequest": { + "description": "Sets the basic filter associated with a sheet.", "type": "object", "properties": { - "dataFilters": { - "description": "The DataFilters used to determine which ranges to clear.", - "type": "array", - "items": { - "$ref": "DataFilter" - } + "filter": { + "description": "The filter to set.", + "$ref": "BasicFilter" } }, - "id": "BatchClearValuesByDataFilterRequest" + "id": "SetBasicFilterRequest" }, "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": { "value": { - "type": "string", - "description": "The value this interpolation point uses. May be a formula.\nUnused if type is MIN or\nMAX." + "description": "The value this interpolation point uses. May be a formula.\nUnused if type is MIN or\nMAX.", + "type": "string" }, "color": { "description": "The color this interpolation point should use.", "$ref": "Color" }, "type": { - "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", @@ -4034,11 +4167,33 @@ "PERCENTILE" ], "description": "How the value should be interpreted.", - "type": "string" + "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)." + ] } }, "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", @@ -4057,16 +4212,22 @@ }, "id": "GetSpreadsheetByDataFilterRequest" }, - "FindReplaceResponse": { - "id": "FindReplaceResponse", - "description": "The result of the find/replace.", + "DeleteEmbeddedObjectRequest": { + "description": "Deletes the embedded object with the given ID.", "type": "object", "properties": { - "formulasChanged": { - "description": "The number of formula cells changed.", + "objectId": { + "description": "The ID of the embedded object to delete.", "format": "int32", "type": "integer" - }, + } + }, + "id": "DeleteEmbeddedObjectRequest" + }, + "FindReplaceResponse": { + "description": "The result of the find/replace.", + "type": "object", + "properties": { "valuesChanged": { "description": "The number of non-formula cells changed.", "format": "int32", @@ -4086,20 +4247,14 @@ "description": "The number of sheets changed.", "format": "int32", "type": "integer" - } - } - }, - "DeleteEmbeddedObjectRequest": { - "description": "Deletes the embedded object with the given ID.", - "type": "object", - "properties": { - "objectId": { - "description": "The ID of the embedded object to delete.", + }, + "formulasChanged": { + "description": "The number of formula cells changed.", "format": "int32", "type": "integer" } }, - "id": "DeleteEmbeddedObjectRequest" + "id": "FindReplaceResponse" }, "UpdateValuesByDataFilterResponse": { "description": "The response when updating a range of values by a data filter in a\nspreadsheet.", @@ -4115,52 +4270,83 @@ "type": "string" }, "updatedCells": { - "type": "integer", "description": "The number of cells updated.", - "format": "int32" + "format": "int32", + "type": "integer" }, "dataFilter": { - "description": "The data filter that selected the range that was updated.", - "$ref": "DataFilter" - }, - "updatedRows": { - "type": "integer", - "description": "The number of rows where at least one cell in the row was updated.", - "format": "int32" + "$ref": "DataFilter", + "description": "The data filter that selected the range that was updated." }, "updatedData": { "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`.", "$ref": "ValueRange" + }, + "updatedRows": { + "description": "The number of rows where at least one cell in the row was updated.", + "format": "int32", + "type": "integer" } }, "id": "UpdateValuesByDataFilterResponse" }, - "DuplicateFilterViewRequest": { + "DeleteSheetRequest": { + "description": "Deletes the requested sheet.", "type": "object", "properties": { - "filterId": { - "description": "The ID of the filter being duplicated.", + "sheetId": { + "description": "The ID of the sheet to delete.", "format": "int32", "type": "integer" } }, - "id": "DuplicateFilterViewRequest", - "description": "Duplicates a particular filter view." + "id": "DeleteSheetRequest" }, - "DeleteSheetRequest": { + "DuplicateFilterViewRequest": { + "description": "Duplicates a particular filter view.", + "type": "object", "properties": { - "sheetId": { - "description": "The ID of the sheet to delete.", + "filterId": { + "description": "The ID of the filter being duplicated.", "format": "int32", "type": "integer" } }, - "id": "DeleteSheetRequest", - "description": "Deletes the requested sheet.", - "type": "object" + "id": "DuplicateFilterViewRequest" + }, + "MatchedValueRange": { + "description": "A value range that was matched by one or more data filers.", + "type": "object", + "properties": { + "valueRange": { + "description": "The values matched by the DataFilter.", + "$ref": "ValueRange" + }, + "dataFilters": { + "description": "The DataFilters from the request that matched the range of\nvalues.", + "type": "array", + "items": { + "$ref": "DataFilter" + } + } + }, + "id": "MatchedValueRange" }, "DeveloperMetadataLocation": { "properties": { + "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" + }, + "spreadsheet": { + "description": "True when metadata is associated with an entire spreadsheet.", + "type": "boolean" + }, + "sheetId": { + "description": "The ID of the sheet when metadata is associated with an entire sheet.", + "format": "int32", + "type": "integer" + }, "locationType": { "enumDescriptions": [ "Default value.", @@ -4178,43 +4364,12 @@ ], "description": "The type of location this object represents. This field is read-only.", "type": "string" - }, - "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." - }, - "spreadsheet": { - "description": "True when metadata is associated with an entire spreadsheet.", - "type": "boolean" - }, - "sheetId": { - "type": "integer", - "description": "The ID of the sheet when metadata is associated with an entire sheet.", - "format": "int32" } }, "id": "DeveloperMetadataLocation", "description": "A location where metadata may be associated in a spreadsheet.", "type": "object" }, - "MatchedValueRange": { - "description": "A value range that was matched by one or more data filers.", - "type": "object", - "properties": { - "valueRange": { - "description": "The values matched by the DataFilter.", - "$ref": "ValueRange" - }, - "dataFilters": { - "description": "The DataFilters from the request that matched the range of\nvalues.", - "type": "array", - "items": { - "$ref": "DataFilter" - } - } - }, - "id": "MatchedValueRange" - }, "UpdateConditionalFormatRuleResponse": { "description": "The result of updating a conditional format rule.", "type": "object", @@ -4241,12 +4396,8 @@ "id": "UpdateConditionalFormatRuleResponse" }, "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.", @@ -4264,14 +4415,18 @@ "YESTERDAY", "TODAY", "TOMORROW" - ] + ], + "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" }, "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 `=` or a '+').", "type": "string" } }, - "id": "ConditionValue" + "id": "ConditionValue", + "description": "The value of the condition.", + "type": "object" }, "DuplicateSheetRequest": { "description": "Duplicates the contents of a sheet.", @@ -4350,6 +4505,19 @@ "description": "A \u003ca href=\"/chart/interactive/docs/gallery/treemap\"\u003eTreemap chart\u003c/a\u003e.", "type": "object", "properties": { + "colorData": { + "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.", + "$ref": "ChartData" + }, + "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" + }, + "colorScale": { + "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.", + "$ref": "TreemapChartColorScale" + }, "hideTooltips": { "description": "True to hide tooltips.", "type": "boolean" @@ -4378,8 +4546,8 @@ "$ref": "TextFormat" }, "headerColor": { - "$ref": "Color", - "description": "The background color for header cells." + "description": "The background color for header cells.", + "$ref": "Color" }, "parentLabels": { "$ref": "ChartData", @@ -4388,19 +4556,6 @@ "labels": { "$ref": "ChartData", "description": "The data that contains the treemap cell labels." - }, - "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." - }, - "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" - }, - "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." } }, "id": "TreemapChartSpec" @@ -4409,11 +4564,6 @@ "description": "The kinds of value that a cell in a spreadsheet can have.", "type": "object", "properties": { - "numberValue": { - "description": "Represents a double value.\nNote: Dates, Times and DateTimes are represented as doubles in\n\"serial number\" format.", - "format": "double", - "type": "number" - }, "errorValue": { "description": "Represents an error.\nThis field is read-only.", "$ref": "ErrorValue" @@ -4429,6 +4579,11 @@ "formulaValue": { "description": "Represents a formula.", "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" } }, "id": "ExtendedValue" @@ -4438,38 +4593,51 @@ "type": "object", "properties": { "barColor": { - "$ref": "Color", - "description": "The color of the column representing this series in each bucket.\nThis field is optional." + "description": "The color of the column representing this series in each bucket.\nThis field is optional.", + "$ref": "Color" }, "data": { - "$ref": "ChartData", - "description": "The data for this histogram series." + "description": "The data for this histogram series.", + "$ref": "ChartData" } }, "id": "HistogramSeries" }, "BatchClearValuesResponse": { - "description": "The response when clearing a range of values in a spreadsheet.", - "type": "object", "properties": { - "spreadsheetId": { - "type": "string", - "description": "The spreadsheet the updates were applied to." - }, "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" } + }, + "spreadsheetId": { + "description": "The spreadsheet the updates were applied to.", + "type": "string" } }, - "id": "BatchClearValuesResponse" + "id": "BatchClearValuesResponse", + "description": "The response when clearing a range of values in a spreadsheet.", + "type": "object" }, "Spreadsheet": { - "description": "Resource that represents a spreadsheet.", - "type": "object", "properties": { + "properties": { + "$ref": "SpreadsheetProperties", + "description": "Overall properties of a spreadsheet." + }, + "spreadsheetId": { + "description": "The ID of the spreadsheet.\nThis field is read-only.", + "type": "string" + }, + "namedRanges": { + "description": "The named ranges defined in a spreadsheet.", + "type": "array", + "items": { + "$ref": "NamedRange" + } + }, "developerMetadata": { "description": "The developer metadata associated with a spreadsheet.", "type": "array", @@ -4487,76 +4655,63 @@ "spreadsheetUrl": { "description": "The url of the spreadsheet.\nThis field is read-only.", "type": "string" - }, - "properties": { - "$ref": "SpreadsheetProperties", - "description": "Overall properties of a spreadsheet." - }, - "spreadsheetId": { - "description": "The ID of the spreadsheet.\nThis field is read-only.", - "type": "string" - }, - "namedRanges": { - "description": "The named ranges defined in a spreadsheet.", - "type": "array", - "items": { - "$ref": "NamedRange" - } } }, - "id": "Spreadsheet" + "id": "Spreadsheet", + "description": "Resource that represents a spreadsheet.", + "type": "object" }, "BandedRange": { + "description": "A banded (alternating colors) range in a sheet.", + "type": "object", "properties": { - "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." - }, - "columnProperties": { - "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.", - "$ref": "BandingProperties" - }, "range": { "$ref": "GridRange", "description": "The range over which these properties are applied." }, "bandedRangeId": { - "type": "integer", "description": "The id of the banded range.", - "format": "int32" + "format": "int32", + "type": "integer" + }, + "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." + }, + "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." } }, - "id": "BandedRange", - "description": "A banded (alternating colors) range in a sheet.", - "type": "object" + "id": "BandedRange" }, "AddChartRequest": { - "description": "Adds a chart to a sheet in the spreadsheet.", - "type": "object", "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.)" + "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" + "id": "AddChartRequest", + "description": "Adds a chart to a sheet in the spreadsheet.", + "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 +-------------+-------------------+", "type": "object", "properties": { + "interval": { + "description": "The size of the buckets that will be created. Must be positive.", + "format": "double", + "type": "number" + }, "start": { "description": "The minimum value at which items will be placed into buckets\nof constant size. Values below start will be lumped into a single bucket.\nThis field is optional.", "format": "double", "type": "number" }, "end": { - "type": "number", "description": "The maximum value at which items will be placed into buckets\nof constant size. Values above end will be lumped into a single bucket.\nThis field is optional.", - "format": "double" - }, - "interval": { - "description": "The size of the buckets that will be created. Must be positive.", "format": "double", "type": "number" } @@ -4564,11 +4719,12 @@ "id": "HistogramRule" }, "UpdateProtectedRangeRequest": { + "description": "Updates an existing protected range with the specified\nprotectedRangeId.", "type": "object", "properties": { "protectedRange": { - "$ref": "ProtectedRange", - "description": "The protected range to update with the new properties." + "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.", @@ -4576,32 +4732,43 @@ "type": "string" } }, - "id": "UpdateProtectedRangeRequest", - "description": "Updates an existing protected range with the specified\nprotectedRangeId." + "id": "UpdateProtectedRangeRequest" }, "DataFilter": { - "description": "Filter that describes what data should be selected or returned from a\nrequest.", - "type": "object", "properties": { + "a1Range": { + "description": "Selects data that matches the specified A1 range.", + "type": "string" + }, "gridRange": { "$ref": "GridRange", "description": "Selects data that matches the range described by the GridRange." }, "developerMetadataLookup": { - "$ref": "DeveloperMetadataLookup", - "description": "Selects data associated with the developer metadata matching the criteria\ndescribed by this DeveloperMetadataLookup." - }, - "a1Range": { - "description": "Selects data that matches the specified A1 range.", - "type": "string" + "description": "Selects data associated with the developer metadata matching the criteria\ndescribed by this DeveloperMetadataLookup.", + "$ref": "DeveloperMetadataLookup" } }, - "id": "DataFilter" + "id": "DataFilter", + "description": "Filter that describes what data should be selected or returned from a\nrequest.", + "type": "object" }, "TextFormat": { "description": "The format of a run of text in a cell.\nAbsent values indicate that the field isn't specified.", "type": "object", "properties": { + "underline": { + "description": "True if the text is underlined.", + "type": "boolean" + }, + "bold": { + "description": "True if the text is bold.", + "type": "boolean" + }, + "foregroundColor": { + "description": "The foreground color of the text.", + "$ref": "Color" + }, "fontFamily": { "description": "The font family.", "type": "string" @@ -4618,18 +4785,6 @@ "description": "The size of the font.", "format": "int32", "type": "integer" - }, - "underline": { - "type": "boolean", - "description": "True if the text is underlined." - }, - "foregroundColor": { - "$ref": "Color", - "description": "The foreground color of the text." - }, - "bold": { - "description": "True if the text is bold.", - "type": "boolean" } }, "id": "TextFormat" @@ -4639,12 +4794,23 @@ "type": "object", "properties": { "properties": { - "$ref": "SheetProperties", - "description": "The properties of the newly added sheet." + "description": "The properties of the newly added sheet.", + "$ref": "SheetProperties" } }, "id": "AddSheetResponse" }, + "AddFilterViewResponse": { + "description": "The result of adding a filter view.", + "type": "object", + "properties": { + "filter": { + "description": "The newly added filter view.", + "$ref": "FilterView" + } + }, + "id": "AddFilterViewResponse" + }, "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.", "type": "object", @@ -4658,26 +4824,13 @@ "$ref": "DateTimeRule" }, "manualRule": { - "$ref": "ManualRule", - "description": "A ManualRule." + "description": "A ManualRule.", + "$ref": "ManualRule" } }, "id": "PivotGroupRule" }, - "AddFilterViewResponse": { - "description": "The result of adding a filter view.", - "type": "object", - "properties": { - "filter": { - "description": "The newly added filter view.", - "$ref": "FilterView" - } - }, - "id": "AddFilterViewResponse" - }, "IterativeCalculationSettings": { - "description": "Settings to control how circular dependencies are resolved with iterative\ncalculation.", - "type": "object", "properties": { "convergenceThreshold": { "description": "When iterative calculation is enabled and successive results differ by\nless than this threshold value, the calculation rounds stop.", @@ -4690,13 +4843,27 @@ "type": "integer" } }, - "id": "IterativeCalculationSettings" + "id": "IterativeCalculationSettings", + "description": "Settings to control how circular dependencies are resolved with iterative\ncalculation.", + "type": "object" }, "SpreadsheetProperties": { - "description": "Properties of a spreadsheet.", - "type": "object", "properties": { + "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": { + "$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." + }, "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." + ], "enum": [ "RECALCULATION_INTERVAL_UNSPECIFIED", "ON_CHANGE", @@ -4704,13 +4871,7 @@ "HOUR" ], "description": "The amount of time to wait before volatile functions are recalculated.", - "type": "string", - "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": { "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.", @@ -4721,22 +4882,15 @@ "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" - }, - "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.", + "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" - }, - "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." } }, - "id": "SpreadsheetProperties" + "id": "SpreadsheetProperties", + "description": "Properties of a spreadsheet.", + "type": "object" }, "OverlayPosition": { - "id": "OverlayPosition", "description": "The location an object is overlaid on top of a grid.", "type": "object", "properties": { @@ -4764,44 +4918,45 @@ "format": "int32", "type": "integer" } - } + }, + "id": "OverlayPosition" }, "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": { - "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" }, "cell": { - "$ref": "CellData", - "description": "The data to write." + "description": "The data to write.", + "$ref": "CellData" + }, + "range": { + "description": "The range to repeat the cell in.", + "$ref": "GridRange" } }, - "id": "RepeatCellRequest" + "id": "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" }, "AddChartResponse": { - "description": "The result of adding a chart to a spreadsheet.", - "type": "object", "properties": { "chart": { - "description": "The newly added chart.", - "$ref": "EmbeddedChart" + "$ref": "EmbeddedChart", + "description": "The newly added chart." } }, - "id": "AddChartResponse" + "id": "AddChartResponse", + "description": "The result of adding a chart to a spreadsheet.", + "type": "object" }, "InsertDimensionRequest": { "properties": { "range": { - "$ref": "DimensionRange", - "description": "The dimensions to insert. Both the start and end indexes must be bounded." + "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).", @@ -4813,75 +4968,44 @@ "type": "object" }, "UpdateSpreadsheetPropertiesRequest": { - "description": "Updates properties of a spreadsheet.", - "type": "object", "properties": { "properties": { "$ref": "SpreadsheetProperties", "description": "The properties to update." }, "fields": { - "type": "string", "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" - } - }, - "id": "UpdateSpreadsheetPropertiesRequest" - }, - "ProtectedRange": { - "type": "object", - "properties": { - "requestingUserCanEdit": { - "description": "True if the user who requested this protected range can edit the\nprotected area.\nThis field is read-only.", - "type": "boolean" - }, - "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" - }, - "range": { - "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.", - "$ref": "GridRange" - }, - "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": { - "$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.", + "format": "google-fieldmask", "type": "string" - }, - "protectedRangeId": { - "type": "integer", - "description": "The ID of the protected range.\nThis field is read-only.", - "format": "int32" - }, - "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": "ProtectedRange", - "description": "A protected range." + "id": "UpdateSpreadsheetPropertiesRequest", + "description": "Updates properties of a spreadsheet.", + "type": "object" }, "BatchUpdateValuesRequest": { "description": "The request for updating more than one range of values in a spreadsheet.", "type": "object", "properties": { + "responseValueRenderOption": { + "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\"`." + ], + "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" + }, "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", "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.", @@ -4891,7 +5015,9 @@ "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.", @@ -4901,38 +5027,74 @@ } }, "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)." - ], "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": { "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\"`." - ], - "enum": [ - "FORMATTED_VALUE", - "UNFORMATTED_VALUE", - "FORMULA" - ], - "description": "Determines how values in the response should be rendered.\nThe default render option is ValueRenderOption.FORMATTED_VALUE." + "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)." + ] } }, "id": "BatchUpdateValuesRequest" }, + "ProtectedRange": { + "description": "A protected range.", + "type": "object", + "properties": { + "unprotectedRanges": { + "description": "The list of unprotected ranges within a protected sheet.\nUnprotected ranges are only supported on protected sheets.", + "type": "array", + "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" + }, + "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" + }, + "requestingUserCanEdit": { + "description": "True if the user who requested this protected range can edit the\nprotected area.\nThis field is read-only.", + "type": "boolean" + }, + "range": { + "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.", + "$ref": "GridRange" + }, + "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" + } + }, + "id": "ProtectedRange" + }, "DimensionProperties": { "description": "Properties about a dimension.", "type": "object", "properties": { + "developerMetadata": { + "description": "The developer metadata associated with a single row or column.", + "type": "array", + "items": { + "$ref": "DeveloperMetadata" + } + }, "pixelSize": { "description": "The height (if a row) or width (if a column) of the dimension in pixels.", "format": "int32", @@ -4943,22 +5105,32 @@ "type": "boolean" }, "hiddenByUser": { - "type": "boolean", - "description": "True if this dimension is explicitly hidden." - }, - "developerMetadata": { - "type": "array", - "items": { - "$ref": "DeveloperMetadata" - }, - "description": "The developer metadata associated with a single row or column." + "description": "True if this dimension is explicitly hidden.", + "type": "boolean" } }, "id": "DimensionProperties" }, - "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.", + "NamedRange": { + "description": "A named range.", "type": "object", + "properties": { + "namedRangeId": { + "description": "The ID of the named range.", + "type": "string" + }, + "range": { + "description": "The range this represents.", + "$ref": "GridRange" + }, + "name": { + "description": "The name of the named range.", + "type": "string" + } + }, + "id": "NamedRange" + }, + "DimensionRange": { "properties": { "sheetId": { "description": "The sheet this span is on.", @@ -4966,17 +5138,17 @@ "type": "integer" }, "dimension": { + "enum": [ + "DIMENSION_UNSPECIFIED", + "ROWS", + "COLUMNS" + ], "description": "The dimension of the span.", "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" ] }, "startIndex": { @@ -4985,44 +5157,37 @@ "type": "integer" }, "endIndex": { - "type": "integer", "description": "The end (exclusive) of the span, or not set if unbounded.", - "format": "int32" + "format": "int32", + "type": "integer" } }, - "id": "DimensionRange" - }, - "NamedRange": { - "id": "NamedRange", - "description": "A named range.", - "type": "object", - "properties": { - "namedRangeId": { - "description": "The ID of the named range.", - "type": "string" - }, - "range": { - "description": "The range this represents.", - "$ref": "GridRange" - }, - "name": { - "description": "The name of the named range.", - "type": "string" - } - } + "id": "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" }, "CutPasteRequest": { + "description": "Moves data from the source to the destination.", "type": "object", "properties": { "destination": { - "$ref": "GridCoordinate", - "description": "The top-left coordinate where the data should be pasted." + "description": "The top-left coordinate where the data should be pasted.", + "$ref": "GridCoordinate" }, "source": { "description": "The source data to cut.", "$ref": "GridRange" }, "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", @@ -5033,31 +5198,51 @@ "PASTE_CONDITIONAL_FORMATTING" ], "description": "What kind of data to paste. All the source data will be cut, regardless\nof what is pasted.", - "type": "string", - "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" + } + }, + "id": "CutPasteRequest" + }, + "Borders": { + "properties": { + "right": { + "description": "The right border of the cell.", + "$ref": "Border" + }, + "bottom": { + "$ref": "Border", + "description": "The bottom border of the cell." + }, + "top": { + "$ref": "Border", + "description": "The top border of the cell." + }, + "left": { + "$ref": "Border", + "description": "The left border of the cell." } }, - "id": "CutPasteRequest", - "description": "Moves data from the source to the destination." + "id": "Borders", + "description": "The borders of the cell.", + "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\".", "type": "object", "properties": { + "color": { + "$ref": "Color", + "description": "The color for elements (i.e. bars, lines, points) associated with this\nseries. If empty, a default color will be used." + }, + "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" + }, "series": { "$ref": "ChartData", "description": "The data being visualized in this chart series." }, "type": { - "type": "string", "enumDescriptions": [ "Default value, do not use.", "A \u003ca href=\"/chart/interactive/docs/gallery/barchart\"\u003ebar chart\u003c/a\u003e.", @@ -5078,9 +5263,16 @@ "COMBO", "STEPPED_AREA" ], - "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." + "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" }, "targetAxis": { + "enum": [ + "BASIC_CHART_AXIS_POSITION_UNSPECIFIED", + "BOTTOM_AXIS", + "LEFT_AXIS", + "RIGHT_AXIS" + ], "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", "enumDescriptions": [ @@ -5088,48 +5280,11 @@ "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" ] - }, - "color": { - "$ref": "Color", - "description": "The color for elements (i.e. bars, lines, points) associated with this\nseries. If empty, a default color will be used." - }, - "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" } }, "id": "BasicChartSeries" }, - "Borders": { - "description": "The borders of the cell.", - "type": "object", - "properties": { - "bottom": { - "$ref": "Border", - "description": "The bottom border of the cell." - }, - "top": { - "description": "The top border of the cell.", - "$ref": "Border" - }, - "left": { - "$ref": "Border", - "description": "The left border of the cell." - }, - "right": { - "$ref": "Border", - "description": "The right border of the cell." - } - }, - "id": "Borders" - }, "AutoResizeDimensionsRequest": { "properties": { "dimensions": { @@ -5142,38 +5297,30 @@ "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 +-----------+-------------------+", - "type": "object", "properties": { "groups": { + "description": "The list of group names and the corresponding items from the source data\nthat map to each group name.", "type": "array", "items": { "$ref": "ManualRuleGroup" - }, - "description": "The list of group names and the corresponding items from the source data\nthat map to each group name." + } } }, - "id": "ManualRule" + "id": "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 +-----------+-------------------+", + "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.", "type": "object", "properties": { - "bottom": { - "description": "The border to put at the bottom of the range.", - "$ref": "Border" - }, - "innerVertical": { - "$ref": "Border", - "description": "The vertical border to put within the range." - }, "right": { - "$ref": "Border", - "description": "The border to put at the right of the range." + "description": "The border to put at the right of the range.", + "$ref": "Border" }, "range": { - "description": "The range whose borders should be updated.", - "$ref": "GridRange" + "$ref": "GridRange", + "description": "The range whose borders should be updated." }, "innerHorizontal": { "$ref": "Border", @@ -5184,8 +5331,16 @@ "description": "The border to put at the top of the range." }, "left": { + "description": "The border to put at the left of the range.", + "$ref": "Border" + }, + "bottom": { "$ref": "Border", - "description": "The border to put at the left of the range." + "description": "The border to put at the bottom of the range." + }, + "innerVertical": { + "$ref": "Border", + "description": "The vertical border to put within the range." } }, "id": "UpdateBordersRequest" @@ -5194,49 +5349,13 @@ "description": "The format of a cell.", "type": "object", "properties": { - "hyperlinkDisplayType": { - "description": "How a hyperlink, if it exists, should be displayed in the cell.", - "type": "string", - "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" - ] - }, - "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." - ], + "verticalAlignment": { "enum": [ - "HORIZONTAL_ALIGN_UNSPECIFIED", - "LEFT", - "CENTER", - "RIGHT" + "VERTICAL_ALIGN_UNSPECIFIED", + "TOP", + "MIDDLE", + "BOTTOM" ], - "description": "The horizontal alignment of the value in the cell.", - "type": "string" - }, - "textFormat": { - "$ref": "TextFormat", - "description": "The format of the text in the cell (unless overridden by a format run)." - }, - "backgroundColor": { - "description": "The background color of the cell.", - "$ref": "Color" - }, - "padding": { - "$ref": "Padding", - "description": "The padding of the cell." - }, - "verticalAlignment": { "description": "The vertical alignment of the value in the cell.", "type": "string", "enumDescriptions": [ @@ -5244,17 +5363,11 @@ "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" ] }, - "borders": { - "$ref": "Borders", - "description": "The borders of the cell." + "padding": { + "description": "The padding of the cell.", + "$ref": "Padding" }, "textDirection": { "enumDescriptions": [ @@ -5270,15 +5383,11 @@ "description": "The direction of the text in the cell.", "type": "string" }, + "borders": { + "description": "The borders of the cell.", + "$ref": "Borders" + }, "wrapStrategy": { - "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", @@ -5286,7 +5395,15 @@ "CLIP", "WRAP" ], - "description": "The wrap strategy for the value in the cell." + "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. |" + ] }, "textRotation": { "description": "The rotation applied to text in a cell", @@ -5295,28 +5412,64 @@ "numberFormat": { "$ref": "NumberFormat", "description": "A format describing how number values should be represented to the user." + }, + "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." + ], + "enum": [ + "HORIZONTAL_ALIGN_UNSPECIFIED", + "LEFT", + "CENTER", + "RIGHT" + ], + "description": "The horizontal alignment of the value in the cell.", + "type": "string" + }, + "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.", + "type": "string" + }, + "textFormat": { + "description": "The format of the text in the cell (unless overridden by a format run).", + "$ref": "TextFormat" + }, + "backgroundColor": { + "$ref": "Color", + "description": "The background color of the cell." } }, "id": "CellFormat" }, "ClearValuesResponse": { + "description": "The response when clearing a range of values in a spreadsheet.", + "type": "object", "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" + }, + "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" } }, - "id": "ClearValuesResponse", - "description": "The response when clearing a range of values in a spreadsheet.", - "type": "object" + "id": "ClearValuesResponse" }, "DeleteConditionalFormatRuleRequest": { - "description": "Deletes a conditional format rule at the given index.\nAll subsequent rules' indexes are decremented.", - "type": "object", "properties": { "index": { "description": "The zero-based index of the rule to be deleted.", @@ -5329,7 +5482,9 @@ "type": "integer" } }, - "id": "DeleteConditionalFormatRuleRequest" + "id": "DeleteConditionalFormatRuleRequest", + "description": "Deletes a conditional format rule at the given index.\nAll subsequent rules' indexes are decremented.", + "type": "object" }, "DeleteNamedRangeRequest": { "description": "Removes the named range with the given ID from the spreadsheet.", @@ -5347,13 +5502,15 @@ "type": "object", "properties": { "bandedRange": { - "$ref": "BandedRange", - "description": "The banded range that was added." + "description": "The banded range that was added.", + "$ref": "BandedRange" } }, "id": "AddBandingResponse" }, "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 three data points, their indices will always\nbe 0, 1, and 2, regardless of how many subtotals exist on the series or\nwhat data points they are associated with.", @@ -5361,22 +5518,17 @@ "type": "integer" }, "dataIsSubtotal": { - "type": "boolean", - "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." + "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" }, "label": { "description": "A label for the subtotal column.", "type": "string" } }, - "id": "WaterfallChartCustomSubtotal", - "description": "A custom subtotal column for a waterfall chart series.", - "type": "object" + "id": "WaterfallChartCustomSubtotal" }, "AddDimensionGroupResponse": { - "id": "AddDimensionGroupResponse", - "description": "The result of adding a group.", - "type": "object", "properties": { "dimensionGroups": { "description": "All groups of a dimension after adding a group to that dimension.", @@ -5385,7 +5537,10 @@ "$ref": "DimensionGroup" } } - } + }, + "id": "AddDimensionGroupResponse", + "description": "The result of adding a group.", + "type": "object" }, "ChartData": { "description": "The data included in a domain or series.", @@ -5399,43 +5554,46 @@ "id": "ChartData" }, "BatchGetValuesResponse": { - "type": "object", "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.", "type": "array", "items": { "$ref": "ValueRange" } - }, - "spreadsheetId": { - "description": "The ID of the spreadsheet the data was retrieved from.", - "type": "string" } }, "id": "BatchGetValuesResponse", - "description": "The response when retrieving more than one range of values in a spreadsheet." + "description": "The response when retrieving more than one range of values in a spreadsheet.", + "type": "object" }, "UpdateBandingRequest": { - "type": "object", "properties": { - "bandedRange": { - "$ref": "BandedRange", - "description": "The banded range to update with the new properties." - }, "fields": { "description": "The fields that should be updated. At least one field must be specified.\nThe root `bandedRange` is implied and should not be specified.\nA single `\"*\"` can be used as short-hand for listing every field.", "format": "google-fieldmask", "type": "string" + }, + "bandedRange": { + "description": "The banded range to update with the new properties.", + "$ref": "BandedRange" } }, "id": "UpdateBandingRequest", - "description": "Updates properties of the supplied banded range." + "description": "Updates properties of the supplied banded range.", + "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", "properties": { + "red": { + "description": "The amount of red 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", @@ -5447,20 +5605,16 @@ "type": "number" }, "alpha": { - "type": "number", "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" - }, - "red": { - "description": "The amount of red in the color as a value in the interval [0, 1].", "format": "float", "type": "number" } }, - "id": "Color" + "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" }, "ManualRuleGroup": { - "type": "object", "properties": { "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.", @@ -5470,26 +5624,18 @@ } }, "groupName": { - "$ref": "ExtendedValue", - "description": "The group name, which must be a string. Each group in a given\nManualRule must have a unique group name." + "description": "The group name, which must be a string. Each group in a given\nManualRule must have a unique group name.", + "$ref": "ExtendedValue" } }, "id": "ManualRuleGroup", - "description": "A group name and a list of items from the source data that should be placed\nin the group with this name." + "description": "A group name and a list of items from the source data that should be placed\nin the group with this name.", + "type": "object" }, "PivotGroup": { "description": "A single grouping (either row or column) in a pivot table.", "type": "object", "properties": { - "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" - }, - "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" - }, "sortOrder": { "enum": [ "SORT_ORDER_UNSPECIFIED", @@ -5520,12 +5666,21 @@ } }, "groupRule": { - "$ref": "PivotGroupRule", - "description": "The group rule to apply to this row/column group." + "description": "The group rule to apply to this row/column group.", + "$ref": "PivotGroupRule" }, "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" + }, + "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" } }, "id": "PivotGroup" @@ -5535,11 +5690,11 @@ "type": "object", "properties": { "criteria": { - "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", "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.", @@ -5549,16 +5704,16 @@ } }, "valueLayout": { + "enumDescriptions": [ + "Values are laid out horizontally (as columns).", + "Values are laid out vertically (as rows)." + ], "enum": [ "HORIZONTAL", "VERTICAL" ], "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)." - ] + "type": "string" }, "values": { "description": "A list of values to include in the pivot table.", @@ -5568,8 +5723,8 @@ } }, "source": { - "description": "The range the pivot table is reading data from.", - "$ref": "GridRange" + "$ref": "GridRange", + "description": "The range the pivot table is reading data from." }, "columns": { "description": "Each column grouping in the pivot table.", @@ -5582,22 +5737,20 @@ "id": "PivotTable" }, "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 in order and contiguous across the domain\nand 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" - }, - "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 in order and contiguous across the domain\nand 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" + } } }, - "id": "ChartSourceRange" + "id": "ChartSourceRange", + "description": "Source ranges for a chart.", + "type": "object" }, "SearchDeveloperMetadataResponse": { - "description": "A reply to a developer metadata search request.", - "type": "object", "properties": { "matchedDeveloperMetadata": { "description": "The metadata matching the criteria of the search request.", @@ -5607,13 +5760,15 @@ } } }, - "id": "SearchDeveloperMetadataResponse" + "id": "SearchDeveloperMetadataResponse", + "description": "A reply to a developer metadata search request.", + "type": "object" }, "ValueRange": { + "description": "Data within a range of the spreadsheet.", + "type": "object", "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.", - "type": "string", "enumDescriptions": [ "The default value, do not use.", "Operates on the rows of a sheet.", @@ -5623,37 +5778,35 @@ "DIMENSION_UNSPECIFIED", "ROWS", "COLUMNS" - ] + ], + "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" }, "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" } - }, - "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." + } }, "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" } }, - "id": "ValueRange", - "description": "Data within a range of the spreadsheet.", - "type": "object" + "id": "ValueRange" }, "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": { "rows": { + "description": "The data to append.", "type": "array", "items": { "$ref": "RowData" - }, - "description": "The data to append." + } }, "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.", @@ -5666,41 +5819,52 @@ "type": "integer" } }, - "id": "AppendCellsRequest" + "id": "AppendCellsRequest", + "description": "Adds new cells after the last row with data in a sheet,\ninserting new rows into the sheet if necessary.", + "type": "object" }, "AddBandingRequest": { - "description": "Adds a new banded range to the spreadsheet.", - "type": "object", "properties": { "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.)", "$ref": "BandedRange" } }, - "id": "AddBandingRequest" + "id": "AddBandingRequest", + "description": "Adds a new banded range to the spreadsheet.", + "type": "object" }, "Response": { + "description": "A single response from an update.", "type": "object", "properties": { - "createDeveloperMetadata": { - "$ref": "CreateDeveloperMetadataResponse", - "description": "A reply from creating a developer metadata entry." + "findReplace": { + "description": "A reply from doing a find/replace.", + "$ref": "FindReplaceResponse" + }, + "addSheet": { + "$ref": "AddSheetResponse", + "description": "A reply from adding a sheet." }, "updateConditionalFormatRule": { - "$ref": "UpdateConditionalFormatRuleResponse", - "description": "A reply from updating a conditional format rule." + "description": "A reply from updating a conditional format rule.", + "$ref": "UpdateConditionalFormatRuleResponse" + }, + "createDeveloperMetadata": { + "description": "A reply from creating a developer metadata entry.", + "$ref": "CreateDeveloperMetadataResponse" }, "addNamedRange": { "$ref": "AddNamedRangeResponse", "description": "A reply from adding a named range." }, "deleteDeveloperMetadata": { - "$ref": "DeleteDeveloperMetadataResponse", - "description": "A reply from deleting a developer metadata entry." + "description": "A reply from deleting a developer metadata entry.", + "$ref": "DeleteDeveloperMetadataResponse" }, "addFilterView": { - "$ref": "AddFilterViewResponse", - "description": "A reply from adding a filter view." + "description": "A reply from adding a filter view.", + "$ref": "AddFilterViewResponse" }, "addBanding": { "$ref": "AddBandingResponse", @@ -5714,70 +5878,58 @@ "$ref": "DuplicateSheetResponse", "description": "A reply from duplicating a sheet." }, - "deleteConditionalFormatRule": { - "description": "A reply from deleting a conditional format rule.", - "$ref": "DeleteConditionalFormatRuleResponse" - }, "updateEmbeddedObjectPosition": { "$ref": "UpdateEmbeddedObjectPositionResponse", "description": "A reply from updating an embedded object's position." }, - "deleteDimensionGroup": { - "description": "A reply from deleting a dimension group.", - "$ref": "DeleteDimensionGroupResponse" + "deleteConditionalFormatRule": { + "$ref": "DeleteConditionalFormatRuleResponse", + "description": "A reply from deleting a conditional format rule." }, - "duplicateFilterView": { - "description": "A reply from duplicating a filter view.", - "$ref": "DuplicateFilterViewResponse" + "deleteDimensionGroup": { + "$ref": "DeleteDimensionGroupResponse", + "description": "A reply from deleting a dimension group." }, "addDimensionGroup": { "$ref": "AddDimensionGroupResponse", "description": "A reply from adding a dimension group." }, + "duplicateFilterView": { + "$ref": "DuplicateFilterViewResponse", + "description": "A reply from duplicating a filter view." + }, "addChart": { - "$ref": "AddChartResponse", - "description": "A reply from adding a chart." + "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" + "$ref": "UpdateDeveloperMetadataResponse", + "description": "A reply from updating a developer metadata entry." } }, - "id": "Response", - "description": "A single response from an update." + "id": "Response" }, "EmbeddedChart": { - "type": "object", "properties": { + "spec": { + "$ref": "ChartSpec", + "description": "The specification of the chart." + }, "chartId": { "description": "The ID of the chart.", "format": "int32", "type": "integer" }, "position": { - "description": "The position of the chart.", - "$ref": "EmbeddedObjectPosition" - }, - "spec": { - "description": "The specification of the chart.", - "$ref": "ChartSpec" + "$ref": "EmbeddedObjectPosition", + "description": "The position of the chart." } }, "id": "EmbeddedChart", - "description": "A chart embedded in a sheet." + "description": "A chart embedded in a sheet.", + "type": "object" }, "TextFormatRun": { - "id": "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.", @@ -5788,29 +5940,32 @@ "$ref": "TextFormat", "description": "The format of this run. Absent values inherit the cell's format." } - } + }, + "id": "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" }, "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.", - "type": "string" + "type": "string", + "enumDescriptions": [ + "The default value, do not use.", + "Operates on the rows of a sheet.", + "Operates on the columns of a sheet." + ] }, "range": { - "$ref": "GridRange", - "description": "The range to insert new cells into." + "description": "The range to insert new cells into.", + "$ref": "GridRange" } }, "id": "InsertRangeRequest" @@ -5825,166 +5980,11 @@ } }, "id": "AddNamedRangeResponse" - }, - "BatchUpdateValuesByDataFilterResponse": { - "description": "The response when updating a range of values in a spreadsheet.", - "type": "object", - "properties": { - "totalUpdatedColumns": { - "description": "The total number of columns where at least one cell in the column was\nupdated.", - "format": "int32", - "type": "integer" - }, - "spreadsheetId": { - "type": "string", - "description": "The spreadsheet the updates were applied to." - }, - "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" - }, - "totalUpdatedCells": { - "description": "The total number of cells updated.", - "format": "int32", - "type": "integer" - } - }, - "id": "BatchUpdateValuesByDataFilterResponse" - }, - "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" - } - } - }, - "id": "RowData" - }, - "Border": { - "description": "A border along a cell.", - "type": "object", - "properties": { - "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" - }, - "color": { - "$ref": "Color", - "description": "The color of the border." - }, - "width": { - "type": "integer", - "description": "The width of the border, in pixels.\nDeprecated; the width is determined by the \"style\" field.", - "format": "int32" - } - }, - "id": "Border" - }, - "GridData": { - "properties": { - "columnMetadata": { - "description": "Metadata about the requested columns in the grid, starting with the column\nin start_column.", - "type": "array", - "items": { - "$ref": "DimensionProperties" - } - }, - "startColumn": { - "type": "integer", - "description": "The first column this GridData refers to, zero-based.", - "format": "int32" - }, - "rowMetadata": { - "description": "Metadata about the requested rows in the grid, starting with the row\nin start_row.", - "type": "array", - "items": { - "$ref": "DimensionProperties" - } - }, - "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" - } - }, - "id": "GridData", - "description": "Data in the grid, as well as metadata about the dimensions.", - "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": "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" - }, - "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" - }, - "https://www.googleapis.com/auth/spreadsheets.readonly": { - "description": "View your Google Spreadsheets" - }, - "https://www.googleapis.com/auth/spreadsheets": { - "description": "View and manage your spreadsheets in Google Drive" - } - } - } + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" }, - "rootUrl": "https://sheets.googleapis.com/", - "ownerDomain": "google.com", - "name": "sheets" + "protocol": "rest" } diff --git a/DiscoveryJson/slides_v1.json b/DiscoveryJson/slides_v1.json index 8d1158b4ad..ce6c14cfcb 100644 --- a/DiscoveryJson/slides_v1.json +++ b/DiscoveryJson/slides_v1.json @@ -1,636 +1,949 @@ { - "kind": "discovery#restDescription", - "description": "An API for creating and editing Google Slides presentations.", - "servicePath": "", - "basePath": "", - "revision": "20180504", - "documentationLink": "https://developers.google.com/slides/", - "id": "slides:v1", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "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" + "canonicalName": "Slides", + "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" }, - "objectId": { - "description": "The object ID of the line the update is applied to.", - "type": "string" + "https://www.googleapis.com/auth/drive.readonly": { + "description": "View the files in your Google Drive" }, - "lineProperties": { - "description": "The line properties to update.", - "$ref": "LineProperties" - } - }, - "id": "UpdateLinePropertiesRequest", - "description": "Updates the properties of a Line.", - "type": "object" - }, - "UpdatePageElementAltTextRequest": { - "description": "Updates the alt text title and/or description of a\npage element.", - "type": "object", - "properties": { - "description": { - "type": "string", - "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." + "https://www.googleapis.com/auth/spreadsheets.readonly": { + "description": "View your Google Spreadsheets" }, - "objectId": { - "description": "The object ID of the page element the updates are applied to.", - "type": "string" + "https://www.googleapis.com/auth/drive": { + "description": "View and manage the files in your Google Drive" }, - "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" - } - }, - "id": "UpdatePageElementAltTextRequest" - }, - "UpdateSlidesPositionRequest": { - "description": "Updates the position of slides in the presentation.", - "type": "object", - "properties": { - "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" - } + "https://www.googleapis.com/auth/spreadsheets": { + "description": "View and manage your spreadsheets in Google Drive" }, - "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" + "https://www.googleapis.com/auth/presentations": { + "description": "View and manage your Google Slides presentations" + }, + "https://www.googleapis.com/auth/presentations.readonly": { + "description": "View your Google Slides presentations" } - }, - "id": "UpdateSlidesPositionRequest" - }, - "TableCellBackgroundFill": { - "description": "The table cell background fill.", - "type": "object", - "properties": { - "solidFill": { - "$ref": "SolidFill", - "description": "Solid color fill." + } + } + }, + "rootUrl": "https://slides.googleapis.com/", + "ownerDomain": "google.com", + "name": "slides", + "batchPath": "batch", + "title": "Google Slides API", + "ownerName": "Google", + "resources": { + "presentations": { + "methods": { + "create": { + "path": "v1/presentations", + "id": "slides.presentations.create", + "request": { + "$ref": "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.", + "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": {}, + "flatPath": "v1/presentations" }, - "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." + "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.", + "request": { + "$ref": "BatchUpdatePresentationRequest" + }, + "response": { + "$ref": "BatchUpdatePresentationResponse" + }, + "parameterOrder": [ + "presentationId" ], - "enum": [ - "RENDERED", - "NOT_RENDERED", - "INHERIT" + "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" ], - "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" - } - }, - "id": "TableCellBackgroundFill" - }, - "UpdatePagePropertiesRequest": { - "description": "Updates the properties of a Page.", - "type": "object", - "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" - }, - "objectId": { - "description": "The object ID of the page the update is applied to.", - "type": "string" + "flatPath": "v1/presentations/{presentationId}:batchUpdate", + "path": "v1/presentations/{presentationId}:batchUpdate", + "id": "slides.presentations.batchUpdate" }, - "pageProperties": { - "description": "The page properties to update.", - "$ref": "PageProperties" - } - }, - "id": "UpdatePagePropertiesRequest" - }, - "Group": { - "description": "A PageElement kind representing a\njoined collection of PageElements.", - "type": "object", - "properties": { - "children": { - "description": "The collection of elements in the group. The minimum size of a group is 2.", - "type": "array", - "items": { - "$ref": "PageElement" - } + "get": { + "id": "slides.presentations.get", + "path": "v1/presentations/{+presentationId}", + "description": "Gets the latest version of the specified presentation.", + "httpMethod": "GET", + "response": { + "$ref": "Presentation" + }, + "parameterOrder": [ + "presentationId" + ], + "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" + ], + "flatPath": "v1/presentations/{presentationsId}" } }, - "id": "Group" - }, - "Placeholder": { - "description": "The placeholder information that uniquely identifies a placeholder shape.", - "type": "object", - "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" - }, - "type": { - "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" - ], - "description": "The type of the placeholder.", - "type": "string" - }, - "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" + "resources": { + "pages": { + "methods": { + "getThumbnail": { + "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.\n\nThis request counts as an [expensive read request](/slides/limits) for\nquota purposes.", + "response": { + "$ref": "Thumbnail" + }, + "parameterOrder": [ + "presentationId", + "pageObjectId" + ], + "httpMethod": "GET", + "parameters": { + "pageObjectId": { + "location": "path", + "description": "The object ID of the page whose thumbnail to retrieve.", + "required": true, + "type": "string" + }, + "thumbnailProperties.mimeType": { + "enum": [ + "PNG" + ], + "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" + }, + "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" + } + }, + "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" + ], + "flatPath": "v1/presentations/{presentationId}/pages/{pageObjectId}/thumbnail" + }, + "get": { + "response": { + "$ref": "Page" + }, + "parameterOrder": [ + "presentationId", + "pageObjectId" + ], + "httpMethod": "GET", + "parameters": { + "presentationId": { + "description": "The ID of the presentation to retrieve.", + "required": true, + "type": "string", + "location": "path" + }, + "pageObjectId": { + "location": "path", + "description": "The object ID of the page 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" + ], + "flatPath": "v1/presentations/{presentationId}/pages/{pageObjectId}", + "path": "v1/presentations/{presentationId}/pages/{pageObjectId}", + "id": "slides.presentations.pages.get", + "description": "Gets the latest version of the specified page in the presentation." + } + } } - }, - "id": "Placeholder" + } + } + }, + "parameters": { + "upload_protocol": { + "location": "query", + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "type": "string" }, - "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.", + "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": { + "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": { + "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" + }, + "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": "v1", + "baseUrl": "https://slides.googleapis.com/", + "kind": "discovery#restDescription", + "description": "An API for creating and editing Google Slides presentations.", + "servicePath": "", + "basePath": "", + "id": "slides:v1", + "revision": "20180504", + "documentationLink": "https://developers.google.com/slides/", + "discoveryVersion": "v1", + "version_module": true, + "schemas": { + "WeightedFontFamily": { + "description": "Represents a font family and weight used to style a TextRun.", "type": "object", "properties": { - "objectIds": { - "type": "object", - "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." + "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" }, - "objectId": { - "type": "string", - "description": "The ID of the object to duplicate." + "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": "DuplicateObjectRequest" + "id": "WeightedFontFamily" }, - "ReplaceAllTextRequest": { - "id": "ReplaceAllTextRequest", - "description": "Replaces all instances of text matching a criteria with replace text.", - "type": "object", + "PageElement": { "properties": { - "replaceText": { - "description": "The text that will replace the matched text.", + "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" }, - "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" - } + "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" }, - "containsText": { - "$ref": "SubstringMatchCriteria", - "description": "Finds text in a shape matching this substring." - } - } - }, - "Page": { - "description": "A page in a presentation.", - "type": "object", - "properties": { - "masterProperties": { - "$ref": "MasterProperties", - "description": "Master specific properties. Only set if page_type = MASTER." + "shape": { + "$ref": "Shape", + "description": "A generic shape." }, - "objectId": { - "description": "The object ID for this page. Object IDs used by\nPage and\nPageElement share the same namespace.", - "type": "string" + "line": { + "description": "A line page element.", + "$ref": "Line" }, - "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.", + "description": { + "description": "The description of the page element. Combined with title to display alt\ntext.", "type": "string" }, - "layoutProperties": { - "$ref": "LayoutProperties", - "description": "Layout specific properties. Only set if page_type = LAYOUT." + "elementGroup": { + "$ref": "Group", + "description": "A collection of page elements joined as a single unit." }, - "pageElements": { - "description": "The page elements rendered on the page.", - "type": "array", - "items": { - "$ref": "PageElement" - } + "image": { + "description": "An image page element.", + "$ref": "Image" }, - "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." - ] + "size": { + "$ref": "Size", + "description": "The size of the page element." }, - "notesProperties": { - "description": "Notes specific properties. Only set if page_type = NOTES.", - "$ref": "NotesProperties" + "title": { + "description": "The title of the page element. Combined with description to display alt\ntext.", + "type": "string" }, - "slideProperties": { - "$ref": "SlideProperties", - "description": "Slide specific properties. Only set if page_type = SLIDE." + "sheetsChart": { + "description": "A linked chart embedded from Google Sheets. Unlinked charts are\nrepresented as images.", + "$ref": "SheetsChart" }, - "pageProperties": { - "$ref": "PageProperties", - "description": "The properties of the page." + "video": { + "$ref": "Video", + "description": "A video page element." + }, + "wordArt": { + "description": "A word art page element.", + "$ref": "WordArt" + }, + "table": { + "description": "A table page element.", + "$ref": "Table" } }, - "id": "Page" + "id": "PageElement", + "description": "A visual element rendered on a page.", + "type": "object" }, - "UnmergeTableCellsRequest": { - "description": "Unmerges cells in a Table.", - "type": "object", + "CreateImageRequest": { "properties": { - "objectId": { - "description": "The object ID of the table.", + "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 one of PNG, JPEG, or GIF\nformat.\n\nThe provided URL can be at most 2 kB in length. The URL itself is saved\nwith the image, and exposed via the Image.source_url field.", "type": "string" }, - "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.", - "$ref": "TableRange" + "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": "UnmergeTableCellsRequest" + "id": "CreateImageRequest", + "description": "Creates an image.", + "type": "object" }, - "ShapeBackgroundFill": { - "description": "The shape background fill.", + "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.", "type": "object", "properties": { - "solidFill": { - "description": "Solid color fill.", - "$ref": "SolidFill" - }, - "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", + "bulletPreset": { "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." + "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": [ - "RENDERED", - "NOT_RENDERED", - "INHERIT" - ] + "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" + ], + "description": "The kinds of bullet glyphs to be used. Defaults to the\n`BULLET_DISC_CIRCLE_SQUARE` preset.", + "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." } }, - "id": "ShapeBackgroundFill" + "id": "CreateParagraphBulletsRequest" }, - "CropProperties": { + "TextStyle": { "properties": { - "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" + "smallCaps": { + "description": "Whether or not the text is in small capital letters.", + "type": "boolean" }, - "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" + "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." }, - "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" + "underline": { + "description": "Whether or not the text is underlined.", + "type": "boolean" }, - "leftOffset": { - "type": "number", - "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" + "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." }, - "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" - } - }, - "id": "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" - }, - "ReplaceAllShapesWithSheetsChartRequest": { - "id": "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": { - "type": "string", - "description": "The ID of the Google Sheets spreadsheet that contains the chart." + "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." }, - "linkingMode": { - "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" - ], - "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" + "bold": { + "description": "Whether or not the text is rendered as bold.", + "type": "boolean" }, - "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." + "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" }, - "chartId": { - "description": "The ID of the specific chart in the Google Sheets spreadsheet.", - "format": "int32", - "type": "integer" + "italic": { + "description": "Whether or not the text is italicized.", + "type": "boolean" }, - "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" - } - } - } - }, - "Range": { - "description": "Specifies a contiguous range of an indexed collection, such as characters in\ntext.", - "type": "object", - "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" + "strikethrough": { + "description": "Whether or not the text is struck through.", + "type": "boolean" }, - "endIndex": { - "description": "The optional zero-based index of the end of the collection.\nRequired for `FIXED_RANGE` ranges.", - "format": "int32", - "type": "integer" + "fontSize": { + "$ref": "Dimension", + "description": "The size of the text's font. When read, the `font_size` will specified in\npoints." }, - "type": { + "baselineOffset": { "enum": [ - "RANGE_TYPE_UNSPECIFIED", - "FIXED_RANGE", - "FROM_START_INDEX", - "ALL" + "BASELINE_OFFSET_UNSPECIFIED", + "NONE", + "SUPERSCRIPT", + "SUBSCRIPT" ], - "description": "The type of range.", + "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": [ - "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." + "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": { + "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.", + "$ref": "WeightedFontFamily" } }, - "id": "Range" + "id": "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" }, - "ColorStop": { - "description": "A color and position in a gradient band.", - "type": "object", + "Size": { "properties": { - "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" + "width": { + "description": "The width of the object.", + "$ref": "Dimension" }, - "color": { - "description": "The color of the gradient stop.", - "$ref": "OpaqueColor" + "height": { + "description": "The height of the object.", + "$ref": "Dimension" } }, - "id": "ColorStop" + "id": "Size", + "description": "A width and height.", + "type": "object" }, - "CreateVideoRequest": { - "description": "Creates a video.", + "UpdateVideoPropertiesRequest": { + "description": "Update the properties of 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.", + "videoProperties": { + "$ref": "VideoProperties", + "description": "The video properties to update." + }, + "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.", + "format": "google-fieldmask", "type": "string" }, - "source": { - "enumDescriptions": [ - "The video source is unspecified.", - "The video source is YouTube." - ], - "enum": [ - "SOURCE_UNSPECIFIED", - "YOUTUBE" - ], - "description": "The video source.", + "objectId": { + "description": "The object ID of the video the updates are applied to.", "type": "string" + } + }, + "id": "UpdateVideoPropertiesRequest" + }, + "Request": { + "properties": { + "deleteTableColumn": { + "description": "Deletes a column from a table.", + "$ref": "DeleteTableColumnRequest" }, - "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." + "duplicateObject": { + "description": "Duplicates a slide or page element.", + "$ref": "DuplicateObjectRequest" }, - "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" + "updateVideoProperties": { + "$ref": "UpdateVideoPropertiesRequest", + "description": "Updates the properties of a Video." + }, + "createLine": { + "$ref": "CreateLineRequest", + "description": "Creates a line." + }, + "createImage": { + "description": "Creates an image.", + "$ref": "CreateImageRequest" + }, + "createParagraphBullets": { + "description": "Creates bullets for paragraphs.", + "$ref": "CreateParagraphBulletsRequest" + }, + "createVideo": { + "$ref": "CreateVideoRequest", + "description": "Creates a video." + }, + "replaceAllShapesWithSheetsChart": { + "description": "Replaces all shapes matching some criteria with a Google Sheets chart.", + "$ref": "ReplaceAllShapesWithSheetsChartRequest" + }, + "createSheetsChart": { + "$ref": "CreateSheetsChartRequest", + "description": "Creates an embedded Google Sheets chart." + }, + "unmergeTableCells": { + "description": "Unmerges cells in a Table.", + "$ref": "UnmergeTableCellsRequest" + }, + "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": { + "description": "Updates the properties of an Image.", + "$ref": "UpdateImagePropertiesRequest" + }, + "createSlide": { + "description": "Creates a new slide.", + "$ref": "CreateSlideRequest" + }, + "insertTableRows": { + "description": "Inserts rows into a table.", + "$ref": "InsertTableRowsRequest" + }, + "updateLineProperties": { + "description": "Updates the properties of a Line.", + "$ref": "UpdateLinePropertiesRequest" + }, + "replaceImage": { + "description": "Replaces an existing image with a new image.", + "$ref": "ReplaceImageRequest" + }, + "updateSlidesPosition": { + "$ref": "UpdateSlidesPositionRequest", + "description": "Updates the position of a set of slides in the presentation." + }, + "deleteTableRow": { + "$ref": "DeleteTableRowRequest", + "description": "Deletes a row from a table." + }, + "updateShapeProperties": { + "description": "Updates the properties of a Shape.", + "$ref": "UpdateShapePropertiesRequest" + }, + "groupObjects": { + "description": "Groups objects, such as page elements.", + "$ref": "GroupObjectsRequest" + }, + "ungroupObjects": { + "$ref": "UngroupObjectsRequest", + "description": "Ungroups objects, such as groups." + }, + "insertText": { + "$ref": "InsertTextRequest", + "description": "Inserts text into a shape or table cell." + }, + "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": { + "$ref": "UpdatePagePropertiesRequest", + "description": "Updates the properties of a Page." + }, + "createShape": { + "$ref": "CreateShapeRequest", + "description": "Creates a new shape." + }, + "deleteParagraphBullets": { + "$ref": "DeleteParagraphBulletsRequest", + "description": "Deletes bullets from paragraphs." + }, + "updateTableBorderProperties": { + "$ref": "UpdateTableBorderPropertiesRequest", + "description": "Updates the properties of the table borders in a Table." + }, + "updatePageElementAltText": { + "description": "Updates the alt text title and/or description of a\npage element.", + "$ref": "UpdatePageElementAltTextRequest" + }, + "insertTableColumns": { + "$ref": "InsertTableColumnsRequest", + "description": "Inserts columns into a table." + }, + "mergeTableCells": { + "description": "Merges cells in a Table.", + "$ref": "MergeTableCellsRequest" + }, + "refreshSheetsChart": { + "description": "Refreshes a Google Sheets chart.", + "$ref": "RefreshSheetsChartRequest" + }, + "createTable": { + "$ref": "CreateTableRequest", + "description": "Creates a new table." + }, + "updateTableCellProperties": { + "$ref": "UpdateTableCellPropertiesRequest", + "description": "Updates the properties of a TableCell." + }, + "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." } }, - "id": "CreateVideoRequest" + "id": "Request", + "description": "A single kind of update to apply to a presentation.", + "type": "object" }, - "DuplicateObjectResponse": { - "description": "The response of duplicating an object.", - "type": "object", + "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 ID of the new duplicate object.", + "description": "The object ID of the image the updates are applied to.", "type": "string" } }, - "id": "DuplicateObjectResponse" + "id": "UpdateImagePropertiesRequest", + "description": "Update the properties of an Image.", + "type": "object" }, - "ReplaceAllShapesWithImageRequest": { - "description": "Replaces all shapes that match the given criteria with the provided image.\n\nThe images replacing the shapes are rectangular after being inserted into\nthe presentation and do not take on the forms of the shapes.", - "type": "object", + "ParagraphStyle": { "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 one of PNG, JPEG, or GIF\nformat.\n\nThe provided URL can be at most 2 kB in length. The URL itself is saved\nwith the image, and exposed via the Image.source_url field.", - "type": "string" + "spaceBelow": { + "description": "The amount of extra space above the paragraph. If unset, the value is\ninherited from the parent.", + "$ref": "Dimension" }, - "replaceMethod": { + "direction": { "enum": [ - "CENTER_INSIDE", - "CENTER_CROP" + "TEXT_DIRECTION_UNSPECIFIED", + "LEFT_TO_RIGHT", + "RIGHT_TO_LEFT" ], - "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.", + "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": [ - "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." + "The text direction is inherited from the parent.", + "The text goes from left to right.", + "The text goes from right to left." ] }, - "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" - } + "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." }, - "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.", - "type": "string", + "spacingMode": { "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." + "The spacing mode is inherited from the parent.", + "Paragraph spacing is always rendered.", + "Paragraph spacing is skipped between list elements." ], "enum": [ - "IMAGE_REPLACE_METHOD_UNSPECIFIED", - "CENTER_INSIDE", - "CENTER_CROP" - ] - } - }, - "id": "ReplaceAllShapesWithImageRequest" - }, - "MergeTableCellsRequest": { - "description": "Merges 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 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." + "SPACING_MODE_UNSPECIFIED", + "NEVER_COLLAPSE", + "COLLAPSE_LISTS" + ], + "description": "The spacing mode for the paragraph.", + "type": "string" + }, + "indentStart": { + "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.", + "$ref": "Dimension" + }, + "spaceAbove": { + "$ref": "Dimension", + "description": "The amount of extra space above the paragraph. If unset, the value is\ninherited from the parent." + }, + "indentFirstLine": { + "description": "The amount of indentation for the start of the first line of the paragraph.\nIf unset, the value is inherited from the parent.", + "$ref": "Dimension" + }, + "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" } }, - "id": "MergeTableCellsRequest" + "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" }, - "UngroupObjectsRequest": { - "description": "Ungroups objects, such as groups.", + "UpdateTableRowPropertiesRequest": { + "description": "Updates the properties of a Table row.", "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.", + "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": { - "type": "string" + "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": { + "description": "The table row properties to update.", + "$ref": "TableRowProperties" + }, + "objectId": { + "description": "The object ID of the table.", + "type": "string" } }, - "id": "UngroupObjectsRequest" + "id": "UpdateTableRowPropertiesRequest" }, - "Shadow": { + "ReplaceAllShapesWithSheetsChartResponse": { + "description": "The result of replacing shapes with a Google Sheets chart.", "type": "object", "properties": { - "blurRadius": { - "description": "The radius of the shadow blur. The larger the radius, the more diffuse the\nshadow becomes.", - "$ref": "Dimension" - }, - "type": { + "occurrencesChanged": { + "description": "The number of shapes replaced with charts.", + "format": "int32", + "type": "integer" + } + }, + "id": "ReplaceAllShapesWithSheetsChartResponse" + }, + "TableCellProperties": { + "properties": { + "contentAlignment": { "enumDescriptions": [ - "Unspecified shadow type.", - "Outer shadow." + "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'." ], "enum": [ - "SHADOW_TYPE_UNSPECIFIED", - "OUTER" + "CONTENT_ALIGNMENT_UNSPECIFIED", + "CONTENT_ALIGNMENT_UNSUPPORTED", + "TOP", + "MIDDLE", + "BOTTOM" ], - "description": "The type of the shadow.", + "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" }, - "transform": { - "$ref": "AffineTransform", - "description": "Transform that encodes the translate, scale, and skew of the shadow,\nrelative to the alignment position." + "tableCellBackgroundFill": { + "description": "The background fill of the table cell. The default fill matches the fill\nfor newly created table cells in the Slides editor.", + "$ref": "TableCellBackgroundFill" + } + }, + "id": "TableCellProperties", + "description": "The properties of the TableCell.", + "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.", + "type": "object", + "properties": { + "objectId": { + "description": "The object ID of the chart to refresh.", + "type": "string" + } + }, + "id": "RefreshSheetsChartRequest" + }, + "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": { + "outlineFill": { + "description": "The fill of the outline.", + "$ref": "OutlineFill" }, - "alignment": { - "description": "The alignment point of the shadow, that sets the origin for translate,\nscale and skew of the shadow.", - "type": "string", + "weight": { + "description": "The thickness of the outline.", + "$ref": "Dimension" + }, + "dashStyle": { "enumDescriptions": [ - "Unspecified.", - "Top left.", - "Top center.", - "Top right.", - "Left center.", - "Center.", - "Right center.", - "Bottom left.", - "Bottom center.", - "Bottom right." + "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": [ - "RECTANGLE_POSITION_UNSPECIFIED", - "TOP_LEFT", - "TOP_CENTER", - "TOP_RIGHT", - "LEFT_CENTER", - "CENTER", - "RIGHT_CENTER", - "BOTTOM_LEFT", - "BOTTOM_CENTER", - "BOTTOM_RIGHT" - ] - }, - "alpha": { - "type": "number", - "description": "The alpha of the shadow's color, from 0.0 to 1.0.", - "format": "float" - }, - "color": { - "description": "The shadow color value.", - "$ref": "OpaqueColor" - }, - "rotateWithShape": { - "type": "boolean", - "description": "Whether the shadow should rotate with the shape." + "DASH_STYLE_UNSPECIFIED", + "SOLID", + "DOT", + "DASH", + "DASH_DOT", + "LONG_DASH", + "LONG_DASH_DOT" + ], + "description": "The dash style of the outline.", + "type": "string" }, "propertyState": { "enumDescriptions": [ @@ -643,3741 +956,3428 @@ "NOT_RENDERED", "INHERIT" ], - "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.", + "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.", "type": "string" } }, - "id": "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." + "id": "Outline" }, - "DeleteTableRowRequest": { - "description": "Deletes a row from a table.", - "type": "object", + "NotesProperties": { "properties": { - "cellLocation": { - "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.", - "$ref": "TableCellLocation" - }, - "tableObjectId": { - "description": "The table to delete rows from.", + "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": "DeleteTableRowRequest" + "id": "NotesProperties", + "description": "The properties of Page that are only\nrelevant for pages with page_type NOTES.", + "type": "object" + }, + "TableColumnProperties": { + "properties": { + "columnWidth": { + "$ref": "Dimension", + "description": "Width of a column." + } + }, + "id": "TableColumnProperties", + "description": "Properties of each column in a table.", + "type": "object" }, - "Bullet": { - "description": "Describes the bullet of a paragraph.", + "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": { - "listId": { - "description": "The ID of the list this paragraph belongs to.", - "type": "string" + "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'." + ] }, - "glyph": { - "description": "The rendered bullet glyph for this paragraph.", - "type": "string" + "link": { + "description": "The hyperlink destination of the shape. If unset, there is no link. Links\nare not inherited from parent placeholders.", + "$ref": "Link" }, - "nestingLevel": { - "description": "The nesting level of this paragraph in the list.", - "format": "int32", - "type": "integer" + "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" }, - "bulletStyle": { - "$ref": "TextStyle", - "description": "The paragraph specific text style applied to this bullet." + "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.", + "$ref": "ShapeBackgroundFill" + }, + "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." } }, - "id": "Bullet" + "id": "ShapeProperties" }, - "OutlineFill": { - "id": "OutlineFill", - "description": "The fill of the outline.", + "TableRow": { + "description": "Properties and contents of each row in a table.", "type": "object", "properties": { - "solidFill": { - "$ref": "SolidFill", - "description": "Solid color fill." - } - } - }, - "TableCellLocation": { - "id": "TableCellLocation", - "description": "A location of a single table cell within a table.", + "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" + } + } + }, + "id": "TableRow" + }, + "UpdateTableCellPropertiesRequest": { + "description": "Update the properties of a TableCell.", "type": "object", "properties": { - "rowIndex": { - "description": "The 0-based row index.", - "format": "int32", - "type": "integer" + "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" }, - "columnIndex": { - "description": "The 0-based column index.", - "format": "int32", - "type": "integer" + "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." + }, + "tableCellProperties": { + "$ref": "TableCellProperties", + "description": "The table cell properties to update." } - } + }, + "id": "UpdateTableCellPropertiesRequest" }, - "CreateLineResponse": { - "description": "The result of creating a line.", + "ReplaceImageRequest": { + "description": "Replaces an existing image with a new image.\n\nReplacing an image removes some image effects from the existing image.", "type": "object", "properties": { - "objectId": { - "description": "The object ID of the created line.", + "imageObjectId": { + "description": "The ID of the existing image that will be replaced.", + "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. The URL itself is saved\nwith the image, and exposed via the Image.source_url field.", + "type": "string" + }, + "imageReplaceMethod": { + "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." + ], + "enum": [ + "IMAGE_REPLACE_METHOD_UNSPECIFIED", + "CENTER_INSIDE", + "CENTER_CROP" + ], + "description": "The replacement method.", "type": "string" } }, - "id": "CreateLineResponse" + "id": "ReplaceImageRequest" }, - "ReplaceAllTextResponse": { - "description": "The result of replacing text.", + "CreateSlideRequest": { + "description": "Creates a new slide.", "type": "object", "properties": { - "occurrencesChanged": { - "description": "The number of occurrences changed by replacing all text.", + "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" + }, + "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.", + "type": "string" } }, - "id": "ReplaceAllTextResponse" + "id": "CreateSlideRequest" }, - "TableBorderFill": { + "TableRowProperties": { "properties": { - "solidFill": { - "$ref": "SolidFill", - "description": "Solid fill." + "minRowHeight": { + "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).", + "$ref": "Dimension" } }, - "id": "TableBorderFill", - "description": "The fill of the border.", + "id": "TableRowProperties", + "description": "Properties of each row in 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.", - "type": "object", + "BatchUpdatePresentationRequest": { + "properties": { + "writeControl": { + "description": "Provides control over how write requests are executed.", + "$ref": "WriteControl" + }, + "requests": { + "description": "A list of updates to apply to the presentation.", + "type": "array", + "items": { + "$ref": "Request" + } + } + }, + "id": "BatchUpdatePresentationRequest", + "description": "Request message for PresentationsService.BatchUpdatePresentation.", + "type": "object" + }, + "GroupObjectsResponse": { "properties": { "objectId": { - "description": "The object ID of the shape or table with the text to be styled.", + "description": "The object ID of the created group.", "type": "string" + } + }, + "id": "GroupObjectsResponse", + "description": "The result of grouping objects.", + "type": "object" + }, + "TableBorderProperties": { + "properties": { + "weight": { + "description": "The thickness of the border.", + "$ref": "Dimension" }, - "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" + "tableBorderFill": { + "description": "The fill of the table border.", + "$ref": "TableBorderFill" }, - "style": { - "description": "The paragraph's style.", - "$ref": "ParagraphStyle" + "dashStyle": { + "enum": [ + "DASH_STYLE_UNSPECIFIED", + "SOLID", + "DOT", + "DASH", + "DASH_DOT", + "LONG_DASH", + "LONG_DASH_DOT" + ], + "description": "The dash style of the border.", + "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": "TableBorderProperties", + "description": "The border styling properties of the\nTableBorderCell.", + "type": "object" + }, + "TableBorderCell": { + "description": "The properties of each border cell.", + "type": "object", + "properties": { + "tableBorderProperties": { + "$ref": "TableBorderProperties", + "description": "The border properties." }, - "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" + "location": { + "$ref": "TableCellLocation", + "description": "The location of the border within the border table." } }, - "id": "UpdateParagraphStyleRequest" + "id": "TableBorderCell" }, - "ColorScheme": { + "TextContent": { "properties": { - "colors": { - "description": "The ThemeColorType and corresponding concrete color pairs.", + "textElements": { + "description": "The text contents broken down into its component parts, including styling\ninformation. This property is read-only.", "type": "array", "items": { - "$ref": "ThemeColorPair" + "$ref": "TextElement" } + }, + "lists": { + "additionalProperties": { + "$ref": "List" + }, + "description": "The bulleted lists contained in this text, keyed by list ID.", + "type": "object" } }, - "id": "ColorScheme", - "description": "The palette of predefined colors for a page.", + "id": "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" }, - "Shape": { + "CreateSheetsChartResponse": { + "description": "The result of creating an embedded Google Sheets chart.", "type": "object", "properties": { - "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." - ], - "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 type of the shape.", - "type": "string" - }, - "text": { - "$ref": "TextContent", - "description": "The text content of the shape." - }, - "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.", - "$ref": "Placeholder" - }, - "shapeProperties": { - "$ref": "ShapeProperties", - "description": "The properties of the shape." - } - }, - "id": "Shape", - "description": "A PageElement kind representing a\ngeneric shape that does not have a more specific classification." - }, - "Image": { - "description": "A PageElement kind representing an\nimage.", - "type": "object", - "properties": { - "sourceUrl": { - "description": "The source URL is the URL used to insert the image. The source URL can be\nempty.", - "type": "string" - }, - "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": { - "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.", - "type": "object", - "properties": { - "unit": { - "description": "The units for translate elements.", - "type": "string", - "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" - ] - }, - "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" - } - }, - "id": "AffineTransform" - }, - "InsertTextRequest": { - "description": "Inserts text into a shape or a table cell.", - "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" - }, - "AutoText": { - "properties": { - "style": { - "$ref": "TextStyle", - "description": "The styling applied to this auto text." - }, - "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" - } - }, - "id": "AutoText", - "description": "A TextElement kind that represents auto text.", - "type": "object" - }, - "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": { - "description": "The input transform matrix used to update the page element.", - "$ref": "AffineTransform" - }, - "applyMode": { - "enum": [ - "APPLY_MODE_UNSPECIFIED", - "RELATIVE", - "ABSOLUTE" - ], - "description": "The apply mode of the transform update.", - "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." - ] - } - }, - "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" - }, - "Dimension": { - "description": "A magnitude in a single direction in the specified units.", - "type": "object", - "properties": { - "magnitude": { - "description": "The magnitude.", - "format": "double", - "type": "number" - }, - "unit": { - "description": "The units for magnitude.", - "type": "string", - "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" - ] - } - }, - "id": "Dimension" - }, - "TextElement": { - "description": "A TextElement describes the content of a range of indices in the text content\nof a Shape or TableCell.", - "type": "object", - "properties": { - "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" - }, - "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.", - "$ref": "TextRun" - }, - "autoText": { - "$ref": "AutoText", - "description": "A TextElement representing a spot in the text that is dynamically\nreplaced with content that can change over time." - } - }, - "id": "TextElement" - }, - "LineFill": { - "description": "The fill of the line.", - "type": "object", - "properties": { - "solidFill": { - "description": "Solid color fill.", - "$ref": "SolidFill" - } - }, - "id": "LineFill" - }, - "VideoProperties": { - "description": "The properties of the Video.", - "type": "object", - "properties": { - "outline": { - "$ref": "Outline", - "description": "The outline of the video. The default outline matches the defaults for new\nvideos created in the Slides editor." - }, - "mute": { - "description": "Whether to mute the audio during video playback. Defaults to false.", - "type": "boolean" - }, - "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" - }, - "autoPlay": { - "description": "Whether to enable video autoplay when the page is displayed in present\nmode. Defaults to false.", - "type": "boolean" - }, - "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" - } - }, - "id": "VideoProperties" - }, - "InsertTableRowsRequest": { - "type": "object", - "properties": { - "tableObjectId": { - "description": "The table to insert rows into.", - "type": "string" - }, - "insertBelow": { - "type": "boolean", - "description": "Whether to insert new rows below the reference cell location.\n\n- `True`: insert below the cell.\n- `False`: insert above the cell." - }, - "number": { - "type": "integer", - "description": "The number of rows to be inserted. Maximum 20 per request.", - "format": "int32" - }, - "cellLocation": { - "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.", - "$ref": "TableCellLocation" - } - }, - "id": "InsertTableRowsRequest", - "description": "Inserts rows into a table." - }, - "LayoutProperties": { - "properties": { - "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" - }, - "displayName": { - "type": "string", - "description": "The human-readable name of the layout." - } - }, - "id": "LayoutProperties", - "description": "The properties of Page are only\nrelevant for pages with page_type LAYOUT.", - "type": "object" - }, - "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": { - "type": "string", - "description": "The title of the presentation." - }, - "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.", + "objectId": { + "description": "The object ID of the created chart.", "type": "string" - }, - "pageSize": { - "description": "The size of pages in the presentation.", - "$ref": "Size" } }, - "id": "Presentation" + "id": "CreateSheetsChartResponse" }, - "LineProperties": { - "id": "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.", + "WriteControl": { + "description": "Provides control over how write requests are executed.", "type": "object", "properties": { - "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 line.", - "type": "string" - }, - "link": { - "description": "The hyperlink destination of the line. If unset, there is no link.", - "$ref": "Link" - }, - "startArrow": { - "enum": [ - "ARROW_STYLE_UNSPECIFIED", - "NONE", - "STEALTH_ARROW", - "FILL_ARROW", - "FILL_CIRCLE", - "FILL_SQUARE", - "FILL_DIAMOND", - "OPEN_ARROW", - "OPEN_CIRCLE", - "OPEN_SQUARE", - "OPEN_DIAMOND" - ], - "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": { - "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." - ], - "enum": [ - "ARROW_STYLE_UNSPECIFIED", - "NONE", - "STEALTH_ARROW", - "FILL_ARROW", - "FILL_CIRCLE", - "FILL_SQUARE", - "FILL_DIAMOND", - "OPEN_ARROW", - "OPEN_CIRCLE", - "OPEN_SQUARE", - "OPEN_DIAMOND" - ], - "description": "The style of the arrow at the end of the line.", + "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" - }, - "weight": { - "$ref": "Dimension", - "description": "The thickness of the line." - }, - "lineFill": { - "description": "The fill of the line. The default line fill matches the defaults for new\nlines created in the Slides editor.", - "$ref": "LineFill" } - } + }, + "id": "WriteControl" }, - "OpaqueColor": { - "description": "A themeable solid color value.", - "type": "object", + "DeleteParagraphBulletsRequest": { "properties": { - "themeColor": { - "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." - ], - "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.", + "objectId": { + "description": "The object ID of the shape or table containing the text to delete bullets\nfrom.", "type": "string" }, - "rgbColor": { - "$ref": "RgbColor", - "description": "An opaque RGB color." + "textRange": { + "description": "The range of text to delete bullets from, based on TextElement indexes.", + "$ref": "Range" + }, + "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." } }, - "id": "OpaqueColor" + "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" }, - "ImageProperties": { - "description": "The properties of the Image.", - "type": "object", + "ParagraphMarker": { "properties": { - "shadow": { - "$ref": "Shadow", - "description": "The shadow of the image. If not set, the image has no shadow. This property\nis read-only." - }, - "link": { - "$ref": "Link", - "description": "The hyperlink destination of the image. If unset, there is no link." - }, - "contrast": { - "type": "number", - "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" - }, - "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." - }, - "outline": { - "$ref": "Outline", - "description": "The outline of the image. If not set, the image has no outline." - }, - "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" + "bullet": { + "description": "The bullet for this paragraph. If not present, the paragraph does not\nbelong to a list.", + "$ref": "Bullet" }, - "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" + "style": { + "$ref": "ParagraphStyle", + "description": "The paragraph's style" } }, - "id": "ImageProperties" + "id": "ParagraphMarker", + "description": "A TextElement kind that represents the beginning of a new paragraph.", + "type": "object" }, - "ReplaceAllShapesWithImageResponse": { - "description": "The result of replacing shapes with an image.", + "Thumbnail": { + "description": "The thumbnail of a page.", "type": "object", "properties": { - "occurrencesChanged": { - "type": "integer", - "description": "The number of shapes replaced with images.", - "format": "int32" + "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" + }, + "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" } }, - "id": "ReplaceAllShapesWithImageResponse" + "id": "Thumbnail" }, - "Line": { - "description": "A PageElement kind representing a\nnon-connector line, straight connector, curved connector, or bent connector.", - "type": "object", + "InsertTableColumnsRequest": { "properties": { - "lineType": { - "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'.", - "Straight line. Corresponds to ECMA-376 ST_ShapeType 'line'. This line\ntype is not a connector." - ], - "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", - "STRAIGHT_LINE" - ], - "description": "The type of the line.", - "type": "string" + "number": { + "description": "The number of columns to be inserted. Maximum 20 per request.", + "format": "int32", + "type": "integer" }, - "lineProperties": { - "$ref": "LineProperties", - "description": "The properties of the line." + "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": { + "description": "The table to insert columns into.", + "type": "string" } }, - "id": "Line" + "id": "InsertTableColumnsRequest", + "description": "Inserts columns into a table.\n\nOther columns in the table will be resized to fit the new column.", + "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, drive.file, or drive OAuth scopes.", + "LayoutPlaceholderIdMapping": { + "description": "The user-specified ID mapping for a placeholder that will be created on a\nslide from a specified layout.", "type": "object", "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" + "layoutPlaceholder": { + "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.", + "$ref": "Placeholder" }, - "elementProperties": { - "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.", - "$ref": "PageElementProperties" + "layoutPlaceholderObjectId": { + "description": "The object ID of the placeholder on a layout that will be applied\nto a slide.", + "type": "string" }, - "spreadsheetId": { - "description": "The ID of the Google Sheets spreadsheet that contains the chart.", + "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" + }, + "UpdateTableBorderPropertiesRequest": { + "description": "Updates the properties of the table borders in a Table.", + "type": "object", + "properties": { + "tableBorderProperties": { + "description": "The table border properties to update.", + "$ref": "TableBorderProperties" }, - "linkingMode": { + "borderPosition": { "enum": [ - "NOT_LINKED_IMAGE", - "LINKED" + "ALL", + "BOTTOM", + "INNER", + "INNER_HORIZONTAL", + "INNER_VERTICAL", + "LEFT", + "OUTER", + "RIGHT", + "TOP" ], - "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.", + "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", "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." + "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." ] }, - "chartId": { - "description": "The ID of the specific chart in the Google Sheets spreadsheet.", - "format": "int32", - "type": "integer" - } - }, - "id": "CreateSheetsChartRequest" - }, - "BatchUpdatePresentationResponse": { - "description": "Response message from a batch update.", - "type": "object", - "properties": { - "writeControl": { - "$ref": "WriteControl", - "description": "The updated write control after applying the request." + "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" }, - "presentationId": { - "description": "The presentation the updates were applied to.", + "objectId": { + "description": "The object ID of the table.", "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" - } + "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.", + "$ref": "TableRange" } }, - "id": "BatchUpdatePresentationResponse" + "id": "UpdateTableBorderPropertiesRequest" }, - "CreateImageResponse": { - "description": "The result of creating an image.", + "UpdateShapePropertiesRequest": { + "description": "Update the properties of a Shape.", "type": "object", "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 created image.", + "description": "The object ID of the shape the updates are applied to.", "type": "string" + }, + "shapeProperties": { + "description": "The shape properties to update.", + "$ref": "ShapeProperties" } }, - "id": "CreateImageResponse" + "id": "UpdateShapePropertiesRequest" }, - "SlideProperties": { - "id": "SlideProperties", - "description": "The properties of Page that are only\nrelevant for pages with page_type SLIDE.", - "type": "object", + "UpdateTableColumnPropertiesRequest": { "properties": { - "notesPage": { - "$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." + "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", + "items": { + "format": "int32", + "type": "integer" + } }, - "layoutObjectId": { - "description": "The object ID of the layout that this slide is based on.", + "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.", + "$ref": "TableColumnProperties" + }, + "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" }, - "masterObjectId": { - "description": "The object ID of the master that this slide is based on.", + "objectId": { + "description": "The object ID of the table.", "type": "string" } - } + }, + "id": "UpdateTableColumnPropertiesRequest", + "description": "Updates the properties of a Table column.", + "type": "object" }, - "MasterProperties": { - "description": "The properties of Page that are only\nrelevant for pages with page_type MASTER.", - "type": "object", + "WordArt": { "properties": { - "displayName": { - "description": "The human-readable name of the master.", + "renderedText": { + "description": "The text rendered as word art.", "type": "string" } }, - "id": "MasterProperties" + "id": "WordArt", + "description": "A PageElement kind representing\nword art.", + "type": "object" }, - "Response": { + "Recolor": { + "description": "A recolor effect applied on an image.", "type": "object", "properties": { - "replaceAllText": { - "$ref": "ReplaceAllTextResponse", - "description": "The result of replacing text." - }, - "createSlide": { - "$ref": "CreateSlideResponse", - "description": "The result of creating a slide." - }, - "duplicateObject": { - "description": "The result of duplicating an object.", - "$ref": "DuplicateObjectResponse" - }, - "createLine": { - "$ref": "CreateLineResponse", - "description": "The result of creating a line." - }, - "createImage": { - "description": "The result of creating an image.", - "$ref": "CreateImageResponse" - }, - "createVideo": { - "description": "The result of creating a video.", - "$ref": "CreateVideoResponse" - }, - "createSheetsChart": { - "description": "The result of creating a Google Sheets chart.", - "$ref": "CreateSheetsChartResponse" - }, - "replaceAllShapesWithSheetsChart": { - "description": "The result of replacing all shapes matching some criteria with a Google\nSheets chart.", - "$ref": "ReplaceAllShapesWithSheetsChartResponse" - }, - "groupObjects": { - "$ref": "GroupObjectsResponse", - "description": "The result of grouping objects." - }, - "createShape": { - "$ref": "CreateShapeResponse", - "description": "The result of creating a shape." - }, - "replaceAllShapesWithImage": { - "description": "The result of replacing all shapes matching some criteria with an\nimage.", - "$ref": "ReplaceAllShapesWithImageResponse" + "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" + } }, - "createTable": { - "description": "The result of creating a table.", - "$ref": "CreateTableResponse" + "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." + ], + "enum": [ + "NONE", + "LIGHT1", + "LIGHT2", + "LIGHT3", + "LIGHT4", + "LIGHT5", + "LIGHT6", + "LIGHT7", + "LIGHT8", + "LIGHT9", + "LIGHT10", + "DARK1", + "DARK2", + "DARK3", + "DARK4", + "DARK5", + "DARK6", + "DARK7", + "DARK8", + "DARK9", + "DARK10", + "GRAYSCALE", + "NEGATIVE", + "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.", + "type": "string" } }, - "id": "Response", - "description": "A single response from an update." + "id": "Recolor" }, - "SubstringMatchCriteria": { + "Link": { + "description": "A hypertext link.", "type": "object", "properties": { - "text": { - "description": "The text to search for in the shape or table.", + "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" }, - "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." - }, - "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": { - "predefinedLayout": { - "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." - ], + "url": { + "description": "If set, indicates this is a link to the external web page at this URL.", + "type": "string" + }, + "relativeLink": { "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" + "RELATIVE_SLIDE_LINK_UNSPECIFIED", + "NEXT_SLIDE", + "PREVIOUS_SLIDE", + "FIRST_SLIDE", + "LAST_SLIDE" ], - "description": "Predefined layout." + "description": "If set, indicates this is a link to a slide in this presentation,\naddressed by its position.", + "type": "string", + "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." + ] }, - "layoutId": { - "description": "Layout ID: the object ID of one of the layouts 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" } }, - "id": "LayoutReference" + "id": "Link" }, - "TextRun": { - "description": "A TextElement kind that represents a run of text that all has the same\nstyling.", - "type": "object", + "CreateShapeResponse": { "properties": { - "content": { - "description": "The text of this run.", + "objectId": { + "description": "The object ID of the created shape.", "type": "string" - }, - "style": { - "description": "The styling applied to this run.", - "$ref": "TextStyle" } }, - "id": "TextRun" + "id": "CreateShapeResponse", + "description": "The result of creating a shape.", + "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 ]", + "RgbColor": { + "description": "An RGB color.", "type": "object", "properties": { - "location": { - "$ref": "TableCellLocation", - "description": "The starting location of the table range." + "red": { + "description": "The red component of the color, from 0.0 to 1.0.", + "format": "float", + "type": "number" }, - "rowSpan": { - "description": "The row span of the table range.", - "format": "int32", - "type": "integer" + "green": { + "description": "The green component of the color, from 0.0 to 1.0.", + "format": "float", + "type": "number" }, - "columnSpan": { - "type": "integer", - "description": "The column span of the table range.", - "format": "int32" + "blue": { + "description": "The blue component of the color, from 0.0 to 1.0.", + "format": "float", + "type": "number" } }, - "id": "TableRange" + "id": "RgbColor" }, - "CreateTableRequest": { - "id": "CreateTableRequest", - "description": "Creates a new table.", + "CreateLineRequest": { + "description": "Creates a line.", "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" }, - "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." + "description": "The element properties for the line.", + "$ref": "PageElementProperties" }, - "rows": { - "description": "Number of rows in the table.", - "format": "int32", - "type": "integer" - } - } - }, - "CreateTableResponse": { - "type": "object", - "properties": { - "objectId": { - "type": "string", - "description": "The object ID of the created table." + "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": "CreateTableResponse", - "description": "The result of creating a table." + "id": "CreateLineRequest" }, - "GroupObjectsRequest": { + "CreateSlideResponse": { "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.", + "objectId": { + "description": "The object ID of the created slide.", "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.", + "id": "CreateSlideResponse", + "description": "The result of creating a slide.", "type": "object" }, - "Table": { - "description": "A PageElement kind representing a\ntable.", - "type": "object", + "CreateShapeRequest": { "properties": { - "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": { - "type": "array", - "items": { - "$ref": "TableBorderRow" - }, - "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." - }, - "rows": { - "type": "integer", - "description": "Number of rows in the table.", - "format": "int32" - }, - "tableColumns": { - "description": "Properties of each column.", - "type": "array", - "items": { - "$ref": "TableColumnProperties" - } - }, - "columns": { - "description": "Number of columns in the table.", - "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.\nIf empty, a unique identifier will be generated.", + "type": "string" }, - "tableRows": { - "type": "array", - "items": { - "$ref": "TableRow" - }, - "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." - } - }, - "id": "Table" - }, - "TableBorderRow": { - "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", - "description": "Contents of each border row in a table." - }, - "PageBackgroundFill": { - "description": "The page background fill.", - "type": "object", - "properties": { - "propertyState": { - "type": "string", + "shapeType": { "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." + "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." ], "enum": [ - "RENDERED", - "NOT_RENDERED", - "INHERIT" + "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 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." - }, - "stretchedPictureFill": { - "$ref": "StretchedPictureFill", - "description": "Stretched picture fill." + "description": "The shape type.", + "type": "string" }, - "solidFill": { - "$ref": "SolidFill", - "description": "Solid color fill." + "elementProperties": { + "$ref": "PageElementProperties", + "description": "The element properties for the shape." } }, - "id": "PageBackgroundFill" + "id": "CreateShapeRequest", + "description": "Creates a new shape.", + "type": "object" }, - "SheetsChart": { - "description": "A PageElement kind representing\na linked chart embedded from Google Sheets.", + "Video": { + "description": "A PageElement kind representing a\nvideo.", "type": "object", "properties": { - "sheetsChartProperties": { - "description": "The properties of the Sheets chart.", - "$ref": "SheetsChartProperties" + "source": { + "enum": [ + "SOURCE_UNSPECIFIED", + "YOUTUBE" + ], + "description": "The video source.", + "type": "string", + "enumDescriptions": [ + "The video source is unspecified.", + "The video source is YouTube." + ] }, - "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.", + "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" }, - "spreadsheetId": { - "description": "The ID of the Google Sheets spreadsheet that contains the source chart.", + "id": { + "description": "The video source's unique identifier for this video.", "type": "string" }, - "chartId": { - "description": "The ID of the specific chart in the Google Sheets spreadsheet that is\nembedded.", - "format": "int32", - "type": "integer" + "videoProperties": { + "$ref": "VideoProperties", + "description": "The properties of the video." } }, - "id": "SheetsChart" + "id": "Video" }, - "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", + "PageProperties": { "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.", - "format": "float", - "type": "number" + "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.", + "$ref": "PageBackgroundFill" }, - "color": { - "$ref": "OpaqueColor", - "description": "The color value of the solid fill." + "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.", + "$ref": "ColorScheme" } }, - "id": "SolidFill" + "id": "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" }, - "ThemeColorPair": { - "description": "A pair mapping a theme color type to the concrete color it represents.", + "NestingLevel": { + "description": "Contains properties describing the look and feel of a list bullet at a given\nlevel of nesting.", "type": "object", "properties": { - "type": { - "description": "The type of the 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." - ], - "enum": [ - "THEME_COLOR_TYPE_UNSPECIFIED", - "DARK1", - "LIGHT1", - "DARK2", - "LIGHT2", - "ACCENT1", - "ACCENT2", - "ACCENT3", - "ACCENT4", - "ACCENT5", - "ACCENT6", - "HYPERLINK", - "FOLLOWED_HYPERLINK", - "TEXT1", - "BACKGROUND1", - "TEXT2", - "BACKGROUND2" - ] - }, - "color": { - "$ref": "RgbColor", - "description": "The concrete color corresponding to the theme color type above." + "bulletStyle": { + "description": "The style of a bullet at this level of nesting.", + "$ref": "TextStyle" } }, - "id": "ThemeColorPair" + "id": "NestingLevel" }, - "OptionalColor": { - "type": "object", + "TableCell": { "properties": { - "opaqueColor": { - "$ref": "OpaqueColor", - "description": "If set, this will be used as an opaque color. If unset, this represents\na transparent color." + "columnSpan": { + "description": "Column span of the cell.", + "format": "int32", + "type": "integer" + }, + "text": { + "description": "The text content of the cell.", + "$ref": "TextContent" + }, + "tableCellProperties": { + "$ref": "TableCellProperties", + "description": "The properties of the table cell." + }, + "location": { + "description": "The location of the cell within the table.", + "$ref": "TableCellLocation" + }, + "rowSpan": { + "description": "Row span of the cell.", + "format": "int32", + "type": "integer" } }, - "id": "OptionalColor", - "description": "A color that can either be fully opaque or fully transparent." + "id": "TableCell", + "description": "Properties and contents of each table cell.", + "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", + "UpdateLinePropertiesRequest": { "properties": { - "transform": { - "$ref": "AffineTransform", - "description": "The transform for the element." + "lineProperties": { + "$ref": "LineProperties", + "description": "The line properties to update." }, - "pageObjectId": { - "description": "The object ID of the page where the element is located.", + "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" }, - "size": { - "description": "The size of the element.", - "$ref": "Size" + "objectId": { + "description": "The object ID of the line the update is applied to.", + "type": "string" } }, - "id": "PageElementProperties" + "id": "UpdateLinePropertiesRequest", + "description": "Updates the properties of a Line.", + "type": "object" }, - "SheetsChartProperties": { - "description": "The properties of the SheetsChart.", + "UpdatePageElementAltTextRequest": { + "description": "Updates the alt text title and/or description of a\npage element.", "type": "object", "properties": { - "chartImageProperties": { - "$ref": "ImageProperties", - "description": "The properties of the embedded chart image." + "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" } }, - "id": "SheetsChartProperties" + "id": "UpdatePageElementAltTextRequest" }, - "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.", + "UpdateSlidesPositionRequest": { + "description": "Updates the position of slides in the presentation.", "type": "object", "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" + "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" + } }, - "size": { - "$ref": "Size", - "description": "The original size of the picture fill. This field is read-only." + "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" } }, - "id": "StretchedPictureFill" + "id": "UpdateSlidesPositionRequest" }, - "UpdateTextStyleRequest": { + "TableCellBackgroundFill": { + "description": "The table cell background fill.", "type": "object", "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": { - "$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." + "propertyState": { + "enum": [ + "RENDERED", + "NOT_RENDERED", + "INHERIT" + ], + "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." + ] }, + "solidFill": { + "$ref": "SolidFill", + "description": "Solid color fill." + } + }, + "id": "TableCellBackgroundFill" + }, + "UpdatePagePropertiesRequest": { + "properties": { "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.", + "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" }, "objectId": { - "description": "The object ID of the shape or table with the text to be styled.", + "description": "The object ID of the page the update is applied to.", "type": "string" }, - "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." + "pageProperties": { + "description": "The page properties to update.", + "$ref": "PageProperties" + } + }, + "id": "UpdatePagePropertiesRequest", + "description": "Updates the properties of a Page.", + "type": "object" + }, + "Group": { + "description": "A PageElement kind representing a\njoined collection of PageElements.", + "type": "object", + "properties": { + "children": { + "description": "The collection of elements in the group. The minimum size of a group is 2.", + "type": "array", + "items": { + "$ref": "PageElement" + } } }, - "id": "UpdateTextStyleRequest", - "description": "Update the styling of text in a Shape or\nTable." + "id": "Group" }, - "DeleteTableColumnRequest": { - "description": "Deletes a column from a table.", - "type": "object", + "Placeholder": { "properties": { - "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" - }, - "tableObjectId": { - "description": "The table to delete columns from.", + "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": { + "enum": [ + "NONE", + "BODY", + "CHART", + "CLIP_ART", + "CENTERED_TITLE", + "DIAGRAM", + "DATE_AND_TIME", + "FOOTER", + "HEADER", + "MEDIA", + "OBJECT", + "PICTURE", + "SLIDE_NUMBER", + "SUBTITLE", + "TABLE", + "TITLE", + "SLIDE_IMAGE" + ], + "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." + ] } }, - "id": "DeleteTableColumnRequest" + "id": "Placeholder", + "description": "The placeholder information that uniquely identifies a placeholder shape.", + "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.", + "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.", "type": "object", "properties": { - "nestingLevel": { + "objectIds": { "additionalProperties": { - "$ref": "NestingLevel" + "type": "string" }, - "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.", + "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" }, - "listId": { - "description": "The ID of the list.", + "objectId": { + "description": "The ID of the object to duplicate.", "type": "string" } }, - "id": "List" + "id": "DuplicateObjectRequest" }, - "WeightedFontFamily": { - "description": "Represents a font family and weight used to style a TextRun.", - "type": "object", + "ReplaceAllTextRequest": { "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`.", + "replaceText": { + "description": "The text that will replace the matched text.", "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" + "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": { + "description": "Finds text in a shape matching this substring.", + "$ref": "SubstringMatchCriteria" } }, - "id": "WeightedFontFamily" + "id": "ReplaceAllTextRequest", + "description": "Replaces all instances of text matching a criteria with replace text.", + "type": "object" }, - "PageElement": { - "description": "A visual element rendered on a page.", - "type": "object", + "Page": { "properties": { - "size": { - "$ref": "Size", - "description": "The size of the page element." - }, - "sheetsChart": { - "$ref": "SheetsChart", - "description": "A linked chart embedded from Google Sheets. Unlinked charts are\nrepresented as images." + "masterProperties": { + "description": "Master specific properties. Only set if page_type = MASTER.", + "$ref": "MasterProperties" }, - "title": { - "description": "The title of the page element. Combined with description to display alt\ntext.", + "objectId": { + "description": "The object ID for this page. Object IDs used by\nPage and\nPageElement share the same namespace.", "type": "string" }, - "video": { - "description": "A video page element.", - "$ref": "Video" - }, - "wordArt": { - "description": "A word art page element.", - "$ref": "WordArt" - }, - "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.", + "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" }, - "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" + "layoutProperties": { + "description": "Layout specific properties. Only set if page_type = LAYOUT.", + "$ref": "LayoutProperties" }, - "shape": { - "description": "A generic shape.", - "$ref": "Shape" + "notesProperties": { + "description": "Notes specific properties. Only set if page_type = NOTES.", + "$ref": "NotesProperties" }, - "line": { - "$ref": "Line", - "description": "A line page element." + "pageType": { + "enumDescriptions": [ + "A slide page.", + "A master slide page.", + "A layout page.", + "A notes page.", + "A notes master page." + ], + "enum": [ + "SLIDE", + "MASTER", + "LAYOUT", + "NOTES", + "NOTES_MASTER" + ], + "description": "The type of the page.", + "type": "string" }, - "description": { - "type": "string", - "description": "The description of the page element. Combined with title to display alt\ntext." + "pageElements": { + "description": "The page elements rendered on the page.", + "type": "array", + "items": { + "$ref": "PageElement" + } }, - "elementGroup": { - "$ref": "Group", - "description": "A collection of page elements joined as a single unit." + "slideProperties": { + "description": "Slide specific properties. Only set if page_type = SLIDE.", + "$ref": "SlideProperties" }, - "image": { - "description": "An image page element.", - "$ref": "Image" + "pageProperties": { + "description": "The properties of the page.", + "$ref": "PageProperties" } }, - "id": "PageElement" + "id": "Page", + "description": "A page in a presentation.", + "type": "object" }, - "CreateImageRequest": { - "description": "Creates an image.", - "type": "object", + "UnmergeTableCellsRequest": { "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.", + "description": "The object ID of the table.", "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 one of PNG, JPEG, or GIF\nformat.\n\nThe provided URL can be at most 2 kB in length. The URL itself is saved\nwith the image, and exposed via the Image.source_url field.", - "type": "string" + "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.", + "$ref": "TableRange" } }, - "id": "CreateImageRequest" + "id": "UnmergeTableCellsRequest", + "description": "Unmerges cells in a Table.", + "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.", + "ShapeBackgroundFill": { + "description": "The shape background fill.", "type": "object", "properties": { - "objectId": { - "description": "The object ID of the shape or table containing the text to add bullets to.", - "type": "string" - }, - "textRange": { - "description": "The range of text to apply the bullet presets to, based on TextElement indexes.", - "$ref": "Range" + "solidFill": { + "$ref": "SolidFill", + "description": "Solid color fill." }, - "bulletPreset": { - "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" - ], - "description": "The kinds of bullet glyphs to be used. Defaults to the\n`BULLET_DISC_CIRCLE_SQUARE` preset.", - "type": "string", + "propertyState": { "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." - ] - }, - "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" + "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 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" } }, - "id": "CreateParagraphBulletsRequest" + "id": "ShapeBackgroundFill" }, - "Size": { + "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": { - "width": { - "$ref": "Dimension", - "description": "The width of the object." + "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" }, - "height": { - "$ref": "Dimension", - "description": "The height of the object." + "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" + }, + "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" } }, - "id": "Size", - "description": "A width and height." + "id": "CropProperties" }, - "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.", + "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": { - "fontSize": { - "$ref": "Dimension", - "description": "The size of the text's font. When read, the `font_size` will specified in\npoints." + "spreadsheetId": { + "description": "The ID of the Google Sheets spreadsheet that contains the chart.", + "type": "string" }, - "baselineOffset": { - "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)." - ], + "linkingMode": { "enum": [ - "BASELINE_OFFSET_UNSPECIFIED", - "NONE", - "SUPERSCRIPT", - "SUBSCRIPT" + "NOT_LINKED_IMAGE", + "LINKED" ], - "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" - }, - "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.", - "$ref": "WeightedFontFamily" - }, - "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": { - "type": "boolean", - "description": "Whether or not the text is underlined." - }, - "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." - }, - "foregroundColor": { - "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.", - "$ref": "OptionalColor" - }, - "bold": { - "description": "Whether or not the text is rendered as bold.", - "type": "boolean" + "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." + ] }, - "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" + "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" }, - "strikethrough": { - "description": "Whether or not the text is struck through.", - "type": "boolean" + "chartId": { + "description": "The ID of the specific chart in the Google Sheets spreadsheet.", + "format": "int32", + "type": "integer" }, - "italic": { - "type": "boolean", - "description": "Whether or not the text is italicized." + "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": "TextStyle" + "id": "ReplaceAllShapesWithSheetsChartRequest" }, - "UpdateVideoPropertiesRequest": { - "description": "Update the properties of a Video.", - "type": "object", + "Range": { "properties": { - "objectId": { - "description": "The object ID of the video the updates are applied to.", + "type": { + "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" + ], + "description": "The type of range.", "type": "string" }, - "videoProperties": { - "$ref": "VideoProperties", - "description": "The video properties to update." + "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" }, - "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.", - "format": "google-fieldmask", - "type": "string" + "endIndex": { + "description": "The optional zero-based index of the end of the collection.\nRequired for `FIXED_RANGE` ranges.", + "format": "int32", + "type": "integer" } }, - "id": "UpdateVideoPropertiesRequest" + "id": "Range", + "description": "Specifies a contiguous range of an indexed collection, such as characters in\ntext.", + "type": "object" }, - "Request": { + "ColorStop": { + "description": "A color and position in a gradient band.", + "type": "object", "properties": { - "updateLineProperties": { - "$ref": "UpdateLinePropertiesRequest", - "description": "Updates the properties of a Line." - }, - "replaceImage": { - "$ref": "ReplaceImageRequest", - "description": "Replaces an existing image with a new image." - }, - "updateSlidesPosition": { - "description": "Updates the position of a set of slides in the presentation.", - "$ref": "UpdateSlidesPositionRequest" - }, - "deleteTableRow": { - "description": "Deletes a row from a table.", - "$ref": "DeleteTableRowRequest" - }, - "updateShapeProperties": { - "$ref": "UpdateShapePropertiesRequest", - "description": "Updates the properties of a Shape." - }, - "groupObjects": { - "description": "Groups objects, such as page elements.", - "$ref": "GroupObjectsRequest" - }, - "ungroupObjects": { - "$ref": "UngroupObjectsRequest", - "description": "Ungroups objects, such as groups." - }, - "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": { - "$ref": "UpdatePagePropertiesRequest", - "description": "Updates the properties of a Page." - }, - "deleteParagraphBullets": { - "$ref": "DeleteParagraphBulletsRequest", - "description": "Deletes bullets from paragraphs." - }, - "createShape": { - "description": "Creates a new shape.", - "$ref": "CreateShapeRequest" - }, - "updateTableBorderProperties": { - "$ref": "UpdateTableBorderPropertiesRequest", - "description": "Updates the properties of the table borders in a Table." - }, - "updatePageElementAltText": { - "description": "Updates the alt text title and/or description of a\npage element.", - "$ref": "UpdatePageElementAltTextRequest" - }, - "insertTableColumns": { - "$ref": "InsertTableColumnsRequest", - "description": "Inserts columns into a table." - }, - "mergeTableCells": { - "description": "Merges cells in a Table.", - "$ref": "MergeTableCellsRequest" - }, - "refreshSheetsChart": { - "description": "Refreshes a Google Sheets chart.", - "$ref": "RefreshSheetsChartRequest" - }, - "createTable": { - "$ref": "CreateTableRequest", - "description": "Creates a new table." - }, - "updateTableCellProperties": { - "description": "Updates the properties of a TableCell.", - "$ref": "UpdateTableCellPropertiesRequest" - }, - "deleteObject": { - "$ref": "DeleteObjectRequest", - "description": "Deletes a page or page element from the presentation." - }, - "updateParagraphStyle": { - "description": "Updates the styling of paragraphs within a Shape or Table.", - "$ref": "UpdateParagraphStyleRequest" - }, - "duplicateObject": { - "description": "Duplicates a slide or page element.", - "$ref": "DuplicateObjectRequest" - }, - "deleteTableColumn": { - "$ref": "DeleteTableColumnRequest", - "description": "Deletes a column from a table." - }, - "createLine": { - "description": "Creates a line.", - "$ref": "CreateLineRequest" - }, - "updateVideoProperties": { - "$ref": "UpdateVideoPropertiesRequest", - "description": "Updates the properties of a Video." - }, - "createImage": { - "$ref": "CreateImageRequest", - "description": "Creates an image." - }, - "createParagraphBullets": { - "$ref": "CreateParagraphBulletsRequest", - "description": "Creates bullets for paragraphs." - }, - "createVideo": { - "$ref": "CreateVideoRequest", - "description": "Creates a video." - }, - "replaceAllShapesWithSheetsChart": { - "$ref": "ReplaceAllShapesWithSheetsChartRequest", - "description": "Replaces all shapes matching some criteria with a Google Sheets chart." - }, - "createSheetsChart": { - "description": "Creates an embedded Google Sheets chart.", - "$ref": "CreateSheetsChartRequest" - }, - "unmergeTableCells": { - "$ref": "UnmergeTableCellsRequest", - "description": "Unmerges cells in a Table." - }, - "updatePageElementTransform": { - "$ref": "UpdatePageElementTransformRequest", - "description": "Updates the transform of a page element." - }, - "updateTextStyle": { - "description": "Updates the styling of text within a Shape or Table.", - "$ref": "UpdateTextStyleRequest" - }, - "updateTableRowProperties": { - "$ref": "UpdateTableRowPropertiesRequest", - "description": "Updates the properties of a Table row." + "alpha": { + "description": "The alpha value of this color in the gradient band. Defaults to 1.0,\nfully opaque.", + "format": "float", + "type": "number" }, - "replaceAllShapesWithImage": { - "$ref": "ReplaceAllShapesWithImageRequest", - "description": "Replaces all shapes matching some criteria with an image." + "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" }, - "replaceAllText": { - "$ref": "ReplaceAllTextRequest", - "description": "Replaces all instances of specified text." + "color": { + "description": "The color of the gradient stop.", + "$ref": "OpaqueColor" + } + }, + "id": "ColorStop" + }, + "CreateVideoRequest": { + "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" }, - "updateImageProperties": { - "$ref": "UpdateImagePropertiesRequest", - "description": "Updates the properties of an Image." + "source": { + "enumDescriptions": [ + "The video source is unspecified.", + "The video source is YouTube." + ], + "enum": [ + "SOURCE_UNSPECIFIED", + "YOUTUBE" + ], + "description": "The video source.", + "type": "string" }, - "insertTableRows": { - "description": "Inserts rows into a table.", - "$ref": "InsertTableRowsRequest" + "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." }, - "createSlide": { - "$ref": "CreateSlideRequest", - "description": "Creates a new slide." + "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": "Request", - "description": "A single kind of update to apply to a presentation.", + "id": "CreateVideoRequest", + "description": "Creates a video.", "type": "object" }, - "UpdateImagePropertiesRequest": { + "DuplicateObjectResponse": { + "description": "The response of duplicating an object.", "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" - }, - "imageProperties": { - "description": "The image properties to update.", - "$ref": "ImageProperties" - }, "objectId": { - "description": "The object ID of the image the updates are applied to.", + "description": "The ID of the new duplicate object.", "type": "string" } }, - "id": "UpdateImagePropertiesRequest", - "description": "Update the properties of an Image." + "id": "DuplicateObjectResponse" }, - "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.", + "ReplaceAllShapesWithImageRequest": { + "description": "Replaces all shapes that match the given criteria with the provided image.\n\nThe images replacing the shapes are rectangular after being inserted into\nthe presentation and do not take on the forms of the shapes.", "type": "object", "properties": { - "spaceBelow": { - "description": "The amount of extra space above the paragraph. If unset, the value is\ninherited from the parent.", - "$ref": "Dimension" + "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. The URL itself is saved\nwith the image, and exposed via the Image.source_url field.", + "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.", + "replaceMethod": { + "enum": [ + "CENTER_INSIDE", + "CENTER_CROP" + ], + "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.", "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" + "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." ] }, - "spacingMode": { + "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" + } + }, + "imageReplaceMethod": { + "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." + ], "enum": [ - "SPACING_MODE_UNSPECIFIED", - "NEVER_COLLAPSE", - "COLLAPSE_LISTS" + "IMAGE_REPLACE_METHOD_UNSPECIFIED", + "CENTER_INSIDE", + "CENTER_CROP" ], - "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." - ] + "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.", + "type": "string" + } + }, + "id": "ReplaceAllShapesWithImageRequest" + }, + "MergeTableCellsRequest": { + "properties": { + "objectId": { + "description": "The object ID of the table.", + "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." + "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", + "properties": { + "rotateWithShape": { + "description": "Whether the shadow should rotate with the shape.", + "type": "boolean" }, - "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." + "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 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" }, - "spaceAbove": { - "description": "The amount of extra space above the paragraph. If unset, the value is\ninherited from the parent.", + "blurRadius": { + "description": "The radius of the shadow blur. The larger the radius, the more diffuse the\nshadow becomes.", "$ref": "Dimension" }, - "alignment": { - "description": "The text alignment for this paragraph.", - "type": "string", + "transform": { + "$ref": "AffineTransform", + "description": "Transform that encodes the translate, scale, and skew of the shadow,\nrelative to the alignment position." + }, + "type": { "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." + "Unspecified shadow type.", + "Outer shadow." ], "enum": [ - "ALIGNMENT_UNSPECIFIED", - "START", + "SHADOW_TYPE_UNSPECIFIED", + "OUTER" + ], + "description": "The type of the shadow.", + "type": "string" + }, + "alignment": { + "enum": [ + "RECTANGLE_POSITION_UNSPECIFIED", + "TOP_LEFT", + "TOP_CENTER", + "TOP_RIGHT", + "LEFT_CENTER", "CENTER", - "END", - "JUSTIFIED" + "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.", + "type": "string", + "enumDescriptions": [ + "Unspecified.", + "Top left.", + "Top center.", + "Top right.", + "Left center.", + "Center.", + "Right center.", + "Bottom left.", + "Bottom center.", + "Bottom right." ] }, - "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.", + "alpha": { + "description": "The alpha of the shadow's color, from 0.0 to 1.0.", "format": "float", "type": "number" }, - "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." + "color": { + "$ref": "OpaqueColor", + "description": "The shadow color value." } }, - "id": "ParagraphStyle" + "id": "Shadow" }, - "UpdateTableRowPropertiesRequest": { - "description": "Updates the properties of a Table row.", + "DeleteTableRowRequest": { + "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.", + "type": "string" + } + }, + "id": "DeleteTableRowRequest", + "description": "Deletes a row from a table.", + "type": "object" + }, + "Bullet": { + "description": "Describes the bullet of a paragraph.", "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" - } + "nestingLevel": { + "description": "The nesting level of this paragraph in the list.", + "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" + "bulletStyle": { + "description": "The paragraph specific text style applied to this bullet.", + "$ref": "TextStyle" }, - "tableRowProperties": { - "$ref": "TableRowProperties", - "description": "The table row properties to update." + "listId": { + "description": "The ID of the list this paragraph belongs to.", + "type": "string" }, + "glyph": { + "description": "The rendered bullet glyph for this paragraph.", + "type": "string" + } + }, + "id": "Bullet" + }, + "OutlineFill": { + "properties": { + "solidFill": { + "description": "Solid color fill.", + "$ref": "SolidFill" + } + }, + "id": "OutlineFill", + "description": "The fill of the outline.", + "type": "object" + }, + "CreateLineResponse": { + "properties": { "objectId": { - "description": "The object ID of the table.", + "description": "The object ID of the created line.", "type": "string" } }, - "id": "UpdateTableRowPropertiesRequest" + "id": "CreateLineResponse", + "description": "The result of creating a line.", + "type": "object" }, - "ReplaceAllShapesWithSheetsChartResponse": { - "id": "ReplaceAllShapesWithSheetsChartResponse", - "description": "The result of replacing shapes with a Google Sheets chart.", + "TableCellLocation": { + "description": "A location of a single table cell within a table.", "type": "object", "properties": { - "occurrencesChanged": { - "description": "The number of shapes replaced with charts.", + "rowIndex": { + "description": "The 0-based row index.", + "format": "int32", + "type": "integer" + }, + "columnIndex": { + "description": "The 0-based column index.", "format": "int32", "type": "integer" } - } + }, + "id": "TableCellLocation" }, - "TableCellProperties": { - "description": "The properties of the TableCell.", + "ReplaceAllTextResponse": { + "description": "The result of replacing text.", "type": "object", "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" - ], - "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'." - ] + "occurrencesChanged": { + "description": "The number of occurrences changed by replacing all text.", + "format": "int32", + "type": "integer" } }, - "id": "TableCellProperties" + "id": "ReplaceAllTextResponse" }, - "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.", + "TableBorderFill": { + "properties": { + "solidFill": { + "description": "Solid fill.", + "$ref": "SolidFill" + } + }, + "id": "TableBorderFill", + "description": "The fill of the border.", + "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.", "type": "object", "properties": { - "dashStyle": { - "description": "The dash style of the outline.", - "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'." - ], - "enum": [ - "DASH_STYLE_UNSPECIFIED", - "SOLID", - "DOT", - "DASH", - "DASH_DOT", - "LONG_DASH", - "LONG_DASH_DOT" - ] + "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" }, - "propertyState": { - "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.", - "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." - ] + "objectId": { + "description": "The object ID of the shape or table with the text to be styled.", + "type": "string" }, - "outlineFill": { - "description": "The fill of the outline.", - "$ref": "OutlineFill" + "textRange": { + "$ref": "Range", + "description": "The range of text containing the paragraph(s) to style." }, - "weight": { - "description": "The thickness of the outline.", - "$ref": "Dimension" + "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": "Outline" + "id": "UpdateParagraphStyleRequest" }, - "RefreshSheetsChartRequest": { + "ColorScheme": { + "description": "The palette of predefined colors for a page.", + "type": "object", "properties": { - "objectId": { - "type": "string", - "description": "The object ID of the chart to refresh." + "colors": { + "description": "The ThemeColorType and corresponding concrete color pairs.", + "type": "array", + "items": { + "$ref": "ThemeColorPair" + } } }, - "id": "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" + "id": "ColorScheme" }, - "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.", + "Shape": { + "description": "A PageElement kind representing a\ngeneric shape that does not have a more specific classification.", "type": "object", "properties": { - "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.", - "type": "string", + "shapeProperties": { + "description": "The properties of the shape.", + "$ref": "ShapeProperties" + }, + "shapeType": { "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'." + "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." ], "enum": [ - "CONTENT_ALIGNMENT_UNSPECIFIED", - "CONTENT_ALIGNMENT_UNSUPPORTED", - "TOP", - "MIDDLE", - "BOTTOM" - ] - }, - "link": { - "$ref": "Link", - "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 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." - }, - "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": { - "$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." - } - }, - "id": "ShapeProperties" - }, - "TableColumnProperties": { - "description": "Properties of each column in a table.", - "type": "object", - "properties": { - "columnWidth": { - "$ref": "Dimension", - "description": "Width of a column." - } - }, - "id": "TableColumnProperties" - }, - "NotesProperties": { - "description": "The properties of Page that are only\nrelevant for pages with page_type NOTES.", - "type": "object", - "properties": { - "speakerNotesObjectId": { - "type": "string", - "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." - } - }, - "id": "NotesProperties" - }, - "TableRow": { - "properties": { - "tableRowProperties": { - "$ref": "TableRowProperties", - "description": "Properties of the row." - }, - "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" - } - } - }, - "id": "TableRow", - "description": "Properties and contents of each row in a table.", - "type": "object" - }, - "ReplaceImageRequest": { - "description": "Replaces an existing image with a new image.\n\nReplacing an image removes some image effects from the existing image.", - "type": "object", - "properties": { - "imageReplaceMethod": { - "description": "The replacement method.", - "type": "string", - "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_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" ], - "enum": [ - "IMAGE_REPLACE_METHOD_UNSPECIFIED", - "CENTER_INSIDE", - "CENTER_CROP" - ] - }, - "imageObjectId": { - "description": "The ID of the existing image that will be replaced.", - "type": "string" - }, - "url": { - "type": "string", - "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. The URL itself is saved\nwith the image, and exposed via the Image.source_url field." - } - }, - "id": "ReplaceImageRequest" - }, - "UpdateTableCellPropertiesRequest": { - "id": "UpdateTableCellPropertiesRequest", - "description": "Update the properties of a TableCell.", - "type": "object", - "properties": { - "objectId": { - "description": "The object ID of the table.", + "description": "The type of the shape.", "type": "string" }, - "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.", - "$ref": "TableRange" - }, - "tableCellProperties": { - "$ref": "TableCellProperties", - "description": "The table cell properties to update." - }, - "fields": { - "type": "string", - "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" - } - } - }, - "CreateSlideRequest": { - "properties": { - "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": { - "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." - }, - "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" - }, - "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" - } - } - }, - "id": "CreateSlideRequest", - "description": "Creates a new slide.", - "type": "object" - }, - "TableRowProperties": { - "description": "Properties of each row in a table.", - "type": "object", - "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)." - } - }, - "id": "TableRowProperties" - }, - "BatchUpdatePresentationRequest": { - "description": "Request message for PresentationsService.BatchUpdatePresentation.", - "type": "object", - "properties": { - "writeControl": { - "description": "Provides control over how write requests are executed.", - "$ref": "WriteControl" + "text": { + "$ref": "TextContent", + "description": "The text content of the shape." }, - "requests": { - "type": "array", - "items": { - "$ref": "Request" - }, - "description": "A list of updates to apply to the presentation." + "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." } }, - "id": "BatchUpdatePresentationRequest" + "id": "Shape" }, - "GroupObjectsResponse": { - "description": "The result of grouping objects.", - "type": "object", + "Image": { "properties": { - "objectId": { - "description": "The object ID of the created group.", + "sourceUrl": { + "description": "The source URL is the URL used to insert the image. The source URL can be\nempty.", "type": "string" - } - }, - "id": "GroupObjectsResponse" - }, - "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", - "properties": { - "textElements": { - "description": "The text contents broken down into its component parts, including styling\ninformation. This property is read-only.", - "type": "array", - "items": { - "$ref": "TextElement" - } }, - "lists": { - "additionalProperties": { - "$ref": "List" - }, - "description": "The bulleted lists contained in this text, keyed by list ID.", - "type": "object" - } - }, - "id": "TextContent" - }, - "TableBorderCell": { - "properties": { - "location": { - "$ref": "TableCellLocation", - "description": "The location of the border within the border table." + "imageProperties": { + "$ref": "ImageProperties", + "description": "The properties of the image." }, - "tableBorderProperties": { - "$ref": "TableBorderProperties", - "description": "The border 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" } }, - "id": "TableBorderCell", - "description": "The properties of each border cell.", + "id": "Image", + "description": "A PageElement kind representing an\nimage.", "type": "object" }, - "TableBorderProperties": { - "id": "TableBorderProperties", - "description": "The border styling properties of the\nTableBorderCell.", - "type": "object", + "AffineTransform": { "properties": { - "weight": { - "description": "The thickness of the border.", - "$ref": "Dimension" + "translateY": { + "description": "The Y coordinate translation element.", + "format": "double", + "type": "number" }, - "tableBorderFill": { - "description": "The fill of the table border.", - "$ref": "TableBorderFill" + "translateX": { + "description": "The X coordinate translation element.", + "format": "double", + "type": "number" }, - "dashStyle": { + "shearY": { + "description": "The Y coordinate shearing element.", + "format": "double", + "type": "number" + }, + "unit": { "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'." + "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": [ - "DASH_STYLE_UNSPECIFIED", - "SOLID", - "DOT", - "DASH", - "DASH_DOT", - "LONG_DASH", - "LONG_DASH_DOT" + "UNIT_UNSPECIFIED", + "EMU", + "PT" ], - "description": "The dash style of the border.", + "description": "The units for translate elements.", "type": "string" + }, + "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" } - } + }, + "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.", + "type": "object" }, - "CreateSheetsChartResponse": { - "id": "CreateSheetsChartResponse", - "description": "The result of creating an embedded Google Sheets chart.", + "InsertTextRequest": { + "description": "Inserts text into a shape or a table cell.", "type": "object", "properties": { + "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": { + "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.", + "$ref": "TableCellLocation" + }, "objectId": { - "description": "The object ID of the created chart.", + "description": "The object ID of the shape or table where the text will be inserted.", "type": "string" - } - } - }, - "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.", + }, + "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" } }, - "id": "WriteControl", - "description": "Provides control over how write requests are executed.", - "type": "object" + "id": "InsertTextRequest" }, - "DeleteParagraphBulletsRequest": { + "AutoText": { "properties": { - "objectId": { - "description": "The object ID of the shape or table containing the text to delete bullets\nfrom.", + "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" }, - "textRange": { - "description": "The range of text to delete bullets from, based on TextElement indexes.", - "$ref": "Range" + "content": { + "description": "The rendered content of this auto text, if available.", + "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." + "style": { + "description": "The styling applied to this auto text.", + "$ref": "TextStyle" } }, - "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.", + "id": "AutoText", + "description": "A TextElement kind that represents auto text.", "type": "object" }, - "ParagraphMarker": { - "id": "ParagraphMarker", - "description": "A TextElement kind that represents the beginning of a new paragraph.", + "CreateVideoResponse": { + "description": "The result of creating a video.", "type": "object", "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" + "objectId": { + "description": "The object ID of the created video.", + "type": "string" } - } + }, + "id": "CreateVideoResponse" }, - "Thumbnail": { - "id": "Thumbnail", - "description": "The thumbnail of a page.", - "type": "object", + "UpdatePageElementTransformRequest": { "properties": { - "width": { - "description": "The positive width in pixels of the thumbnail image.", - "format": "int32", - "type": "integer" + "objectId": { + "description": "The object ID of the page element to update.", + "type": "string" }, - "height": { - "description": "The positive height in pixels of the thumbnail image.", - "format": "int32", - "type": "integer" + "transform": { + "$ref": "AffineTransform", + "description": "The input transform matrix used to update the page element." }, - "contentUrl": { + "applyMode": { + "enum": [ + "APPLY_MODE_UNSPECIFIED", + "RELATIVE", + "ABSOLUTE" + ], + "description": "The apply mode of the transform update.", "type": "string", - "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`." + "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." + ] } - } + }, + "id": "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" }, - "InsertTableColumnsRequest": { - "id": "InsertTableColumnsRequest", - "description": "Inserts columns into a table.\n\nOther columns in the table will be resized to fit the new column.", + "DeleteTextRequest": { + "description": "Deletes text from a shape or a table cell.", "type": "object", "properties": { - "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." - }, - "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" + "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." }, - "tableObjectId": { - "description": "The table to insert columns into.", + "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" }, - "LayoutPlaceholderIdMapping": { + "DeleteObjectRequest": { "properties": { - "layoutPlaceholderObjectId": { - "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.", + "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" - }, - "layoutPlaceholder": { - "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.", - "$ref": "Placeholder" } }, - "id": "LayoutPlaceholderIdMapping", - "description": "The user-specified ID mapping for a placeholder that will be created on a\nslide from a specified layout.", + "id": "DeleteObjectRequest", + "description": "Deletes an object, either pages or\npage elements, from the\npresentation.", "type": "object" }, - "UpdateTableBorderPropertiesRequest": { - "description": "Updates the properties of the table borders in a Table.", - "type": "object", + "TextElement": { "properties": { - "objectId": { - "description": "The object ID of the table.", - "type": "string" + "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.", + "$ref": "TextRun" }, - "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." + "autoText": { + "description": "A TextElement representing a spot in the text that is dynamically\nreplaced with content that can change over time.", + "$ref": "AutoText" }, - "tableBorderProperties": { - "description": "The table border properties to update.", - "$ref": "TableBorderProperties" + "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.", + "$ref": "ParagraphMarker" }, - "borderPosition": { + "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": { + "properties": { + "magnitude": { + "description": "The magnitude.", + "format": "double", + "type": "number" + }, + "unit": { "enum": [ - "ALL", - "BOTTOM", - "INNER", - "INNER_HORIZONTAL", - "INNER_VERTICAL", - "LEFT", - "OUTER", - "RIGHT", - "TOP" + "UNIT_UNSPECIFIED", + "EMU", + "PT" ], - "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.", + "description": "The units for magnitude.", "type": "string", "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." + "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." ] - }, - "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" } }, - "id": "UpdateTableBorderPropertiesRequest" + "id": "Dimension", + "description": "A magnitude in a single direction in the specified units.", + "type": "object" }, - "UpdateShapePropertiesRequest": { - "id": "UpdateShapePropertiesRequest", - "description": "Update the properties of a Shape.", + "LineFill": { + "description": "The fill of the line.", "type": "object", "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" + "solidFill": { + "description": "Solid color fill.", + "$ref": "SolidFill" + } + }, + "id": "LineFill" + }, + "VideoProperties": { + "properties": { + "outline": { + "$ref": "Outline", + "description": "The outline of the video. The default outline matches the defaults for new\nvideos created in the Slides editor." }, - "objectId": { - "description": "The object ID of the shape the updates are applied to.", - "type": "string" + "mute": { + "description": "Whether to mute the audio during video playback. Defaults to false.", + "type": "boolean" }, - "shapeProperties": { - "$ref": "ShapeProperties", - "description": "The shape properties to update." + "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" + }, + "autoPlay": { + "description": "Whether to enable video autoplay when the page is displayed in present\nmode. Defaults to false.", + "type": "boolean" + }, + "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" } - } + }, + "id": "VideoProperties", + "description": "The properties of the Video.", + "type": "object" }, - "WordArt": { - "description": "A PageElement kind representing\nword art.", + "InsertTableRowsRequest": { + "description": "Inserts rows into a table.", "type": "object", "properties": { - "renderedText": { - "description": "The text rendered as word art.", + "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" + }, + "number": { + "description": "The number of rows to be inserted. Maximum 20 per request.", + "format": "int32", + "type": "integer" + }, + "cellLocation": { + "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.", + "$ref": "TableCellLocation" } }, - "id": "WordArt" + "id": "InsertTableRowsRequest" }, - "UpdateTableColumnPropertiesRequest": { - "description": "Updates the properties of a Table column.", + "LayoutProperties": { + "description": "The properties of Page are only\nrelevant for pages with page_type LAYOUT.", "type": "object", "properties": { - "objectId": { - "description": "The object ID of the table.", + "name": { + "description": "The name of the layout.", "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", - "items": { - "format": "int32", - "type": "integer" - } - }, - "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." + "displayName": { + "description": "The human-readable name of the layout.", + "type": "string" }, - "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", + "masterObjectId": { + "description": "The object ID of the master that this layout is based on.", "type": "string" } }, - "id": "UpdateTableColumnPropertiesRequest" + "id": "LayoutProperties" }, - "Recolor": { - "description": "A recolor effect applied on an image.", - "type": "object", + "LineProperties": { "properties": { - "name": { + "weight": { + "description": "The thickness of the line.", + "$ref": "Dimension" + }, + "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": { "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." + "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": [ - "NONE", - "LIGHT1", - "LIGHT2", - "LIGHT3", - "LIGHT4", - "LIGHT5", - "LIGHT6", - "LIGHT7", - "LIGHT8", - "LIGHT9", - "LIGHT10", - "DARK1", - "DARK2", - "DARK3", - "DARK4", - "DARK5", - "DARK6", - "DARK7", - "DARK8", - "DARK9", - "DARK10", - "GRAYSCALE", - "NEGATIVE", - "SEPIA", - "CUSTOM" + "DASH_STYLE_UNSPECIFIED", + "SOLID", + "DOT", + "DASH", + "DASH_DOT", + "LONG_DASH", + "LONG_DASH_DOT" ], - "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.", + "description": "The dash style of the line.", "type": "string" }, - "recolorStops": { - "type": "array", - "items": { - "$ref": "ColorStop" - }, - "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." - } - }, - "id": "Recolor" - }, - "Link": { - "type": "object", - "properties": { - "pageObjectId": { - "type": "string", - "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." - }, - "url": { - "type": "string", - "description": "If set, indicates this is a link to the external web page at this URL." - }, - "relativeLink": { - "description": "If set, indicates this is a link to a slide in this presentation,\naddressed by its position.", - "type": "string", + "startArrow": { "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." + "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." ], "enum": [ - "RELATIVE_SLIDE_LINK_UNSPECIFIED", - "NEXT_SLIDE", - "PREVIOUS_SLIDE", - "FIRST_SLIDE", - "LAST_SLIDE" - ] + "ARROW_STYLE_UNSPECIFIED", + "NONE", + "STEALTH_ARROW", + "FILL_ARROW", + "FILL_CIRCLE", + "FILL_SQUARE", + "FILL_DIAMOND", + "OPEN_ARROW", + "OPEN_CIRCLE", + "OPEN_SQUARE", + "OPEN_DIAMOND" + ], + "description": "The style of the arrow at the beginning of the line.", + "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" + "endArrow": { + "enum": [ + "ARROW_STYLE_UNSPECIFIED", + "NONE", + "STEALTH_ARROW", + "FILL_ARROW", + "FILL_CIRCLE", + "FILL_SQUARE", + "FILL_DIAMOND", + "OPEN_ARROW", + "OPEN_CIRCLE", + "OPEN_SQUARE", + "OPEN_DIAMOND" + ], + "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." + ] } }, - "id": "Link", - "description": "A hypertext link." + "id": "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" }, - "RgbColor": { + "Presentation": { "properties": { - "red": { - "description": "The red component of the color, from 0.0 to 1.0.", - "format": "float", - "type": "number" + "presentationId": { + "description": "The ID of the presentation.", + "type": "string" }, - "green": { - "description": "The green component of the color, from 0.0 to 1.0.", - "format": "float", - "type": "number" + "slides": { + "description": "The slides in the presentation.\nA slide inherits properties from a slide layout.", + "type": "array", + "items": { + "$ref": "Page" + } }, - "blue": { - "description": "The blue component of the color, from 0.0 to 1.0.", - "format": "float", - "type": "number" + "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": { + "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.", + "$ref": "Page" + }, + "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" + } + }, + "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.", + "type": "array", + "items": { + "$ref": "Page" + } + }, + "pageSize": { + "$ref": "Size", + "description": "The size of pages in the presentation." } }, - "id": "RgbColor", - "description": "An RGB color.", + "id": "Presentation", + "description": "A Google Slides presentation.", "type": "object" }, - "CreateShapeResponse": { - "description": "The result of creating a shape.", + "OpaqueColor": { + "description": "A themeable solid color value.", "type": "object", "properties": { - "objectId": { - "description": "The object ID of the created shape.", + "themeColor": { + "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." + ], + "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" + }, + "rgbColor": { + "description": "An opaque RGB color.", + "$ref": "RgbColor" } }, - "id": "CreateShapeResponse" + "id": "OpaqueColor" }, - "CreateLineRequest": { - "description": "Creates a line.", - "type": "object", + "ImageProperties": { "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" + "outline": { + "$ref": "Outline", + "description": "The outline of the image. If not set, the image has no outline." }, - "elementProperties": { - "$ref": "PageElementProperties", - "description": "The element properties for the line." + "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" }, - "lineCategory": { - "enum": [ - "STRAIGHT", - "BENT", - "CURVED" - ], - "description": "The category of line to be created.", - "type": "string", - "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." - ] - } - }, - "id": "CreateLineRequest" - }, - "CreateSlideResponse": { - "description": "The result of creating a slide.", - "type": "object", - "properties": { - "objectId": { - "type": "string", - "description": "The object ID of the created slide." - } - }, - "id": "CreateSlideResponse" - }, - "CreateShapeRequest": { - "description": "Creates a new shape.", - "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.\nIf empty, a unique identifier will be generated." + "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" }, - "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", + "shadow": { + "$ref": "Shadow", + "description": "The shadow of the image. If not set, the image has no shadow. This property\nis read-only." + }, + "link": { + "$ref": "Link", + "description": "The hyperlink destination of the image. If unset, there is no link." + }, + "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": { + "description": "The crop properties of the image. If not set, the image is not cropped.\nThis property is read-only.", + "$ref": "CropProperties" + }, + "recolor": { + "description": "The recolor effect of the image. If not set, the image is not recolored.\nThis property is read-only.", + "$ref": "Recolor" + } + }, + "id": "ImageProperties", + "description": "The properties of the Image.", + "type": "object" + }, + "ReplaceAllShapesWithImageResponse": { + "description": "The result of replacing shapes with an image.", + "type": "object", + "properties": { + "occurrencesChanged": { + "description": "The number of shapes replaced with images.", + "format": "int32", + "type": "integer" + } + }, + "id": "ReplaceAllShapesWithImageResponse" + }, + "Line": { + "description": "A PageElement kind representing a\nnon-connector line, straight connector, curved connector, or bent connector.", + "type": "object", + "properties": { + "lineType": { "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." + "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'.", + "Straight line. Corresponds to ECMA-376 ST_ShapeType 'line'. This line\ntype is not a connector." + ], + "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", + "STRAIGHT_LINE" + ], + "description": "The type of the line.", + "type": "string" + }, + "lineProperties": { + "$ref": "LineProperties", + "description": "The properties of the line." + } + }, + "id": "Line" + }, + "BatchUpdatePresentationResponse": { + "properties": { + "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.", + "type": "array", + "items": { + "$ref": "Response" + } + }, + "writeControl": { + "$ref": "WriteControl", + "description": "The updated write control after applying the request." + } + }, + "id": "BatchUpdatePresentationResponse", + "description": "Response message from a batch update.", + "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, drive.file, or drive OAuth scopes.", + "type": "object", + "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." + }, + "spreadsheetId": { + "description": "The ID of the Google Sheets spreadsheet that contains the 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." ] }, - "elementProperties": { - "$ref": "PageElementProperties", - "description": "The element properties for the shape." + "chartId": { + "description": "The ID of the specific chart in the Google Sheets spreadsheet.", + "format": "int32", + "type": "integer" } }, - "id": "CreateShapeRequest" + "id": "CreateSheetsChartRequest" }, - "Video": { - "description": "A PageElement kind representing a\nvideo.", + "CreateImageResponse": { + "description": "The result of creating an image.", "type": "object", "properties": { - "url": { - "description": "An URL to a video. The URL is valid as long as the source video\nexists and sharing settings do not change.", + "objectId": { + "description": "The object ID of the created image.", "type": "string" - }, - "id": { - "description": "The video source's unique identifier for this video.", + } + }, + "id": "CreateImageResponse" + }, + "SlideProperties": { + "properties": { + "layoutObjectId": { + "description": "The object ID of the layout that this slide is based on.", "type": "string" }, - "videoProperties": { - "$ref": "VideoProperties", - "description": "The properties of the video." - }, - "source": { - "enumDescriptions": [ - "The video source is unspecified.", - "The video source is YouTube." - ], - "enum": [ - "SOURCE_UNSPECIFIED", - "YOUTUBE" - ], - "description": "The video source.", + "masterObjectId": { + "description": "The object ID of the master that this slide is based on.", "type": "string" + }, + "notesPage": { + "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.", + "$ref": "Page" } }, - "id": "Video" + "id": "SlideProperties", + "description": "The properties of Page that are only\nrelevant for pages with page_type SLIDE.", + "type": "object" }, - "PageProperties": { + "Response": { "properties": { - "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.", - "$ref": "PageBackgroundFill" + "replaceAllShapesWithImage": { + "$ref": "ReplaceAllShapesWithImageResponse", + "description": "The result of replacing all shapes matching some criteria with an\nimage." }, - "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." + "createTable": { + "description": "The result of creating a table.", + "$ref": "CreateTableResponse" + }, + "replaceAllText": { + "description": "The result of replacing text.", + "$ref": "ReplaceAllTextResponse" + }, + "createSlide": { + "$ref": "CreateSlideResponse", + "description": "The result of creating a slide." + }, + "duplicateObject": { + "$ref": "DuplicateObjectResponse", + "description": "The result of duplicating an object." + }, + "createLine": { + "description": "The result of creating a line.", + "$ref": "CreateLineResponse" + }, + "createImage": { + "description": "The result of creating an image.", + "$ref": "CreateImageResponse" + }, + "createVideo": { + "description": "The result of creating a video.", + "$ref": "CreateVideoResponse" + }, + "createSheetsChart": { + "$ref": "CreateSheetsChartResponse", + "description": "The result of creating a Google Sheets chart." + }, + "replaceAllShapesWithSheetsChart": { + "description": "The result of replacing all shapes matching some criteria with a Google\nSheets chart.", + "$ref": "ReplaceAllShapesWithSheetsChartResponse" + }, + "groupObjects": { + "description": "The result of grouping objects.", + "$ref": "GroupObjectsResponse" + }, + "createShape": { + "description": "The result of creating a shape.", + "$ref": "CreateShapeResponse" } }, - "id": "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": "Response", + "description": "A single response from an update.", "type": "object" }, - "NestingLevel": { - "description": "Contains properties describing the look and feel of a list bullet at a given\nlevel of nesting.", + "MasterProperties": { + "description": "The properties of Page that are only\nrelevant for pages with page_type MASTER.", "type": "object", "properties": { - "bulletStyle": { + "displayName": { + "description": "The human-readable name of the master.", + "type": "string" + } + }, + "id": "MasterProperties" + }, + "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 style of a bullet at this level of nesting." + "description": "The styling applied to this run." } }, - "id": "NestingLevel" + "id": "TextRun" }, - "TableCell": { - "description": "Properties and contents of each table cell.", + "LayoutReference": { + "properties": { + "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." + ] + }, + "layoutId": { + "description": "Layout ID: the object ID of one of the layouts in the presentation.", + "type": "string" + } + }, + "id": "LayoutReference", + "description": "Slide layout reference. This may reference either:\n\n- A predefined layout\n- One of the layouts in the presentation.", + "type": "object" + }, + "SubstringMatchCriteria": { + "description": "A criteria that matches a specific string of text in a shape or table.", "type": "object", "properties": { - "tableCellProperties": { - "$ref": "TableCellProperties", - "description": "The properties of the table cell." + "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" + } + }, + "id": "SubstringMatchCriteria" + }, + "TableRange": { + "properties": { + "columnSpan": { + "description": "The column span of the table range.", + "format": "int32", + "type": "integer" }, "location": { - "description": "The location of the cell within the table.", + "description": "The starting location of the table range.", "$ref": "TableCellLocation" }, "rowSpan": { - "description": "Row span of the cell.", + "description": "The row span of the table range.", "format": "int32", "type": "integer" + } + }, + "id": "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" + }, + "CreateTableResponse": { + "description": "The result of creating a table.", + "type": "object", + "properties": { + "objectId": { + "description": "The object ID of the created table.", + "type": "string" + } + }, + "id": "CreateTableResponse" + }, + "CreateTableRequest": { + "description": "Creates a new table.", + "type": "object", + "properties": { + "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." }, - "columnSpan": { - "description": "Column span of the cell.", + "rows": { + "description": "Number of rows in the table.", "format": "int32", "type": "integer" }, - "text": { - "$ref": "TextContent", - "description": "The text content of the cell." + "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" + }, + "columns": { + "description": "Number of columns in the table.", + "format": "int32", + "type": "integer" } }, - "id": "TableCell" - } - }, - "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": "Slides", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/presentations": { - "description": "View and manage your Google Slides presentations" - }, - "https://www.googleapis.com/auth/presentations.readonly": { - "description": "View your Google Slides presentations" - }, - "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" + "id": "CreateTableRequest" + }, + "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" }, - "https://www.googleapis.com/auth/spreadsheets.readonly": { - "description": "View your Google Spreadsheets" + "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" + }, + "Table": { + "properties": { + "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" + } }, - "https://www.googleapis.com/auth/drive": { - "description": "View and manage the files in your Google Drive" + "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" + } }, - "https://www.googleapis.com/auth/drive.readonly": { - "description": "View the files in your Google Drive" + "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" + } }, - "https://www.googleapis.com/auth/spreadsheets": { - "description": "View and manage your spreadsheets in Google Drive" - } - } - } - }, - "rootUrl": "https://slides.googleapis.com/", - "ownerDomain": "google.com", - "name": "slides", - "batchPath": "batch", - "title": "Google Slides API", - "ownerName": "Google", - "resources": { - "presentations": { - "methods": { - "create": { - "path": "v1/presentations", - "id": "slides.presentations.create", - "request": { - "$ref": "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.", - "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": {}, - "flatPath": "v1/presentations" + "rows": { + "description": "Number of rows in the table.", + "format": "int32", + "type": "integer" }, - "batchUpdate": { - "flatPath": "v1/presentations/{presentationId}:batchUpdate", - "path": "v1/presentations/{presentationId}:batchUpdate", - "id": "slides.presentations.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.", - "request": { - "$ref": "BatchUpdatePresentationRequest" - }, - "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" - ] + "tableColumns": { + "description": "Properties of each column.", + "type": "array", + "items": { + "$ref": "TableColumnProperties" + } }, - "get": { - "response": { - "$ref": "Presentation" - }, - "parameterOrder": [ - "presentationId" - ], - "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": { - "presentationId": { - "description": "The ID of the presentation to retrieve.", - "required": true, - "type": "string", - "pattern": "^[^/]+$", - "location": "path" - } - }, - "flatPath": "v1/presentations/{presentationsId}", - "path": "v1/presentations/{+presentationId}", - "id": "slides.presentations.get", - "description": "Gets the latest version of the specified presentation." + "columns": { + "description": "Number of columns in the table.", + "format": "int32", + "type": "integer" } }, - "resources": { - "pages": { - "methods": { - "getThumbnail": { - "httpMethod": "GET", - "parameterOrder": [ - "presentationId", - "pageObjectId" - ], - "response": { - "$ref": "Thumbnail" - }, - "parameters": { - "pageObjectId": { - "description": "The object ID of the page whose thumbnail to retrieve.", - "required": true, - "type": "string", - "location": "path" - }, - "thumbnailProperties.mimeType": { - "type": "string", - "location": "query", - "enum": [ - "PNG" - ], - "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." - }, - "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" - } - }, - "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" - ], - "flatPath": "v1/presentations/{presentationId}/pages/{pageObjectId}/thumbnail", - "id": "slides.presentations.pages.getThumbnail", - "path": "v1/presentations/{presentationId}/pages/{pageObjectId}/thumbnail", - "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." - }, - "get": { - "flatPath": "v1/presentations/{presentationId}/pages/{pageObjectId}", - "path": "v1/presentations/{presentationId}/pages/{pageObjectId}", - "id": "slides.presentations.pages.get", - "description": "Gets the latest version of the specified page in the presentation.", - "response": { - "$ref": "Page" - }, - "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": { - "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" - } - } - } + "id": "Table", + "description": "A PageElement kind representing a\ntable.", + "type": "object" + }, + "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.", + "type": "array", + "items": { + "$ref": "TableBorderCell" } } - } - } - }, - "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" + }, + "id": "TableBorderRow", + "description": "Contents of each border row in a table.", + "type": "object" }, - "$.xgafv": { - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query" + "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": { + "description": "Stretched picture fill.", + "$ref": "StretchedPictureFill" + }, + "solidFill": { + "description": "Solid color fill.", + "$ref": "SolidFill" + } + }, + "id": "PageBackgroundFill", + "description": "The page background fill.", + "type": "object" }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" + "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" }, - "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" - ] + "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.", + "format": "float", + "type": "number" + }, + "color": { + "description": "The color value of the solid fill.", + "$ref": "OpaqueColor" + } + }, + "id": "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" }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" + "ThemeColorPair": { + "description": "A pair mapping a theme color type to the concrete color it represents.", + "type": "object", + "properties": { + "color": { + "$ref": "RgbColor", + "description": "The concrete color corresponding to the theme color type above." + }, + "type": { + "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." + ], + "enum": [ + "THEME_COLOR_TYPE_UNSPECIFIED", + "DARK1", + "LIGHT1", + "DARK2", + "LIGHT2", + "ACCENT1", + "ACCENT2", + "ACCENT3", + "ACCENT4", + "ACCENT5", + "ACCENT6", + "HYPERLINK", + "FOLLOWED_HYPERLINK", + "TEXT1", + "BACKGROUND1", + "TEXT2", + "BACKGROUND2" + ], + "description": "The type of the theme color.", + "type": "string" + } + }, + "id": "ThemeColorPair" }, - "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" + "OptionalColor": { + "properties": { + "opaqueColor": { + "$ref": "OpaqueColor", + "description": "If set, this will be used as an opaque color. If unset, this represents\na transparent color." + } + }, + "id": "OptionalColor", + "description": "A color that can either be fully opaque or fully transparent.", + "type": "object" }, - "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" + "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", + "properties": { + "pageObjectId": { + "description": "The object ID of the page where the element is located.", + "type": "string" + }, + "size": { + "description": "The size of the element.", + "$ref": "Size" + }, + "transform": { + "description": "The transform for the element.", + "$ref": "AffineTransform" + } + }, + "id": "PageElementProperties" }, - "pp": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" + "SheetsChartProperties": { + "properties": { + "chartImageProperties": { + "$ref": "ImageProperties", + "description": "The properties of the embedded chart image." + } + }, + "id": "SheetsChartProperties", + "description": "The properties of the SheetsChart.", + "type": "object" }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" + "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": { + "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." + } + }, + "id": "StretchedPictureFill" }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" + "DeleteTableColumnRequest": { + "description": "Deletes a column from a table.", + "type": "object", + "properties": { + "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" + }, + "tableObjectId": { + "description": "The table to delete columns from.", + "type": "string" + } + }, + "id": "DeleteTableColumnRequest" }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" + "UpdateTextStyleRequest": { + "properties": { + "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", + "type": "string" + }, + "objectId": { + "description": "The object ID of the shape or table with the text to be styled.", + "type": "string" + }, + "textRange": { + "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.", + "$ref": "Range" + }, + "cellLocation": { + "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.", + "$ref": "TableCellLocation" + }, + "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." + } + }, + "id": "UpdateTextStyleRequest", + "description": "Update the styling of text in a Shape or\nTable.", + "type": "object" }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" + "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" + } + }, + "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.", + "type": "object" } }, - "version": "v1", - "baseUrl": "https://slides.googleapis.com/" + "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" } diff --git a/DiscoveryJson/sourcerepo_v1.json b/DiscoveryJson/sourcerepo_v1.json index e8a0cee869..5addfde2f5 100644 --- a/DiscoveryJson/sourcerepo_v1.json +++ b/DiscoveryJson/sourcerepo_v1.json @@ -1,4 +1,224 @@ { + "revision": "20180313", + "documentationLink": "https://cloud.google.com/source-repositories/docs/apis", + "id": "sourcerepo:v1", + "discoveryVersion": "v1", + "version_module": true, + "schemas": { + "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" + }, + "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" + }, + "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" + }, + "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" + }, + "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" + }, + "MirrorConfig": { + "description": "Configuration to automatically mirror a repository from another\nhosting service, for example GitHub or Bitbucket.", + "type": "object", + "properties": { + "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" + }, + "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" + }, + "Repo": { + "description": "A repository (or repo) is a Git repository storing versioned source content.", + "type": "object", + "properties": { + "mirrorConfig": { + "description": "How this repository mirrors a repository managed by another service.\nRead-only field.", + "$ref": "MirrorConfig" + }, + "url": { + "description": "URL to clone the repository from Google Cloud Source Repositories.\nRead-only field.", + "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" + }, + "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" + } + }, + "id": "Repo" + }, + "ListReposResponse": { + "description": "Response for ListRepos. The size is not set in the returned repositories.", + "type": "object", + "properties": { + "repos": { + "description": "The listed repos.", + "type": "array", + "items": { + "$ref": "Repo" + } + }, + "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" + } + }, + "id": "ListReposResponse" + }, + "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.", + "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" + }, + "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" + }, + "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" + } + }, + "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 Source Repositories", "auth": { "oauth2": { @@ -29,17 +249,48 @@ "resources": { "repos": { "methods": { - "getIamPolicy": { + "testIamPermissions": { "response": { - "$ref": "Policy" + "$ref": "TestIamPermissionsResponse" }, "parameterOrder": [ "resource" ], - "httpMethod": "GET", + "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": { "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", + "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/[^/]+/repos/.+$" + } + }, + "flatPath": "v1/projects/{projectsId}/repos/{reposId}:testIamPermissions", + "path": "v1/{+resource}:testIamPermissions", + "id": "sourcerepo.projects.repos.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." + }, + "delete": { + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "parameters": { + "name": { + "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/.+$", @@ -52,100 +303,12 @@ "https://www.googleapis.com/auth/source.read_only", "https://www.googleapis.com/auth/source.read_write" ], - "flatPath": "v1/projects/{projectsId}/repos/{reposId}:getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "id": "sourcerepo.projects.repos.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": { - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Repo" - }, - "parameters": { - "name": { - "description": "The name of the requested repository. Values are of the form\n`projects/\u003cproject\u003e/repos/\u003crepo\u003e`.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/repos/.+$", - "location": "path" - } - }, - "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.get", - "path": "v1/{+name}", - "description": "Returns information about a repo." - }, - "testIamPermissions": { - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "parameterOrder": [ - "resource" - ], - "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": { - "resource": { - "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.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/projects/{projectsId}/repos/{reposId}:testIamPermissions", - "path": "v1/{+resource}:testIamPermissions", - "id": "sourcerepo.projects.repos.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." - }, - "delete": { - "flatPath": "v1/projects/{projectsId}/repos/{reposId}", - "path": "v1/{+name}", - "id": "sourcerepo.projects.repos.delete", - "description": "Deletes a repo.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "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": { - "name": { - "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/.+$", - "location": "path" - } - } + "flatPath": "v1/projects/{projectsId}/repos/{reposId}", + "path": "v1/{+name}", + "id": "sourcerepo.projects.repos.delete", + "description": "Deletes a repo." }, "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.", "response": { "$ref": "ListReposResponse" }, @@ -153,19 +316,13 @@ "name" ], "httpMethod": "GET", - "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": { "name": { - "location": "path", "description": "The project ID whose repos should be listed. Values are of the form\n`projects/\u003cproject\u003e`.", "required": true, "type": "string", - "pattern": "^projects/[^/]+$" + "pattern": "^projects/[^/]+$", + "location": "path" }, "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.", @@ -179,15 +336,18 @@ "type": "integer" } }, + "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" + "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": { - "request": { - "$ref": "Repo" - }, - "description": "Creates a repo in the given project with the given name.\n\nIf the named repository already exists, `CreateRepo` returns\n`ALREADY_EXISTS`.", "response": { "$ref": "Repo" }, @@ -203,16 +363,20 @@ ], "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/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+$" } }, "flatPath": "v1/projects/{projectsId}/repos", "path": "v1/{+parent}/repos", - "id": "sourcerepo.projects.repos.create" + "id": "sourcerepo.projects.repos.create", + "request": { + "$ref": "Repo" + }, + "description": "Creates a repo in the given project with the given name.\n\nIf the named repository already exists, `CreateRepo` returns\n`ALREADY_EXISTS`." }, "setIamPolicy": { "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.", @@ -228,11 +392,11 @@ }, "parameters": { "resource": { - "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.", "required": true, - "type": "string" + "type": "string", + "pattern": "^projects/[^/]+/repos/.+$" } }, "scopes": [ @@ -244,6 +408,62 @@ "flatPath": "v1/projects/{projectsId}/repos/{reposId}:setIamPolicy", "id": "sourcerepo.projects.repos.setIamPolicy", "path": "v1/{+resource}: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", + "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", + "path": "v1/{+resource}:getIamPolicy", + "id": "sourcerepo.projects.repos.getIamPolicy" + }, + "get": { + "description": "Returns information about a repo.", + "response": { + "$ref": "Repo" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "parameters": { + "name": { + "location": "path", + "description": "The name of the requested repository. 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}", + "path": "v1/{+name}", + "id": "sourcerepo.projects.repos.get" } } } @@ -251,47 +471,25 @@ } }, "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": { - "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", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query" + "type": "string" }, "callback": { - "location": "query", "description": "JSONP", - "type": "string" + "type": "string", + "location": "query" }, "alt": { - "type": "string", "enumDescriptions": [ "Responses with Content-Type of application/json", "Media download with context-dependent Content-Type", @@ -304,264 +502,66 @@ "json", "media", "proto" - ] - }, - "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", + "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" + "type": "string", + "location": "query" }, "pp": { + "location": "query", "description": "Pretty-print response.", "type": "boolean", - "default": "true", - "location": "query" + "default": "true" }, "oauth_token": { + "location": "query", "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" + "type": "string" }, "bearer_token": { "location": "query", "description": "OAuth bearer token.", "type": "string" - } - }, - "version": "v1", - "baseUrl": "https://sourcerepo.googleapis.com/", - "servicePath": "", - "kind": "discovery#restDescription", - "description": "Access source code repositories hosted by Google.", - "basePath": "", - "revision": "20180313", - "documentationLink": "https://cloud.google.com/source-repositories/docs/apis", - "id": "sourcerepo: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" - }, - "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" - }, - "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" - }, - "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" - }, - "MirrorConfig": { - "description": "Configuration to automatically mirror a repository from another\nhosting service, for example GitHub or Bitbucket.", - "type": "object", - "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" - } - }, - "id": "MirrorConfig" }, - "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" - } - } - }, - "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" - }, - "Repo": { - "description": "A repository (or repo) is a Git repository storing versioned source content.", - "type": "object", - "properties": { - "url": { - "description": "URL to clone the repository from Google Cloud Source Repositories.\nRead-only field.", - "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" - }, - "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" - }, - "mirrorConfig": { - "description": "How this repository mirrors a repository managed by another service.\nRead-only field.", - "$ref": "MirrorConfig" - } - }, - "id": "Repo" - }, - "ListReposResponse": { - "properties": { - "repos": { - "description": "The listed repos.", - "type": "array", - "items": { - "$ref": "Repo" - } - }, - "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" - } - }, - "id": "ListReposResponse", - "description": "Response for ListRepos. The size is not set in the returned repositories.", - "type": "object" + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "type": "string", + "location": "query" }, - "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.", - "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" + "prettyPrint": { + "description": "Returns response with indentations and line breaks.", + "type": "boolean", + "default": "true", + "location": "query" }, - "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" + "uploadType": { + "location": "query", + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string" }, - "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" + "fields": { + "location": "query", + "description": "Selector specifying which fields to include in a partial response.", + "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" - } + "version": "v1", + "baseUrl": "https://sourcerepo.googleapis.com/", + "servicePath": "", + "description": "Access source code repositories hosted by Google.", + "kind": "discovery#restDescription", + "basePath": "" } diff --git a/DiscoveryJson/spanner_v1.json b/DiscoveryJson/spanner_v1.json index 0018d12e84..42717db51f 100644 --- a/DiscoveryJson/spanner_v1.json +++ b/DiscoveryJson/spanner_v1.json @@ -1,1582 +1,176 @@ { - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "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" + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" }, - "error": { - "description": "The error result of the operation in case of failure or cancellation.", - "$ref": "Status" + "https://www.googleapis.com/auth/spanner.admin": { + "description": "Administer your Spanner databases" }, - "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", - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object" - }, - "CreateSessionRequest": { - "description": "The request for CreateSession.", - "type": "object", - "properties": { - "session": { - "description": "The session to create.", - "$ref": "Session" + "https://www.googleapis.com/auth/spanner.data": { + "description": "View and manage the contents of your Spanner databases" } - }, - "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", - "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" + } + } + }, + "rootUrl": "https://spanner.googleapis.com/", + "ownerDomain": "google.com", + "name": "spanner", + "batchPath": "batch", + "fullyEncodeReservedExpansion": true, + "title": "Cloud Spanner API", + "ownerName": "Google", + "resources": { + "projects": { + "resources": { + "instances": { + "methods": { + "setIamPolicy": { + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ], + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}:setIamPolicy", + "path": "v1/{+resource}:setIamPolicy", + "id": "spanner.projects.instances.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" }, - "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" - }, - "ResultSet": { - "description": "Results from Read or\nExecuteSql.", - "type": "object", - "properties": { - "stats": { - "description": "Query plan and execution statistics for the SQL statement that\nproduced this result 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" - } - } - }, - "metadata": { - "description": "Metadata about the result set, such as row type information.", - "$ref": "ResultSetMetadata" - } - }, - "id": "ResultSet" - }, - "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" - } - }, - "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" - }, - "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", - "properties": { - "statements": { - "description": "DDL statements to be applied to the database.", - "type": "array", - "items": { - "type": "string" - } - }, - "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`.", - "type": "string" - } - }, - "id": "UpdateDatabaseDdlRequest" - }, - "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", - "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": { - "description": "Metadata about the result set, such as row type information.\nOnly present in the first response.", - "$ref": "ResultSetMetadata" - }, - "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" - } - }, - "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 statement 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." - } - }, - "id": "PartialResultSet" - }, - "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": { - "$ref": "Instance", - "description": "The desired end state of the update." - }, - "startTime": { - "description": "The time at which UpdateInstance\nrequest was received.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "UpdateInstanceMetadata" - }, - "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" - }, - "ResultSetMetadata": { - "description": "Metadata about a ResultSet or PartialResultSet.", - "type": "object", - "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." - } - }, - "id": "ResultSetMetadata" - }, - "Partition": { - "description": "Information returned for each partition returned in a\nPartitionResponse.", - "type": "object", - "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" - } - }, - "id": "Partition" - }, - "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": { - "id": { - "description": "Execute the read or SQL query in a previously-started transaction.", - "format": "byte", - "type": "string" - }, - "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": "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": { - "description": "Update existing rows in a table. If any of the rows does not\nalready exist, the transaction fails with error `NOT_FOUND`.", - "$ref": "Write" - }, - "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": { - "ranges": { - "description": "A list of key ranges. See KeyRange for more information about\nkey range specifications.", - "type": "array", - "items": { - "$ref": "KeyRange" - } - }, - "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" - } - }, - "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": { - "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." - ], - "enum": [ - "STATE_UNSPECIFIED", - "CREATING", - "READY" - ], - "description": "Output only. The current database state.", - "type": "string" - }, - "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", - "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", - "items": { - "$ref": "Database" - } - } - }, - "id": "ListDatabasesResponse" - }, - "Instance": { - "description": "An isolated set of Cloud Spanner resources on which databases can be hosted.", - "type": "object", - "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.", - "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": { - "enum": [ - "STATE_UNSPECIFIED", - "CREATING", - "READY" - ], - "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." - ] - }, - "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": { - "description": "A transaction.", - "type": "object", - "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" - }, - "UpdateDatabaseDdlMetadata": { - "description": "Metadata type for the operation returned by\nUpdateDatabaseDdl.", - "type": "object", - "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]`.", - "type": "array", - "items": { - "format": "google-datetime", - "type": "string" - } - }, - "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" - } - } - }, - "id": "UpdateDatabaseDdlMetadata" - }, - "PartitionResponse": { - "properties": { - "transaction": { - "description": "Transaction created by this request.", - "$ref": "Transaction" - }, - "partitions": { - "description": "Partitions created by this request.", - "type": "array", - "items": { - "$ref": "Partition" - } - } - }, - "id": "PartitionResponse", - "description": "The response for PartitionQuery\nor PartitionRead", - "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" - }, - "StructType": { - "description": "`StructType` defines the fields of a STRUCT type.", - "type": "object", - "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" - }, - "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" - }, - "ResultSetStats": { - "description": "Additional statistics about a ResultSet or PartialResultSet.", - "type": "object", - "properties": { - "queryPlan": { - "description": "QueryPlan for the query associated with this result.", - "$ref": "QueryPlan" - }, - "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" - } - } - }, - "id": "ResultSetStats" - }, - "TestIamPermissionsRequest": { - "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", - "description": "Request message for `TestIamPermissions` method.", - "type": "object" - }, - "CommitResponse": { - "description": "The response for Commit.", - "type": "object", - "properties": { - "commitTimestamp": { - "description": "The Cloud Spanner timestamp at which the transaction committed.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "CommitResponse" - }, - "Type": { - "properties": { - "arrayElementType": { - "$ref": "Type", - "description": "If code == ARRAY, then `array_element_type`\nis the type of the array elements." - }, - "code": { - "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\"`.\n\nIf the schema has the column option\n`allow_commit_timestamp=true`, the placeholder string\n`\"spanner.commit_timestamp()\"` can be used to instruct the system\nto insert the commit timestamp associated with the transaction\ncommit.", - "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" - ], - "description": "Required. The TypeCode for this type.", - "type": "string" - }, - "structType": { - "description": "If code == STRUCT, then `struct_type`\nprovides type information for the struct's fields.", - "$ref": "StructType" - } - }, - "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": { - "description": "Node information for nodes appearing in a QueryPlan.plan_nodes.", - "type": "object", - "properties": { - "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": { - "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", - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - } - }, - "shortRepresentation": { - "description": "Condensed representation for SCALAR nodes.", - "$ref": "ShortRepresentation" - }, - "index": { - "description": "The `PlanNode`'s index in node list.", - "format": "int32", - "type": "integer" - }, - "kind": { - "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." - ], - "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" - }, - "displayName": { - "description": "The display name for the node.", - "type": "string" - }, - "childLinks": { - "description": "List of child node `index`es and their relationship to this parent.", - "type": "array", - "items": { - "$ref": "ChildLink" - } - } - }, - "id": "PlanNode" - }, - "CreateInstanceMetadata": { - "description": "Metadata type for the operation returned by\nCreateInstance.", - "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": { - "$ref": "Instance", - "description": "The instance being created." - }, - "startTime": { - "description": "The time at which the\nCreateInstance request was\nreceived.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "CreateInstanceMetadata" - }, - "PartitionOptions": { - "properties": { - "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" - }, - "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" - } - }, - "id": "PartitionOptions", - "description": "Options for a PartitionQueryRequest and\nPartitionReadRequest.", - "type": "object" - }, - "ChildLink": { - "description": "Metadata associated with a parent-child relationship appearing in a\nPlanNode.", - "type": "object", - "properties": { - "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.", - "type": "string" - }, - "childIndex": { - "description": "The node to which the link points.", - "format": "int32", - "type": "integer" - }, - "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": "ChildLink" - }, - "PartitionReadRequest": { - "description": "The request for PartitionRead", - "type": "object", - "properties": { - "partitionOptions": { - "description": "Additional options that affect how many partitions are created.", - "$ref": "PartitionOptions" - }, - "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." - }, - "columns": { - "description": "The columns of table to be returned for each row matching\nthis request.", - "type": "array", - "items": { - "type": "string" - } - }, - "transaction": { - "$ref": "TransactionSelector", - "description": "Read only snapshot transactions are supported, read/write and single use\ntransactions are not." - }, - "table": { - "description": "Required. The name of the table in the database to be read.", - "type": "string" - } - }, - "id": "PartitionReadRequest" - }, - "Delete": { - "properties": { - "table": { - "description": "Required. The table whose rows will be deleted.", - "type": "string" - }, - "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.", - "$ref": "KeySet" - } - }, - "id": "Delete", - "description": "Arguments to delete operations.", - "type": "object" - }, - "CommitRequest": { - "description": "The request for Commit.", - "type": "object", - "properties": { - "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." - }, - "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" - } - }, - "transactionId": { - "description": "Commit a previously-started transaction.", - "format": "byte", - "type": "string" - } - }, - "id": "CommitRequest" - }, - "BeginTransactionRequest": { - "properties": { - "options": { - "description": "Required. Options for the new transaction.", - "$ref": "TransactionOptions" - } - }, - "id": "BeginTransactionRequest", - "description": "The request for BeginTransaction.", - "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" - }, - "GetIamPolicyRequest": { - "description": "Request message for `GetIamPolicy` method.", - "type": "object", - "properties": {}, - "id": "GetIamPolicyRequest" - }, - "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" - }, - "CreateDatabaseMetadata": { - "properties": { - "database": { - "description": "The database being created.", - "type": "string" - } - }, - "id": "CreateDatabaseMetadata", - "description": "Metadata type for the operation returned by\nCreateDatabase.", - "type": "object" - }, - "ListSessionsResponse": { - "description": "The response for ListSessions.", - "type": "object", - "properties": { - "nextPageToken": { - "description": "`next_page_token` can be sent in a subsequent\nListSessions call to fetch more of the matching\nsessions.", - "type": "string" - }, - "sessions": { - "description": "The list of requested sessions.", - "type": "array", - "items": { - "$ref": "Session" - } - } - }, - "id": "ListSessionsResponse" - }, - "Session": { - "description": "A session in the Cloud Spanner API.", - "type": "object", - "properties": { - "labels": { - "additionalProperties": { - "type": "string" - }, - "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" - }, - "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" - }, - "ListInstancesResponse": { - "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" - } - } - }, - "id": "ListInstancesResponse", - "description": "The response for ListInstances.", - "type": "object" - }, - "ShortRepresentation": { - "description": "Condensed representation of a node and its subtree. Only present for\n`SCALAR` PlanNode(s).", - "type": "object", - "properties": { - "description": { - "description": "A string representation of the expression subtree rooted at this node.", - "type": "string" - }, - "subqueries": { - "additionalProperties": { - "format": "int32", - "type": "integer" - }, - "description": "A mapping of (subquery variable name) -\u003e (subquery node id) for cases\nwhere the `description` string of this node references a `SCALAR`\nsubquery contained in the expression subtree rooted at this node. The\nreferenced `SCALAR` subquery may not necessarily be a direct child of\nthis node.", - "type": "object" - } - }, - "id": "ShortRepresentation" - }, - "InstanceConfig": { - "description": "A possible configuration for a Cloud Spanner instance. Configurations\ndefine the geographic placement of nodes and their replication.", - "type": "object", - "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" - } - }, - "id": "InstanceConfig" - }, - "PartitionQueryRequest": { - "description": "The request for PartitionQuery", - "type": "object", - "properties": { - "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": { - "description": "Read only snapshot transactions are supported, read/write and single use\ntransactions are not.", - "$ref": "TransactionSelector" - }, - "partitionOptions": { - "$ref": "PartitionOptions", - "description": "Additional options that affect how many partitions are created." - }, - "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" - }, - "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" - } - } - }, - "id": "PartitionQueryRequest" - }, - "UpdateInstanceRequest": { - "properties": { - "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.", - "$ref": "Instance" - }, - "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\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`.\n\n##", - "type": "object", - "properties": { - "readWrite": { - "description": "Transaction may write.\n\nAuthorization to begin a read-write transaction requires\n`spanner.databases.beginOrRollbackReadWriteTransaction` permission\non the `session` resource.", - "$ref": "ReadWrite" - }, - "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." - } - }, - "id": "TransactionOptions" - }, - "CreateDatabaseRequest": { - "description": "The request for CreateDatabase.", - "type": "object", - "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.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "CreateDatabaseRequest" - }, - "CreateInstanceRequest": { - "description": "The request for CreateInstance.", - "type": "object", - "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" - }, - "ReadOnly": { - "properties": { - "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" - }, - "strong": { - "description": "Read at a timestamp where all previously committed transactions\nare visible.", - "type": "boolean" - } - }, - "id": "ReadOnly", - "description": "Message type to initiate a read-only transaction.", - "type": "object" - }, - "ExecuteSqlRequest": { - "description": "The request for ExecuteSql and\nExecuteStreamingSql.", - "type": "object", - "properties": { - "params": { - "additionalProperties": { - "description": "Properties of the object.", - "type": "any" - }, - "description": "The SQL 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 statement 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" - }, - "queryMode": { - "enumDescriptions": [ - "The default mode. Only the statement results are returned.", - "This mode returns only the query plan, without any results or\nexecution statistics information.", - "This mode returns both the query plan and the execution statistics along\nwith the results." - ], - "enum": [ - "NORMAL", - "PLAN", - "PROFILE" - ], - "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.", - "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" - }, - "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" - }, - "resumeToken": { - "description": "If this request is resuming a previously interrupted SQL statement\nexecution, `resume_token` should be copied from the last\nPartialResultSet yielded before the interruption. Doing this\nenables the new SQL statement 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": { - "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 statement parameters. See the\ndefinition of Type for more information\nabout SQL types.", - "type": "object" - }, - "sql": { - "description": "Required. The SQL string.", - "type": "string" - } - }, - "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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\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" - }, - "ReadRequest": { - "description": "The request for Read and\nStreamingRead.", - "type": "object", - "properties": { - "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" - }, - "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": { - "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.", - "$ref": "KeySet" - }, - "columns": { - "description": "The columns of table to be returned for each row matching\nthis request.", - "type": "array", - "items": { - "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." - }, - "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" - } - }, - "id": "ReadRequest" - }, - "Write": { - "description": "Arguments to insert, update, insert_or_update, and\nreplace operations.", - "type": "object", - "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.", - "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" - } - } - }, - "table": { - "description": "Required. The table whose rows will be written.", - "type": "string" - } - }, - "id": "Write" - }, - "ReadWrite": { - "description": "Message type to initiate a read-write transaction. Currently this\ntransaction type has no options.", - "type": "object", - "properties": {}, - "id": "ReadWrite" - } - }, - "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": "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" - } - } - } - }, - "rootUrl": "https://spanner.googleapis.com/", - "ownerDomain": "google.com", - "name": "spanner", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Cloud Spanner API", - "ownerName": "Google", - "resources": { - "projects": { - "resources": { - "instanceConfigs": { - "methods": { - "list": { - "description": "Lists the supported instance configurations for a given project.", + "create": { "response": { - "$ref": "ListInstanceConfigsResponse" + "$ref": "Operation" }, "parameterOrder": [ "parent" ], - "httpMethod": "GET", - "parameters": { - "parent": { - "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", - "pattern": "^projects/[^/]+$" - }, - "pageToken": { - "description": "If non-empty, `page_token` should contain a\nnext_page_token\nfrom a previous ListInstanceConfigsResponse.", - "type": "string", - "location": "query" - }, - "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" - } - }, + "httpMethod": "POST", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.admin" ], - "flatPath": "v1/projects/{projectsId}/instanceConfigs", - "path": "v1/{+parent}/instanceConfigs", - "id": "spanner.projects.instanceConfigs.list" - }, - "get": { - "id": "spanner.projects.instanceConfigs.get", - "path": "v1/{+name}", - "description": "Gets information about a particular instance configuration.", - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "InstanceConfig" - }, "parameters": { - "name": { - "description": "Required. The name of the requested instance configuration. Values are of\nthe form `projects/\u003cproject\u003e/instanceConfigs/\u003cconfig\u003e`.", + "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", - "pattern": "^projects/[^/]+/instanceConfigs/[^/]+$", - "location": "path" + "type": "string" } }, + "flatPath": "v1/projects/{projectsId}/instances", + "path": "v1/{+parent}/instances", + "id": "spanner.projects.instances.create", + "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." + }, + "getIamPolicy": { "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.admin" ], - "flatPath": "v1/projects/{projectsId}/instanceConfigs/{instanceConfigsId}" - } - } - }, - "instances": { - "methods": { - "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.", + "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/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/instances/[^/]+$" } }, - "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", - "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}:getIamPolicy", + "id": "spanner.projects.instances.getIamPolicy", + "path": "v1/{+resource}:getIamPolicy", "request": { - "$ref": "TestIamPermissionsRequest" - } - }, - "delete": { - "path": "v1/{+name}", - "id": "spanner.projects.instances.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" + "$ref": "GetIamPolicyRequest" }, + "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.", + "httpMethod": "POST", "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "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/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" + "resource" ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}" + "response": { + "$ref": "Policy" + } }, - "list": { - "description": "Lists all instances in the given project.", + "patch": { "response": { - "$ref": "ListInstancesResponse" + "$ref": "Operation" }, "parameterOrder": [ - "parent" + "name" ], - "httpMethod": "GET", - "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\".", - "type": "string", - "location": "query" - }, - "pageToken": { - "description": "If non-empty, `page_token` should contain a\nnext_page_token from a\nprevious ListInstancesResponse.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "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" - }, - "parent": { - "location": "path", - "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/[^/]+$" - } - }, + "httpMethod": "PATCH", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.admin" ], - "flatPath": "v1/projects/{projectsId}/instances", - "path": "v1/{+parent}/instances", - "id": "spanner.projects.instances.list" - }, - "setIamPolicy": { - "httpMethod": "POST", - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" - }, "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.", + "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.", "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}:setIamPolicy", - "id": "spanner.projects.instances.setIamPolicy", - "path": "v1/{+resource}: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" - } - }, - "create": { - "path": "v1/{+parent}/instances", - "id": "spanner.projects.instances.create", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}", + "path": "v1/{+name}", + "id": "spanner.projects.instances.patch", "request": { - "$ref": "CreateInstanceRequest" + "$ref": "UpdateInstanceRequest" }, - "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.", + "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." + }, + "get": { + "description": "Gets information about a particular instance.", "response": { - "$ref": "Operation" + "$ref": "Instance" }, "parameterOrder": [ - "parent" + "name" ], - "httpMethod": "POST", + "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 in which to create the instance. Values\nare of the form `projects/\u003cproject\u003e`.", + "name": { + "description": "Required. The name of the requested instance. Values are of the form\n`projects/\u003cproject\u003e/instances/\u003cinstance\u003e`.", "required": true, "type": "string", - "pattern": "^projects/[^/]+$", + "pattern": "^projects/[^/]+/instances/[^/]+$", "location": "path" } }, - "flatPath": "v1/projects/{projectsId}/instances" + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}", + "path": "v1/{+name}", + "id": "spanner.projects.instances.get" }, - "getIamPolicy": { - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}:getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "id": "spanner.projects.instances.getIamPolicy", - "request": { - "$ref": "GetIamPolicyRequest" - }, - "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.", + "testIamPermissions": { "response": { - "$ref": "Policy" + "$ref": "TestIamPermissionsResponse" }, "parameterOrder": [ "resource" @@ -1588,75 +182,120 @@ ], "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.", + "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" } - } - }, - "patch": { - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}", - "id": "spanner.projects.instances.patch", - "path": "v1/{+name}", - "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}:testIamPermissions", + "path": "v1/{+resource}:testIamPermissions", + "id": "spanner.projects.instances.testIamPermissions", "request": { - "$ref": "UpdateInstanceRequest" + "$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": { + "httpMethod": "DELETE", + "response": { + "$ref": "Empty" }, - "httpMethod": "PATCH", "parameterOrder": [ "name" ], - "response": { - "$ref": "Operation" - }, "parameters": { "name": { - "pattern": "^projects/[^/]+/instances/[^/]+$", "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.", + "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" + "type": "string", + "pattern": "^projects/[^/]+/instances/[^/]+$" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.admin" - ] - }, - "get": { - "description": "Gets information about a particular instance.", - "httpMethod": "GET", - "response": { - "$ref": "Instance" - }, - "parameterOrder": [ - "name" ], + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}", + "id": "spanner.projects.instances.delete", + "path": "v1/{+name}", + "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." + }, + "list": { "parameters": { - "name": { - "description": "Required. The name of the requested instance. Values are of the form\n`projects/\u003cproject\u003e/instances/\u003cinstance\u003e`.", + "pageToken": { + "location": "query", + "description": "If non-empty, `page_token` should contain a\nnext_page_token from a\nprevious ListInstancesResponse.", + "type": "string" + }, + "pageSize": { + "location": "query", + "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" + }, + "parent": { + "location": "path", + "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/[^/]+/instances/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+$" + }, + "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" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.admin" ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}", - "id": "spanner.projects.instances.get", - "path": "v1/{+name}" + "flatPath": "v1/projects/{projectsId}/instances", + "path": "v1/{+parent}/instances", + "id": "spanner.projects.instances.list", + "description": "Lists all instances in the given project.", + "response": { + "$ref": "ListInstancesResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET" } }, "resources": { "databases": { "methods": { + "getDdl": { + "httpMethod": "GET", + "parameterOrder": [ + "database" + ], + "response": { + "$ref": "GetDatabaseDdlResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ], + "parameters": { + "database": { + "description": "Required. The database whose schema we wish to get.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/ddl", + "id": "spanner.projects.instances.databases.getDdl", + "path": "v1/{+database}/ddl", + "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": { - "description": "Lists Cloud Spanner databases.", "response": { "$ref": "ListDatabasesResponse" }, @@ -1666,9 +305,9 @@ "httpMethod": "GET", "parameters": { "pageToken": { + "location": "query", "description": "If non-empty, `page_token` should contain a\nnext_page_token from a\nprevious ListDatabasesResponse.", - "type": "string", - "location": "query" + "type": "string" }, "pageSize": { "location": "query", @@ -1690,38 +329,17 @@ ], "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases", "path": "v1/{+parent}/databases", - "id": "spanner.projects.instances.databases.list" - }, - "setIamPolicy": { - "response": { - "$ref": "Policy" - }, - "parameterOrder": [ - "resource" - ], - "httpMethod": "POST", - "parameters": { - "resource": { - "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.", - "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}:setIamPolicy", - "path": "v1/{+resource}:setIamPolicy", - "id": "spanner.projects.instances.databases.setIamPolicy", - "description": "Sets the access control policy on a database resource. Replaces any\nexisting policy.\n\nAuthorization requires `spanner.databases.setIamPolicy` permission on\nresource.", - "request": { - "$ref": "SetIamPolicyRequest" - } + "id": "spanner.projects.instances.databases.list", + "description": "Lists Cloud Spanner databases." }, "create": { + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases", + "path": "v1/{+parent}/databases", + "id": "spanner.projects.instances.databases.create", + "request": { + "$ref": "CreateDatabaseRequest" + }, + "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.", "response": { "$ref": "Operation" }, @@ -1741,23 +359,15 @@ "pattern": "^projects/[^/]+/instances/[^/]+$", "location": "path" } - }, - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases", - "path": "v1/{+parent}/databases", - "id": "spanner.projects.instances.databases.create", - "request": { - "$ref": "CreateDatabaseRequest" - }, - "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." + } }, - "getIamPolicy": { - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}:getIamPolicy", - "path": "v1/{+resource}:getIamPolicy", - "id": "spanner.projects.instances.databases.getIamPolicy", + "setIamPolicy": { + "path": "v1/{+resource}:setIamPolicy", + "id": "spanner.projects.instances.databases.setIamPolicy", + "description": "Sets the access control policy on a database resource. Replaces any\nexisting policy.\n\nAuthorization requires `spanner.databases.setIamPolicy` permission on\nresource.", "request": { - "$ref": "GetIamPolicyRequest" + "$ref": "SetIamPolicyRequest" }, - "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" }, @@ -1765,10 +375,29 @@ "resource" ], "httpMethod": "POST", + "parameters": { + "resource": { + "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.", + "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}:setIamPolicy" + }, + "getIamPolicy": { + "response": { + "$ref": "Policy" + }, + "parameterOrder": [ + "resource" + ], + "httpMethod": "POST", "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.", @@ -1777,9 +406,23 @@ "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", "location": "path" } + }, + "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", + "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.", + "request": { + "$ref": "GetIamPolicyRequest" } }, "get": { + "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.", "response": { "$ref": "Database" @@ -1788,24 +431,25 @@ "name" ], "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], "parameters": { "name": { + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", "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/[^/]+$" + "type": "string" } }, - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}", - "path": "v1/{+name}", - "id": "spanner.projects.instances.databases.get" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ] }, "dropDatabase": { + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}", + "path": "v1/{+database}", + "id": "spanner.projects.instances.databases.dropDatabase", + "description": "Drops (aka deletes) a Cloud Spanner database.", "response": { "$ref": "Empty" }, @@ -1825,52 +469,25 @@ "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", "location": "path" } - }, - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}", - "path": "v1/{+database}", - "id": "spanner.projects.instances.databases.dropDatabase", - "description": "Drops (aka deletes) a Cloud Spanner database." + } }, "updateDdl": { - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/ddl", - "path": "v1/{+database}/ddl", "id": "spanner.projects.instances.databases.updateDdl", + "path": "v1/{+database}/ddl", + "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" }, - "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.", - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "database" - ], "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "parameters": { - "database": { - "location": "path", - "description": "Required. The database to update.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$" - } - } - }, - "testIamPermissions": { - "httpMethod": "POST", "parameterOrder": [ - "resource" + "database" ], "response": { - "$ref": "TestIamPermissionsResponse" + "$ref": "Operation" }, "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.", + "database": { + "description": "Required. The database to update.", "required": true, "type": "string", "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", @@ -1881,151 +498,148 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.admin" ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}:testIamPermissions", - "id": "spanner.projects.instances.databases.testIamPermissions", - "path": "v1/{+resource}:testIamPermissions", + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/ddl" + }, + "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" - } - }, - "getDdl": { - "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.", - "response": { - "$ref": "GetDatabaseDdlResponse" }, - "parameterOrder": [ - "database" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "parameterOrder": [ + "resource" ], + "httpMethod": "POST", "parameters": { - "database": { + "resource": { + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", "location": "path", - "description": "Required. The database whose schema we wish to get.", + "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/[^/]+/databases/[^/]+$" + "type": "string" } }, - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/ddl" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ], + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}:testIamPermissions", + "path": "v1/{+resource}:testIamPermissions", + "id": "spanner.projects.instances.databases.testIamPermissions" } }, "resources": { "operations": { "methods": { - "cancel": { - "path": "v1/{+name}:cancel", - "id": "spanner.projects.instances.databases.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`.", + "list": { + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/operations", + "id": "spanner.projects.instances.databases.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": "Empty" + "$ref": "ListOperationsResponse" }, "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.", + "description": "The name of the operation's parent resource.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations$", "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": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/operations/{operationsId}:cancel" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ] }, - "delete": { + "get": { "response": { - "$ref": "Empty" + "$ref": "Operation" }, "parameterOrder": [ "name" ], - "httpMethod": "DELETE", + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.admin" ], "parameters": { "name": { - "location": "path", - "description": "The name of the operation resource to be deleted.", + "description": "The name of the operation resource.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations/[^/]+$" + "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", - "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`." + "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." }, - "list": { - "path": "v1/{+name}", - "id": "spanner.projects.instances.databases.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" - }, + "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`.", + "httpMethod": "POST", "parameterOrder": [ "name" ], - "httpMethod": "GET", + "response": { + "$ref": "Empty" + }, "parameters": { - "filter": { - "description": "The standard list filter.", - "type": "string", - "location": "query" - }, "name": { - "description": "The name of the operation's parent resource.", + "location": "path", + "description": "The name of the operation resource to be cancelled.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations$", - "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" + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations/[^/]+$" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.admin" ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/operations" + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/operations/{operationsId}:cancel" }, - "get": { + "delete": { "response": { - "$ref": "Operation" + "$ref": "Empty" }, "parameterOrder": [ "name" ], - "httpMethod": "GET", + "httpMethod": "DELETE", "parameters": { "name": { "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations/[^/]+$", "location": "path", - "description": "The name of the operation resource.", + "description": "The name of the operation resource to be deleted.", "required": true, "type": "string" } @@ -2036,18 +650,20 @@ ], "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/operations/{operationsId}", "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." + "id": "spanner.projects.instances.databases.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`." } } }, "sessions": { "methods": { - "executeSql": { + "read": { + "path": "v1/{+session}:read", + "id": "spanner.projects.instances.databases.sessions.read", "request": { - "$ref": "ExecuteSqlRequest" + "$ref": "ReadRequest" }, - "description": "Executes an SQL statement, returning all results 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\nOperations 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.", + "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" }, @@ -2059,6 +675,110 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.data" ], + "parameters": { + "session": { + "description": "Required. The session in which the read should be performed.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", + "location": "path" + } + }, + "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.", + "httpMethod": "GET", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Session" + }, + "parameters": { + "name": { + "description": "Required. The name of the session to retrieve.", + "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}", + "id": "spanner.projects.instances.databases.sessions.get", + "path": "v1/{+name}" + }, + "delete": { + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.data" + ], + "parameters": { + "name": { + "description": "Required. The name of the session to delete.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}", + "path": "v1/{+name}", + "id": "spanner.projects.instances.databases.sessions.delete", + "description": "Ends a session, releasing server resources associated with it." + }, + "commit": { + "parameters": { + "session": { + "location": "path", + "description": "Required. The session in which the transaction to be committed 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}:commit", + "path": "v1/{+session}:commit", + "id": "spanner.projects.instances.databases.sessions.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.", + "request": { + "$ref": "CommitRequest" + }, + "response": { + "$ref": "CommitResponse" + }, + "parameterOrder": [ + "session" + ], + "httpMethod": "POST" + }, + "executeSql": { + "httpMethod": "POST", + "parameterOrder": [ + "session" + ], + "response": { + "$ref": "ResultSet" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.data" + ], "parameters": { "session": { "description": "Required. The session in which the SQL query should be performed.", @@ -2069,13 +789,14 @@ } }, "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:executeSql", + "id": "spanner.projects.instances.databases.sessions.executeSql", "path": "v1/{+session}:executeSql", - "id": "spanner.projects.instances.databases.sessions.executeSql" + "request": { + "$ref": "ExecuteSqlRequest" + }, + "description": "Executes an SQL statement, returning all results 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\nOperations 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." }, "rollback": { - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:rollback", - "path": "v1/{+session}:rollback", - "id": "spanner.projects.instances.databases.sessions.rollback", "request": { "$ref": "RollbackRequest" }, @@ -2093,29 +814,36 @@ ], "parameters": { "session": { - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", "location": "path", "description": "Required. The session in which the transaction to roll back is running.", "required": true, - "type": "string" + "type": "string", + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$" } - } + }, + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:rollback", + "path": "v1/{+session}:rollback", + "id": "spanner.projects.instances.databases.sessions.rollback" }, "partitionQuery": { - "response": { - "$ref": "PartitionResponse" + "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.", + "request": { + "$ref": "PartitionQueryRequest" }, + "httpMethod": "POST", "parameterOrder": [ "session" ], - "httpMethod": "POST", + "response": { + "$ref": "PartitionResponse" + }, "parameters": { "session": { - "location": "path", - "description": "Required. The session used to create the partitions.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$" + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", + "location": "path", + "description": "Required. The session used to create the partitions." } }, "scopes": [ @@ -2123,16 +851,10 @@ "https://www.googleapis.com/auth/spanner.data" ], "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:partitionQuery", - "path": "v1/{+session}:partitionQuery", "id": "spanner.projects.instances.databases.sessions.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.", - "request": { - "$ref": "PartitionQueryRequest" - } + "path": "v1/{+session}:partitionQuery" }, "partitionRead": { - "path": "v1/{+session}:partitionRead", - "id": "spanner.projects.instances.databases.sessions.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.", "request": { "$ref": "PartitionReadRequest" @@ -2157,7 +879,9 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.data" ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:partitionRead" + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:partitionRead", + "path": "v1/{+session}:partitionRead", + "id": "spanner.projects.instances.databases.sessions.partitionRead" }, "beginTransaction": { "response": { @@ -2167,10 +891,6 @@ "session" ], "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.data" - ], "parameters": { "session": { "description": "Required. The session in which the transaction runs.", @@ -2180,29 +900,26 @@ "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}: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.", "request": { "$ref": "BeginTransactionRequest" - }, - "description": "Begins a new transaction. This step can often be skipped:\nRead, ExecuteSql and\nCommit can begin a new transaction as a\nside-effect." + } }, "executeStreamingSql": { - "httpMethod": "POST", - "parameterOrder": [ - "session" - ], - "response": { - "$ref": "PartialResultSet" - }, "parameters": { "session": { + "location": "path", "description": "Required. The session in which the SQL query should be performed.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$" } }, "scopes": [ @@ -2210,14 +927,23 @@ "https://www.googleapis.com/auth/spanner.data" ], "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:executeStreamingSql", - "id": "spanner.projects.instances.databases.sessions.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" }, "list": { + "path": "v1/{+database}/sessions", + "id": "spanner.projects.instances.databases.sessions.list", "description": "Lists all sessions in a given database.", "response": { "$ref": "ListSessionsResponse" @@ -2226,40 +952,40 @@ "database" ], "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.data" + ], "parameters": { - "pageSize": { + "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\".", + "type": "string", + "location": "query" + }, + "pageToken": { + "type": "string", "location": "query", + "description": "If non-empty, `page_token` should contain a\nnext_page_token from a previous\nListSessionsResponse." + }, + "pageSize": { "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", - "type": "integer" + "type": "integer", + "location": "query" }, "database": { - "description": "Required. The database in which to list sessions.", "required": true, "type": "string", "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\".", - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "If non-empty, `page_token` should contain a\nnext_page_token from a previous\nListSessionsResponse.", - "type": "string" + "location": "path", + "description": "Required. The database in which to list 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", - "path": "v1/{+database}/sessions", - "id": "spanner.projects.instances.databases.sessions.list" + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions" }, "streamingRead": { + "id": "spanner.projects.instances.databases.sessions.streamingRead", + "path": "v1/{+session}: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.", "request": { "$ref": "ReadRequest" @@ -2273,26 +999,20 @@ }, "parameters": { "session": { - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$", - "location": "path", "description": "Required. The session in which the read should be performed.", "required": true, - "type": "string" + "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", - "id": "spanner.projects.instances.databases.sessions.streamingRead", - "path": "v1/{+session}:streamingRead" + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:streamingRead" }, "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" }, @@ -2306,126 +1026,20 @@ ], "parameters": { "database": { - "location": "path", - "description": "Required. The database in which the new session is created.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$" + "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+$", + "location": "path", + "description": "Required. The database in which the new session is created." } }, "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions", "path": "v1/{+database}/sessions", - "id": "spanner.projects.instances.databases.sessions.create" - }, - "read": { - "httpMethod": "POST", - "parameterOrder": [ - "session" - ], - "response": { - "$ref": "ResultSet" - }, - "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", - "id": "spanner.projects.instances.databases.sessions.read", - "path": "v1/{+session}: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.", - "request": { - "$ref": "ReadRequest" - } - }, - "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": { - "location": "path", - "description": "Required. The name of the session to retrieve.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/instances/[^/]+/databases/[^/]+/sessions/[^/]+$" - } - }, - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}", - "path": "v1/{+name}", - "id": "spanner.projects.instances.databases.sessions.get" - }, - "delete": { - "description": "Ends a session, releasing server resources associated with it.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "description": "Required. The name of the session to delete.", - "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}", - "path": "v1/{+name}", - "id": "spanner.projects.instances.databases.sessions.delete" - }, - "commit": { + "id": "spanner.projects.instances.databases.sessions.create", "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.", - "response": { - "$ref": "CommitResponse" - }, - "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 transaction to be committed is running.", - "required": true, - "type": "string" - } + "$ref": "CreateSessionRequest" }, - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/databases/{databasesId}/sessions/{sessionsId}:commit", - "path": "v1/{+session}:commit", - "id": "spanner.projects.instances.databases.sessions.commit" + "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\"`." } } } @@ -2433,6 +1047,58 @@ }, "operations": { "methods": { + "cancel": { + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Empty" + }, + "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", + "pattern": "^projects/[^/]+/instances/[^/]+/operations/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/operations/{operationsId}:cancel", + "id": "spanner.projects.instances.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`." + }, + "delete": { + "parameters": { + "name": { + "location": "path", + "description": "The name of the operation resource to be deleted.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/instances/[^/]+/operations/[^/]+$" + } + }, + "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.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" + }, "list": { "response": { "$ref": "ListOperationsResponse" @@ -2441,220 +1107,1554 @@ "name" ], "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ], "parameters": { - "pageSize": { - "description": "The standard list page size.", - "format": "int32", - "type": "integer", - "location": "query" - }, "filter": { + "location": "query", "description": "The standard list filter.", - "type": "string", - "location": "query" + "type": "string" }, "name": { + "required": true, + "type": "string", "pattern": "^projects/[^/]+/instances/[^/]+/operations$", "location": "path", - "description": "The name of the operation's parent resource.", - "required": true, - "type": "string" + "description": "The name of the operation's parent resource." }, "pageToken": { - "location": "query", "description": "The standard list page token.", - "type": "string" + "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", - "https://www.googleapis.com/auth/spanner.admin" - ], "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/operations", "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." }, "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", "response": { "$ref": "Operation" }, "parameterOrder": [ "name" ], - "parameters": { - "name": { - "description": "The name of the operation resource.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/instances/[^/]+/operations/[^/]+$", - "location": "path" - } - }, + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/spanner.admin" ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/operations/{operationsId}", - "id": "spanner.projects.instances.operations.get", - "path": "v1/{+name}" - }, - "cancel": { - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Empty" - }, "parameters": { "name": { - "description": "The name of the operation resource to be cancelled.", + "description": "The name of the operation resource.", "required": true, "type": "string", "pattern": "^projects/[^/]+/instances/[^/]+/operations/[^/]+$", "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/spanner.admin" - ], - "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/operations/{operationsId}:cancel", - "id": "spanner.projects.instances.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`." - }, - "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`.", - "httpMethod": "DELETE", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "name": { - "pattern": "^projects/[^/]+/instances/[^/]+/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", - "https://www.googleapis.com/auth/spanner.admin" - ], "flatPath": "v1/projects/{projectsId}/instances/{instancesId}/operations/{operationsId}", - "id": "spanner.projects.instances.operations.delete", - "path": "v1/{+name}" + "path": "v1/{+name}", + "id": "spanner.projects.instances.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." } } } } + }, + "instanceConfigs": { + "methods": { + "list": { + "description": "Lists the supported instance configurations for a given project.", + "httpMethod": "GET", + "parameterOrder": [ + "parent" + ], + "response": { + "$ref": "ListInstanceConfigsResponse" + }, + "parameters": { + "pageToken": { + "location": "query", + "description": "If non-empty, `page_token` should contain a\nnext_page_token\nfrom a previous ListInstanceConfigsResponse.", + "type": "string" + }, + "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": { + "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", + "pattern": "^projects/[^/]+$" + } + }, + "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" + }, + "get": { + "httpMethod": "GET", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "InstanceConfig" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/spanner.admin" + ], + "parameters": { + "name": { + "pattern": "^projects/[^/]+/instanceConfigs/[^/]+$", + "location": "path", + "description": "Required. The name of the requested instance configuration. Values are of\nthe form `projects/\u003cproject\u003e/instanceConfigs/\u003cconfig\u003e`.", + "required": true, + "type": "string" + } + }, + "flatPath": "v1/projects/{projectsId}/instanceConfigs/{instanceConfigsId}", + "id": "spanner.projects.instanceConfigs.get", + "path": "v1/{+name}", + "description": "Gets information about a particular instance configuration." + } + } + } + } + } + }, + "parameters": { + "bearer_token": { + "location": "query", + "description": "OAuth bearer token.", + "type": "string" + }, + "oauth_token": { + "type": "string", + "location": "query", + "description": "OAuth 2.0 token for the current user." + }, + "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" + }, + "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": { + "description": "Pretty-print response.", + "type": "boolean", + "default": "true", + "location": "query" + } + }, + "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": "20180417", + "documentationLink": "https://cloud.google.com/spanner/", + "id": "spanner:v1", + "discoveryVersion": "v1", + "version_module": true, + "schemas": { + "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "type": "object", + "properties": { + "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\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\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" + }, + "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" + }, + "ResultSet": { + "properties": { + "stats": { + "description": "Query plan and execution statistics for the SQL statement that\nproduced this result 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" + } + } + }, + "metadata": { + "description": "Metadata about the result set, such as row type information.", + "$ref": "ResultSetMetadata" + } + }, + "id": "ResultSet", + "description": "Results from Read or\nExecuteSql.", + "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": { + "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." + } + } + }, + "CreateSessionRequest": { + "description": "The request for CreateSession.", + "type": "object", + "properties": { + "session": { + "$ref": "Session", + "description": "The session to create." + } + }, + "id": "CreateSessionRequest" + }, + "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", + "properties": { + "statements": { + "type": "array", + "items": { + "type": "string" + }, + "description": "DDL statements to be applied to the database." + }, + "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`.", + "type": "string" + } + }, + "id": "UpdateDatabaseDdlRequest" + }, + "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" + } + } + }, + "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", + "properties": { + "stats": { + "$ref": "ResultSetStats", + "description": "Query plan and execution statistics for the statement 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." + }, + "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": { + "description": "Metadata about the result set, such as row type information.\nOnly present in the first response.", + "$ref": "ResultSetMetadata" + }, + "values": { + "type": "array", + "items": { + "type": "any" + }, + "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\"`." + }, + "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" + } + }, + "id": "PartialResultSet" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "type": "object", + "properties": { + "operations": { + "type": "array", + "items": { + "$ref": "Operation" + }, + "description": "A list of operations that matches the specified filter in the request." + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + } + }, + "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": { + "$ref": "Instance", + "description": "The desired end state of the update." + }, + "startTime": { + "description": "The time at which UpdateInstance\nrequest was received.", + "format": "google-datetime", + "type": "string" + } + }, + "id": "UpdateInstanceMetadata" + }, + "ResultSetMetadata": { + "id": "ResultSetMetadata", + "description": "Metadata about a ResultSet or PartialResultSet.", + "type": "object", + "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": { + "description": "If the read or SQL query began a transaction as a side-effect, the\ninformation about the new transaction is yielded here.", + "$ref": "Transaction" + } + } + }, + "Partition": { + "description": "Information returned for each partition returned in a\nPartitionResponse.", + "type": "object", + "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" + } + }, + "id": "Partition" + }, + "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": { + "id": { + "type": "string", + "description": "Execute the read or SQL query in a previously-started transaction.", + "format": "byte" + }, + "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." + }, + "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": "TransactionSelector" + }, + "KeySet": { + "id": "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": { + "ranges": { + "type": "array", + "items": { + "$ref": "KeyRange" + }, + "description": "A list of key ranges. See KeyRange for more information about\nkey range specifications." + }, + "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" + } + } + }, + "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": { + "update": { + "description": "Update existing rows in a table. If any of the rows does not\nalready exist, the transaction fails with error `NOT_FOUND`.", + "$ref": "Write" + }, + "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" + }, + "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." + } + }, + "id": "Mutation" + }, + "GetDatabaseDdlResponse": { + "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", + "description": "The response for GetDatabaseDdl." + }, + "Database": { + "description": "A Cloud Spanner database.", + "type": "object", + "properties": { + "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." + ], + "enum": [ + "STATE_UNSPECIFIED", + "CREATING", + "READY" + ], + "description": "Output only. The current database state." + }, + "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" + }, + "Instance": { + "description": "An isolated set of Cloud Spanner resources on which databases can be hosted.", + "type": "object", + "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.", + "format": "int32", + "type": "integer" + }, + "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" + }, + "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": { + "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" + ], + "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" + }, + "name": { + "type": "string", + "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." + } + }, + "id": "Instance" + }, + "ListDatabasesResponse": { + "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", + "items": { + "$ref": "Database" + } + } + }, + "id": "ListDatabasesResponse", + "description": "The response for ListDatabases.", + "type": "object" + }, + "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" + } + }, + "id": "SetIamPolicyRequest", + "description": "Request message for `SetIamPolicy` method.", + "type": "object" + }, + "RollbackRequest": { + "type": "object", + "properties": { + "transactionId": { + "description": "Required. The transaction to roll back.", + "format": "byte", + "type": "string" + } + }, + "id": "RollbackRequest", + "description": "The request for Rollback." + }, + "Transaction": { + "description": "A transaction.", + "type": "object", + "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" + }, + "UpdateDatabaseDdlMetadata": { + "description": "Metadata type for the operation returned by\nUpdateDatabaseDdl.", + "type": "object", + "properties": { + "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": { + "type": "array", + "items": { + "format": "google-datetime", + "type": "string" + }, + "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]`." + }, + "database": { + "description": "The database being modified.", + "type": "string" + } + }, + "id": "UpdateDatabaseDdlMetadata" + }, + "PartitionResponse": { + "id": "PartitionResponse", + "description": "The response for PartitionQuery\nor PartitionRead", + "type": "object", + "properties": { + "transaction": { + "$ref": "Transaction", + "description": "Transaction created by this request." + }, + "partitions": { + "type": "array", + "items": { + "$ref": "Partition" + }, + "description": "Partitions created by this request." + } + } + }, + "StructType": { + "description": "`StructType` defines the fields of a STRUCT type.", + "type": "object", + "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" + }, + "QueryPlan": { + "properties": { + "planNodes": { + "type": "array", + "items": { + "$ref": "PlanNode" + }, + "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`." + } + }, + "id": "QueryPlan", + "description": "Contains an ordered list of nodes appearing in the query plan.", + "type": "object" + }, + "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": { + "description": "The type of the field.", + "$ref": "Type" + } + }, + "id": "Field" + }, + "TestIamPermissionsRequest": { + "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", + "description": "Request message for `TestIamPermissions` method." + }, + "ResultSetStats": { + "description": "Additional statistics about a ResultSet or PartialResultSet.", + "type": "object", + "properties": { + "queryPlan": { + "$ref": "QueryPlan", + "description": "QueryPlan for the query associated with this result." + }, + "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" + } + } + }, + "id": "ResultSetStats" + }, + "CommitResponse": { + "properties": { + "commitTimestamp": { + "description": "The Cloud Spanner timestamp at which the transaction committed.", + "format": "google-datetime", + "type": "string" + } + }, + "id": "CommitResponse", + "description": "The response for Commit.", + "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.", + "type": "object", + "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": { + "enum": [ + "TYPE_CODE_UNSPECIFIED", + "BOOL", + "INT64", + "FLOAT64", + "TIMESTAMP", + "DATE", + "STRING", + "BYTES", + "ARRAY", + "STRUCT" + ], + "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\"`.\n\nIf the schema has the column option\n`allow_commit_timestamp=true`, the placeholder string\n`\"spanner.commit_timestamp()\"` can be used to instruct the system\nto insert the commit timestamp associated with the transaction\ncommit.", + "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]." + ] + } + }, + "id": "Type" + }, + "PlanNode": { + "type": "object", + "properties": { + "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": { + "type": "object", + "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." + }, + "shortRepresentation": { + "$ref": "ShortRepresentation", + "description": "Condensed representation for SCALAR nodes." + }, + "index": { + "description": "The `PlanNode`'s index in node list.", + "format": "int32", + "type": "integer" + }, + "displayName": { + "description": "The display name for the node.", + "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" + } + } + }, + "id": "PlanNode", + "description": "Node information for nodes appearing in a QueryPlan.plan_nodes." + }, + "CreateInstanceMetadata": { + "description": "Metadata type for the operation returned by\nCreateInstance.", + "type": "object", + "properties": { + "cancelTime": { + "type": "string", + "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" + }, + "endTime": { + "description": "The time at which this operation failed or was completed successfully.", + "format": "google-datetime", + "type": "string" + }, + "instance": { + "$ref": "Instance", + "description": "The instance being created." + }, + "startTime": { + "description": "The time at which the\nCreateInstance request was\nreceived.", + "format": "google-datetime", + "type": "string" + } + }, + "id": "CreateInstanceMetadata" + }, + "PartitionOptions": { + "type": "object", + "properties": { + "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" + }, + "maxPartitions": { + "type": "string", + "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" + } + }, + "id": "PartitionOptions", + "description": "Options for a PartitionQueryRequest and\nPartitionReadRequest." + }, + "ChildLink": { + "type": "object", + "properties": { + "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.", + "type": "string" + }, + "childIndex": { + "description": "The node to which the link points.", + "format": "int32", + "type": "integer" + }, + "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": "ChildLink", + "description": "Metadata associated with a parent-child relationship appearing in a\nPlanNode." + }, + "PartitionReadRequest": { + "description": "The request for PartitionRead", + "type": "object", + "properties": { + "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." + }, + "columns": { + "description": "The columns of table to be returned for each row matching\nthis request.", + "type": "array", + "items": { + "type": "string" + } + }, + "transaction": { + "description": "Read only snapshot transactions are supported, read/write and single use\ntransactions are not.", + "$ref": "TransactionSelector" + }, + "table": { + "type": "string", + "description": "Required. The name of the table in the database to be read." + }, + "partitionOptions": { + "$ref": "PartitionOptions", + "description": "Additional options that affect how many partitions are created." + } + }, + "id": "PartitionReadRequest" + }, + "Delete": { + "type": "object", + "properties": { + "table": { + "description": "Required. The table whose rows will be deleted.", + "type": "string" + }, + "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." + } + }, + "id": "Delete", + "description": "Arguments to delete operations." + }, + "CommitRequest": { + "description": "The request for Commit.", + "type": "object", + "properties": { + "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." + }, + "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" + } + }, + "transactionId": { + "description": "Commit a previously-started transaction.", + "format": "byte", + "type": "string" + } + }, + "id": "CommitRequest" + }, + "BeginTransactionRequest": { + "properties": { + "options": { + "$ref": "TransactionOptions", + "description": "Required. Options for the new transaction." + } + }, + "id": "BeginTransactionRequest", + "description": "The request for BeginTransaction.", + "type": "object" + }, + "ListInstanceConfigsResponse": { + "description": "The response for ListInstanceConfigs.", + "type": "object", + "properties": { + "nextPageToken": { + "type": "string", + "description": "`next_page_token` can be sent in a subsequent\nListInstanceConfigs call to\nfetch more of the matching instance configurations." + }, + "instanceConfigs": { + "description": "The list of requested instance configurations.", + "type": "array", + "items": { + "$ref": "InstanceConfig" + } + } + }, + "id": "ListInstanceConfigsResponse" + }, + "GetIamPolicyRequest": { + "description": "Request message for `GetIamPolicy` method.", + "type": "object", + "properties": {}, + "id": "GetIamPolicyRequest" + }, + "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" + }, + "CreateDatabaseMetadata": { + "description": "Metadata type for the operation returned by\nCreateDatabase.", + "type": "object", + "properties": { + "database": { + "description": "The database being created.", + "type": "string" + } + }, + "id": "CreateDatabaseMetadata" + }, + "ListSessionsResponse": { + "description": "The response for ListSessions.", + "type": "object", + "properties": { + "nextPageToken": { + "description": "`next_page_token` can be sent in a subsequent\nListSessions call to fetch more of the matching\nsessions.", + "type": "string" + }, + "sessions": { + "description": "The list of requested sessions.", + "type": "array", + "items": { + "$ref": "Session" + } + } + }, + "id": "ListSessionsResponse" + }, + "Session": { + "type": "object", + "properties": { + "labels": { + "additionalProperties": { + "type": "string" + }, + "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", + "description": "A session in the Cloud Spanner API." + }, + "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" + }, + "ListInstancesResponse": { + "description": "The response for ListInstances.", + "type": "object", + "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" + } + } + }, + "id": "ListInstancesResponse" + }, + "ShortRepresentation": { + "id": "ShortRepresentation", + "description": "Condensed representation of a node and its subtree. Only present for\n`SCALAR` PlanNode(s).", + "type": "object", + "properties": { + "subqueries": { + "description": "A mapping of (subquery variable name) -\u003e (subquery node id) for cases\nwhere the `description` string of this node references a `SCALAR`\nsubquery contained in the expression subtree rooted at this node. The\nreferenced `SCALAR` subquery may not necessarily be a direct child of\nthis node.", + "type": "object", + "additionalProperties": { + "format": "int32", + "type": "integer" + } + }, + "description": { + "description": "A string representation of the expression subtree rooted at this node.", + "type": "string" } } - } - }, - "parameters": { - "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" + "InstanceConfig": { + "description": "A possible configuration for a Cloud Spanner instance. Configurations\ndefine the geographic placement of nodes and their replication.", + "type": "object", + "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" }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" + "PartitionQueryRequest": { + "type": "object", + "properties": { + "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." + }, + "partitionOptions": { + "$ref": "PartitionOptions", + "description": "Additional options that affect how many partitions are created." + }, + "params": { + "additionalProperties": { + "type": "any", + "description": "Properties of the object." + }, + "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" + }, + "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" + } + }, + "id": "PartitionQueryRequest", + "description": "The request for PartitionQuery" }, - "$.xgafv": { - "enum": [ - "1", - "2" - ], - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query" + "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" }, - "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" + "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": {} + }, + "TransactionOptions": { + "properties": { + "readWrite": { + "description": "Transaction may write.\n\nAuthorization to begin a read-write transaction requires\n`spanner.databases.beginOrRollbackReadWriteTransaction` permission\non the `session` resource.", + "$ref": "ReadWrite" + }, + "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." + } + }, + "id": "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\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`.\n\n##", + "type": "object" }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" + "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" }, - "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" + "CreateInstanceRequest": { + "description": "The request for CreateInstance.", + "type": "object", + "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" }, - "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" + "ReadOnly": { + "description": "Message type to initiate a read-only transaction.", + "type": "object", + "properties": { + "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" + }, + "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" + }, + "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" + }, + "strong": { + "description": "Read at a timestamp where all previously committed transactions\nare visible.", + "type": "boolean" + } + }, + "id": "ReadOnly" }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" + "ExecuteSqlRequest": { + "type": "object", + "properties": { + "params": { + "type": "object", + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "The SQL 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 statement 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." + }, + "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.", + "type": "string", + "enumDescriptions": [ + "The default mode. Only the statement results are returned.", + "This mode returns only the query plan, without any results or\nexecution statistics information.", + "This mode returns both the query plan and the execution statistics along\nwith the results." + ], + "enum": [ + "NORMAL", + "PLAN", + "PROFILE" + ] + }, + "transaction": { + "description": "The transaction to use. If none is provided, the default is a\ntemporary read-only transaction with strong concurrency.", + "$ref": "TransactionSelector" + }, + "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" + }, + "resumeToken": { + "description": "If this request is resuming a previously interrupted SQL statement\nexecution, `resume_token` should be copied from the last\nPartialResultSet yielded before the interruption. Doing this\nenables the new SQL statement 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": { + "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 statement parameters. See the\ndefinition of Type for more information\nabout SQL types.", + "type": "object" + }, + "sql": { + "type": "string", + "description": "Required. The SQL string." + } + }, + "id": "ExecuteSqlRequest", + "description": "The request for ExecuteSql and\nExecuteStreamingSql." }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" + "Policy": { + "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", + "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**JSON 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\n**YAML Example**\n\n bindings:\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 role: roles/owner\n - members:\n - user:sean@example.com\n role: roles/viewer\n\n\nFor a description of IAM and its features, see the\n[IAM developer's guide](https://cloud.google.com/iam/docs)." }, - "oauth_token": { - "description": "OAuth 2.0 token for the current user.", - "type": "string", - "location": "query" + "ReadRequest": { + "description": "The request for Read and\nStreamingRead.", + "type": "object", + "properties": { + "columns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The columns of table to be returned for each row matching\nthis request." + }, + "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" + }, + "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" + }, + "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. A limit cannot be specified if\n`partition_token` is set.", + "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": { + "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.", + "$ref": "KeySet" + } + }, + "id": "ReadRequest" }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" + "Write": { + "description": "Arguments to insert, update, insert_or_update, and\nreplace operations.", + "type": "object", + "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.", + "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" + } + } + }, + "table": { + "description": "Required. The table whose rows will be written.", + "type": "string" + } + }, + "id": "Write" }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" + "ReadWrite": { + "description": "Message type to initiate a read-write transaction. Currently this\ntransaction type has no options.", + "type": "object", + "properties": {}, + "id": "ReadWrite" } }, - "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": "", - "id": "spanner:v1", - "documentationLink": "https://cloud.google.com/spanner/", - "revision": "20180417" + "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": "Spanner" } diff --git a/DiscoveryJson/speech_v1.json b/DiscoveryJson/speech_v1.json index 71c4424573..1c911f9f9e 100644 --- a/DiscoveryJson/speech_v1.json +++ b/DiscoveryJson/speech_v1.json @@ -1,168 +1,7 @@ { - "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": { - "description": "The name of the operation resource.", - "required": true, - "type": "string", - "pattern": "^[^/]+$", - "location": "path" - } - } - } - } - }, - "speech": { - "methods": { - "longrunningrecognize": { - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "Operation" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/speech:longrunningrecognize", - "id": "speech.speech.longrunningrecognize", - "path": "v1/speech: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.", - "request": { - "$ref": "LongRunningRecognizeRequest" - } - }, - "recognize": { - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "RecognizeResponse" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/speech:recognize", - "id": "speech.speech.recognize", - "path": "v1/speech:recognize", - "description": "Performs synchronous speech recognition: receive results after all audio\nhas been sent and processed.", - "request": { - "$ref": "RecognizeRequest" - } - } - } - } - }, - "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": { - "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" - }, - "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" - } - }, - "version": "v1", - "baseUrl": "https://speech.googleapis.com/", "servicePath": "", - "description": "Converts audio to text by applying powerful neural network models.", "kind": "discovery#restDescription", + "description": "Converts audio to text by applying powerful neural network models.", "basePath": "", "id": "speech:v1", "documentationLink": "https://cloud.google.com/speech/", @@ -171,48 +10,47 @@ "version_module": true, "schemas": { "RecognizeRequest": { + "description": "The top-level message sent by the client for the `Recognize` method.", + "type": "object", "properties": { "config": { - "description": "*Required* Provides information to the recognizer that specifies how to\nprocess the request.", - "$ref": "RecognitionConfig" + "$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" + "$ref": "RecognitionAudio", + "description": "*Required* The audio data to be recognized." } }, - "id": "RecognizeRequest", - "description": "The top-level message sent by the client for the `Recognize` method.", - "type": "object" + "id": "RecognizeRequest" }, - "SpeechContext": { + "SpeechRecognitionAlternative": { + "description": "Alternative hypotheses (a.k.a. n-best list).", + "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).", + "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.\nNote: When enable_speaker_diarization is true, you will see all the words\nfrom the beginning of the audio.", "type": "array", "items": { - "type": "string" + "$ref": "WordInfo" } + }, + "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" } }, - "id": "SpeechContext", - "description": "Provides \"hints\" to the speech recognizer to favor specific words and phrases\nin the results.", - "type": "object" + "id": "SpeechRecognitionAlternative" }, "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork 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\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" @@ -228,34 +66,35 @@ "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" + }, + "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" + "id": "Operation" }, - "SpeechRecognitionAlternative": { - "description": "Alternative hypotheses (a.k.a. n-best list).", + "SpeechContext": { + "description": "Provides \"hints\" to the speech recognizer to favor specific words and phrases\nin the results.", "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 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.", - "type": "string" - }, - "words": { - "description": "Output only. A list of word-specific information for each recognized word.\nNote: When enable_speaker_diarization is true, you will see all the words\nfrom the beginning of the audio.", + "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": { - "$ref": "WordInfo" + "type": "string" } } }, - "id": "SpeechRecognitionAlternative" + "id": "SpeechContext" }, "SpeechRecognitionResult": { "description": "A speech recognition result corresponding to a portion of the audio.", @@ -272,18 +111,7 @@ "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" - }, - "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" @@ -327,14 +155,30 @@ "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" } }, - "id": "RecognitionConfig" + "id": "RecognitionConfig", + "description": "Provides information to the recognizer that specifies how to process the\nrequest.", + "type": "object" }, "WordInfo": { "description": "Word-specific information for recognized words.", "type": "object", "properties": { + "speakerTag": { + "description": "Output only. A distinct integer value is assigned for every speaker within\nthe audio. This field specifies which one of those speakers was detected to\nhave spoken this word. Value ranges from '1' to diarization_speaker_count.\nspeaker_tag is set if enable_speaker_diarization = 'true' and only in the\ntop alternative.", + "format": "int32", + "type": "integer" + }, "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", @@ -346,13 +190,8 @@ "type": "string" }, "word": { - "description": "Output only. The word corresponding to this set of information.", - "type": "string" - }, - "speakerTag": { - "description": "Output only. A distinct integer value is assigned for every speaker within\nthe audio. This field specifies which one of those speakers was detected to\nhave spoken this word. Value ranges from '1' to diarization_speaker_count.\nspeaker_tag is set if enable_speaker_diarization = 'true' and only in the\ntop alternative.", - "format": "int32", - "type": "integer" + "type": "string", + "description": "Output only. The word corresponding to this set of information." } }, "id": "WordInfo" @@ -361,14 +200,14 @@ "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", "properties": { + "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" + }, "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" @@ -381,11 +220,11 @@ "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": "object" + } } }, "code": { @@ -401,19 +240,19 @@ "id": "Status" }, "LongRunningRecognizeRequest": { - "description": "The top-level message sent by the client for the `LongRunningRecognize`\nmethod.", - "type": "object", "properties": { "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" + "$ref": "RecognitionAudio", + "description": "*Required* The audio data to be recognized." } }, - "id": "LongRunningRecognizeRequest" + "id": "LongRunningRecognizeRequest", + "description": "The top-level message sent by the client for the `LongRunningRecognize`\nmethod.", + "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.", @@ -430,11 +269,11 @@ "id": "RecognizeResponse" } }, - "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" }, + "protocol": "rest", "canonicalName": "Speech", "auth": { "oauth2": { @@ -451,5 +290,166 @@ "batchPath": "batch", "fullyEncodeReservedExpansion": true, "title": "Cloud Speech API", - "ownerName": "Google" + "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": { + "location": "path", + "description": "The name of the operation resource.", + "required": true, + "type": "string", + "pattern": "^[^/]+$" + } + } + } + } + }, + "speech": { + "methods": { + "longrunningrecognize": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/speech:longrunningrecognize", + "path": "v1/speech:longrunningrecognize", + "id": "speech.speech.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.", + "request": { + "$ref": "LongRunningRecognizeRequest" + } + }, + "recognize": { + "request": { + "$ref": "RecognizeRequest" + }, + "description": "Performs synchronous speech recognition: receive results after all audio\nhas been sent and processed.", + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "RecognizeResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": {}, + "flatPath": "v1/speech:recognize", + "id": "speech.speech.recognize", + "path": "v1/speech:recognize" + } + } + } + }, + "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": { + "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": { + "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": { + "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": "v1", + "baseUrl": "https://speech.googleapis.com/" } diff --git a/DiscoveryJson/speech_v1beta1.json b/DiscoveryJson/speech_v1beta1.json index 0c8db47c6a..05d1c97d60 100644 --- a/DiscoveryJson/speech_v1beta1.json +++ b/DiscoveryJson/speech_v1beta1.json @@ -1,7 +1,9 @@ { - "servicePath": "", - "description": "Converts audio to text by applying powerful neural network models.", + "version": "v1beta1", + "baseUrl": "https://speech.googleapis.com/", "kind": "discovery#restDescription", + "description": "Converts audio to text by applying powerful neural network models.", + "servicePath": "", "basePath": "", "id": "speech:v1beta1", "documentationLink": "https://cloud.google.com/speech/", @@ -9,6 +11,93 @@ "discoveryVersion": "v1", "version_module": true, "schemas": { + "SyncRecognizeRequest": { + "description": "The top-level message sent by the client for the `SyncRecognize` method.", + "type": "object", + "properties": { + "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": "SyncRecognizeRequest" + }, + "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", + "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" + }, + "AsyncRecognizeRequest": { + "description": "The top-level message sent by the client for the `AsyncRecognize` method.", + "type": "object", + "properties": { + "config": { + "$ref": "RecognitionConfig", + "description": "*Required* Provides information to the recognizer that specifies how to\nprocess the request." + }, + "audio": { + "$ref": "RecognitionAudio", + "description": "*Required* The audio data to be recognized." + } + }, + "id": "AsyncRecognizeRequest" + }, + "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", + "properties": { + "results": { + "description": "*Output-only* Sequential list of transcription results corresponding to\nsequential portions of audio.", + "type": "array", + "items": { + "$ref": "SpeechRecognitionResult" + } + } + }, + "id": "SyncRecognizeResponse" + }, + "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" + }, "SpeechRecognitionAlternative": { "description": "Alternative hypotheses (a.k.a. n-best list).", "type": "object", @@ -29,22 +118,6 @@ "description": "This resource represents a long-running operation that is the result of a\nnetwork 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\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": { "additionalProperties": { "description": "Properties of the object. Contains field @type with type URL.", @@ -56,6 +129,22 @@ "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" } }, "id": "Operation" @@ -89,6 +178,8 @@ "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.", @@ -104,19 +195,15 @@ "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" }, + "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": [ @@ -126,103 +213,18 @@ "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." + ], + "enum": [ + "ENCODING_UNSPECIFIED", + "LINEAR16", + "FLAC", + "MULAW", + "AMR", + "AMR_WB" ] - }, - "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" - } - }, - "id": "RecognitionConfig", - "description": "Provides information to the recognizer that specifies how to process the\nrequest.", - "type": "object" - }, - "SyncRecognizeRequest": { - "properties": { - "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": "SyncRecognizeRequest", - "description": "The top-level message sent by the client for the `SyncRecognize` method.", - "type": "object" - }, - "RecognitionAudio": { - "properties": { - "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" - }, - "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" - } - }, - "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": { - "description": "The top-level message sent by the client for the `AsyncRecognize` method.", - "type": "object", - "properties": { - "config": { - "$ref": "RecognitionConfig", - "description": "*Required* Provides information to the recognizer that specifies how to\nprocess the request." - }, - "audio": { - "$ref": "RecognitionAudio", - "description": "*Required* The audio data to be recognized." - } - }, - "id": "AsyncRecognizeRequest" - }, - "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": { - "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.", - "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", - "properties": { - "results": { - "description": "*Output-only* Sequential list of transcription results corresponding to\nsequential portions of audio.", - "type": "array", - "items": { - "$ref": "SpeechRecognitionResult" - } - } - }, - "id": "SyncRecognizeResponse" + "id": "RecognitionConfig" } }, "icons": { @@ -248,50 +250,9 @@ "title": "Cloud Speech API", "ownerName": "Google", "resources": { - "speech": { - "methods": { - "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", - "description": "Performs synchronous speech recognition: receive results after all audio\nhas been sent and processed.", - "request": { - "$ref": "SyncRecognizeRequest" - } - }, - "asyncrecognize": { - "flatPath": "v1beta1/speech:asyncrecognize", - "id": "speech.speech.asyncrecognize", - "path": "v1beta1/speech: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.", - "request": { - "$ref": "AsyncRecognizeRequest" - }, - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "Operation" - }, - "parameters": {}, - "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.", "response": { "$ref": "Operation" }, @@ -313,7 +274,48 @@ ], "flatPath": "v1beta1/operations/{operationsId}", "path": "v1beta1/operations/{+name}", - "id": "speech.operations.get" + "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." + } + } + }, + "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.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": {}, + "flatPath": "v1beta1/speech:asyncrecognize", + "path": "v1beta1/speech:asyncrecognize", + "id": "speech.speech.asyncrecognize" + }, + "syncrecognize": { + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "SyncRecognizeResponse" + }, + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/speech:syncrecognize", + "id": "speech.speech.syncrecognize", + "path": "v1beta1/speech:syncrecognize", + "description": "Performs synchronous speech recognition: receive results after all audio\nhas been sent and processed.", + "request": { + "$ref": "SyncRecognizeRequest" + } } } } @@ -341,22 +343,22 @@ "type": "string" }, "$.xgafv": { + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", "enum": [ "1", "2" ], "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query" + "type": "string" }, "callback": { - "location": "query", "description": "JSONP", - "type": "string" + "type": "string", + "location": "query" }, "alt": { "enumDescriptions": [ @@ -375,9 +377,9 @@ "type": "string" }, "access_token": { - "location": "query", "description": "OAuth access token.", - "type": "string" + "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.", @@ -385,15 +387,15 @@ "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", - "location": "query" + "type": "string" }, "pp": { - "location": "query", "description": "Pretty-print response.", "type": "boolean", - "default": "true" + "default": "true", + "location": "query" }, "oauth_token": { "location": "query", @@ -405,7 +407,5 @@ "description": "OAuth bearer token.", "type": "string" } - }, - "version": "v1beta1", - "baseUrl": "https://speech.googleapis.com/" + } } diff --git a/DiscoveryJson/storagetransfer_v1.json b/DiscoveryJson/storagetransfer_v1.json index e45fe3ecfc..1fe9f12f1d 100644 --- a/DiscoveryJson/storagetransfer_v1.json +++ b/DiscoveryJson/storagetransfer_v1.json @@ -1,413 +1,412 @@ { - "parameters": { - "uploadType": { - "location": "query", - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" - }, - "fields": { - "type": "string", - "location": "query", - "description": "Selector specifying which fields to include in a partial response." - }, - "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": { - "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": { - "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": { - "description": "Pretty-print response.", - "type": "boolean", - "default": "true", - "location": "query" - }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - }, - "oauth_token": { - "type": "string", - "location": "query", - "description": "OAuth 2.0 token for the current user." - }, - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string", - "location": "query" + "version_module": true, + "resources": { + "googleServiceAccounts": { + "methods": { + "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.", + "response": { + "$ref": "GoogleServiceAccount" + }, + "parameterOrder": [ + "projectId" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "projectId": { + "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" + } + }, + "flatPath": "v1/googleServiceAccounts/{projectId}", + "path": "v1/googleServiceAccounts/{projectId}", + "id": "storagetransfer.googleServiceAccounts.get" + } + } }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" - } - }, - "schemas": { - "UpdateTransferJobRequest": { - "description": "Request passed to UpdateTransferJob.", - "type": "object", - "properties": { - "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." + "transferJobs": { + "methods": { + "patch": { + "response": { + "$ref": "TransferJob" + }, + "parameterOrder": [ + "jobName" + ], + "httpMethod": "PATCH", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "jobName": { + "description": "The name of job to update.\nRequired.", + "required": true, + "type": "string", + "pattern": "^transferJobs/.+$", + "location": "path" + } + }, + "flatPath": "v1/transferJobs/{transferJobsId}", + "path": "v1/{+jobName}", + "id": "storagetransfer.transferJobs.patch", + "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." }, - "projectId": { - "description": "The ID of the Google Cloud Platform Console project that owns the job.\nRequired.", - "type": "string" + "get": { + "description": "Gets a transfer job.", + "httpMethod": "GET", + "parameterOrder": [ + "jobName" + ], + "response": { + "$ref": "TransferJob" + }, + "parameters": { + "jobName": { + "pattern": "^transferJobs/.+$", + "location": "path", + "description": "The job to get.\nRequired.", + "required": true, + "type": "string" + }, + "projectId": { + "description": "The ID of the Google Cloud Platform Console project that owns the job.\nRequired.", + "type": "string", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/transferJobs/{transferJobsId}", + "id": "storagetransfer.transferJobs.get", + "path": "v1/{+jobName}" }, - "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" + "list": { + "response": { + "$ref": "ListTransferJobsResponse" + }, + "parameterOrder": [], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "pageToken": { + "location": "query", + "description": "The list page token.", + "type": "string" + }, + "pageSize": { + "location": "query", + "description": "The list page size. The max allowed value is 256.", + "format": "int32", + "type": "integer" + }, + "filter": { + "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" + } + }, + "flatPath": "v1/transferJobs", + "path": "v1/transferJobs", + "id": "storagetransfer.transferJobs.list", + "description": "Lists transfer jobs." + }, + "create": { + "request": { + "$ref": "TransferJob" + }, + "description": "Creates a transfer job that runs periodically.", + "response": { + "$ref": "TransferJob" + }, + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": {}, + "flatPath": "v1/transferJobs", + "path": "v1/transferJobs", + "id": "storagetransfer.transferJobs.create" } - }, - "id": "UpdateTransferJobRequest" + } }, - "ObjectConditions": { - "description": "Conditions that determine which objects will be transferred.", - "type": "object", - "properties": { - "maxTimeElapsedSinceLastModification": { - "description": "`maxTimeElapsedSinceLastModification` is the complement to\n`minTimeElapsedSinceLastModification`.", - "format": "google-duration", - "type": "string" - }, - "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" + "transferOperations": { + "methods": { + "resume": { + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Empty" + }, + "parameters": { + "name": { + "location": "path", + "description": "The name of the transfer operation.\nRequired.", + "required": true, + "type": "string", + "pattern": "^transferOperations/.+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/transferOperations/{transferOperationsId}:resume", + "id": "storagetransfer.transferOperations.resume", + "path": "v1/{+name}:resume", + "description": "Resumes a transfer operation that is paused.", + "request": { + "$ref": "ResumeTransferOperationRequest" } }, - "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" + "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": { + "location": "path", + "description": "The name of the operation resource to be cancelled.", + "required": true, + "type": "string", + "pattern": "^transferOperations/.+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/transferOperations/{transferOperationsId}:cancel", + "path": "v1/{+name}:cancel", + "id": "storagetransfer.transferOperations.cancel" }, - "excludePrefixes": { - "description": "`excludePrefixes` must follow the requirements described for\n`includePrefixes`.\n\nThe max size of `excludePrefixes` is 1000.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "ObjectConditions" - }, - "Operation": { - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object", - "properties": { - "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." + "get": { + "path": "v1/{+name}", + "id": "storagetransfer.transferOperations.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", + "parameters": { + "name": { + "description": "The name of the operation resource.", + "required": true, + "type": "string", + "pattern": "^transferOperations/.+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/transferOperations/{transferOperationsId}" }, - "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" + "pause": { + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "parameters": { + "name": { + "pattern": "^transferOperations/.+$", + "location": "path", + "description": "The name of the transfer operation.\nRequired.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/transferOperations/{transferOperationsId}:pause", + "path": "v1/{+name}:pause", + "id": "storagetransfer.transferOperations.pause", + "description": "Pauses a transfer operation.", + "request": { + "$ref": "PauseTransferOperationRequest" } }, - "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 `transferOperations/some/unique/name`." - }, - "error": { - "$ref": "Status", - "description": "The error result of the operation in case of failure or cancellation." + "delete": { + "path": "v1/{+name}", + "id": "storagetransfer.transferOperations.delete", + "description": "This method is not supported and the server returns `UNIMPLEMENTED`.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "required": true, + "type": "string", + "pattern": "^transferOperations/.+$", + "location": "path" + } + }, + "flatPath": "v1/transferOperations/{transferOperationsId}" }, - "metadata": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" + "list": { + "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.", + "response": { + "$ref": "ListOperationsResponse" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "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.", + "type": "string", + "location": "query" + }, + "name": { + "pattern": "^transferOperations$", + "location": "path", + "description": "The value `transferOperations`.", + "required": true, + "type": "string" + }, + "pageToken": { + "description": "The list page token.", + "type": "string", + "location": "query" + }, + "pageSize": { + "location": "query", + "description": "The list page size. The max allowed value is 256.", + "format": "int32", + "type": "integer" + } }, - "description": "Represents the transfer operation object.", - "type": "object" - } - }, - "id": "Operation" - }, - "TransferOptions": { - "id": "TransferOptions", - "description": "TransferOptions uses three boolean parameters to define the actions\nto be performed on objects in a transfer.", - "type": "object", - "properties": { - "deleteObjectsFromSourceAfterTransfer": { - "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": { - "description": "Whether objects that exist only in the sink should be deleted. Note that\nthis option and `deleteObjectsFromSourceAfterTransfer` are mutually\nexclusive.", - "type": "boolean" - }, - "overwriteObjectsAlreadyExistingInSink": { - "description": "Whether overwriting objects that already exist in the sink is allowed.", - "type": "boolean" + "flatPath": "v1/transferOperations" } } + } + }, + "parameters": { + "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" }, - "TransferSpec": { - "properties": { - "awsS3DataSource": { - "$ref": "AwsS3Data", - "description": "An AWS S3 data source." - }, - "httpDataSource": { - "description": "An HTTP URL data source.", - "$ref": "HttpData" - }, - "objectConditions": { - "$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." - }, - "gcsDataSource": { - "$ref": "GcsData", - "description": "A Google Cloud Storage data source." - }, - "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.", - "$ref": "TransferOptions" - } - }, - "id": "TransferSpec", - "description": "Configuration for running a transfer.", - "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.", + "type": "string", + "location": "query" }, - "ResumeTransferOperationRequest": { - "description": "Request passed to ResumeTransferOperation.", - "type": "object", - "properties": {}, - "id": "ResumeTransferOperationRequest" + "access_token": { + "location": "query", + "description": "OAuth access token.", + "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": { - "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" + "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" }, - "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" + "pp": { + "location": "query", + "description": "Pretty-print response.", + "type": "boolean", + "default": "true" }, - "GoogleServiceAccount": { - "description": "Google service account", - "type": "object", - "properties": { - "accountEmail": { - "description": "Required.", - "type": "string" - } - }, - "id": "GoogleServiceAccount" + "bearer_token": { + "description": "OAuth bearer token.", + "type": "string", + "location": "query" }, - "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": { - "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" - } - }, - "id": "TimeOfDay" + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "type": "string", + "location": "query" }, - "ErrorLogEntry": { - "description": "An entry describing an error that has occurred.", - "type": "object", - "properties": { - "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" - }, - "errorDetails": { - "description": "A list of messages that carry the error details.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "ErrorLogEntry" + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "type": "string", + "location": "query" }, - "TransferJob": { - "description": "This resource represents the configuration of a transfer job that runs\nperiodically.", - "type": "object", - "properties": { - "creationTime": { - "description": "This field cannot be changed by user requests.", - "format": "google-datetime", - "type": "string" - }, - "transferSpec": { - "$ref": "TransferSpec", - "description": "Transfer specification." - }, - "status": { - "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`." - ], - "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.", - "type": "string" - }, - "schedule": { - "$ref": "Schedule", - "description": "Schedule specification." - }, - "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" - }, - "deletionTime": { - "description": "This field cannot be changed by user requests.", - "format": "google-datetime", - "type": "string" - }, - "projectId": { - "description": "The ID of the Google Cloud Platform Console project that owns the job.", - "type": "string" - }, - "lastModificationTime": { - "type": "string", - "description": "This field cannot be changed by user requests.", - "format": "google-datetime" - }, - "description": { - "description": "A description provided by the user for the job. Its max length is 1024\nbytes when Unicode-encoded.", - "type": "string" - } - }, - "id": "TransferJob" + "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" }, - "Schedule": { - "description": "Transfers can be scheduled to recur or to run just once.", - "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": { - "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.", - "$ref": "TimeOfDay" - }, - "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" + "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." + } + }, + "schemas": { "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", @@ -418,9 +417,9 @@ "type": "integer" }, "day": { + "type": "integer", "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" + "format": "int32" }, "month": { "description": "Month of year. Must be from 1 to 12, or 0 if specifying a date without a\nmonth.", @@ -431,12 +430,13 @@ "id": "Date" }, "TransferOperation": { + "id": "TransferOperation", "description": "A description of the execution of a transfer.", "type": "object", "properties": { "counters": { - "$ref": "TransferCounters", - "description": "Information about the progress of the transfer operation." + "description": "Information about the progress of the transfer operation.", + "$ref": "TransferCounters" }, "status": { "type": "string", @@ -479,9 +479,9 @@ "type": "string" }, "startTime": { - "type": "string", "description": "Start time of this transfer execution.", - "format": "google-datetime" + "format": "google-datetime", + "type": "string" }, "transferJobName": { "description": "The name of the transfer job that triggers this transfer operation.", @@ -491,8 +491,7 @@ "$ref": "TransferSpec", "description": "Transfer specification.\nRequired." } - }, - "id": "TransferOperation" + } }, "AwsS3Data": { "description": "An AwsS3Data resource can be a data source, but not a data sink.\nIn an AwsS3Data resource, an object's name is the S3 object's key name.", @@ -503,32 +502,32 @@ "type": "string" }, "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.", - "$ref": "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" }, "AwsAccessKey": { - "id": "AwsAccessKey", "description": "AWS access key (see\n[AWS Security Credentials](http://docs.aws.amazon.com/general/latest/gr/aws-security-credentials.html)).", "type": "object", "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" + }, + "accessKeyId": { + "description": "AWS access key ID.\nRequired.", + "type": "string" } - } + }, + "id": "AwsAccessKey" }, "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": {} }, "PauseTransferOperationRequest": { "description": "Request passed to PauseTransferOperation.", @@ -540,11 +539,36 @@ "description": "A collection of counters that report the progress of a transfer operation.", "type": "object", "properties": { - "bytesFoundOnlyFromSink": { + "bytesDeletedFromSink": { + "description": "Bytes that are deleted from the data sink.", + "format": "int64", + "type": "string" + }, + "bytesFailedToDeleteFromSink": { + "description": "Bytes that failed to be 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": "Bytes found only in the data sink that are scheduled to be deleted.", + "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": { "description": "Objects that are deleted from the data source.", "format": "int64", @@ -594,39 +618,27 @@ "description": "Bytes in the data source that are not transferred because they already\nexist in the data sink.", "format": "int64", "type": "string" - }, - "bytesDeletedFromSink": { - "description": "Bytes that are deleted from the data sink.", - "format": "int64", - "type": "string" - }, - "bytesFailedToDeleteFromSink": { - "type": "string", - "description": "Bytes that failed to be deleted from the data sink.", - "format": "int64" - }, - "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": { - "description": "Objects in the data source that failed to be transferred or that failed\nto be deleted after being transferred.", - "format": "int64", - "type": "string" } }, "id": "TransferCounters" }, "ErrorSummary": { + "id": "ErrorSummary", "description": "A summary of errors by error code, plus a count and sample error log\nentries.", "type": "object", "properties": { + "errorCount": { + "description": "Count of this type of error.\nRequired.", + "format": "int64", + "type": "string" + }, + "errorLogEntries": { + "description": "Error samples.", + "type": "array", + "items": { + "$ref": "ErrorLogEntry" + } + }, "errorCode": { "description": "Required.", "type": "string", @@ -668,23 +680,11 @@ "UNAVAILABLE", "DATA_LOSS" ] - }, - "errorCount": { - "description": "Count of this type of error.\nRequired.", - "format": "int64", - "type": "string" - }, - "errorLogEntries": { - "description": "Error samples.", - "type": "array", - "items": { - "$ref": "ErrorLogEntry" - } } - }, - "id": "ErrorSummary" + } }, "HttpData": { + "description": "An HttpData resource specifies a list of objects on the web to be transferred\nover HTTP. The information of the objects to be transferred is contained in\na file 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\nURLs](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\ntransferred to 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": { @@ -692,19 +692,18 @@ "type": "string" } }, - "id": "HttpData", - "description": "An HttpData resource specifies a list of objects on the web to be transferred\nover HTTP. The information of the objects to be transferred is contained in\na file 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\nURLs](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\ntransferred to 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" }, "GcsData": { + "type": "object", "properties": { "bucketName": { - "type": "string", - "description": "Google Cloud Storage bucket name (see\n[Bucket Name\nRequirements](https://cloud.google.com/storage/docs/naming#requirements)).\nRequired." + "description": "Google Cloud Storage bucket name (see\n[Bucket Name\nRequirements](https://cloud.google.com/storage/docs/naming#requirements)).\nRequired.", + "type": "string" } }, "id": "GcsData", - "description": "In a GcsData resource, an object's name is the Google Cloud Storage object's\nname and its `lastModificationTime` refers to the object's updated time,\nwhich changes when the content or the metadata of the object is updated.", - "type": "object" + "description": "In a GcsData resource, an object's name is the Google Cloud Storage object's\nname and its `lastModificationTime` refers to the object's updated time,\nwhich changes when the content or the metadata of the object is updated." }, "ListTransferJobsResponse": { "description": "Response from ListTransferJobs.", @@ -715,363 +714,364 @@ "type": "string" }, "transferJobs": { + "description": "A list of transfer jobs.", "type": "array", "items": { "$ref": "TransferJob" - }, - "description": "A list of transfer jobs." + } } }, "id": "ListTransferJobsResponse" - } - }, - "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://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": "20180507", - "id": "storagetransfer:v1", - "documentationLink": "https://cloud.google.com/storage/transfer", - "title": "Storage Transfer API", - "discoveryVersion": "v1", - "ownerName": "Google", - "version_module": true, - "resources": { - "googleServiceAccounts": { - "methods": { - "get": { - "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.", - "response": { - "$ref": "GoogleServiceAccount" - }, - "parameterOrder": [ - "projectId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "projectId": { - "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" - } - } + }, + "UpdateTransferJobRequest": { + "description": "Request passed to UpdateTransferJob.", + "type": "object", + "properties": { + "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." + }, + "projectId": { + "description": "The ID of the Google Cloud Platform Console project that owns the job.\nRequired.", + "type": "string" + }, + "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" } - } + }, + "id": "UpdateTransferJobRequest" }, - "transferJobs": { - "methods": { - "patch": { - "flatPath": "v1/transferJobs/{transferJobsId}", - "path": "v1/{+jobName}", - "id": "storagetransfer.transferJobs.patch", - "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.", - "response": { - "$ref": "TransferJob" - }, - "parameterOrder": [ - "jobName" - ], - "httpMethod": "PATCH", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "jobName": { - "pattern": "^transferJobs/.+$", - "location": "path", - "description": "The name of job to update.\nRequired.", - "required": true, - "type": "string" - } + "ObjectConditions": { + "description": "Conditions that determine which objects will be transferred.", + "type": "object", + "properties": { + "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" + } + }, + "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" } }, - "get": { - "description": "Gets a transfer job.", - "httpMethod": "GET", - "parameterOrder": [ - "jobName" - ], - "response": { - "$ref": "TransferJob" - }, - "parameters": { - "jobName": { - "description": "The job to get.\nRequired.", - "required": true, - "type": "string", - "pattern": "^transferJobs/.+$", - "location": "path" - }, - "projectId": { - "location": "query", - "description": "The ID of the Google Cloud Platform Console project that owns the job.\nRequired.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/transferJobs/{transferJobsId}", - "id": "storagetransfer.transferJobs.get", - "path": "v1/{+jobName}" + "maxTimeElapsedSinceLastModification": { + "description": "`maxTimeElapsedSinceLastModification` is the complement to\n`minTimeElapsedSinceLastModification`.", + "format": "google-duration", + "type": "string" + } + }, + "id": "ObjectConditions" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "type": "object", + "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" + } }, - "list": { - "description": "Lists transfer jobs.", - "response": { - "$ref": "ListTransferJobsResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "pageToken": { - "location": "query", - "description": "The list page token.", - "type": "string" - }, - "pageSize": { - "description": "The list page size. The max allowed value is 256.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "filter": { - "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" - } - }, - "flatPath": "v1/transferJobs", - "path": "v1/transferJobs", - "id": "storagetransfer.transferJobs.list" + "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" }, - "create": { - "request": { - "$ref": "TransferJob" - }, - "description": "Creates a transfer job that runs periodically.", - "response": { - "$ref": "TransferJob" + "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" }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": {}, - "flatPath": "v1/transferJobs", - "path": "v1/transferJobs", - "id": "storagetransfer.transferJobs.create" + "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" } - } + }, + "id": "Operation" }, - "transferOperations": { - "methods": { - "delete": { - "description": "This method is not supported and the server returns `UNIMPLEMENTED`.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "required": true, - "type": "string", - "pattern": "^transferOperations/.+$", - "location": "path", - "description": "The name of the operation resource to be deleted." - } - }, - "flatPath": "v1/transferOperations/{transferOperationsId}", - "path": "v1/{+name}", - "id": "storagetransfer.transferOperations.delete" + "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." }, - "list": { - "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.", - "response": { - "$ref": "ListOperationsResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "name": { - "location": "path", - "description": "The value `transferOperations`.", - "required": true, - "type": "string", - "pattern": "^transferOperations$" - }, - "pageToken": { - "description": "The list page token.", - "type": "string", - "location": "query" - }, - "pageSize": { - "location": "query", - "description": "The list page size. The max allowed value is 256.", - "format": "int32", - "type": "integer" + "deleteObjectsUniqueInSink": { + "description": "Whether objects that exist only in the sink should be deleted. Note that\nthis option and `deleteObjectsFromSourceAfterTransfer` are mutually\nexclusive.", + "type": "boolean" + }, + "overwriteObjectsAlreadyExistingInSink": { + "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": { + "description": "Configuration for running a transfer.", + "type": "object", + "properties": { + "awsS3DataSource": { + "$ref": "AwsS3Data", + "description": "An AWS S3 data source." + }, + "httpDataSource": { + "$ref": "HttpData", + "description": "An HTTP URL data source." + }, + "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.", + "$ref": "ObjectConditions" + }, + "gcsDataSink": { + "$ref": "GcsData", + "description": "A Google Cloud Storage data sink." + }, + "gcsDataSource": { + "description": "A Google Cloud Storage data source.", + "$ref": "GcsData" + }, + "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.", + "$ref": "TransferOptions" + } + }, + "id": "TransferSpec" + }, + "ResumeTransferOperationRequest": { + "description": "Request passed to ResumeTransferOperation.", + "type": "object", + "properties": {}, + "id": "ResumeTransferOperationRequest" + }, + "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" }, - "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.", - "type": "string", - "location": "query" - } + "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" + }, + "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" + }, + "GoogleServiceAccount": { + "description": "Google service account", + "type": "object", + "properties": { + "accountEmail": { + "description": "Required.", + "type": "string" + } + }, + "id": "GoogleServiceAccount" + }, + "TimeOfDay": { + "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`.", + "type": "object", + "properties": { + "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" }, - "resume": { - "flatPath": "v1/transferOperations/{transferOperationsId}:resume", - "id": "storagetransfer.transferOperations.resume", - "path": "v1/{+name}:resume", - "description": "Resumes a transfer operation that is paused.", - "request": { - "$ref": "ResumeTransferOperationRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Empty" - }, - "parameters": { - "name": { - "pattern": "^transferOperations/.+$", - "location": "path", - "description": "The name of the transfer operation.\nRequired.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + "minutes": { + "description": "Minutes of hour of day. Must be from 0 to 59.", + "format": "int32", + "type": "integer" }, - "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": { - "location": "path", - "description": "The name of the operation resource to be cancelled.", - "required": true, - "type": "string", - "pattern": "^transferOperations/.+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/transferOperations/{transferOperationsId}:cancel", - "path": "v1/{+name}:cancel", - "id": "storagetransfer.transferOperations.cancel" + "hours": { + "type": "integer", + "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" }, - "get": { - "path": "v1/{+name}", - "id": "storagetransfer.transferOperations.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", - "parameters": { - "name": { - "description": "The name of the operation resource.", - "required": true, - "type": "string", - "pattern": "^transferOperations/.+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/transferOperations/{transferOperationsId}" + "nanos": { + "description": "Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.", + "format": "int32", + "type": "integer" + } + } + }, + "ErrorLogEntry": { + "description": "An entry describing an error that has occurred.", + "type": "object", + "properties": { + "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" }, - "pause": { - "description": "Pauses a transfer operation.", - "request": { - "$ref": "PauseTransferOperationRequest" - }, - "response": { - "$ref": "Empty" + "errorDetails": { + "type": "array", + "items": { + "type": "string" }, - "parameterOrder": [ - "name" + "description": "A list of messages that carry the error details." + } + }, + "id": "ErrorLogEntry" + }, + "TransferJob": { + "description": "This resource represents the configuration of a transfer job that runs\nperiodically.", + "type": "object", + "properties": { + "description": { + "description": "A description provided by the user for the job. Its max length is 1024\nbytes when Unicode-encoded.", + "type": "string" + }, + "creationTime": { + "description": "This field cannot be changed by user requests.", + "format": "google-datetime", + "type": "string" + }, + "transferSpec": { + "$ref": "TransferSpec", + "description": "Transfer specification." + }, + "status": { + "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`." ], - "httpMethod": "POST", - "parameters": { - "name": { - "location": "path", - "description": "The name of the transfer operation.\nRequired.", - "required": true, - "type": "string", - "pattern": "^transferOperations/.+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "enum": [ + "STATUS_UNSPECIFIED", + "ENABLED", + "DISABLED", + "DELETED" ], - "flatPath": "v1/transferOperations/{transferOperationsId}:pause", - "path": "v1/{+name}:pause", - "id": "storagetransfer.transferOperations.pause" + "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.", + "type": "string" + }, + "schedule": { + "description": "Schedule specification.", + "$ref": "Schedule" + }, + "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" + }, + "deletionTime": { + "description": "This field cannot be changed by user requests.", + "format": "google-datetime", + "type": "string" + }, + "projectId": { + "description": "The ID of the Google Cloud Platform Console project that owns the job.", + "type": "string" + }, + "lastModificationTime": { + "description": "This field cannot be changed by user requests.", + "format": "google-datetime", + "type": "string" + } + }, + "id": "TransferJob" + }, + "Schedule": { + "description": "Transfers can be scheduled to recur or to run just once.", + "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": { + "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.", + "$ref": "TimeOfDay" + }, + "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" + } + }, + "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://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": "20180507", + "id": "storagetransfer:v1", + "documentationLink": "https://cloud.google.com/storage/transfer", + "title": "Storage Transfer API", + "discoveryVersion": "v1", + "ownerName": "Google" } diff --git a/DiscoveryJson/streetviewpublish_v1.json b/DiscoveryJson/streetviewpublish_v1.json index b4ada80d04..86c31d06fb 100644 --- a/DiscoveryJson/streetviewpublish_v1.json +++ b/DiscoveryJson/streetviewpublish_v1.json @@ -1,723 +1,723 @@ { - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "UpdatePhotoRequest": { - "description": "Request to update the metadata of a\nPhoto. Updating the pixels of a photo\nis not supported.", - "type": "object", - "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", - "type": "string" - }, - "photo": { - "description": "Required. Photo object containing the\nnew metadata.", - "$ref": "Photo" - } - }, - "id": "UpdatePhotoRequest" - }, - "PhotoId": { - "description": "Identifier for a Photo.", - "type": "object", - "properties": { - "id": { - "description": "Required. A unique identifier for a photo.", - "type": "string" - } - }, - "id": "PhotoId" - }, - "Pose": { - "description": "Raw pose measurement for an entity.", - "type": "object", - "properties": { - "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": { - "description": "Level (the floor in a building) used to configure vertical navigation.", - "$ref": "Level" - }, - "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" + "batchPath": "batch", + "fullyEncodeReservedExpansion": true, + "title": "Street View Publish API", + "ownerName": "Google", + "resources": { + "photos": { + "methods": { + "batchUpdate": { + "path": "v1/photos:batchUpdate", + "id": "streetviewpublish.photos.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", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/streetviewpublish" + ], + "flatPath": "v1/photos:batchUpdate" }, - "altitude": { - "description": "Altitude of the pose in meters above WGS84 ellipsoid.\nNaN indicates an unmeasured quantity.", - "format": "double", - "type": "number" + "batchDelete": { + "flatPath": "v1/photos:batchDelete", + "id": "streetviewpublish.photos.batchDelete", + "path": "v1/photos: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.", + "request": { + "$ref": "BatchDeletePhotosRequest" + }, + "httpMethod": "POST", + "parameterOrder": [], + "response": { + "$ref": "BatchDeletePhotosResponse" + }, + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/streetviewpublish" + ] }, - "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" + "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.", + "httpMethod": "GET", + "response": { + "$ref": "BatchGetPhotosResponse" + }, + "parameterOrder": [], + "parameters": { + "view": { + "location": "query", + "enum": [ + "BASIC", + "INCLUDE_DOWNLOAD_URL" + ], + "description": "Specifies if a download URL for the photo bytes should be returned in the\nPhoto response.", + "type": "string" + }, + "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": "string", + "repeated": true, + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/streetviewpublish" + ], + "flatPath": "v1/photos:batchGet", + "id": "streetviewpublish.photos.batchGet", + "path": "v1/photos:batchGet" }, - "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" - } - }, - "id": "Pose" - }, - "BatchUpdatePhotosRequest": { - "description": "Request to update the metadata of photos.\nUpdating the pixels of photos is not supported.", - "type": "object", - "properties": { - "updatePhotoRequests": { - "description": "Required. List of\nUpdatePhotoRequests.", - "type": "array", - "items": { - "$ref": "UpdatePhotoRequest" - } + "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", + "response": { + "$ref": "ListPhotosResponse" + }, + "parameterOrder": [], + "httpMethod": "GET", + "parameters": { + "filter": { + "location": "query", + "description": "The filter expression. For example: `placeId=ChIJj61dQgK6j4AR4GeTYWZsKWw`.\n\nThe only filter supported at the moment is `placeId`.", + "type": "string" + }, + "pageToken": { + "location": "query", + "description": "The\nnextPageToken\nvalue returned from a previous\nListPhotos\nrequest, if any.", + "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", + "type": "integer", + "location": "query" + }, + "view": { + "location": "query", + "enum": [ + "BASIC", + "INCLUDE_DOWNLOAD_URL" + ], + "description": "Specifies if a download URL for the photos bytes should be returned in the\nPhotos response.", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/streetviewpublish" + ], + "flatPath": "v1/photos", + "path": "v1/photos", + "id": "streetviewpublish.photos.list" } - }, - "id": "BatchUpdatePhotosRequest" + } }, - "ListPhotosResponse": { - "description": "Response to list all photos that belong to a user.", - "type": "object", - "properties": { - "photos": { - "description": "List of photos. The maximum number of items returned is based on the\npageSize field\nin the request.", - "type": "array", - "items": { + "photo": { + "methods": { + "update": { + "flatPath": "v1/photo/{id}", + "path": "v1/photo/{id}", + "id": "streetviewpublish.photo.update", + "request": { "$ref": "Photo" + }, + "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.", + "response": { + "$ref": "Photo" + }, + "parameterOrder": [ + "id" + ], + "httpMethod": "PUT", + "scopes": [ + "https://www.googleapis.com/auth/streetviewpublish" + ], + "parameters": { + "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" + }, + "id": { + "location": "path", + "description": "Required. A unique identifier for a photo.", + "required": true, + "type": "string" + } } }, - "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no more\nresults in the list.", - "type": "string" - } - }, - "id": "ListPhotosResponse" - }, - "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": { - "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" - }, - "viewCount": { - "description": "Output only. View count of the photo.", - "format": "int64", - "type": "string" + "create": { + "response": { + "$ref": "Photo" + }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/streetviewpublish" + ], + "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" + } }, - "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" + "startUpload": { + "flatPath": "v1/photo:startUpload", + "path": "v1/photo:startUpload", + "id": "streetviewpublish.photo.startUpload", + "request": { + "$ref": "Empty" + }, + "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.", + "response": { + "$ref": "UploadRef" + }, + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/streetviewpublish" + ], + "parameters": {} }, - "places": { - "description": "Places where this photo belongs.", - "type": "array", - "items": { - "$ref": "Place" + "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" + } } }, - "connections": { - "description": "Connections to other photos. A connection represents the link from this\nphoto to another photo.", - "type": "array", - "items": { - "$ref": "Connection" + "get": { + "flatPath": "v1/photo/{photoId}", + "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": { + "location": "query", + "enum": [ + "BASIC", + "INCLUDE_DOWNLOAD_URL" + ], + "description": "Specifies if a download URL for the photo bytes should be returned in the\nPhoto response.", + "type": "string" + } } - }, - "uploadReference": { - "$ref": "UploadRef", - "description": "Required when creating a photo. Input only. The resource URL where the\nphoto bytes are uploaded to." - }, - "pose": { - "$ref": "Pose", - "description": "Pose of the photo." - }, - "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." - }, - "shareLink": { - "description": "Output only. The share link for the photo.", - "type": "string" } - }, - "id": "Photo" + } + } + }, + "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": { + "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": { + "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": { + "description": "API key. 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" }, - "Operation": { - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "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": { + "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" + } + }, + "version": "v1", + "baseUrl": "https://streetviewpublish.googleapis.com/", + "servicePath": "", + "kind": "discovery#restDescription", + "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", + "basePath": "", + "id": "streetviewpublish:v1", + "documentationLink": "https://developers.google.com/streetview/publish/", + "revision": "20180508", + "discoveryVersion": "v1", + "version_module": true, + "schemas": { + "Level": { + "description": "Level information containing level number and its corresponding name.", "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" + "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": "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": "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" - }, - "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" + "id": "Level" }, - "PhotoResponse": { - "description": "Response payload for a single\nPhoto\nin batch operations including\nBatchGetPhotos\nand\nBatchUpdatePhotos.", + "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": { - "status": { - "$ref": "Status", - "description": "The status for the operation to get or update a single photo in the batch\nrequest." - }, - "photo": { - "description": "The Photo resource, if the request\nwas successful.", - "$ref": "Photo" - } - }, - "id": "PhotoResponse" - }, - "Connection": { - "properties": { - "target": { - "$ref": "PhotoId", - "description": "Required. The destination of the connection from the containing photo to\nanother photo." - } - }, - "id": "Connection", - "description": "A connection is the link from a source photo to a destination photo.", - "type": "object" + "properties": {}, + "id": "Empty" }, - "BatchUpdatePhotosResponse": { - "description": "Response to batch update of metadata of one or more\nPhotos.", + "BatchGetPhotosResponse": { + "description": "Response to batch get of Photos.", "type": "object", "properties": { "results": { - "description": "List of results for each individual\nPhoto updated, in the same order as\nthe request.", + "description": "List of results for each individual\nPhoto requested, in the same order as\nthe requests in\nBatchGetPhotos.", "type": "array", "items": { "$ref": "PhotoResponse" } } }, - "id": "BatchUpdatePhotosResponse" + "id": "BatchGetPhotosResponse" }, - "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.", + "Place": { + "description": "Place metadata for an entity.", "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.", + "placeId": { + "description": "Place identifier, as described in\nhttps://developers.google.com/places/place-id.", "type": "string" } }, - "id": "Status" + "id": "Place" }, - "BatchDeletePhotosResponse": { - "description": "Response to batch delete of one or more\nPhotos.", + "UploadRef": { + "description": "Upload reference for media files.", "type": "object", "properties": { - "status": { - "description": "The status for the operation to delete a single\nPhoto in the batch request.", - "type": "array", - "items": { - "$ref": "Status" - } + "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": "BatchDeletePhotosResponse" - }, - "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" + "id": "UploadRef" }, - "Level": { + "LatLng": { "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.", + "latitude": { + "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", "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" + "longitude": { + "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", + "format": "double", + "type": "number" } }, - "id": "Level", - "description": "Level information containing level number and its corresponding name.", + "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" }, - "UploadRef": { + "BatchDeletePhotosRequest": { "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" + "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": "UploadRef", - "description": "Upload reference for media files.", + "id": "BatchDeletePhotosRequest", + "description": "Request to delete multiple Photos.", "type": "object" }, - "Place": { - "description": "Place metadata for an entity.", + "UpdatePhotoRequest": { + "description": "Request to update the metadata of a\nPhoto. Updating the pixels of a photo\nis not supported.", "type": "object", "properties": { - "placeId": { - "description": "Place identifier, as described in\nhttps://developers.google.com/places/place-id.", + "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" + }, + "photo": { + "$ref": "Photo", + "description": "Required. Photo object containing the\nnew metadata." } }, - "id": "Place" + "id": "UpdatePhotoRequest" }, - "BatchGetPhotosResponse": { - "description": "Response to batch get of Photos.", + "Pose": { + "description": "Raw pose measurement for an entity.", "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" - } + "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": { + "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" + }, + "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.", + "format": "double", + "type": "number" } }, - "id": "BatchGetPhotosResponse" + "id": "Pose" }, - "BatchDeletePhotosRequest": { - "description": "Request to delete multiple Photos.", + "PhotoId": { + "description": "Identifier for a Photo.", "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&...`.", + "id": { + "description": "Required. A unique identifier for a photo.", + "type": "string" + } + }, + "id": "PhotoId" + }, + "BatchUpdatePhotosRequest": { + "description": "Request to update the metadata of photos.\nUpdating the pixels of photos is not supported.", + "type": "object", + "properties": { + "updatePhotoRequests": { + "description": "Required. List of\nUpdatePhotoRequests.", "type": "array", "items": { - "type": "string" + "$ref": "UpdatePhotoRequest" } } }, - "id": "BatchDeletePhotosRequest" + "id": "BatchUpdatePhotosRequest" }, - "LatLng": { - "properties": { - "latitude": { - "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", - "format": "double", - "type": "number" + "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" + } }, - "longitude": { - "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", - "format": "double", - "type": "number" + "nextPageToken": { + "description": "Token to retrieve the next page of results, or empty if there are no more\nresults in the list.", + "type": "string" } }, - "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.", + "id": "ListPhotosResponse", + "description": "Response to list all photos that belong to a user.", "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": "Street View Publish", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/streetviewpublish": { - "description": "Publish and manage your 360 photos on Google Street View" - } - } - } - }, - "rootUrl": "https://streetviewpublish.googleapis.com/", - "ownerDomain": "google.com", - "name": "streetviewpublish", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Street View Publish API", - "ownerName": "Google", - "resources": { - "photos": { - "methods": { - "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", - "scopes": [ - "https://www.googleapis.com/auth/streetviewpublish" - ], - "parameters": { - "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": "string", - "repeated": true, - "location": "query" - }, - "view": { - "location": "query", - "enum": [ - "BASIC", - "INCLUDE_DOWNLOAD_URL" - ], - "description": "Specifies if a download URL for the photo bytes should be returned in the\nPhoto response.", - "type": "string" - } - }, - "flatPath": "v1/photos:batchGet", - "path": "v1/photos:batchGet", - "id": "streetviewpublish.photos.batchGet" + }, + "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" }, - "list": { - "response": { - "$ref": "ListPhotosResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "parameters": { - "filter": { - "description": "The filter expression. For example: `placeId=ChIJj61dQgK6j4AR4GeTYWZsKWw`.\n\nThe only filter supported at the moment is `placeId`.", - "type": "string", - "location": "query" - }, - "pageToken": { - "location": "query", - "description": "The\nnextPageToken\nvalue returned from a previous\nListPhotos\nrequest, if any.", - "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", - "type": "integer", - "location": "query" - }, - "view": { - "enum": [ - "BASIC", - "INCLUDE_DOWNLOAD_URL" - ], - "description": "Specifies if a download URL for the photos bytes should be returned in the\nPhotos response.", - "type": "string", - "location": "query" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/streetviewpublish" - ], - "flatPath": "v1/photos", - "path": "v1/photos", - "id": "streetviewpublish.photos.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" + "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" }, - "batchUpdate": { - "path": "v1/photos:batchUpdate", - "id": "streetviewpublish.photos.batchUpdate", - "request": { - "$ref": "BatchUpdatePhotosRequest" - }, - "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", - "response": { - "$ref": "BatchUpdatePhotosResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/streetviewpublish" - ], - "parameters": {}, - "flatPath": "v1/photos:batchUpdate" + "viewCount": { + "description": "Output only. View count of the photo.", + "format": "int64", + "type": "string" }, - "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.", - "response": { - "$ref": "BatchDeletePhotosResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/streetviewpublish" - ], - "parameters": {}, - "flatPath": "v1/photos:batchDelete", - "path": "v1/photos:batchDelete", - "id": "streetviewpublish.photos.batchDelete" - } - } - }, - "photo": { - "methods": { - "delete": { - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "photoId" - ], - "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/streetviewpublish" - ], - "parameters": { - "photoId": { - "location": "path", - "description": "Required. ID of the Photo.", - "required": true, - "type": "string" - } - }, - "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." + "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" }, - "get": { - "response": { - "$ref": "Photo" - }, - "parameterOrder": [ - "photoId" - ], - "httpMethod": "GET", - "parameters": { - "photoId": { - "location": "path", - "description": "Required. ID of the Photo.", - "required": true, - "type": "string" - }, - "view": { - "location": "query", - "enum": [ - "BASIC", - "INCLUDE_DOWNLOAD_URL" - ], - "description": "Specifies if a download URL for the photo bytes should be returned in the\nPhoto response.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/streetviewpublish" - ], - "flatPath": "v1/photo/{photoId}", - "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." + "connections": { + "description": "Connections to other photos. A connection represents the link from this\nphoto to another photo.", + "type": "array", + "items": { + "$ref": "Connection" + } }, - "update": { - "id": "streetviewpublish.photo.update", - "path": "v1/photo/{id}", - "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" - }, - "httpMethod": "PUT", - "parameterOrder": [ - "id" - ], - "response": { - "$ref": "Photo" - }, - "parameters": { - "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" - }, - "id": { - "description": "Required. A unique identifier for a photo.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/streetviewpublish" - ], - "flatPath": "v1/photo/{id}" + "places": { + "description": "Places where this photo belongs.", + "type": "array", + "items": { + "$ref": "Place" + } }, - "create": { - "request": { - "$ref": "Photo" - }, - "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.", - "response": { - "$ref": "Photo" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/streetviewpublish" - ], - "parameters": {}, - "flatPath": "v1/photo", - "path": "v1/photo", - "id": "streetviewpublish.photo.create" + "pose": { + "$ref": "Pose", + "description": "Pose of the photo." }, - "startUpload": { - "response": { - "$ref": "UploadRef" + "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." + }, + "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" + }, + "Operation": { + "properties": { + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/streetviewpublish" - ], - "flatPath": "v1/photo: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" + "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." + }, + "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" } - } - } - }, - "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" - }, - "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" - }, - "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" + }, + "id": "Operation", + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "type": "object" }, - "access_token": { - "description": "OAuth access token.", - "type": "string", - "location": "query" + "PhotoResponse": { + "description": "Response payload for a single\nPhoto\nin batch operations including\nBatchGetPhotos\nand\nBatchUpdatePhotos.", + "type": "object", + "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." + } + }, + "id": "PhotoResponse" }, - "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" + "Connection": { + "description": "A connection is the link from a source photo to a destination photo.", + "type": "object", + "properties": { + "target": { + "description": "Required. The destination of the connection from the containing photo to\nanother photo.", + "$ref": "PhotoId" + } + }, + "id": "Connection" }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" + "BatchUpdatePhotosResponse": { + "properties": { + "results": { + "description": "List of results for each individual\nPhoto updated, in the same order as\nthe request.", + "type": "array", + "items": { + "$ref": "PhotoResponse" + } + } + }, + "id": "BatchUpdatePhotosResponse", + "description": "Response to batch update of metadata of one or more\nPhotos.", + "type": "object" }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" + "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" }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" + "BatchDeletePhotosResponse": { + "properties": { + "status": { + "description": "The status for the operation to delete a single\nPhoto in the batch request.", + "type": "array", + "items": { + "$ref": "Status" + } + } + }, + "id": "BatchDeletePhotosResponse", + "description": "Response to batch delete of one or more\nPhotos.", + "type": "object" } }, - "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", - "basePath": "", - "id": "streetviewpublish:v1", - "documentationLink": "https://developers.google.com/streetview/publish/", - "revision": "20180507" + "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": "Street View Publish", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/streetviewpublish": { + "description": "Publish and manage your 360 photos on Google Street View" + } + } + } + }, + "rootUrl": "https://streetviewpublish.googleapis.com/", + "ownerDomain": "google.com", + "name": "streetviewpublish" } diff --git a/DiscoveryJson/surveys_v2.json b/DiscoveryJson/surveys_v2.json index f66059d53a..7855531204 100644 --- a/DiscoveryJson/surveys_v2.json +++ b/DiscoveryJson/surveys_v2.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/jDMvkLxpNyBiYfU6I51AArDTeDU\"", + "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/CtHMh8AGd-iuVsrrPwqP5sDQdSg\"", "discoveryVersion": "v1", "id": "surveys:v2", "name": "surveys", "canonicalName": "Surveys", "version": "v2", - "revision": "20170407", + "revision": "20180508", "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", @@ -98,63 +98,6 @@ } } }, - "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": { - "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", @@ -307,10 +250,6 @@ ] } }, - "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." @@ -333,7 +272,7 @@ }, "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.", + "description": "*Deprecated* 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. This will no longer be available after June 2018.", "format": "int64" }, "nanos": { @@ -527,7 +466,7 @@ "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.", + "description": "*Deprecated* Threshold to start a survey automatically if the quoted prices is less than or equal to this value. See Survey.Cost for more details. This will no longer be available after June 2018.", "format": "int64" } } @@ -566,92 +505,6 @@ } }, "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" - } - }, - "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" - }, - "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" - ] - }, - "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" - ] - } - } - }, "results": { "methods": { "get": { diff --git a/DiscoveryJson/testing_v1.json b/DiscoveryJson/testing_v1.json index 71da2dd34c..500a08a19a 100644 --- a/DiscoveryJson/testing_v1.json +++ b/DiscoveryJson/testing_v1.json @@ -1,66 +1,42 @@ { + "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" + } + } + } + }, + "servicePath": "", + "description": "Allows developers to run automated tests for their mobile applications on Google infrastructure.", + "kind": "discovery#restDescription", + "rootUrl": "https://testing.googleapis.com/", + "basePath": "", + "ownerDomain": "google.com", + "name": "testing", + "batchPath": "batch", + "revision": "20180503", + "documentationLink": "https://developers.google.com/cloud-test-lab/", + "id": "testing:v1", + "title": "Cloud Testing API", "discoveryVersion": "v1", "ownerName": "Google", "resources": { - "applicationDetailService": { - "methods": { - "getApkDetails": { - "path": "v1/applicationDetailService/getApkDetails", - "id": "testing.applicationDetailService.getApkDetails", - "description": "Request the details of an Android application APK.", - "request": { - "$ref": "FileReference" - }, - "response": { - "$ref": "GetApkDetailsResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/applicationDetailService/getApkDetails" - } - } - }, "projects": { "resources": { "testMatrices": { "methods": { - "create": { - "flatPath": "v1/projects/{projectId}/testMatrices", - "id": "testing.projects.testMatrices.create", - "path": "v1/projects/{projectId}/testMatrices", - "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", - "request": { - "$ref": "TestMatrix" - }, - "httpMethod": "POST", - "parameterOrder": [ - "projectId" - ], - "response": { - "$ref": "TestMatrix" - }, - "parameters": { - "projectId": { - "location": "path", - "description": "The GCE project under which this job will run.", - "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.", - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, "cancel": { + "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", "response": { "$ref": "CancelTestMatrixResponse" }, @@ -69,32 +45,27 @@ "testMatrixId" ], "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { - "testMatrixId": { - "location": "path", - "description": "Test matrix that will be canceled.", - "required": true, - "type": "string" - }, "projectId": { - "location": "path", "description": "Cloud project that owns the test.", "required": true, - "type": "string" + "type": "string", + "location": "path" + }, + "testMatrixId": { + "description": "Test matrix that will be canceled.", + "required": true, + "type": "string", + "location": "path" } }, - "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" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "get": { - "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", + "httpMethod": "GET", "response": { "$ref": "TestMatrix" }, @@ -102,7 +73,6 @@ "projectId", "testMatrixId" ], - "httpMethod": "GET", "parameters": { "projectId": { "description": "Cloud project that owns the test matrix.", @@ -111,17 +81,51 @@ "location": "path" }, "testMatrixId": { - "location": "path", "description": "Unique test matrix id which was assigned by the service.", "required": true, - "type": "string" + "type": "string", + "location": "path" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only" ], - "flatPath": "v1/projects/{projectId}/testMatrices/{testMatrixId}" + "flatPath": "v1/projects/{projectId}/testMatrices/{testMatrixId}", + "id": "testing.projects.testMatrices.get", + "path": "v1/projects/{projectId}/testMatrices/{testMatrixId}" + }, + "create": { + "httpMethod": "POST", + "parameterOrder": [ + "projectId" + ], + "response": { + "$ref": "TestMatrix" + }, + "parameters": { + "projectId": { + "location": "path", + "description": "The GCE project under which this job will run.", + "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.", + "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", + "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", + "request": { + "$ref": "TestMatrix" + } } } } @@ -130,69 +134,75 @@ "testEnvironmentCatalog": { "methods": { "get": { + "id": "testing.testEnvironmentCatalog.get", + "path": "v1/testEnvironmentCatalog/{environmentType}", + "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", + "httpMethod": "GET", "response": { "$ref": "TestEnvironmentCatalog" }, "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": { + "description": "The type of environment that should be listed.\nRequired", + "required": true, + "type": "string", "location": "path", "enum": [ "ENVIRONMENT_TYPE_UNSPECIFIED", "ANDROID", "NETWORK_CONFIGURATION" - ], - "description": "The type of environment that should be listed.\nRequired", - "required": true, - "type": "string" - }, - "projectId": { - "location": "query", - "description": "For authorization, the cloud project requesting the TestEnvironmentCatalog.\nOptional", - "type": "string" + ] } }, - "flatPath": "v1/testEnvironmentCatalog/{environmentType}", - "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" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ], + "flatPath": "v1/testEnvironmentCatalog/{environmentType}" + } + } + }, + "applicationDetailService": { + "methods": { + "getApkDetails": { + "description": "Request the details of an Android application APK.", + "request": { + "$ref": "FileReference" + }, + "response": { + "$ref": "GetApkDetailsResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/applicationDetailService/getApkDetails", + "path": "v1/applicationDetailService/getApkDetails", + "id": "testing.applicationDetailService.getApkDetails" } } } }, "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": { - "location": "query", "description": "Selector specifying which fields to include in a partial response.", - "type": "string" - }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" + "type": "string", + "location": "query" }, "$.xgafv": { "description": "V1 error format.", @@ -207,7 +217,14 @@ "2" ] }, + "callback": { + "description": "JSONP", + "type": "string", + "location": "query" + }, "alt": { + "description": "Data format for response.", + "default": "json", "enum": [ "json", "media", @@ -219,43 +236,245 @@ "Media download with context-dependent Content-Type", "Responses with Content-Type of application/x-protobuf" ], + "location": "query" + }, + "access_token": { "location": "query", - "description": "Data format for response.", - "default": "json" + "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": { + "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" + }, + "prettyPrint": { + "description": "Returns response with indentations and line breaks.", + "type": "boolean", + "default": "true", + "location": "query" + } + }, + "schemas": { + "TestEnvironmentCatalog": { + "description": "A description of a test environment.", + "type": "object", + "properties": { + "androidDeviceCatalog": { + "$ref": "AndroidDeviceCatalog", + "description": "Android devices suitable for running Android Instrumentation Tests." + }, + "networkConfigurationCatalog": { + "description": "Supported network configurations", + "$ref": "NetworkConfigurationCatalog" + } + }, + "id": "TestEnvironmentCatalog" + }, + "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" + }, + "ToolResultsStep": { + "description": "Represents a tool results step resource.\n\nThis has the results of a TestExecution.", + "type": "object", + "properties": { + "executionId": { + "description": "A tool results execution ID.\n@OutputOnly", + "type": "string" + }, + "stepId": { + "description": "A tool results step 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", + "type": "string" + } + }, + "id": "ToolResultsStep" + }, + "GetApkDetailsResponse": { + "properties": { + "apkDetail": { + "description": "Details of the Android APK.", + "$ref": "ApkDetail" + } + }, + "id": "GetApkDetailsResponse", + "description": "Response containing the details of the specified Android application APK.", + "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" + "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": { + "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" + }, + "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" + }, + "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" + } + }, + "id": "AndroidInstrumentationTest" }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" + "DeviceFile": { + "description": "A single device file description.", + "type": "object", + "properties": { + "regularFile": { + "description": "A reference to a regular file", + "$ref": "RegularFile" + }, + "obbFile": { + "$ref": "ObbFile", + "description": "A reference to an opaque binary blob file" + } + }, + "id": "DeviceFile" }, - "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" + "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", + "properties": { + "value": { + "description": "The value of detailed client information.\nRequired", + "type": "string" + }, + "key": { + "description": "The key of detailed client information.\nRequired", + "type": "string" + } + }, + "id": "ClientInfoDetail" }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" + "RegularFile": { + "description": "A file or directory to install on the device before the test starts", + "type": "object", + "properties": { + "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" + }, + "content": { + "$ref": "FileReference", + "description": "Required" + } + }, + "id": "RegularFile" }, - "bearer_token": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" + "EnvironmentVariable": { + "description": "A key-value pair passed as an environment variable to the test", + "type": "object", + "properties": { + "value": { + "description": "Value for the environment variable", + "type": "string" + }, + "key": { + "description": "Key for the environment variable", + "type": "string" + } + }, + "id": "EnvironmentVariable" }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" - } - }, - "schemas": { "Environment": { "description": "The environment in which the test is run.", "type": "object", @@ -268,8 +487,6 @@ "id": "Environment" }, "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", @@ -280,21 +497,23 @@ "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" + "type": "string", + "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." + ] } }, - "id": "RoboDirective" + "id": "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" }, "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.", @@ -335,13 +554,22 @@ "description": "A description of how to run the test.", "type": "object", "properties": { + "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" + }, "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 for Android e.g. files to install, bootstrap\nscripts.\nOptional" + "description": "Test setup requirements for Android e.g. files to install, bootstrap\nscripts.\nOptional", + "$ref": "TestSetup" }, "androidRoboTest": { "description": "An Android robo test.", @@ -358,15 +586,6 @@ "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" @@ -375,69 +594,9 @@ "description": "A group of one or more TestExecutions, built by taking a\nproduct of values over a pre-defined set of axes.", "type": "object", "properties": { - "environmentMatrix": { - "description": "How the host machine(s) are configured.\nRequired", - "$ref": "EnvironmentMatrix" - }, - "resultStorage": { - "$ref": "ResultStorage", - "description": "Where the results for the matrix are written.\nRequired" - }, - "testMatrixId": { - "description": "Unique id set by the service.\n@OutputOnly", - "type": "string" - }, - "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\".\nNOT USED", - "APK contains no code.\nSee also\nhttps://developer.android.com/guide/topics/manifest/application-element.html#code" - ], - "enum": [ - "INVALID_MATRIX_DETAILS_UNSPECIFIED", - "DETAILS_UNAVAILABLE", - "MALFORMED_APK", - "MALFORMED_TEST_APK", - "NO_MANIFEST", - "NO_PACKAGE_NAME", - "TEST_SAME_AS_APP", - "NO_INSTRUMENTATION", - "NO_SIGNATURE", - "INSTRUMENTATION_ORCHESTRATOR_INCOMPATIBLE", - "NO_TEST_RUNNER_CLASS", - "NO_LAUNCHER_ACTIVITY", - "FORBIDDEN_PERMISSIONS", - "INVALID_ROBO_DIRECTIVES", - "TEST_LOOP_INTENT_FILTER_NOT_FOUND", - "SCENARIO_LABEL_NOT_DECLARED", - "SCENARIO_LABEL_MALFORMED", - "SCENARIO_NOT_DECLARED", - "DEVICE_ADMIN_RECEIVER", - "TEST_ONLY_APK", - "NO_CODE_APK" - ] - }, "state": { + "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.", @@ -463,21 +622,19 @@ "INCOMPATIBLE_ARCHITECTURE", "CANCELLED", "INVALID" - ], - "description": "Indicates the current progress of the test matrix (e.g., FINISHED)\n@OutputOnly", + ] + }, + "projectId": { + "description": "The cloud project that owns the test matrix.\n@OutputOnly", "type": "string" }, "testSpecification": { "$ref": "TestSpecification", "description": "How to run the test.\nRequired" }, - "projectId": { - "description": "The cloud project that owns the test matrix.\n@OutputOnly", - "type": "string" - }, "clientInfo": { - "description": "Information about the client which invoked the test.\nOptional", - "$ref": "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", @@ -490,6 +647,68 @@ "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" + }, + "invalidMatrixDetails": { + "enum": [ + "INVALID_MATRIX_DETAILS_UNSPECIFIED", + "DETAILS_UNAVAILABLE", + "MALFORMED_APK", + "MALFORMED_TEST_APK", + "NO_MANIFEST", + "NO_PACKAGE_NAME", + "TEST_SAME_AS_APP", + "NO_INSTRUMENTATION", + "NO_SIGNATURE", + "INSTRUMENTATION_ORCHESTRATOR_INCOMPATIBLE", + "NO_TEST_RUNNER_CLASS", + "NO_LAUNCHER_ACTIVITY", + "FORBIDDEN_PERMISSIONS", + "INVALID_ROBO_DIRECTIVES", + "TEST_LOOP_INTENT_FILTER_NOT_FOUND", + "SCENARIO_LABEL_NOT_DECLARED", + "SCENARIO_LABEL_MALFORMED", + "SCENARIO_NOT_DECLARED", + "DEVICE_ADMIN_RECEIVER", + "TEST_ONLY_APK", + "NO_CODE_APK" + ], + "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\".\nNOT USED", + "APK contains no code.\nSee also\nhttps://developer.android.com/guide/topics/manifest/application-element.html#code" + ] } }, "id": "TestMatrix" @@ -506,19 +725,15 @@ "id": "FileReference" }, "LauncherActivityIntent": { - "properties": {}, - "id": "LauncherActivityIntent", "description": "Specifies an intent that starts the main launcher activity.", - "type": "object" + "type": "object", + "properties": {}, + "id": "LauncherActivityIntent" }, "ToolResultsExecution": { "description": "Represents a tool results execution resource.\n\nThis has the results of a TestMatrix.", "type": "object", "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" @@ -526,33 +741,18 @@ "historyId": { "description": "A tool results history ID.\n@OutputOnly", "type": "string" - } - }, - "id": "ToolResultsExecution" - }, - "ToolResultsHistory": { - "description": "Represents a tool results history resource.", - "type": "object", - "properties": { - "projectId": { - "description": "The cloud project that owns the tool results history.\nRequired", - "type": "string" }, - "historyId": { - "description": "A tool results history ID.\nRequired", + "executionId": { + "description": "A tool results execution ID.\n@OutputOnly", "type": "string" } }, - "id": "ToolResultsHistory" + "id": "ToolResultsExecution" }, "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": { - "roboScript": { - "$ref": "FileReference", - "description": "A JSON file with a sequence of actions Robo should perform as a prologue\nfor the crawl.\nOptional" - }, "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", @@ -588,10 +788,29 @@ "items": { "$ref": "RoboDirective" } + }, + "roboScript": { + "$ref": "FileReference", + "description": "A JSON file with a sequence of actions Robo should perform as a prologue\nfor the crawl.\nOptional" } }, "id": "AndroidRoboTest" }, + "ToolResultsHistory": { + "description": "Represents a tool results history resource.", + "type": "object", + "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" + } + }, + "id": "ToolResultsHistory" + }, "ApkManifest": { "description": "An Android app manifest. See\nhttp://developer.android.com/guide/topics/manifest/manifest-intro.html", "type": "object", @@ -623,30 +842,10 @@ }, "id": "ApkManifest" }, - "NetworkConfigurationCatalog": { - "properties": { - "configurations": { - "type": "array", - "items": { - "$ref": "NetworkConfiguration" - } - } - }, - "id": "NetworkConfigurationCatalog", - "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": { - "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" - }, "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", @@ -661,34 +860,54 @@ "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" }, - "AndroidDeviceCatalog": { + "NetworkConfigurationCatalog": { + "type": "object", "properties": { - "versions": { - "description": "The set of supported Android OS versions.\n@OutputOnly", + "configurations": { "type": "array", "items": { - "$ref": "AndroidVersion" + "$ref": "NetworkConfiguration" } - }, - "runtimeConfiguration": { - "$ref": "AndroidRuntimeConfiguration", - "description": "The set of supported runtime configurations.\n@OutputOnly" - }, + } + }, + "id": "NetworkConfigurationCatalog" + }, + "AndroidDeviceCatalog": { + "description": "The currently supported Android devices.", + "type": "object", + "properties": { "models": { "description": "The set of supported Android device models.\n@OutputOnly", "type": "array", "items": { "$ref": "AndroidModel" } + }, + "versions": { + "description": "The set of supported Android OS versions.\n@OutputOnly", + "type": "array", + "items": { + "$ref": "AndroidVersion" + } + }, + "runtimeConfiguration": { + "description": "The set of supported runtime configurations.\n@OutputOnly", + "$ref": "AndroidRuntimeConfiguration" } }, - "id": "AndroidDeviceCatalog", - "description": "The currently supported Android devices.", - "type": "object" + "id": "AndroidDeviceCatalog" }, "ApkDetail": { "description": "Android application details based on application manifest and apk archive\ncontents", @@ -719,38 +938,25 @@ "id": "ClientInfo" }, "EnvironmentMatrix": { - "description": "The matrix of environments in which the test is to be executed.", - "type": "object", "properties": { - "androidMatrix": { - "$ref": "AndroidMatrix", - "description": "A matrix of Android devices." - }, "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." } }, - "id": "EnvironmentMatrix" + "id": "EnvironmentMatrix", + "description": "The matrix of environments in which the test is to be executed.", + "type": "object" }, "CancelTestMatrixResponse": { "description": "Response containing the current state of the specified test matrix.", "type": "object", "properties": { "testState": { - "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", "enumDescriptions": [ @@ -765,6 +971,19 @@ "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" ] } }, @@ -836,15 +1055,13 @@ "type": "object", "properties": { "googleAuto": { - "$ref": "GoogleAuto", - "description": "An automatic google login account" + "description": "An automatic google login account", + "$ref": "GoogleAuto" } }, "id": "Account" }, "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", @@ -863,7 +1080,9 @@ "type": "string" } }, - "id": "AndroidDevice" + "id": "AndroidDevice", + "description": "A single Android device.", + "type": "object" }, "NetworkConfiguration": { "type": "object", @@ -873,8 +1092,8 @@ "type": "string" }, "upRule": { - "description": "The emulation rule applying to the upload traffic", - "$ref": "TrafficRule" + "$ref": "TrafficRule", + "description": "The emulation rule applying to the upload traffic" }, "downRule": { "description": "The emulation rule applying to the download traffic", @@ -916,6 +1135,8 @@ "id": "TrafficRule" }, "IntentFilter": { + "description": "The \u003cintent-filter\u003e section of an \u003cactivity\u003e tag.\nhttps://developer.android.com/guide/topics/manifest/intent-filter-element.html", + "type": "object", "properties": { "categoryNames": { "description": "The android:name value of the \u003ccategory\u003e tag", @@ -936,9 +1157,7 @@ } } }, - "id": "IntentFilter", - "description": "The \u003cintent-filter\u003e section of an \u003cactivity\u003e tag.\nhttps://developer.android.com/guide/topics/manifest/intent-filter-element.html", - "type": "object" + "id": "IntentFilter" }, "GoogleCloudStorage": { "description": "A storage location within Google cloud storage (GCS).", @@ -956,8 +1175,8 @@ "type": "object", "properties": { "environment": { - "$ref": "Environment", - "description": "How the host machine(s) are configured.\n@OutputOnly" + "description": "How the host machine(s) are configured.\n@OutputOnly", + "$ref": "Environment" }, "state": { "enumDescriptions": [ @@ -1015,8 +1234,8 @@ "type": "string" }, "testDetails": { - "description": "Additional details about the running test.\n@OutputOnly", - "$ref": "TestDetails" + "$ref": "TestDetails", + "description": "Additional details about the running test.\n@OutputOnly" } }, "id": "TestExecution" @@ -1025,6 +1244,21 @@ "description": "A description of an Android device tests may be run on.", "type": "object", "properties": { + "id": { + "description": "The unique opaque id for this model.\nUse this for invoking the TestExecutionService.\n@OutputOnly", + "type": "string" + }, + "tags": { + "description": "Tags for this dimension.\nExamples: \"default\", \"preview\", \"deprecated\"", + "type": "array", + "items": { + "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" @@ -1044,18 +1278,18 @@ "type": "integer" }, "form": { - "enumDescriptions": [ - "Do not use. For proto versioning only.", - "A software stack that simulates the device", - "Actual hardware" - ], "enum": [ "DEVICE_FORM_UNSPECIFIED", "VIRTUAL", "PHYSICAL" ], "description": "Whether this device is virtual or physical.\n@OutputOnly", - "type": "string" + "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", @@ -1083,27 +1317,21 @@ "name": { "description": "The human-readable marketing name for this device model.\nExamples: \"Nexus 5\", \"Galaxy S5\"\n@OutputOnly", "type": "string" - }, - "id": { - "description": "The unique opaque id for this model.\nUse this for invoking the TestExecutionService.\n@OutputOnly", - "type": "string" - }, - "tags": { - "description": "Tags for this dimension.\nExamples: \"default\", \"preview\", \"deprecated\"", - "type": "array", - "items": { - "type": "string" - } - }, - "manufacturer": { - "description": "The manufacturer of this device.\n@OutputOnly", - "type": "string" } }, "id": "AndroidModel" }, "TestSetup": { + "description": "A description of how to set up the Android 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" + } + }, "networkProfile": { "description": "The network traffic profile used for running the test.\nOptional", "type": "string" @@ -1132,27 +1360,14 @@ "account": { "description": "The device will be logged in on this account for the duration of the test.\nOptional", "$ref": "Account" - }, - "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" - } } }, - "id": "TestSetup", - "description": "A description of how to set up the Android device prior to running the test.", - "type": "object" + "id": "TestSetup" }, "ResultStorage": { "description": "Locations where the results of running the test are stored.", "type": "object", "properties": { - "toolResultsExecution": { - "$ref": "ToolResultsExecution", - "description": "The tool results execution that results are written to.\n@OutputOnly" - }, "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" @@ -1160,14 +1375,25 @@ "googleCloudStorage": { "$ref": "GoogleCloudStorage", "description": "Required." + }, + "toolResultsExecution": { + "$ref": "ToolResultsExecution", + "description": "The tool results execution that results are written to.\n@OutputOnly" } }, "id": "ResultStorage" }, "AndroidVersion": { - "description": "A version of the Android OS", - "type": "object", "properties": { + "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" @@ -1190,23 +1416,21 @@ "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" } }, - "id": "AndroidVersion" + "id": "AndroidVersion", + "description": "A version of the Android OS", + "type": "object" }, "TestDetails": { - "description": "Additional details about the progress of the running test.", - "type": "object", "properties": { + "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", + "items": { + "type": "string" + } + }, "errorMessage": { "description": "If the TestState is ERROR, then this string will contain human-readable\ndetails about the error.\n@OutputOnly", "type": "string" @@ -1214,16 +1438,11 @@ "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" - }, - "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", - "items": { - "type": "string" - } } }, - "id": "TestDetails" + "id": "TestDetails", + "description": "Additional details about the progress of the running test.", + "type": "object" }, "Distribution": { "properties": { @@ -1243,6 +1462,8 @@ "type": "object" }, "Orientation": { + "description": "Screen orientation of the device.", + "type": "object", "properties": { "name": { "description": "A human-friendly name for this orientation.\nExample: \"portrait\"\n@OutputOnly", @@ -1260,15 +1481,13 @@ } } }, - "id": "Orientation", - "description": "Screen orientation of the device.", - "type": "object" + "id": "Orientation" }, "GoogleAuto": { - "properties": {}, - "id": "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" + "type": "object", + "properties": {}, + "id": "GoogleAuto" }, "AndroidDeviceList": { "description": "A list of Android device configurations in which the test is to be executed.", @@ -1303,10 +1522,6 @@ "description": "A starting intent specified by an action, uri, and categories.", "type": "object", "properties": { - "action": { - "description": "Action name.\nRequired for START_ACTIVITY.", - "type": "string" - }, "uri": { "description": "URI for the action.\nOptional.", "type": "string" @@ -1317,233 +1532,18 @@ "items": { "type": "string" } - } - }, - "id": "StartActivityIntent" - }, - "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" - }, - "ObbFile": { - "properties": { - "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" - }, - "obb": { - "$ref": "FileReference", - "description": "Opaque Binary Blob (OBB) file(s) to install on the device\nRequired" - } - }, - "id": "ObbFile", - "description": "An opaque binary blob file to install on the device before the test starts", - "type": "object" - }, - "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" - }, - "ToolResultsStep": { - "description": "Represents a tool results step resource.\n\nThis has the results of a TestExecution.", - "type": "object", - "properties": { - "stepId": { - "description": "A tool results step 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", - "type": "string" - }, - "executionId": { - "description": "A tool results execution ID.\n@OutputOnly", - "type": "string" - } - }, - "id": "ToolResultsStep" - }, - "GetApkDetailsResponse": { - "description": "Response containing the details of the specified Android application APK.", - "type": "object", - "properties": { - "apkDetail": { - "description": "Details of the Android APK.", - "$ref": "ApkDetail" - } - }, - "id": "GetApkDetailsResponse" - }, - "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": { - "testApk": { - "description": "The APK containing the test code to be executed.\nRequired", - "$ref": "FileReference" - }, - "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" - }, - "orchestratorOption": { - "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", - "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." - ] - }, - "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" - } - } - }, - "id": "AndroidInstrumentationTest" - }, - "DeviceFile": { - "properties": { - "obbFile": { - "description": "A reference to an opaque binary blob file", - "$ref": "ObbFile" - }, - "regularFile": { - "$ref": "RegularFile", - "description": "A reference to a regular file" - } - }, - "id": "DeviceFile", - "description": "A single device file description.", - "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", - "properties": { - "key": { - "description": "The key of detailed client information.\nRequired", - "type": "string" - }, - "value": { - "description": "The value of detailed client information.\nRequired", - "type": "string" - } - }, - "id": "ClientInfoDetail" - }, - "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" - } - }, - "id": "RegularFile", - "description": "A file or directory to install on the device before the test starts", - "type": "object" - }, - "EnvironmentVariable": { - "properties": { - "value": { - "description": "Value for the environment variable", - "type": "string" }, - "key": { - "description": "Key for the environment variable", + "action": { + "description": "Action name.\nRequired for START_ACTIVITY.", "type": "string" } }, - "id": "EnvironmentVariable", - "description": "A key-value pair passed as an environment variable to the test", - "type": "object" + "id": "StartActivityIntent" } }, - "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://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": "", - "rootUrl": "https://testing.googleapis.com/", - "basePath": "", - "ownerDomain": "google.com", - "name": "testing", - "batchPath": "batch", - "revision": "20180503", - "documentationLink": "https://developers.google.com/cloud-test-lab/", - "id": "testing:v1", - "title": "Cloud Testing API" + "protocol": "rest" } diff --git a/DiscoveryJson/texttospeech_v1beta1.json b/DiscoveryJson/texttospeech_v1beta1.json index e0abac8a25..4978ec584a 100644 --- a/DiscoveryJson/texttospeech_v1beta1.json +++ b/DiscoveryJson/texttospeech_v1beta1.json @@ -1,157 +1,85 @@ { - "ownerName": "Google", - "resources": { - "voices": { - "methods": { - "list": { - "response": { - "$ref": "ListVoicesResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "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.", - "type": "string", - "location": "query" - } - }, - "flatPath": "v1beta1/voices", - "path": "v1beta1/voices", - "id": "texttospeech.voices.list", - "description": "Returns a list of Voice\nsupported for synthesis." + "discoveryVersion": "v1", + "version_module": true, + "schemas": { + "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" } - } + }, + "id": "SynthesizeSpeechResponse", + "description": "The message returned to the client by the `SynthesizeSpeech` method.", + "type": "object" }, - "text": { - "methods": { - "synthesize": { - "description": "Synthesizes speech synchronously: receive results after all text input\nhas been processed.", - "request": { - "$ref": "SynthesizeSpeechRequest" - }, - "httpMethod": "POST", - "parameterOrder": [], - "response": { - "$ref": "SynthesizeSpeechResponse" - }, - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta1/text:synthesize", - "id": "texttospeech.text.synthesize", - "path": "v1beta1/text:synthesize" + "SynthesizeSpeechRequest": { + "description": "The top-level message sent by the client for the `SynthesizeSpeech` method.", + "type": "object", + "properties": { + "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." + }, + "audioConfig": { + "description": "Required. The configuration of the synthesized audio.", + "$ref": "AudioConfig" } - } - } - }, - "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" - }, - "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": { - "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": { - "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" + }, + "id": "SynthesizeSpeechRequest" }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" + "VoiceSelectionParams": { + "description": "Description of which voice to use for a synthesis request.", + "type": "object", + "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": { + "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." + ], + "enum": [ + "SSML_VOICE_GENDER_UNSPECIFIED", + "MALE", + "FEMALE", + "NEUTRAL" + ], + "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.", + "type": "string" + } + }, + "id": "VoiceSelectionParams" }, - "oauth_token": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "type": "string" + "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.", + "type": "object", + "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" + } + }, + "id": "SynthesisInput" }, - "bearer_token": { - "description": "OAuth bearer token.", - "type": "string", - "location": "query" - } - }, - "version": "v1beta1", - "baseUrl": "https://texttospeech.googleapis.com/", - "servicePath": "", - "description": "Synthesizes natural-sounding speech by applying powerful neural network models.", - "kind": "discovery#restDescription", - "basePath": "", - "revision": "20180504", - "documentationLink": "http://cloud.google.com/text-to-speech/", - "id": "texttospeech:v1beta1", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { "Voice": { - "description": "Description of a voice supported by the TTS service.", - "type": "object", "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\").", @@ -186,25 +114,35 @@ "type": "string" } }, - "id": "Voice" + "id": "Voice", + "description": "Description of a voice supported by the TTS service.", + "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.", + "AudioConfig": { + "description": "Description of audio data to be synthesized.", "type": "object", "properties": { - "text": { - "description": "The raw text to be synthesized.", - "type": "string" + "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" }, - "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).", + "audioEncoding": { + "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." + ], + "enum": [ + "AUDIO_ENCODING_UNSPECIFIED", + "LINEAR16", + "MP3", + "OGG_OPUS" + ], + "description": "Required. The format of the requested audio byte stream.", "type": "string" - } - }, - "id": "SynthesisInput" - }, - "AudioConfig": { - "properties": { + }, "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", @@ -219,32 +157,9 @@ "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" - }, - "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" - }, - "audioEncoding": { - "enum": [ - "AUDIO_ENCODING_UNSPECIFIED", - "LINEAR16", - "MP3", - "OGG_OPUS" - ], - "description": "Required. The format of the requested audio byte stream.", - "type": "string", - "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." - ] } }, - "id": "AudioConfig", - "description": "Description of audio data to be synthesized.", - "type": "object" + "id": "AudioConfig" }, "ListVoicesResponse": { "description": "The message returned to the client by the `ListVoices` method.", @@ -259,68 +174,6 @@ } }, "id": "ListVoicesResponse" - }, - "SynthesizeSpeechResponse": { - "description": "The message returned to the client by the `SynthesizeSpeech` method.", - "type": "object", - "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" - } - }, - "id": "SynthesizeSpeechResponse" - }, - "SynthesizeSpeechRequest": { - "description": "The top-level message sent by the client for the `SynthesizeSpeech` method.", - "type": "object", - "properties": { - "input": { - "description": "Required. The Synthesizer requires either plain text or SSML as input.", - "$ref": "SynthesisInput" - }, - "voice": { - "description": "Required. The desired voice of the synthesized audio.", - "$ref": "VoiceSelectionParams" - }, - "audioConfig": { - "description": "Required. The configuration of the synthesized audio.", - "$ref": "AudioConfig" - } - }, - "id": "SynthesizeSpeechRequest" - }, - "VoiceSelectionParams": { - "description": "Description of which voice to use for a synthesis request.", - "type": "object", - "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": { - "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." - ], - "enum": [ - "SSML_VOICE_GENDER_UNSPECIFIED", - "MALE", - "FEMALE", - "NEUTRAL" - ], - "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.", - "type": "string" - } - }, - "id": "VoiceSelectionParams" } }, "protocol": "rest", @@ -343,5 +196,152 @@ "name": "texttospeech", "batchPath": "batch", "fullyEncodeReservedExpansion": true, - "title": "Cloud Text-to-Speech API" + "title": "Cloud Text-to-Speech API", + "ownerName": "Google", + "resources": { + "voices": { + "methods": { + "list": { + "path": "v1beta1/voices", + "id": "texttospeech.voices.list", + "description": "Returns a list of Voice\nsupported for synthesis.", + "response": { + "$ref": "ListVoicesResponse" + }, + "parameterOrder": [], + "httpMethod": "GET", + "parameters": { + "languageCode": { + "location": "query", + "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.", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/voices" + } + } + }, + "text": { + "methods": { + "synthesize": { + "path": "v1beta1/text:synthesize", + "id": "texttospeech.text.synthesize", + "description": "Synthesizes speech synchronously: receive results after all text input\nhas been processed.", + "request": { + "$ref": "SynthesizeSpeechRequest" + }, + "response": { + "$ref": "SynthesizeSpeechResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1beta1/text:synthesize" + } + } + } + }, + "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": { + "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": { + "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": { + "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" + ] + } + }, + "version": "v1beta1", + "baseUrl": "https://texttospeech.googleapis.com/", + "kind": "discovery#restDescription", + "description": "Synthesizes natural-sounding speech by applying powerful neural network models.", + "servicePath": "", + "basePath": "", + "revision": "20180504", + "documentationLink": "http://cloud.google.com/text-to-speech/", + "id": "texttospeech:v1beta1" } diff --git a/DiscoveryJson/toolresults_v1beta3.json b/DiscoveryJson/toolresults_v1beta3.json index ab118cfee5..e5f082c184 100644 --- a/DiscoveryJson/toolresults_v1beta3.json +++ b/DiscoveryJson/toolresults_v1beta3.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/gN0-HWNCqr7ahWo-DLEK_Pghz58\"", + "etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/88jomdVBfqMVm1NMgWKjElCyu4M\"", "discoveryVersion": "v1", "id": "toolresults:v1beta3", "name": "toolresults", "canonicalName": "Tool Results", "version": "v1beta3", - "revision": "20180507", + "revision": "20180509", "title": "Cloud Tool Results API", "description": "Reads and publishes results from Firebase Test Lab.", "ownerDomain": "google.com", diff --git a/DiscoveryJson/tpu_v1alpha1.json b/DiscoveryJson/tpu_v1alpha1.json index 34c147fd9f..1352dd68cc 100644 --- a/DiscoveryJson/tpu_v1alpha1.json +++ b/DiscoveryJson/tpu_v1alpha1.json @@ -1,25 +1,10 @@ { + "revision": "20180502", + "documentationLink": "https://cloud.google.com/tpu/", + "id": "tpu:v1alpha1", "discoveryVersion": "v1", "version_module": true, "schemas": { - "ListLocationsResponse": { - "description": "The response message for Locations.ListLocations.", - "type": "object", - "properties": { - "nextPageToken": { - "type": "string", - "description": "The standard List next-page token." - }, - "locations": { - "description": "A list of locations that matches the specified filter in the request.", - "type": "array", - "items": { - "$ref": "Location" - } - } - }, - "id": "ListLocationsResponse" - }, "ResetNodeRequest": { "description": "Request for ResetNode.", "type": "object", @@ -30,7 +15,24 @@ "description": "A TPU instance.", "type": "object", "properties": { + "tensorflowVersion": { + "description": "The version of Tensorflow running in the Node.\nRequired.", + "type": "string" + }, + "description": { + "description": "The user-supplied description of the TPU. Maximum of 512 characters.", + "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.", + "type": "array", + "items": { + "$ref": "NetworkEndpoint" + } + }, "state": { + "description": "Output only.\nThe current state for the TPU Node.", + "type": "string", "enumDescriptions": [ "TPU node state is not known/set.", "TPU node is being created.", @@ -54,18 +56,16 @@ "STOPPED", "STOPPING", "STARTING" - ], - "description": "Output only.\nThe current state for the TPU Node.", + ] + }, + "name": { + "description": "Output only.\nThe immutable name of the TPU", "type": "string" }, "acceleratorType": { "description": "The type of hardware accelerators associated with this node.\nRequired.", "type": "string" }, - "name": { - "description": "Output only.\nThe immutable name of the TPU", - "type": "string" - }, "port": { "description": "Output only.\nDEPRECATED! Use network_endpoints instead.\nThe network port for the TPU Node as visible to Compute Engine instances.", "type": "string" @@ -74,14 +74,14 @@ "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" }, - "healthDescription": { - "description": "Output only.\nIf this field is populated, it contains a description of why the TPU Node\nis unhealthy.", - "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" }, + "healthDescription": { + "description": "Output only.\nIf this field is populated, it contains a description of why the TPU Node\nis unhealthy.", + "type": "string" + }, "health": { "enumDescriptions": [ "Health status is unknown: not initialized or failed to retrieve.", @@ -102,36 +102,21 @@ "description": "Output only.\nDEPRECATED! Use network_endpoints instead.\nThe network address for the TPU Node as visible to Compute Engine\ninstances.", "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": { - "type": "string", - "description": "Output only.\nThe time when the node was created.", - "format": "google-datetime" - }, "labels": { + "description": "Resource labels to represent user-provided metadata.", + "type": "object", "additionalProperties": { "type": "string" - }, - "description": "Resource labels to represent user-provided metadata.", - "type": "object" + } }, - "tensorflowVersion": { - "description": "The version of Tensorflow running in the Node.\nRequired.", + "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.", + "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" - }, - "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.", - "type": "array", - "items": { - "$ref": "NetworkEndpoint" - } } }, "id": "Node" @@ -153,17 +138,7 @@ "type": "object" }, "Operation": { - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object", "properties": { - "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" @@ -177,33 +152,43 @@ "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`." + "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" + }, + "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" + "id": "Operation", + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "type": "object" }, "StopNodeRequest": { + "description": "Request for StopNode.", "type": "object", "properties": {}, - "id": "StopNodeRequest", - "description": "Request for StopNode." + "id": "StopNodeRequest" }, "TensorFlowVersion": { "description": "A tensorflow version that a Node can be configured with.", "type": "object", "properties": { + "name": { + "description": "The resource name.", + "type": "string" + }, "version": { "description": "the tensorflow version.", "type": "string" - }, - "name": { - "type": "string", - "description": "The resource name." } }, "id": "TensorFlowVersion" @@ -224,25 +209,29 @@ "id": "AcceleratorType" }, "ListNodesResponse": { + "description": "Response for ListNodes.", "type": "object", "properties": { - "nextPageToken": { - "description": "The next page token or empty if none.", - "type": "string" - }, "nodes": { "description": "The listed nodes.", "type": "array", "items": { "$ref": "Node" } + }, + "nextPageToken": { + "description": "The next page token or empty if none.", + "type": "string" } }, - "id": "ListNodesResponse", - "description": "Response for ListNodes." + "id": "ListNodesResponse" }, "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", @@ -258,10 +247,6 @@ "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", @@ -269,22 +254,22 @@ "type": "object" }, "ListTensorFlowVersionsResponse": { - "id": "ListTensorFlowVersionsResponse", - "description": "Response for ListTensorFlowVersions.", - "type": "object", "properties": { + "nextPageToken": { + "description": "The next page token or empty if none.", + "type": "string" + }, "tensorflowVersions": { "description": "The listed nodes.", "type": "array", "items": { "$ref": "TensorFlowVersion" } - }, - "nextPageToken": { - "description": "The next page token or empty if none.", - "type": "string" } - } + }, + "id": "ListTensorFlowVersionsResponse", + "description": "Response for ListTensorFlowVersions.", + "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 `{}`.", @@ -293,20 +278,31 @@ "id": "Empty" }, "ReimageNodeRequest": { - "id": "ReimageNodeRequest", "description": "Request for ReimageNode.", "type": "object", "properties": { "tensorflowVersion": { - "type": "string", - "description": "The version for reimage to create." + "description": "The version for reimage to create.", + "type": "string" } - } + }, + "id": "ReimageNodeRequest" }, "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" @@ -316,30 +312,17 @@ "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" - } - }, - "labels": { - "additionalProperties": { - "type": "string" }, - "description": "Cross-service attributes for the location. For example\n\n {\"cloud.googleapis.com/region\": \"us-east1\"}", + "description": "Service-specific metadata. For example the available capacity at the given\nlocation.", "type": "object" - }, - "name": { - "type": "string", - "description": "Resource name for the location, which may vary between implementations.\nFor example: `\"projects/example-project/locations/us-east1\"`" } }, "id": "Location" }, "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", - "type": "object", "properties": { "nextPageToken": { "description": "The standard List next-page token.", @@ -353,7 +336,9 @@ } } }, - "id": "ListOperationsResponse" + "id": "ListOperationsResponse", + "description": "The response message for Operations.ListOperations.", + "type": "object" }, "StartNodeRequest": { "description": "Request for StartNode.", @@ -362,7 +347,6 @@ "id": "StartNodeRequest" }, "OperationMetadata": { - "type": "object", "properties": { "createTime": { "description": "[Output only] The time the operation was created.", @@ -382,9 +366,9 @@ "type": "string" }, "endTime": { - "type": "string", "description": "[Output only] The time the operation finished running.", - "format": "google-datetime" + "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`.", @@ -396,7 +380,8 @@ } }, "id": "OperationMetadata", - "description": "Represents the metadata of the long-running operation." + "description": "Represents the metadata of the long-running operation.", + "type": "object" }, "ListAcceleratorTypesResponse": { "description": "Response for ListAcceleratorTypes.", @@ -415,6 +400,24 @@ } }, "id": "ListAcceleratorTypesResponse" + }, + "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" } }, "protocol": "rest", @@ -443,83 +446,16 @@ "projects": { "resources": { "locations": { - "methods": { - "list": { - "response": { - "$ref": "ListLocationsResponse" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "description": "The resource that owns the locations collection, if applicable.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "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": { - "description": "The standard list filter.", - "type": "string", - "location": "query" - } - }, - "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": { - "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}", - "id": "tpu.projects.locations.get", - "path": "v1alpha1/{+name}", - "description": "Gets information about a location.", - "httpMethod": "GET", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "Location" - }, - "parameters": { - "name": { - "description": "Resource name for the location.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - }, "resources": { - "tensorflowVersions": { + "acceleratorTypes": { "methods": { "list": { - "path": "v1alpha1/{+parent}/tensorflowVersions", - "id": "tpu.projects.locations.tensorflowVersions.list", - "description": "Lists TensorFlow versions supported by this API.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/acceleratorTypes", + "path": "v1alpha1/{+parent}/acceleratorTypes", + "id": "tpu.projects.locations.acceleratorTypes.list", + "description": "Lists accelerator types supported by this API.", "response": { - "$ref": "ListTensorFlowVersionsResponse" + "$ref": "ListAcceleratorTypesResponse" }, "parameterOrder": [ "parent" @@ -530,21 +466,21 @@ ], "parameters": { "parent": { + "location": "path", "description": "The parent resource name.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/locations/[^/]+$" }, "filter": { + "location": "query", "description": "List filter.", - "type": "string", - "location": "query" + "type": "string" }, "pageToken": { - "type": "string", "location": "query", - "description": "The next_page_token value returned from a previous List request, if any." + "description": "The next_page_token value returned from a previous List request, if any.", + "type": "string" }, "orderBy": { "location": "query", @@ -552,17 +488,19 @@ "type": "string" }, "pageSize": { - "location": "query", "description": "The maximum number of items to return.", "format": "int32", - "type": "integer" + "type": "integer", + "location": "query" } - }, - "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/tensorflowVersions" + } }, "get": { + "path": "v1alpha1/{+name}", + "id": "tpu.projects.locations.acceleratorTypes.get", + "description": "Gets AcceleratorType.", "response": { - "$ref": "TensorFlowVersion" + "$ref": "AcceleratorType" }, "parameterOrder": [ "name" @@ -573,29 +511,22 @@ ], "parameters": { "name": { + "location": "path", "description": "The resource name.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/tensorflowVersions/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/locations/[^/]+/acceleratorTypes/[^/]+$" } }, - "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/tensorflowVersions/{tensorflowVersionsId}", - "path": "v1alpha1/{+name}", - "id": "tpu.projects.locations.tensorflowVersions.get", - "description": "Gets TensorFlow Version." + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/acceleratorTypes/{acceleratorTypesId}" } } }, - "operations": { + "nodes": { "methods": { - "cancel": { - "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel", - "path": "v1alpha1/{+name}:cancel", - "id": "tpu.projects.locations.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`.", + "start": { "response": { - "$ref": "Empty" + "$ref": "Operation" }, "parameterOrder": [ "name" @@ -606,110 +537,150 @@ ], "parameters": { "name": { + "pattern": "^projects/[^/]+/locations/[^/]+/nodes/[^/]+$", "location": "path", - "description": "The name of the operation resource to be cancelled.", + "description": "The resource name.", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$" + "type": "string" } - } + }, + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes/{nodesId}:start", + "path": "v1alpha1/{+name}:start", + "id": "tpu.projects.locations.nodes.start", + "request": { + "$ref": "StartNodeRequest" + }, + "description": "Starts a node." }, "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`.", + "description": "Deletes a node.", "response": { - "$ref": "Empty" + "$ref": "Operation" }, "parameterOrder": [ "name" ], "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "name": { - "description": "The name of the operation resource to be deleted.", + "description": "The resource name.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/nodes/[^/]+$", "location": "path" } }, + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes/{nodesId}", + "path": "v1alpha1/{+name}", + "id": "tpu.projects.locations.nodes.delete" + }, + "reset": { + "httpMethod": "POST", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "name": { + "pattern": "^projects/[^/]+/locations/[^/]+/nodes/[^/]+$", + "location": "path", + "description": "The resource name.", + "required": true, + "type": "string" + } + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", - "path": "v1alpha1/{+name}", - "id": "tpu.projects.locations.operations.delete" + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes/{nodesId}:reset", + "id": "tpu.projects.locations.nodes.reset", + "path": "v1alpha1/{+name}:reset", + "description": "Resets a node, which stops and starts the VM.", + "request": { + "$ref": "ResetNodeRequest" + } }, "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}/nodes", + "id": "tpu.projects.locations.nodes.list", + "path": "v1alpha1/{+parent}/nodes", + "description": "Lists nodes.", + "httpMethod": "GET", "response": { - "$ref": "ListOperationsResponse" + "$ref": "ListNodesResponse" }, "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "parent" ], "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/[^/]+/locations/[^/]+$" - }, "pageToken": { - "description": "The standard list page token.", + "description": "The next_page_token value returned from a previous List request, if any.", "type": "string", "location": "query" }, "pageSize": { - "description": "The standard list page size.", + "location": "query", + "description": "The maximum number of items to return.", "format": "int32", - "type": "integer", - "location": "query" + "type": "integer" + }, + "parent": { + "pattern": "^projects/[^/]+/locations/[^/]+$", + "location": "path", + "description": "The parent resource name.", + "required": true, + "type": "string" } }, - "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/operations", - "path": "v1alpha1/{+name}/operations", - "id": "tpu.projects.locations.operations.list" + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, - "get": { - "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.", - "response": { - "$ref": "Operation" + "reimage": { + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes/{nodesId}:reimage", + "id": "tpu.projects.locations.nodes.reimage", + "path": "v1alpha1/{+name}:reimage", + "description": "Reimages a node's OS.", + "request": { + "$ref": "ReimageNodeRequest" }, + "httpMethod": "POST", "parameterOrder": [ "name" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], + "response": { + "$ref": "Operation" + }, "parameters": { "name": { - "description": "The name of the operation resource.", + "pattern": "^projects/[^/]+/locations/[^/]+/nodes/[^/]+$", + "location": "path", + "description": "The resource name.", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", - "location": "path" + "type": "string" } }, - "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}" - } - } - }, - "acceleratorTypes": { - "methods": { - "list": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Creates a node.", + "request": { + "$ref": "Node" + }, + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", "parameters": { "parent": { "location": "path", @@ -718,197 +689,154 @@ "type": "string", "pattern": "^projects/[^/]+/locations/[^/]+$" }, - "filter": { - "location": "query", - "description": "List filter.", - "type": "string" - }, - "pageToken": { - "location": "query", - "description": "The next_page_token value returned from a previous List request, if any.", - "type": "string" - }, - "orderBy": { + "nodeId": { "location": "query", - "description": "Sort results.", + "description": "The unqualified resource name.", "type": "string" - }, - "pageSize": { - "description": "The maximum number of items to return.", - "format": "int32", - "type": "integer", - "location": "query" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/acceleratorTypes", - "path": "v1alpha1/{+parent}/acceleratorTypes", - "id": "tpu.projects.locations.acceleratorTypes.list", - "description": "Lists accelerator types supported by this API.", - "response": { - "$ref": "ListAcceleratorTypesResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET" + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes", + "path": "v1alpha1/{+parent}/nodes", + "id": "tpu.projects.locations.nodes.create" }, "get": { - "path": "v1alpha1/{+name}", - "id": "tpu.projects.locations.acceleratorTypes.get", - "description": "Gets AcceleratorType.", + "description": "Gets the details of a node.", "response": { - "$ref": "AcceleratorType" + "$ref": "Node" }, "parameterOrder": [ "name" ], "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "name": { - "pattern": "^projects/[^/]+/locations/[^/]+/acceleratorTypes/[^/]+$", - "location": "path", "description": "The resource name.", "required": true, - "type": "string" + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/nodes/[^/]+$", + "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/acceleratorTypes/{acceleratorTypesId}" - } - } - }, - "nodes": { - "methods": { - "list": { + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes/{nodesId}", + "path": "v1alpha1/{+name}", + "id": "tpu.projects.locations.nodes.get" + }, + "stop": { "response": { - "$ref": "ListNodesResponse" + "$ref": "Operation" }, "parameterOrder": [ - "parent" + "name" ], - "httpMethod": "GET", + "httpMethod": "POST", + "parameters": { + "name": { + "description": "The resource name.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+/nodes/[^/]+$", + "location": "path" + } + }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes/{nodesId}:stop", + "path": "v1alpha1/{+name}:stop", + "id": "tpu.projects.locations.nodes.stop", + "description": "Stops a node.", + "request": { + "$ref": "StopNodeRequest" + } + } + } + }, + "tensorflowVersions": { + "methods": { + "list": { + "id": "tpu.projects.locations.tensorflowVersions.list", + "path": "v1alpha1/{+parent}/tensorflowVersions", + "description": "Lists TensorFlow versions supported by this API.", + "httpMethod": "GET", + "response": { + "$ref": "ListTensorFlowVersionsResponse" + }, + "parameterOrder": [ + "parent" + ], "parameters": { "pageToken": { "description": "The next_page_token value returned from a previous List request, if any.", "type": "string", "location": "query" }, + "orderBy": { + "description": "Sort results.", + "type": "string", + "location": "query" + }, "pageSize": { - "type": "integer", "location": "query", "description": "The maximum number of items to return.", - "format": "int32" + "format": "int32", + "type": "integer" }, "parent": { + "pattern": "^projects/[^/]+/locations/[^/]+$", "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", - "description": "Lists nodes." - }, - "create": { - "description": "Creates a node.", - "request": { - "$ref": "Node" - }, - "response": { - "$ref": "Operation" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "POST", - "parameters": { - "parent": { - "description": "The parent resource name.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "location": "path" + "type": "string" }, - "nodeId": { - "description": "The unqualified resource name.", - "type": "string", - "location": "query" + "filter": { + "location": "query", + "description": "List filter.", + "type": "string" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], - "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes", - "path": "v1alpha1/{+parent}/nodes", - "id": "tpu.projects.locations.nodes.create" + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/tensorflowVersions" }, - "reimage": { - "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes/{nodesId}:reimage", - "path": "v1alpha1/{+name}:reimage", - "id": "tpu.projects.locations.nodes.reimage", - "request": { - "$ref": "ReimageNodeRequest" - }, - "description": "Reimages a node's OS.", + "get": { + "description": "Gets TensorFlow Version.", "response": { - "$ref": "Operation" + "$ref": "TensorFlowVersion" }, "parameterOrder": [ "name" ], - "httpMethod": "POST", + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { "name": { - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/nodes/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/tensorflowVersions/[^/]+$", "location": "path", - "description": "The resource name." - } - } - }, - "get": { - "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes/{nodesId}", - "id": "tpu.projects.locations.nodes.get", - "path": "v1alpha1/{+name}", - "description": "Gets the details of a node.", - "httpMethod": "GET", - "response": { - "$ref": "Node" - }, - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { "description": "The resource name.", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/nodes/[^/]+$", - "location": "path" + "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "stop": { + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/tensorflowVersions/{tensorflowVersionsId}", + "path": "v1alpha1/{+name}", + "id": "tpu.projects.locations.tensorflowVersions.get" + } + } + }, + "operations": { + "methods": { + "cancel": { "response": { - "$ref": "Operation" + "$ref": "Empty" }, "parameterOrder": [ "name" @@ -919,125 +847,185 @@ ], "parameters": { "name": { - "description": "The resource name.", + "description": "The name of the operation resource to be cancelled.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/nodes/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", "location": "path" } }, - "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes/{nodesId}:stop", - "path": "v1alpha1/{+name}:stop", - "id": "tpu.projects.locations.nodes.stop", - "request": { - "$ref": "StopNodeRequest" - }, - "description": "Stops a node." + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel", + "path": "v1alpha1/{+name}:cancel", + "id": "tpu.projects.locations.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`." }, - "start": { - "request": { - "$ref": "StartNodeRequest" - }, - "description": "Starts a node.", + "delete": { "response": { - "$ref": "Operation" + "$ref": "Empty" }, "parameterOrder": [ "name" ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], + "httpMethod": "DELETE", "parameters": { "name": { + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", "location": "path", - "description": "The resource name.", + "description": "The name of the operation resource to be deleted.", "required": true, - "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/nodes/[^/]+$" + "type": "string" } }, - "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes/{nodesId}:start", - "path": "v1alpha1/{+name}:start", - "id": "tpu.projects.locations.nodes.start" - }, - "delete": { - "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes/{nodesId}", - "id": "tpu.projects.locations.nodes.delete", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", "path": "v1alpha1/{+name}", - "description": "Deletes a node.", - "httpMethod": "DELETE", + "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`." + }, + "list": { + "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.", + "response": { + "$ref": "ListOperationsResponse" + }, "parameterOrder": [ "name" ], - "response": { - "$ref": "Operation" - }, + "httpMethod": "GET", "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "parameters": { + "filter": { + "location": "query", + "description": "The standard list filter.", + "type": "string" + }, "name": { - "description": "The resource name.", + "description": "The name of the operation's parent resource.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/nodes/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+$", "location": "path" + }, + "pageToken": { + "location": "query", + "description": "The standard list page token.", + "type": "string" + }, + "pageSize": { + "location": "query", + "description": "The standard list page size.", + "format": "int32", + "type": "integer" } - } + }, + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/operations" }, - "reset": { + "get": { "response": { "$ref": "Operation" }, "parameterOrder": [ "name" ], - "httpMethod": "POST", + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], "parameters": { "name": { - "description": "The resource name.", + "description": "The name of the operation resource.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/locations/[^/]+/nodes/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", "location": "path" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}/nodes/{nodesId}:reset", - "path": "v1alpha1/{+name}:reset", - "id": "tpu.projects.locations.nodes.reset", - "description": "Resets a node, which stops and starts the VM.", - "request": { - "$ref": "ResetNodeRequest" - } + "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." } } } + }, + "methods": { + "list": { + "httpMethod": "GET", + "response": { + "$ref": "ListLocationsResponse" + }, + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "location": "query", + "description": "The standard list filter.", + "type": "string" + }, + "name": { + "description": "The resource that owns the locations collection, if applicable.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$", + "location": "path" + }, + "pageToken": { + "description": "The standard list page token.", + "type": "string", + "location": "query" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "type": "integer", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1alpha1/projects/{projectsId}/locations", + "id": "tpu.projects.locations.list", + "path": "v1alpha1/{+name}/locations", + "description": "Lists information about the supported locations for this service." + }, + "get": { + "response": { + "$ref": "Location" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "description": "Resource name for the location.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}", + "path": "v1alpha1/{+name}", + "id": "tpu.projects.locations.get", + "description": "Gets information about a location." + } } } } } }, "parameters": { - "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": { "location": "query", "description": "Pretty-print response.", @@ -1050,28 +1038,28 @@ "location": "query" }, "bearer_token": { - "location": "query", "description": "OAuth bearer token.", - "type": "string" + "type": "string", + "location": "query" }, "upload_protocol": { - "location": "query", "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" + "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", + "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" }, @@ -1089,11 +1077,16 @@ "type": "string" }, "callback": { - "location": "query", "description": "JSONP", - "type": "string" + "type": "string", + "location": "query" }, "alt": { + "enum": [ + "json", + "media", + "proto" + ], "type": "string", "enumDescriptions": [ "Responses with Content-Type of application/json", @@ -1102,21 +1095,28 @@ ], "location": "query", "description": "Data format for response.", - "default": "json", - "enum": [ - "json", - "media", - "proto" - ] + "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" } }, "version": "v1alpha1", "baseUrl": "https://tpu.googleapis.com/", - "servicePath": "", "kind": "discovery#restDescription", "description": "TPU API provides customers with access to Google TPU technology.", - "basePath": "", - "revision": "20180502", - "documentationLink": "https://cloud.google.com/tpu/", - "id": "tpu:v1alpha1" + "servicePath": "", + "basePath": "" } diff --git a/DiscoveryJson/translate_v2.json b/DiscoveryJson/translate_v2.json index 92cf033336..72c74b2e6f 100644 --- a/DiscoveryJson/translate_v2.json +++ b/DiscoveryJson/translate_v2.json @@ -1,392 +1,182 @@ { - "discoveryVersion": "v1", - "schemas": { - "TranslationsResource": { - "properties": { - "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" - }, - "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" - } - }, - "id": "TranslationsResource", - "type": "object" - }, - "DetectionsResource": { - "description": "An array of languages which we detect for the given text The most likely language list first.", - "type": "array", - "items": { - "type": "object", - "properties": { - "confidence": { - "description": "The confidence of the detection result of this language.", - "format": "float", - "type": "number" - }, - "isReliable": { - "description": "A boolean to indicate is the language detection result reliable.", - "type": "boolean" - }, - "language": { - "description": "The language we detected.", - "type": "string" - } - } - }, - "id": "DetectionsResource" - }, - "TranslationsListResponse": { - "description": "The main language translation response message.", - "type": "object", - "properties": { - "translations": { - "description": "Translations contains list of translation results of given text", - "type": "array", - "items": { - "$ref": "TranslationsResource" - } - } - }, - "id": "TranslationsListResponse" - }, - "TranslateTextRequest": { - "properties": { - "model": { - "description": "The `model` type requested for this translation. Valid values are\nlisted in public documentation.", - "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" - }, - "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" - }, - "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" - } - }, - "id": "TranslateTextRequest", - "description": "The main translation request message for the Cloud Translation API.", - "type": "object" - }, - "DetectLanguageRequest": { - "description": "The request message for language detection.", - "type": "object", - "properties": { - "q": { - "description": "The input text upon which to perform language detection. Repeat this\nparameter to perform language detection on multiple text inputs.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "id": "DetectLanguageRequest" - }, - "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" - } - }, - "id": "LanguagesResource", - "type": "object" - }, - "DetectionsListResponse": { - "properties": { - "detections": { - "description": "A detections contains detection results of several text", - "type": "array", - "items": { - "$ref": "DetectionsResource" - } - } - }, - "id": "DetectionsListResponse", - "type": "object" - }, - "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": { - "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" - } - } - }, - "id": "LanguagesListResponse", - "type": "object" - } - }, - "protocol": "rest", - "icons": { - "x16": "https://www.google.com/images/icons/product/translate-16.png", - "x32": "https://www.google.com/images/icons/product/translate-32.png" - }, - "canonicalName": "Translate", - "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-translation": { - "description": "Translate text from one language to another using Google Translate" - } - } - } - }, - "rootUrl": "https://translation.googleapis.com/", - "ownerDomain": "google.com", - "name": "translate", - "batchPath": "batch/translate", - "title": "Google Cloud Translation API", - "features": [ - "dataWrapper" - ], "ownerName": "Google", "resources": { - "translations": { + "detections": { "methods": { "list": { + "description": "Detects the language of text within a request.", "response": { - "$ref": "TranslationsListResponse" + "$ref": "DetectionsListResponse" }, "parameterOrder": [ - "q", - "target" + "q" ], "httpMethod": "GET", "parameters": { - "cid": { - "description": "The customization id for translate", - "type": "string", - "repeated": true, - "location": "query" - }, - "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": { - "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" - ], - "location": "query" - }, - "model": { - "location": "query", - "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.", "type": "string", "required": true, "repeated": true, - "location": "query" - }, - "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" + "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", - "id": "language.translations.list", - "description": "Translates input text, returning translated text." + "path": "v2/detect", + "id": "language.detections.list" }, - "translate": { - "path": "v2", - "id": "language.translations.translate", - "description": "Translates input text, returning translated text.", - "request": { - "$ref": "TranslateTextRequest" - }, + "detect": { + "httpMethod": "POST", + "parameterOrder": [], "response": { - "$ref": "TranslationsListResponse" + "$ref": "DetectionsListResponse" }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-translation", "https://www.googleapis.com/auth/cloud-platform" - ] + ], + "parameters": {}, + "id": "language.detections.detect", + "path": "v2/detect", + "request": { + "$ref": "DetectLanguageRequest" + }, + "description": "Detects the language of text within a request." } } }, - "detections": { + "languages": { "methods": { "list": { + "path": "v2/languages", + "id": "language.languages.list", + "description": "Returns a list of supported languages for translation.", "response": { - "$ref": "DetectionsListResponse" + "$ref": "LanguagesListResponse" }, - "parameterOrder": [ - "q" - ], "httpMethod": "GET", "parameters": { - "q": { - "repeated": true, + "target": { + "type": "string", "location": "query", - "description": "The input text upon which to perform language detection. Repeat this\nparameter to perform language detection on multiple text inputs.", + "description": "The language to use to return localized, human readable names of supported\nlanguages." + }, + "model": { "type": "string", - "required": true + "location": "query", + "description": "The model type for which supported languages should be returned." } }, "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": { + ] + } + } + }, + "translations": { + "methods": { + "translate": { "response": { - "$ref": "DetectionsListResponse" + "$ref": "TranslationsListResponse" }, "parameterOrder": [], "httpMethod": "POST", + "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-translation", "https://www.googleapis.com/auth/cloud-platform" ], - "parameters": {}, - "path": "v2/detect", - "id": "language.detections.detect", + "path": "v2", + "id": "language.translations.translate", + "description": "Translates input text, returning translated text.", "request": { - "$ref": "DetectLanguageRequest" - }, - "description": "Detects the language of text within a request." - } - } - }, - "languages": { - "methods": { + "$ref": "TranslateTextRequest" + } + }, "list": { - "description": "Returns a list of supported languages for translation.", "response": { - "$ref": "LanguagesListResponse" + "$ref": "TranslationsListResponse" }, + "parameterOrder": [ + "q", + "target" + ], "httpMethod": "GET", "parameters": { + "model": { + "location": "query", + "description": "The `model` type requested for this translation. Valid values are\nlisted in public documentation.", + "type": "string" + }, + "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 + }, + "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": { + "location": "query", + "description": "The customization id for translate", + "type": "string", + "repeated": true + }, "target": { - "description": "The language to use to return localized, human readable names of supported\nlanguages.", "type": "string", - "location": "query" + "required": true, + "location": "query", + "description": "The language to use for translation of the input text, set to one of the\nlanguage codes listed in Language Support." }, - "model": { - "description": "The model type for which supported languages should be returned.", + "format": { "type": "string", - "location": "query" + "enumDescriptions": [ + "Specifies the input is in HTML", + "Specifies the input is in plain textual 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." } }, "scopes": [ "https://www.googleapis.com/auth/cloud-translation", "https://www.googleapis.com/auth/cloud-platform" ], - "path": "v2/languages", - "id": "language.languages.list" + "path": "v2", + "id": "language.translations.list", + "description": "Translates input text, returning translated text." } } } }, "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": { - "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" - }, - "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" + "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" + "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" + "location": "query", + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")." }, "fields": { "location": "query", @@ -399,6 +189,7 @@ "type": "string" }, "$.xgafv": { + "location": "query", "enum": [ "1", "2" @@ -408,15 +199,9 @@ "enumDescriptions": [ "v1 error format", "v2 error format" - ], - "location": "query" + ] }, "alt": { - "enum": [ - "json", - "media", - "proto" - ], "type": "string", "enumDescriptions": [ "Responses with Content-Type of application/json", @@ -425,7 +210,43 @@ ], "location": "query", "description": "Data format for response.", - "default": "json" + "default": "json", + "enum": [ + "json", + "media", + "proto" + ] + }, + "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. Overrides userIp if both are provided.", + "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": { + "type": "string", + "location": "query", + "description": "OAuth bearer token." } }, "version": "v2", @@ -436,5 +257,184 @@ "basePath": "/language/translate/", "revision": "20170525", "documentationLink": "https://code.google.com/apis/language/translate/v2/getting_started.html", - "id": "translate:v2" + "id": "translate:v2", + "discoveryVersion": "v1", + "schemas": { + "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": { + "description": "Human readable name of the language localized to the target language.", + "type": "string" + } + }, + "id": "LanguagesResource" + }, + "DetectionsListResponse": { + "type": "object", + "properties": { + "detections": { + "type": "array", + "items": { + "$ref": "DetectionsResource" + }, + "description": "A detections contains detection results of several text" + } + }, + "id": "DetectionsListResponse" + }, + "GetSupportedLanguagesRequest": { + "type": "object", + "properties": { + "target": { + "type": "string", + "description": "The language to use to return localized, human readable names of supported\nlanguages." + } + }, + "id": "GetSupportedLanguagesRequest", + "description": "The request message for discovering supported languages." + }, + "LanguagesListResponse": { + "type": "object", + "properties": { + "languages": { + "type": "array", + "items": { + "$ref": "LanguagesResource" + }, + "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." + } + }, + "id": "LanguagesListResponse" + }, + "DetectionsResource": { + "type": "array", + "items": { + "type": "object", + "properties": { + "confidence": { + "type": "number", + "description": "The confidence of the detection result of this language.", + "format": "float" + }, + "isReliable": { + "description": "A boolean to indicate is the language detection result reliable.", + "type": "boolean" + }, + "language": { + "description": "The language we detected.", + "type": "string" + } + } + }, + "id": "DetectionsResource", + "description": "An array of languages which we detect for the given text The most likely language list first." + }, + "TranslationsResource": { + "type": "object", + "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": { + "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" + } + }, + "id": "TranslationsResource" + }, + "TranslationsListResponse": { + "type": "object", + "properties": { + "translations": { + "type": "array", + "items": { + "$ref": "TranslationsResource" + }, + "description": "Translations contains list of translation results of given text" + } + }, + "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": { + "type": "string", + "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." + }, + "model": { + "type": "string", + "description": "The `model` type requested for this translation. Valid values are\nlisted in public documentation." + }, + "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" + }, + "q": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The input text to translate. Repeat this parameter to perform translation\noperations on multiple text inputs." + }, + "format": { + "type": "string", + "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." + } + }, + "id": "TranslateTextRequest" + }, + "DetectLanguageRequest": { + "description": "The request message for language detection.", + "type": "object", + "properties": { + "q": { + "description": "The input text upon which to perform language detection. Repeat this\nparameter to perform language detection on multiple text inputs.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "id": "DetectLanguageRequest" + } + }, + "icons": { + "x16": "https://www.google.com/images/icons/product/translate-16.png", + "x32": "https://www.google.com/images/icons/product/translate-32.png" + }, + "protocol": "rest", + "canonicalName": "Translate", + "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-translation": { + "description": "Translate text from one language to another using Google Translate" + } + } + } + }, + "rootUrl": "https://translation.googleapis.com/", + "ownerDomain": "google.com", + "name": "translate", + "batchPath": "batch/translate", + "features": [ + "dataWrapper" + ], + "title": "Google Cloud Translation API" } diff --git a/DiscoveryJson/vault_v1.json b/DiscoveryJson/vault_v1.json index c222a5ac4e..72b7a4debf 100644 --- a/DiscoveryJson/vault_v1.json +++ b/DiscoveryJson/vault_v1.json @@ -1,415 +1,305 @@ { - "version": "v1", - "baseUrl": "https://vault.googleapis.com/", - "servicePath": "", - "description": "Archiving and eDiscovery for G Suite.", - "kind": "discovery#restDescription", - "basePath": "", - "id": "vault:v1", - "documentationLink": "https://developers.google.com/vault", - "revision": "20180403", - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "HeldOrgUnit": { - "properties": { - "orgUnitId": { - "description": "The org unit's immutable ID as provided by the Admin SDK.", - "type": "string" - }, - "holdTime": { - "description": "When the org unit was put on hold. This property is immutable.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "HeldOrgUnit", - "description": "A organizational unit being held in a particular hold.\nThis structure is immutable.", - "type": "object" - }, - "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": { - "sendEmails": { - "description": "True to send notification email to the added account.\nFalse to not send notification email.", - "type": "boolean" - }, - "matterPermission": { - "description": "The MatterPermission to add.", - "$ref": "MatterPermission" - }, - "ccMe": { - "description": "Only relevant if send_emails is true.\nTrue to CC requestor in the email message.\nFalse to not CC requestor.", - "type": "boolean" - } - }, - "id": "AddMatterPermissionsRequest" - }, - "Matter": { - "description": "Represents a matter.", - "type": "object", - "properties": { - "matterId": { - "description": "The matter ID which is generated by the server.\nShould be blank when creating a new matter.", - "type": "string" - }, - "state": { - "enum": [ - "STATE_UNSPECIFIED", - "OPEN", - "CLOSED", - "DELETED" - ], - "description": "The state of the matter.", - "type": "string", - "enumDescriptions": [ - "The matter has no specified state.", - "This matter is open.", - "This matter is closed.", - "This matter is deleted." - ] - }, - "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" - } - }, - "id": "Matter" - }, - "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": { - "holdTime": { - "description": "When the account was put on hold.", - "format": "google-datetime", - "type": "string" - }, - "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" - } - }, - "id": "HeldAccount" - }, - "ReopenMatterResponse": { - "description": "Response to a ReopenMatterRequest.", - "type": "object", - "properties": { - "matter": { - "$ref": "Matter", - "description": "The updated matter, with state OPEN." - } - }, - "id": "ReopenMatterResponse" - }, - "CorpusQuery": { - "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" - }, - "hangoutsChatQuery": { - "description": "Details pertaining to Hangouts Chat holds. If set, corpus must be\nHangouts Chat.", - "$ref": "HeldHangoutsChatQuery" - }, - "driveQuery": { - "description": "Details pertaining to Drive holds. If set, corpus must be Drive.", - "$ref": "HeldDriveQuery" - } - }, - "id": "CorpusQuery", - "description": "Corpus specific queries.", - "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.", - "type": "object", - "properties": { - "accounts": { - "description": "If set, the hold applies to the enumerated accounts and org_unit must be\nempty.", - "type": "array", - "items": { - "$ref": "HeldAccount" - } - }, - "query": { - "description": "The corpus-specific query. If set, the corpusQuery must match corpus\ntype.", - "$ref": "CorpusQuery" - }, - "orgUnit": { - "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.", - "$ref": "HeldOrgUnit" - }, - "corpus": { - "enumDescriptions": [ - "No corpus specified.", - "Drive.", - "Mail.", - "Groups.", - "Hangouts Chat." - ], - "enum": [ - "CORPUS_TYPE_UNSPECIFIED", - "DRIVE", - "MAIL", - "GROUPS", - "HANGOUTS_CHAT" - ], - "description": "The corpus to be searched.", - "type": "string" - }, - "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" - } - }, - "id": "Hold" - }, - "ListHoldsResponse": { - "description": "The holds for a matter.", - "type": "object", - "properties": { + "ownerName": "Google", + "resources": { + "matters": { + "resources": { "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" - }, - "UndeleteMatterRequest": { - "description": "Undelete a matter by ID.", - "type": "object", - "properties": {}, - "id": "UndeleteMatterRequest" - }, - "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" - }, - "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": { - "description": "Reopen a matter by ID.", - "type": "object", - "properties": {}, - "id": "ReopenMatterRequest" - }, - "RemoveMatterPermissionsRequest": { - "description": "Remove an account as a matter collaborator.", - "type": "object", - "properties": { - "accountId": { - "description": "The account ID.", - "type": "string" - } - }, - "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": { - "accountId": { - "description": "The account id, as provided by \u003ca href=\"https://developers.google.com/admin-sdk/\"\u003eAdmin SDK\u003c/a\u003e.", - "type": "string" - }, - "role": { - "enumDescriptions": [ - "No role assigned.", - "A collaborator to the matter.", - "The owner of the matter." - ], - "enum": [ - "ROLE_UNSPECIFIED", - "COLLABORATOR", - "OWNER" - ], - "description": "The user's role in this matter.", - "type": "string" - } - }, - "id": "MatterPermission" - }, - "HeldHangoutsChatQuery": { - "description": "Query options for hangouts chat holds.", - "type": "object", - "properties": { - "includeRooms": { - "description": "If true, include rooms the user has participated in.", - "type": "boolean" - } - }, - "id": "HeldHangoutsChatQuery" - }, - "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" + "methods": { + "delete": { + "description": "Removes a hold by ID. This will release any HeldAccounts on this Hold.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "matterId", + "holdId" + ], + "httpMethod": "DELETE", + "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" + ], + "flatPath": "v1/matters/{matterId}/holds/{holdId}", + "path": "v1/matters/{matterId}/holds/{holdId}", + "id": "vault.matters.holds.delete" + }, + "get": { + "description": "Gets a hold by ID.", + "response": { + "$ref": "Hold" + }, + "parameterOrder": [ + "matterId", + "holdId" + ], + "httpMethod": "GET", + "parameters": { + "holdId": { + "location": "path", + "description": "The hold ID.", + "required": true, + "type": "string" + }, + "view": { + "location": "query", + "enum": [ + "HOLD_VIEW_UNSPECIFIED", + "BASIC_HOLD", + "FULL_HOLD" + ], + "description": "Specifies which parts of the Hold to return.", + "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}", + "path": "v1/matters/{matterId}/holds/{holdId}", + "id": "vault.matters.holds.get" + }, + "list": { + "response": { + "$ref": "ListHoldsResponse" + }, + "parameterOrder": [ + "matterId" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/ediscovery", + "https://www.googleapis.com/auth/ediscovery.readonly" + ], + "parameters": { + "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" + }, + "view": { + "enum": [ + "HOLD_VIEW_UNSPECIFIED", + "BASIC_HOLD", + "FULL_HOLD" + ], + "description": "Specifies which parts of the Hold to return.", + "type": "string", + "location": "query" + }, + "matterId": { + "location": "path", + "description": "The matter ID.", + "required": true, + "type": "string" + } + }, + "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": { + "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.", + "request": { + "$ref": "Hold" + }, + "httpMethod": "PUT", + "parameterOrder": [ + "matterId", + "holdId" + ], + "response": { + "$ref": "Hold" + }, + "parameters": { + "matterId": { + "location": "path", + "description": "The matter ID.", + "required": true, + "type": "string" + }, + "holdId": { + "description": "The ID of the hold.", + "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": { + "httpMethod": "POST", + "parameterOrder": [ + "matterId" + ], + "response": { + "$ref": "Hold" + }, + "parameters": { + "matterId": { + "location": "path", + "description": "The matter ID.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/ediscovery" + ], + "flatPath": "v1/matters/{matterId}/holds", + "id": "vault.matters.holds.create", + "path": "v1/matters/{matterId}/holds", + "description": "Creates a hold in the given matter.", + "request": { + "$ref": "Hold" + } + } + }, + "resources": { + "accounts": { + "methods": { + "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.", + "httpMethod": "DELETE", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "matterId", + "holdId", + "accountId" + ], + "parameters": { + "holdId": { + "location": "path", + "description": "The hold ID.", + "required": true, + "type": "string" + }, + "accountId": { + "location": "path", + "description": "The ID of the account to remove from 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}/accounts/{accountId}", + "id": "vault.matters.holds.accounts.delete", + "path": "v1/matters/{matterId}/holds/{holdId}/accounts/{accountId}" + }, + "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.", + "httpMethod": "GET", + "response": { + "$ref": "ListHeldAccountsResponse" + }, + "parameterOrder": [ + "matterId", + "holdId" + ], + "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", + "https://www.googleapis.com/auth/ediscovery.readonly" + ], + "flatPath": "v1/matters/{matterId}/holds/{holdId}/accounts", + "id": "vault.matters.holds.accounts.list", + "path": "v1/matters/{matterId}/holds/{holdId}/accounts" + }, + "create": { + "response": { + "$ref": "HeldAccount" + }, + "parameterOrder": [ + "matterId", + "holdId" + ], + "httpMethod": "POST", + "parameters": { + "holdId": { + "description": "The hold ID.", + "required": true, + "type": "string", + "location": "path" + }, + "matterId": { + "description": "The matter ID.", + "required": true, + "type": "string", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/ediscovery" + ], + "flatPath": "v1/matters/{matterId}/holds/{holdId}/accounts", + "path": "v1/matters/{matterId}/holds/{holdId}/accounts", + "id": "vault.matters.holds.accounts.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.", + "request": { + "$ref": "HeldAccount" + } + } + } + } } } }, - "id": "ListMattersResponse" - }, - "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" - } - }, - "id": "HeldMailQuery", - "description": "Query options for mail holds.", - "type": "object" - }, - "CloseMatterResponse": { - "description": "Response to a CloseMatterRequest.", - "type": "object", - "properties": { - "matter": { - "$ref": "Matter", - "description": "The updated matter, with state CLOSED." - } - }, - "id": "CloseMatterResponse" - }, - "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" - } - }, - "id": "HeldGroupsQuery", - "description": "Query options for group holds.", - "type": "object" - }, - "HeldDriveQuery": { - "description": "Query options for Drive holds.", - "type": "object", - "properties": { - "includeTeamDriveFiles": { - "description": "If true, include files in Team Drives in the hold.", - "type": "boolean" - } - }, - "id": "HeldDriveQuery" - } - }, - "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": "Vault", - "auth": { - "oauth2": { - "scopes": { - "https://www.googleapis.com/auth/ediscovery.readonly": { - "description": "View your eDiscovery data" - }, - "https://www.googleapis.com/auth/ediscovery": { - "description": "Manage your eDiscovery data" - } - } - } - }, - "rootUrl": "https://vault.googleapis.com/", - "ownerDomain": "google.com", - "name": "vault", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "G Suite Vault API", - "ownerName": "Google", - "resources": { - "matters": { "methods": { "get": { - "flatPath": "v1/matters/{matterId}", - "path": "v1/matters/{matterId}", - "id": "vault.matters.get", - "description": "Gets the specified matter.", "response": { "$ref": "Matter" }, @@ -418,12 +308,6 @@ ], "httpMethod": "GET", "parameters": { - "matterId": { - "description": "The matter ID.", - "required": true, - "type": "string", - "location": "path" - }, "view": { "description": "Specifies which parts of the Matter to return in the response.", "type": "string", @@ -433,29 +317,7 @@ "BASIC", "FULL" ] - } - }, - "scopes": [ - "https://www.googleapis.com/auth/ediscovery", - "https://www.googleapis.com/auth/ediscovery.readonly" - ] - }, - "undelete": { - "flatPath": "v1/matters/{matterId}:undelete", - "id": "vault.matters.undelete", - "path": "v1/matters/{matterId}:undelete", - "description": "Undeletes the specified matter. Returns matter with updated state.", - "request": { - "$ref": "UndeleteMatterRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "matterId" - ], - "response": { - "$ref": "Matter" - }, - "parameters": { + }, "matterId": { "description": "The matter ID.", "required": true, @@ -464,69 +326,16 @@ } }, "scopes": [ - "https://www.googleapis.com/auth/ediscovery" - ] - }, - "close": { - "flatPath": "v1/matters/{matterId}:close", - "id": "vault.matters.close", - "path": "v1/matters/{matterId}:close", - "description": "Closes the specified matter. Returns matter with updated state.", - "request": { - "$ref": "CloseMatterRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "matterId" - ], - "response": { - "$ref": "CloseMatterResponse" - }, - "parameters": { - "matterId": { - "location": "path", - "description": "The matter ID.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/ediscovery" - ] - }, - "update": { - "response": { - "$ref": "Matter" - }, - "parameterOrder": [ - "matterId" - ], - "httpMethod": "PUT", - "scopes": [ - "https://www.googleapis.com/auth/ediscovery" + "https://www.googleapis.com/auth/ediscovery", + "https://www.googleapis.com/auth/ediscovery.readonly" ], - "parameters": { - "matterId": { - "description": "The matter ID.", - "required": true, - "type": "string", - "location": "path" - } - }, "flatPath": "v1/matters/{matterId}", "path": "v1/matters/{matterId}", - "id": "vault.matters.update", - "request": { - "$ref": "Matter" - }, - "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." + "id": "vault.matters.get", + "description": "Gets the specified matter." }, - "delete": { - "flatPath": "v1/matters/{matterId}", - "id": "vault.matters.delete", - "path": "v1/matters/{matterId}", - "description": "Deletes the specified matter. Returns matter with updated state.", - "httpMethod": "DELETE", + "undelete": { + "httpMethod": "POST", "parameterOrder": [ "matterId" ], @@ -536,71 +345,29 @@ "parameters": { "matterId": { "location": "path", - "description": "The matter ID", + "description": "The matter ID.", "required": true, "type": "string" } }, - "scopes": [ - "https://www.googleapis.com/auth/ediscovery" - ] - }, - "list": { - "flatPath": "v1/matters", - "path": "v1/matters", - "id": "vault.matters.list", - "description": "Lists matters the user has access to.", - "response": { - "$ref": "ListMattersResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "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": { - "location": "query", - "description": "The pagination token as returned in the response.", - "type": "string" - }, - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/ediscovery", - "https://www.googleapis.com/auth/ediscovery.readonly" - ] + "scopes": [ + "https://www.googleapis.com/auth/ediscovery" + ], + "flatPath": "v1/matters/{matterId}:undelete", + "id": "vault.matters.undelete", + "path": "v1/matters/{matterId}:undelete", + "description": "Undeletes the specified matter. Returns matter with updated state.", + "request": { + "$ref": "UndeleteMatterRequest" + } }, - "addPermissions": { + "close": { "httpMethod": "POST", "parameterOrder": [ "matterId" ], "response": { - "$ref": "MatterPermission" + "$ref": "CloseMatterResponse" }, "parameters": { "matterId": { @@ -613,40 +380,22 @@ "scopes": [ "https://www.googleapis.com/auth/ediscovery" ], - "flatPath": "v1/matters/{matterId}:addPermissions", - "id": "vault.matters.addPermissions", - "path": "v1/matters/{matterId}:addPermissions", - "description": "Adds an account as a matter collaborator.", + "flatPath": "v1/matters/{matterId}:close", + "id": "vault.matters.close", + "path": "v1/matters/{matterId}:close", + "description": "Closes the specified matter. Returns matter with updated state.", "request": { - "$ref": "AddMatterPermissionsRequest" + "$ref": "CloseMatterRequest" } }, - "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.", + "update": { "response": { "$ref": "Matter" }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/ediscovery" - ], - "parameters": {}, - "flatPath": "v1/matters", - "path": "v1/matters", - "id": "vault.matters.create" - }, - "reopen": { - "response": { - "$ref": "ReopenMatterResponse" - }, "parameterOrder": [ "matterId" ], - "httpMethod": "POST", + "httpMethod": "PUT", "scopes": [ "https://www.googleapis.com/auth/ediscovery" ], @@ -658,426 +407,677 @@ "type": "string" } }, - "flatPath": "v1/matters/{matterId}:reopen", - "path": "v1/matters/{matterId}:reopen", - "id": "vault.matters.reopen", + "flatPath": "v1/matters/{matterId}", + "path": "v1/matters/{matterId}", + "id": "vault.matters.update", "request": { - "$ref": "ReopenMatterRequest" + "$ref": "Matter" }, - "description": "Reopens the specified matter. Returns matter with updated state." + "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." }, - "removePermissions": { - "request": { - "$ref": "RemoveMatterPermissionsRequest" - }, - "description": "Removes an account as a matter collaborator.", - "response": { - "$ref": "Empty" - }, + "delete": { + "httpMethod": "DELETE", "parameterOrder": [ "matterId" ], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/ediscovery" - ], + "response": { + "$ref": "Matter" + }, "parameters": { "matterId": { - "description": "The matter ID.", + "description": "The matter ID", "required": true, "type": "string", "location": "path" } }, - "flatPath": "v1/matters/{matterId}:removePermissions", - "path": "v1/matters/{matterId}:removePermissions", - "id": "vault.matters.removePermissions" - } - }, - "resources": { - "holds": { - "methods": { - "get": { - "description": "Gets a hold by ID.", - "response": { - "$ref": "Hold" - }, - "parameterOrder": [ - "matterId", - "holdId" - ], - "httpMethod": "GET", - "parameters": { - "holdId": { - "location": "path", - "description": "The hold ID.", - "required": true, - "type": "string" - }, - "view": { - "enum": [ - "HOLD_VIEW_UNSPECIFIED", - "BASIC_HOLD", - "FULL_HOLD" - ], - "description": "Specifies which parts of the Hold to return.", - "type": "string", - "location": "query" - }, - "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}", - "path": "v1/matters/{matterId}/holds/{holdId}", - "id": "vault.matters.holds.get" - }, - "list": { - "response": { - "$ref": "ListHoldsResponse" - }, - "parameterOrder": [ - "matterId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/ediscovery", - "https://www.googleapis.com/auth/ediscovery.readonly" - ], - "parameters": { - "matterId": { - "description": "The matter ID.", - "required": true, - "type": "string", - "location": "path" - }, - "pageToken": { - "location": "query", - "description": "The pagination token as returned in the response.\nAn empty token means start from the beginning.", - "type": "string" - }, - "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" - }, - "view": { - "location": "query", - "enum": [ - "HOLD_VIEW_UNSPECIFIED", - "BASIC_HOLD", - "FULL_HOLD" - ], - "description": "Specifies which parts of the Hold to return.", - "type": "string" - } - }, - "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": { - "httpMethod": "PUT", - "parameterOrder": [ - "matterId", - "holdId" - ], - "response": { - "$ref": "Hold" - }, - "parameters": { - "holdId": { - "location": "path", - "description": "The ID of the hold.", - "required": true, - "type": "string" - }, - "matterId": { - "location": "path", - "description": "The matter ID.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/ediscovery" - ], - "flatPath": "v1/matters/{matterId}/holds/{holdId}", - "id": "vault.matters.holds.update", - "path": "v1/matters/{matterId}/holds/{holdId}", - "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.", - "request": { - "$ref": "Hold" - } - }, - "create": { - "description": "Creates a hold in the given matter.", - "request": { - "$ref": "Hold" - }, - "httpMethod": "POST", - "parameterOrder": [ - "matterId" - ], - "response": { - "$ref": "Hold" - }, - "parameters": { - "matterId": { - "location": "path", - "description": "The matter ID.", - "required": true, - "type": "string" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/ediscovery" - ], - "flatPath": "v1/matters/{matterId}/holds", - "id": "vault.matters.holds.create", - "path": "v1/matters/{matterId}/holds" - }, - "delete": { - "description": "Removes a hold by ID. This will release any HeldAccounts on this Hold.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "matterId", - "holdId" + "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." + }, + "list": { + "description": "Lists matters the user has access to.", + "response": { + "$ref": "ListMattersResponse" + }, + "parameterOrder": [], + "httpMethod": "GET", + "parameters": { + "state": { + "enum": [ + "STATE_UNSPECIFIED", + "OPEN", + "CLOSED", + "DELETED" ], - "httpMethod": "DELETE", - "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" + "description": "If set, list only matters with that specific state. The default is listing\nmatters of all states.", + "type": "string", + "location": "query" + }, + "pageToken": { + "description": "The pagination token as returned in the response.", + "type": "string", + "location": "query" + }, + "pageSize": { + "description": "The number of matters to return in the response.\nDefault and maximum are 100.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "view": { + "enum": [ + "VIEW_UNSPECIFIED", + "BASIC", + "FULL" ], - "flatPath": "v1/matters/{matterId}/holds/{holdId}", - "path": "v1/matters/{matterId}/holds/{holdId}", - "id": "vault.matters.holds.delete" + "description": "Specifies which parts of the matter to return in response.", + "type": "string", + "location": "query" } }, - "resources": { - "accounts": { - "methods": { - "delete": { - "httpMethod": "DELETE", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "matterId", - "holdId", - "accountId" - ], - "parameters": { - "holdId": { - "location": "path", - "description": "The hold ID.", - "required": true, - "type": "string" - }, - "accountId": { - "description": "The ID of the account to remove from the hold.", - "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/{accountId}", - "id": "vault.matters.holds.accounts.delete", - "path": "v1/matters/{matterId}/holds/{holdId}/accounts/{accountId}", - "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": { - "httpMethod": "GET", - "response": { - "$ref": "ListHeldAccountsResponse" - }, - "parameterOrder": [ - "matterId", - "holdId" - ], - "parameters": { - "matterId": { - "description": "The matter ID.", - "required": true, - "type": "string", - "location": "path" - }, - "holdId": { - "description": "The hold 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}/accounts", - "id": "vault.matters.holds.accounts.list", - "path": "v1/matters/{matterId}/holds/{holdId}/accounts", - "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." - }, - "create": { - "flatPath": "v1/matters/{matterId}/holds/{holdId}/accounts", - "path": "v1/matters/{matterId}/holds/{holdId}/accounts", - "id": "vault.matters.holds.accounts.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.", - "request": { - "$ref": "HeldAccount" - }, - "response": { - "$ref": "HeldAccount" - }, - "parameterOrder": [ - "matterId", - "holdId" - ], - "httpMethod": "POST", - "parameters": { - "holdId": { - "description": "The hold ID.", - "required": true, - "type": "string", - "location": "path" - }, - "matterId": { - "description": "The matter ID.", - "required": true, - "type": "string", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/ediscovery" - ] - } - } + "scopes": [ + "https://www.googleapis.com/auth/ediscovery", + "https://www.googleapis.com/auth/ediscovery.readonly" + ], + "flatPath": "v1/matters", + "path": "v1/matters", + "id": "vault.matters.list" + }, + "addPermissions": { + "httpMethod": "POST", + "parameterOrder": [ + "matterId" + ], + "response": { + "$ref": "MatterPermission" + }, + "parameters": { + "matterId": { + "description": "The matter ID.", + "required": true, + "type": "string", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/ediscovery" + ], + "flatPath": "v1/matters/{matterId}:addPermissions", + "id": "vault.matters.addPermissions", + "path": "v1/matters/{matterId}:addPermissions", + "description": "Adds an account as a matter collaborator.", + "request": { + "$ref": "AddMatterPermissionsRequest" + } + }, + "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", + "scopes": [ + "https://www.googleapis.com/auth/ediscovery" + ], + "parameters": {}, + "flatPath": "v1/matters", + "path": "v1/matters", + "id": "vault.matters.create" + }, + "reopen": { + "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.", + "response": { + "$ref": "ReopenMatterResponse" + }, + "parameterOrder": [ + "matterId" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/ediscovery" + ], + "parameters": { + "matterId": { + "description": "The matter ID.", + "required": true, + "type": "string", + "location": "path" } } + }, + "removePermissions": { + "response": { + "$ref": "Empty" + }, + "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}:removePermissions", + "path": "v1/matters/{matterId}:removePermissions", + "id": "vault.matters.removePermissions", + "request": { + "$ref": "RemoveMatterPermissionsRequest" + }, + "description": "Removes an account as a matter collaborator." } } } }, "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": { + "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": { + "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": { - "location": "query", - "description": "OAuth 2.0 token for the current user.", - "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": "v1", + "baseUrl": "https://vault.googleapis.com/", + "servicePath": "", + "description": "Archiving and eDiscovery for G Suite.", + "kind": "discovery#restDescription", + "basePath": "", + "id": "vault:v1", + "documentationLink": "https://developers.google.com/vault", + "revision": "20180403", + "discoveryVersion": "v1", + "version_module": true, + "schemas": { + "Matter": { + "properties": { + "state": { + "description": "The state of the matter.", + "type": "string", + "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" + ] + }, + "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" + } + }, + "id": "Matter", + "description": "Represents a matter.", + "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.", + "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": { + "description": "Corpus specific queries.", + "type": "object", + "properties": { + "mailQuery": { + "description": "Details pertaining to mail holds. If set, corpus must be mail.", + "$ref": "HeldMailQuery" + }, + "groupsQuery": { + "description": "Details pertaining to Groups holds. If set, corpus must be Groups.", + "$ref": "HeldGroupsQuery" + }, + "hangoutsChatQuery": { + "description": "Details pertaining to Hangouts Chat holds. If set, corpus must be\nHangouts Chat.", + "$ref": "HeldHangoutsChatQuery" + }, + "driveQuery": { + "$ref": "HeldDriveQuery", + "description": "Details pertaining to Drive holds. If set, corpus must be Drive." + } + }, + "id": "CorpusQuery" + }, + "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": { + "description": "The corpus-specific query. If set, the corpusQuery must match corpus\ntype.", + "$ref": "CorpusQuery" + }, + "orgUnit": { + "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.", + "$ref": "HeldOrgUnit" + }, + "corpus": { + "enumDescriptions": [ + "No corpus specified.", + "Drive.", + "Mail.", + "Groups.", + "Hangouts Chat." + ], + "enum": [ + "CORPUS_TYPE_UNSPECIFIED", + "DRIVE", + "MAIL", + "GROUPS", + "HANGOUTS_CHAT" + ], + "description": "The corpus to be searched.", + "type": "string" + } + }, + "id": "Hold" + }, + "ListHoldsResponse": { + "description": "The holds for a matter.", + "type": "object", + "properties": { + "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" + }, + "holds": { + "description": "The list of holds.", + "type": "array", + "items": { + "$ref": "Hold" + } + } + }, + "id": "ListHoldsResponse" + }, + "UndeleteMatterRequest": { + "properties": {}, + "id": "UndeleteMatterRequest", + "description": "Undelete a matter by ID.", + "type": "object" + }, + "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" + }, + "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" }, - "upload_protocol": { - "location": "query", - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", - "type": "string" + "CloseMatterRequest": { + "description": "Close a matter by ID.", + "type": "object", + "properties": {}, + "id": "CloseMatterRequest" }, - "prettyPrint": { - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true", - "location": "query" + "ReopenMatterRequest": { + "properties": {}, + "id": "ReopenMatterRequest", + "description": "Reopen a matter by ID.", + "type": "object" }, - "fields": { - "location": "query", - "description": "Selector specifying which fields to include in a partial response.", - "type": "string" + "RemoveMatterPermissionsRequest": { + "description": "Remove an account as a matter collaborator.", + "type": "object", + "properties": { + "accountId": { + "description": "The account ID.", + "type": "string" + } + }, + "id": "RemoveMatterPermissionsRequest" }, - "uploadType": { - "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" + "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": { + "accountId": { + "description": "The account id, as provided by \u003ca href=\"https://developers.google.com/admin-sdk/\"\u003eAdmin SDK\u003c/a\u003e.", + "type": "string" + }, + "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." + ] + } + }, + "id": "MatterPermission" }, - "callback": { - "location": "query", - "description": "JSONP", - "type": "string" + "HeldHangoutsChatQuery": { + "properties": { + "includeRooms": { + "description": "If true, include rooms the user has participated in.", + "type": "boolean" + } + }, + "id": "HeldHangoutsChatQuery", + "description": "Query options for hangouts chat holds.", + "type": "object" }, - "$.xgafv": { - "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query", - "enum": [ - "1", - "2" - ] + "ListMattersResponse": { + "description": "Provides the list of matters.", + "type": "object", + "properties": { + "matters": { + "description": "List of matters.", + "type": "array", + "items": { + "$ref": "Matter" + } + }, + "nextPageToken": { + "description": "Page token to retrieve the next page of results in the list.", + "type": "string" + } + }, + "id": "ListMattersResponse" }, - "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" + "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" }, - "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" + "CloseMatterResponse": { + "description": "Response to a CloseMatterRequest.", + "type": "object", + "properties": { + "matter": { + "description": "The updated matter, with state CLOSED.", + "$ref": "Matter" + } + }, + "id": "CloseMatterResponse" }, - "access_token": { - "location": "query", - "description": "OAuth access token.", - "type": "string" + "HeldGroupsQuery": { + "description": "Query options for group holds.", + "type": "object", + "properties": { + "terms": { + "description": "The search terms for the hold.", + "type": "string" + }, + "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" + } + }, + "id": "HeldGroupsQuery" }, - "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" + "HeldDriveQuery": { + "description": "Query options for Drive holds.", + "type": "object", + "properties": { + "includeTeamDriveFiles": { + "description": "If true, include files in Team Drives in the hold.", + "type": "boolean" + } + }, + "id": "HeldDriveQuery" }, - "pp": { - "location": "query", - "description": "Pretty-print response.", - "type": "boolean", - "default": "true" + "HeldOrgUnit": { + "description": "A organizational unit being held in a particular hold.\nThis structure is immutable.", + "type": "object", + "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" + } + }, + "id": "HeldOrgUnit" + }, + "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": { + "sendEmails": { + "description": "True to send notification email to the added account.\nFalse to not send notification email.", + "type": "boolean" + }, + "matterPermission": { + "description": "The MatterPermission to add.", + "$ref": "MatterPermission" + }, + "ccMe": { + "description": "Only relevant if send_emails is true.\nTrue to CC requestor in the email message.\nFalse to not CC requestor.", + "type": "boolean" + } + }, + "id": "AddMatterPermissionsRequest" + } + }, + "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": "Vault", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/ediscovery.readonly": { + "description": "View your eDiscovery data" + }, + "https://www.googleapis.com/auth/ediscovery": { + "description": "Manage your eDiscovery data" + } + } } - } + }, + "rootUrl": "https://vault.googleapis.com/", + "ownerDomain": "google.com", + "name": "vault", + "batchPath": "batch", + "fullyEncodeReservedExpansion": true, + "title": "G Suite Vault API" } diff --git a/DiscoveryJson/videointelligence_v1.json b/DiscoveryJson/videointelligence_v1.json index 87a19f34b3..2150330735 100644 --- a/DiscoveryJson/videointelligence_v1.json +++ b/DiscoveryJson/videointelligence_v1.json @@ -1,154 +1,11 @@ { + "basePath": "", + "documentationLink": "https://cloud.google.com/video-intelligence/docs/", + "id": "videointelligence:v1", + "revision": "20180504", "discoveryVersion": "v1", "version_module": true, "schemas": { - "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.", - "type": "object", - "properties": { - "annotationProgress": { - "description": "Progress metadata for all videos specified in `AnnotateVideoRequest`.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationProgress" - } - } - }, - "id": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoProgress" - }, - "GoogleCloudVideointelligenceV1p1beta1_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": "GoogleCloudVideointelligenceV1p1beta1_VideoSegment" - }, - "GoogleCloudVideointelligenceV1_Entity": { - "description": "Detected entity from video analysis.", - "type": "object", - "properties": { - "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" - }, - "description": { - "description": "Textual description, e.g. `Fixed-gear bicycle`.", - "type": "string" - } - }, - "id": "GoogleCloudVideointelligenceV1_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": { - "explicitAnnotation": { - "description": "Explicit content annotation.", - "$ref": "GoogleCloudVideointelligenceV1_ExplicitContentAnnotation" - }, - "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" - } - }, - "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" - } - }, - "error": { - "$ref": "GoogleRpc_Status", - "description": "Output only. Non-streaming error only. If set, indicates an error. Note\nthat for a single `AnnotateVideoRequest` some videos may succeed and some\nmay 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": "Output only. Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", - "type": "string" - } - }, - "id": "GoogleCloudVideointelligenceV1_VideoAnnotationResults" - }, - "GoogleCloudVideointelligenceV1p1beta1_Entity": { - "description": "Detected entity from video analysis.", - "type": "object", - "properties": { - "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" - }, - "description": { - "description": "Textual description, e.g. `Fixed-gear bicycle`.", - "type": "string" - } - }, - "id": "GoogleCloudVideointelligenceV1p1beta1_Entity" - }, - "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", - "properties": { - "annotationResults": { - "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1beta2_VideoAnnotationResults" - } - } - }, - "id": "GoogleCloudVideointelligenceV1beta2_AnnotateVideoResponse" - }, "GoogleCloudVideointelligenceV1p1beta1_FaceSegment": { "description": "Video segment level annotation results for face detection.", "type": "object", @@ -164,6 +21,17 @@ "description": "Annotation results for a single video.", "type": "object", "properties": { + "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": "GoogleCloudVideointelligenceV1p1beta1_LabelAnnotation" + } + }, + "explicitAnnotation": { + "description": "Explicit content annotation.", + "$ref": "GoogleCloudVideointelligenceV1p1beta1_ExplicitContentAnnotation" + }, "shotAnnotations": { "description": "Shot annotations. Each shot is represented as a video segment.", "type": "array", @@ -186,8 +54,8 @@ } }, "error": { - "$ref": "GoogleRpc_Status", - "description": "Output only. Non-streaming error only. If set, indicates an error. Note\nthat for a single `AnnotateVideoRequest` some videos may succeed and some\nmay fail." + "description": "Output only. Non-streaming error only. If set, indicates an error. Note\nthat for a single `AnnotateVideoRequest` some videos may succeed and some\nmay fail.", + "$ref": "GoogleRpc_Status" }, "speechTranscriptions": { "description": "Speech transcription.", @@ -206,17 +74,6 @@ "inputUri": { "description": "Output only. 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": "GoogleCloudVideointelligenceV1p1beta1_LabelAnnotation" - } - }, - "explicitAnnotation": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_ExplicitContentAnnotation", - "description": "Explicit content annotation." } }, "id": "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationResults" @@ -225,25 +82,25 @@ "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" - } + }, + "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": "GoogleRpc_Status" @@ -290,10 +147,6 @@ "description": "Annotation progress for a single video.", "type": "object", "properties": { - "inputUri": { - "description": "Output only. Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", - "type": "string" - }, "progressPercent": { "description": "Output only. Approximate percentage processed thus far. Guaranteed to be\n100 when fully processed.", "format": "int32", @@ -308,6 +161,10 @@ "description": "Output only. Time when the request was received.", "format": "google-datetime", "type": "string" + }, + "inputUri": { + "description": "Output only. Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", + "type": "string" } }, "id": "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationProgress" @@ -379,13 +236,7 @@ "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.", @@ -399,12 +250,18 @@ "SEGMENT_LEVEL", "SHOT_LEVEL", "FRAME_LEVEL" - ] + ], + "description": "Label level.", + "type": "string" }, "confidence": { "description": "Confidence that the label is accurate. Range: [0, 1].", "format": "float", "type": "number" + }, + "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" } }, "id": "GoogleCloudVideointelligenceV1beta1_LabelLocation" @@ -450,14 +307,14 @@ "description": "Video segment level annotation results for label detection.", "type": "object", "properties": { + "segment": { + "description": "Video segment where a label was detected.", + "$ref": "GoogleCloudVideointelligenceV1p1beta1_VideoSegment" + }, "confidence": { "description": "Confidence that the label is accurate. Range: [0, 1].", "format": "float", "type": "number" - }, - "segment": { - "description": "Video segment where a label was detected.", - "$ref": "GoogleCloudVideointelligenceV1p1beta1_VideoSegment" } }, "id": "GoogleCloudVideointelligenceV1p1beta1_LabelSegment" @@ -466,10 +323,6 @@ "description": "Annotation progress for a single video.", "type": "object", "properties": { - "inputUri": { - "description": "Output only. Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", - "type": "string" - }, "progressPercent": { "description": "Output only. Approximate percentage processed thus far. Guaranteed to be\n100 when fully processed.", "format": "int32", @@ -484,6 +337,10 @@ "description": "Output only. Time when the request was received.", "format": "google-datetime", "type": "string" + }, + "inputUri": { + "description": "Output only. Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", + "type": "string" } }, "id": "GoogleCloudVideointelligenceV1_VideoAnnotationProgress" @@ -526,8 +383,8 @@ "type": "number" }, "segment": { - "$ref": "GoogleCloudVideointelligenceV1_VideoSegment", - "description": "Video segment where a label was detected." + "description": "Video segment where a label was detected.", + "$ref": "GoogleCloudVideointelligenceV1_VideoSegment" } }, "id": "GoogleCloudVideointelligenceV1_LabelSegment" @@ -567,6 +424,8 @@ "type": "string" }, "labelDetectionMode": { + "description": "What labels should be detected with LABEL_DETECTION, in addition to\nvideo-level labels or segment-level labels.\nIf unspecified, defaults to `SHOT_MODE`.", + "type": "string", "enumDescriptions": [ "Unspecified.", "Detect shot-level labels.", @@ -578,9 +437,7 @@ "SHOT_MODE", "FRAME_MODE", "SHOT_AND_FRAME_MODE" - ], - "description": "What labels should be detected with LABEL_DETECTION, in addition to\nvideo-level labels or segment-level labels.\nIf unspecified, defaults to `SHOT_MODE`.", - "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.\nShould be used with `SHOT_AND_FRAME_MODE` enabled.", @@ -648,14 +505,14 @@ "description": "Video segment level annotation results for label detection.", "type": "object", "properties": { + "segment": { + "$ref": "GoogleCloudVideointelligenceV1beta2_VideoSegment", + "description": "Video segment where a label was detected." + }, "confidence": { "description": "Confidence that the label is accurate. Range: [0, 1].", "format": "float", "type": "number" - }, - "segment": { - "description": "Video segment where a label was detected.", - "$ref": "GoogleCloudVideointelligenceV1beta2_VideoSegment" } }, "id": "GoogleCloudVideointelligenceV1beta2_LabelSegment" @@ -665,8 +522,6 @@ "type": "object", "properties": { "emotion": { - "description": "Emotion entry.", - "type": "string", "enumDescriptions": [ "Unspecified emotion.", "Amusement.", @@ -698,7 +553,9 @@ "PRIDE", "SADNESS", "SURPRISE" - ] + ], + "description": "Emotion entry.", + "type": "string" }, "score": { "description": "Confidence score.", @@ -720,8 +577,8 @@ } }, "normalizedBoundingBox": { - "description": "Normalized Bounding box.", - "$ref": "GoogleCloudVideointelligenceV1p1beta1_NormalizedBoundingBox" + "$ref": "GoogleCloudVideointelligenceV1p1beta1_NormalizedBoundingBox", + "description": "Normalized Bounding box." } }, "id": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAttribute" @@ -730,10 +587,6 @@ "description": "Video context and/or feature-specific parameters.", "type": "object", "properties": { - "explicitContentDetectionConfig": { - "description": "Config for EXPLICIT_CONTENT_DETECTION.", - "$ref": "GoogleCloudVideointelligenceV1_ExplicitContentDetectionConfig" - }, "segments": { "description": "Non-streaming request only. Video segments to annotate. The segments may\noverlap and are not required to be contiguous or span the whole video. If\nunspecified, each video is treated as a single segment.", "type": "array", @@ -748,6 +601,10 @@ "labelDetectionConfig": { "description": "Config for LABEL_DETECTION.", "$ref": "GoogleCloudVideointelligenceV1_LabelDetectionConfig" + }, + "explicitContentDetectionConfig": { + "$ref": "GoogleCloudVideointelligenceV1_ExplicitContentDetectionConfig", + "description": "Config for EXPLICIT_CONTENT_DETECTION." } }, "id": "GoogleCloudVideointelligenceV1_VideoContext" @@ -756,9 +613,9 @@ "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": { - "spoof": { - "description": "Likelihood that an obvious modification was made to the original\nversion to make it appear funny or offensive.", - "type": "string", + "racy": { + "description": "Likelihood of racy content.", + "type": "string", "enumDescriptions": [ "Unknown likelihood.", "Very unlikely.", @@ -776,9 +633,12 @@ "VERY_LIKELY" ] }, - "violent": { - "description": "Likelihood of violent content.", - "type": "string", + "timeOffset": { + "description": "Video time offset in microseconds.", + "format": "int64", + "type": "string" + }, + "spoof": { "enumDescriptions": [ "Unknown likelihood.", "Very unlikely.", @@ -794,11 +654,11 @@ "POSSIBLE", "LIKELY", "VERY_LIKELY" - ] + ], + "description": "Likelihood that an obvious modification was made to the original\nversion to make it appear funny or offensive.", + "type": "string" }, - "medical": { - "description": "Likelihood of medical content.", - "type": "string", + "violent": { "enumDescriptions": [ "Unknown likelihood.", "Very unlikely.", @@ -814,10 +674,12 @@ "POSSIBLE", "LIKELY", "VERY_LIKELY" - ] + ], + "description": "Likelihood of violent content.", + "type": "string" }, - "adult": { - "description": "Likelihood of adult content.", + "medical": { + "description": "Likelihood of medical content.", "type": "string", "enumDescriptions": [ "Unknown likelihood.", @@ -836,7 +698,9 @@ "VERY_LIKELY" ] }, - "racy": { + "adult": { + "description": "Likelihood of adult content.", + "type": "string", "enumDescriptions": [ "Unknown likelihood.", "Very unlikely.", @@ -852,14 +716,7 @@ "POSSIBLE", "LIKELY", "VERY_LIKELY" - ], - "description": "Likelihood of racy content.", - "type": "string" - }, - "timeOffset": { - "description": "Video time offset in microseconds.", - "format": "int64", - "type": "string" + ] } }, "id": "GoogleCloudVideointelligenceV1beta1_SafeSearchAnnotation" @@ -893,17 +750,17 @@ "description": "Video frame level annotation results for face detection.", "type": "object", "properties": { + "timeOffset": { + "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the video frame for this location.", + "format": "google-duration", + "type": "string" + }, "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.", "type": "array", "items": { "$ref": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAttribute" } - }, - "timeOffset": { - "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the video frame for this location.", - "format": "google-duration", - "type": "string" } }, "id": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionFrame" @@ -997,9 +854,23 @@ "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": { - "$ref": "GoogleRpc_Status", - "description": "Output only. Non-streaming error only. If set, indicates an error. Note\nthat for a single `AnnotateVideoRequest` some videos may succeed and some\nmay fail." + "description": "Output only. Non-streaming error only. If set, indicates an error. Note\nthat for a single `AnnotateVideoRequest` some videos may succeed and some\nmay fail.", + "$ref": "GoogleRpc_Status" }, "frameLabelAnnotations": { "description": "Label annotations on frame level.\nThere is exactly one element for each unique label.", @@ -1013,8 +884,8 @@ "type": "string" }, "explicitAnnotation": { - "$ref": "GoogleCloudVideointelligenceV1beta2_ExplicitContentAnnotation", - "description": "Explicit content annotation." + "description": "Explicit content annotation.", + "$ref": "GoogleCloudVideointelligenceV1beta2_ExplicitContentAnnotation" }, "segmentLabelAnnotations": { "description": "Label annotations on video level or user specified segment level.\nThere is exactly one element for each unique label.", @@ -1022,20 +893,6 @@ "items": { "$ref": "GoogleCloudVideointelligenceV1beta2_LabelAnnotation" } - }, - "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" - } } }, "id": "GoogleCloudVideointelligenceV1beta2_VideoAnnotationResults" @@ -1058,6 +915,10 @@ "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": { "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", @@ -1067,10 +928,6 @@ "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" } }, "id": "GoogleCloudVideointelligenceV1p1beta1_WordInfo" @@ -1111,6 +968,17 @@ "description": "Label annotation.", "type": "object", "properties": { + "entity": { + "description": "Detected entity.", + "$ref": "GoogleCloudVideointelligenceV1p1beta1_Entity" + }, + "frames": { + "description": "All video frames where a label was detected.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_LabelFrame" + } + }, "segments": { "description": "All video segments where a label was detected.", "type": "array", @@ -1124,17 +992,6 @@ "items": { "$ref": "GoogleCloudVideointelligenceV1p1beta1_Entity" } - }, - "entity": { - "description": "Detected entity.", - "$ref": "GoogleCloudVideointelligenceV1p1beta1_Entity" - }, - "frames": { - "description": "All video frames where a label was detected.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_LabelFrame" - } } }, "id": "GoogleCloudVideointelligenceV1p1beta1_LabelAnnotation" @@ -1194,7 +1051,26 @@ "description": "Video annotation request.", "type": "object", "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.\nIf unset, the input video(s) should be specified via `input_uri`.\nIf set, `input_uri` should be unset.", + "format": "byte", + "type": "string" + }, "features": { + "enumDescriptions": [ + "Unspecified.", + "Label detection. Detect objects, such as dog or flower.", + "Shot change detection.", + "Explicit content detection." + ], "description": "Requested video annotation features.", "type": "array", "items": { @@ -1205,34 +1081,15 @@ "SHOT_CHANGE_DETECTION", "EXPLICIT_CONTENT_DETECTION" ] - }, - "enumDescriptions": [ - "Unspecified.", - "Label detection. Detect objects, such as dog or flower.", - "Shot change detection.", - "Explicit content detection." - ] + } }, "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).", "type": "string" }, "videoContext": { - "description": "Additional video context and/or feature-specific parameters.", - "$ref": "GoogleCloudVideointelligenceV1_VideoContext" - }, - "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.\nIf unset, the input video(s) should be specified via `input_uri`.\nIf set, `input_uri` should be unset.", - "format": "byte", - "type": "string" + "$ref": "GoogleCloudVideointelligenceV1_VideoContext", + "description": "Additional video context and/or feature-specific parameters." } }, "id": "GoogleCloudVideointelligenceV1_AnnotateVideoRequest" @@ -1260,12 +1117,12 @@ "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": "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`.", @@ -1326,10 +1183,6 @@ "description": "Annotation progress for a single video.", "type": "object", "properties": { - "inputUri": { - "description": "Output only. Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", - "type": "string" - }, "progressPercent": { "description": "Output only. Approximate percentage processed thus far. Guaranteed to be\n100 when fully processed.", "format": "int32", @@ -1344,6 +1197,10 @@ "description": "Output only. Time when the request was received.", "format": "google-datetime", "type": "string" + }, + "inputUri": { + "description": "Output only. Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", + "type": "string" } }, "id": "GoogleCloudVideointelligenceV1beta2_VideoAnnotationProgress" @@ -1427,6 +1284,17 @@ "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", @@ -1440,20 +1308,156 @@ "items": { "$ref": "GoogleCloudVideointelligenceV1beta2_Entity" } + } + }, + "id": "GoogleCloudVideointelligenceV1beta2_LabelAnnotation" + }, + "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.", + "type": "object", + "properties": { + "annotationProgress": { + "description": "Progress metadata for all videos specified in `AnnotateVideoRequest`.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationProgress" + } + } + }, + "id": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoProgress" + }, + "GoogleCloudVideointelligenceV1p1beta1_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" }, - "entity": { - "description": "Detected entity.", - "$ref": "GoogleCloudVideointelligenceV1beta2_Entity" + "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": "GoogleCloudVideointelligenceV1p1beta1_VideoSegment" + }, + "GoogleCloudVideointelligenceV1_Entity": { + "description": "Detected entity from video analysis.", + "type": "object", + "properties": { + "languageCode": { + "description": "Language code for `description` in BCP-47 format.", + "type": "string" }, - "frames": { - "description": "All video frames where a label was detected.", + "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" + }, + "description": { + "description": "Textual description, e.g. `Fixed-gear bicycle`.", + "type": "string" + } + }, + "id": "GoogleCloudVideointelligenceV1_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": { + "shotLabelAnnotations": { + "description": "Label annotations on shot level.\nThere is exactly one element for each unique label.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1beta2_LabelFrame" + "$ref": "GoogleCloudVideointelligenceV1_LabelAnnotation" + } + }, + "error": { + "$ref": "GoogleRpc_Status", + "description": "Output only. Non-streaming error only. If set, indicates an error. Note\nthat for a single `AnnotateVideoRequest` some videos may succeed and some\nmay 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": "Output only. Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", + "type": "string" + }, + "explicitAnnotation": { + "$ref": "GoogleCloudVideointelligenceV1_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": "GoogleCloudVideointelligenceV1_LabelAnnotation" + } + }, + "shotAnnotations": { + "description": "Shot annotations. Each shot is represented as a video segment.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1_VideoSegment" } } }, - "id": "GoogleCloudVideointelligenceV1beta2_LabelAnnotation" + "id": "GoogleCloudVideointelligenceV1_VideoAnnotationResults" + }, + "GoogleCloudVideointelligenceV1p1beta1_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": "GoogleCloudVideointelligenceV1p1beta1_Entity" + }, + "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", + "properties": { + "annotationResults": { + "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1beta2_VideoAnnotationResults" + } + } + }, + "id": "GoogleCloudVideointelligenceV1beta2_AnnotateVideoResponse" } }, "protocol": "rest", @@ -1481,60 +1485,10 @@ "resources": { "operations": { "methods": { - "cancel": { - "request": { - "$ref": "GoogleLongrunning_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": "GoogleProtobuf_Empty" - }, - "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": "^[^/]+$" - } - }, - "flatPath": "v1/operations/{operationsId}:cancel", - "path": "v1/operations/{+name}:cancel", - "id": "videointelligence.operations.cancel" - }, - "delete": { - "response": { - "$ref": "GoogleProtobuf_Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "description": "The name of the operation resource to be deleted.", - "required": true, - "type": "string", - "pattern": "^[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1/operations/{operationsId}", - "path": "v1/operations/{+name}", - "id": "videointelligence.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": { + "flatPath": "v1/operations", + "path": "v1/operations", + "id": "videointelligence.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": "GoogleLongrunning_ListOperationsResponse" @@ -1546,15 +1500,15 @@ ], "parameters": { "pageSize": { - "location": "query", "description": "The standard list page size.", "format": "int32", - "type": "integer" + "type": "integer", + "location": "query" }, "filter": { + "location": "query", "description": "The standard list filter.", - "type": "string", - "location": "query" + "type": "string" }, "name": { "description": "The name of the operation's parent resource.", @@ -1566,10 +1520,7 @@ "type": "string", "location": "query" } - }, - "flatPath": "v1/operations", - "path": "v1/operations", - "id": "videointelligence.operations.list" + } }, "get": { "flatPath": "v1/operations/{operationsId}", @@ -1595,6 +1546,59 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] + }, + "cancel": { + "request": { + "$ref": "GoogleLongrunning_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": "GoogleProtobuf_Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "required": true, + "type": "string", + "pattern": "^[^/]+$", + "location": "path" + } + }, + "flatPath": "v1/operations/{operationsId}:cancel", + "path": "v1/operations/{+name}:cancel", + "id": "videointelligence.operations.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`.", + "response": { + "$ref": "GoogleProtobuf_Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "parameters": { + "name": { + "location": "path", + "description": "The name of the operation resource to be deleted.", + "required": true, + "type": "string", + "pattern": "^[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1/operations/{operationsId}", + "path": "v1/operations/{+name}", + "id": "videointelligence.operations.delete" } } }, @@ -1622,10 +1626,26 @@ } }, "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", - "location": "query" + "type": "string" }, "prettyPrint": { "location": "query", @@ -1649,6 +1669,8 @@ "location": "query" }, "$.xgafv": { + "description": "V1 error format.", + "type": "string", "enumDescriptions": [ "v1 error format", "v2 error format" @@ -1657,25 +1679,23 @@ "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" - ] + ], + "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": { "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", @@ -1688,34 +1708,14 @@ "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" + "type": "string", + "location": "query" } }, "version": "v1", "baseUrl": "https://videointelligence.googleapis.com/", "servicePath": "", "description": "Cloud Video Intelligence API.", - "kind": "discovery#restDescription", - "basePath": "", - "documentationLink": "https://cloud.google.com/video-intelligence/docs/", - "id": "videointelligence:v1", - "revision": "20180504" + "kind": "discovery#restDescription" } diff --git a/DiscoveryJson/videointelligence_v1beta1.json b/DiscoveryJson/videointelligence_v1beta1.json index dfaa561d10..fa3ebd9f6a 100644 --- a/DiscoveryJson/videointelligence_v1beta1.json +++ b/DiscoveryJson/videointelligence_v1beta1.json @@ -1,510 +1,368 @@ { - "ownerName": "Google", - "resources": { - "videos": { - "methods": { - "annotate": { - "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", - "request": { - "$ref": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoRequest" - }, - "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)." - } - } - } - }, - "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" - }, - "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": { - "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": { - "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" - } - }, - "version": "v1beta1", - "baseUrl": "https://videointelligence.googleapis.com/", - "servicePath": "", - "kind": "discovery#restDescription", - "description": "Cloud Video Intelligence API.", - "basePath": "", "id": "videointelligence:v1beta1", "documentationLink": "https://cloud.google.com/video-intelligence/docs/", "revision": "20180504", "discoveryVersion": "v1", "version_module": true, "schemas": { - "GoogleCloudVideointelligenceV1_VideoAnnotationProgress": { + "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", "properties": { - "updateTime": { - "description": "Output only. Time of the most recent update.", - "format": "google-datetime", - "type": "string" - }, - "startTime": { - "description": "Output only. Time when the request was received.", - "format": "google-datetime", - "type": "string" - }, - "inputUri": { - "description": "Output only. Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", - "type": "string" - }, - "progressPercent": { - "description": "Output only. Approximate percentage processed thus far. Guaranteed to be\n100 when fully processed.", - "format": "int32", - "type": "integer" + "frames": { + "description": "All video frames where explicit content was detected.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1_ExplicitContentFrame" + } } }, - "id": "GoogleCloudVideointelligenceV1_VideoAnnotationProgress", - "description": "Annotation progress for a single video.", - "type": "object" + "id": "GoogleCloudVideointelligenceV1_ExplicitContentAnnotation" }, - "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.", + "GoogleCloudVideointelligenceV1beta2_AnnotateVideoProgress": { + "id": "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", "properties": { - "annotationResults": { - "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.", + "annotationProgress": { + "description": "Progress metadata for all videos specified in `AnnotateVideoRequest`.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1_VideoAnnotationResults" + "$ref": "GoogleCloudVideointelligenceV1beta2_VideoAnnotationProgress" } } - }, - "id": "GoogleCloudVideointelligenceV1_AnnotateVideoResponse" + } }, - "GoogleCloudVideointelligenceV1beta1_AnnotateVideoResponse": { + "GoogleCloudVideointelligenceV1p1beta1_SpeechRecognitionAlternative": { + "description": "Alternative hypotheses (a.k.a. n-best list).", + "type": "object", "properties": { - "annotationResults": { - "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.", + "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.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationResults" + "$ref": "GoogleCloudVideointelligenceV1p1beta1_WordInfo" } + }, + "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" } }, - "id": "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" + "id": "GoogleCloudVideointelligenceV1p1beta1_SpeechRecognitionAlternative" }, - "GoogleCloudVideointelligenceV1_LabelSegment": { + "GoogleCloudVideointelligenceV1_AnnotateVideoProgress": { + "id": "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", "properties": { - "confidence": { - "description": "Confidence that the label is accurate. Range: [0, 1].", - "format": "float", - "type": "number" + "annotationProgress": { + "description": "Progress metadata for all videos specified in `AnnotateVideoRequest`.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1_VideoAnnotationProgress" + } + } + } + }, + "GoogleLongrunning_Operation": { + "id": "GoogleLongrunning_Operation", + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "type": "object", + "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" }, - "segment": { - "description": "Video segment where a label was detected.", - "$ref": "GoogleCloudVideointelligenceV1_VideoSegment" + "error": { + "description": "The error result of the operation in case of failure or cancellation.", + "$ref": "GoogleRpc_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" + }, + "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": "GoogleCloudVideointelligenceV1_LabelSegment", - "description": "Video segment level annotation results for label detection.", - "type": "object" + } }, - "GoogleCloudVideointelligenceV1beta1_VideoAnnotationProgress": { + "GoogleCloudVideointelligenceV1beta2_VideoAnnotationProgress": { + "id": "GoogleCloudVideointelligenceV1beta2_VideoAnnotationProgress", + "description": "Annotation progress for a single video.", + "type": "object", "properties": { "inputUri": { - "description": "Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", + "description": "Output only. 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.", + "description": "Output only. Approximate percentage processed thus far. Guaranteed to be\n100 when fully processed.", "format": "int32", "type": "integer" }, "updateTime": { - "description": "Time of the most recent update.", + "description": "Output only. Time of the most recent update.", "format": "google-datetime", "type": "string" }, "startTime": { - "description": "Time when the request was received.", + "description": "Output only. Time when the request was received.", "format": "google-datetime", "type": "string" } - }, - "id": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationProgress", - "description": "Annotation progress for a single video.", - "type": "object" + } }, - "GoogleCloudVideointelligenceV1p1beta1_NormalizedBoundingBox": { + "GoogleCloudVideointelligenceV1beta1_VideoAnnotationResults": { + "description": "Annotation results for a single video.", + "type": "object", "properties": { - "right": { - "description": "Right X coordinate.", - "format": "float", - "type": "number" + "error": { + "$ref": "GoogleRpc_Status", + "description": "If set, indicates an error. Note that for a single `AnnotateVideoRequest`\nsome videos may succeed and some may fail." }, - "bottom": { - "description": "Bottom Y coordinate.", - "format": "float", - "type": "number" + "shotAnnotations": { + "description": "Shot annotations. Each shot is represented as a video segment.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1beta1_VideoSegment" + } }, - "top": { - "description": "Top Y coordinate.", - "format": "float", - "type": "number" + "inputUri": { + "description": "Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", + "type": "string" }, - "left": { - "description": "Left X coordinate.", - "format": "float", - "type": "number" + "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" + } } }, - "id": "GoogleCloudVideointelligenceV1p1beta1_NormalizedBoundingBox", - "description": "Normalized bounding box.\nThe normalized vertex coordinates are relative to the original image.\nRange: [0, 1].", - "type": "object" + "id": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationResults" }, - "GoogleCloudVideointelligenceV1beta1_AnnotateVideoRequest": { - "description": "Video annotation request.", + "GoogleCloudVideointelligenceV1beta2_ExplicitContentFrame": { + "id": "GoogleCloudVideointelligenceV1beta2_ExplicitContentFrame", + "description": "Video frame level annotation results for explicit content.", "type": "object", "properties": { - "videoContext": { - "$ref": "GoogleCloudVideointelligenceV1beta1_VideoContext", - "description": "Additional video context and/or feature-specific parameters." - }, - "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.", + "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..", "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.", + "timeOffset": { + "description": "Time-offset, relative to the beginning of the video, corresponding to the\nvideo frame for this location.", + "format": "google-duration", "type": "string" + } + } + }, + "GoogleCloudVideointelligenceV1p1beta1_ExplicitContentAnnotation": { + "id": "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.", + "type": "object", + "properties": { + "frames": { + "description": "All video frames where explicit content was detected.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_ExplicitContentFrame" + } + } + } + }, + "GoogleCloudVideointelligenceV1beta2_LabelAnnotation": { + "id": "GoogleCloudVideointelligenceV1beta2_LabelAnnotation", + "description": "Label annotation.", + "type": "object", + "properties": { + "segments": { + "description": "All video segments where a label was detected.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1beta2_LabelSegment" + } }, - "features": { - "enumDescriptions": [ - "Unspecified.", - "Label detection. Detect objects, such as dog or flower.", - "Shot change detection.", - "Safe search detection." - ], - "description": "Requested video annotation features.", + "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": { - "enum": [ - "FEATURE_UNSPECIFIED", - "LABEL_DETECTION", - "SHOT_CHANGE_DETECTION", - "SAFE_SEARCH_DETECTION" - ], - "type": "string" + "$ref": "GoogleCloudVideointelligenceV1beta2_Entity" } }, - "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).", - "type": "string" + "entity": { + "$ref": "GoogleCloudVideointelligenceV1beta2_Entity", + "description": "Detected entity." + }, + "frames": { + "description": "All video frames where a label was detected.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1beta2_LabelFrame" + } + } + } + }, + "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.", + "type": "object", + "properties": { + "annotationProgress": { + "description": "Progress metadata for all videos specified in `AnnotateVideoRequest`.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationProgress" + } } }, - "id": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoRequest" + "id": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoProgress" }, - "GoogleCloudVideointelligenceV1beta1_VideoSegment": { + "GoogleCloudVideointelligenceV1p1beta1_VideoSegment": { + "id": "GoogleCloudVideointelligenceV1p1beta1_VideoSegment", "description": "Video segment.", "type": "object", "properties": { "endTimeOffset": { - "description": "End offset in microseconds (inclusive). Unset means 0.", - "format": "int64", + "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": "Start offset in microseconds (inclusive). Unset means 0.", - "format": "int64", + "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the start of the segment (inclusive).", + "format": "google-duration", "type": "string" } - }, - "id": "GoogleCloudVideointelligenceV1beta1_VideoSegment" + } }, - "GoogleCloudVideointelligenceV1beta2_LabelSegment": { - "description": "Video segment level annotation results for label detection.", + "GoogleCloudVideointelligenceV1_Entity": { + "description": "Detected entity from video analysis.", "type": "object", "properties": { - "confidence": { - "description": "Confidence that the label is accurate. Range: [0, 1].", - "format": "float", - "type": "number" + "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" }, - "segment": { - "description": "Video segment where a label was detected.", - "$ref": "GoogleCloudVideointelligenceV1beta2_VideoSegment" + "description": { + "description": "Textual description, e.g. `Fixed-gear bicycle`.", + "type": "string" + }, + "languageCode": { + "description": "Language code for `description` in BCP-47 format.", + "type": "string" } }, - "id": "GoogleCloudVideointelligenceV1beta2_LabelSegment" + "id": "GoogleCloudVideointelligenceV1_Entity" }, - "GoogleCloudVideointelligenceV1p1beta1_EmotionAttribute": { + "GoogleCloudVideointelligenceV1beta2_VideoSegment": { + "description": "Video segment.", + "type": "object", "properties": { - "emotion": { - "enumDescriptions": [ - "Unspecified emotion.", - "Amusement.", - "Anger.", - "Concentration.", - "Contentment.", - "Desire.", - "Disappointment.", - "Disgust.", - "Elation.", - "Embarrassment.", - "Interest.", - "Pride.", - "Sadness.", - "Surprise." - ], - "enum": [ - "EMOTION_UNSPECIFIED", - "AMUSEMENT", - "ANGER", - "CONCENTRATION", - "CONTENTMENT", - "DESIRE", - "DISAPPOINTMENT", - "DISGUST", - "ELATION", - "EMBARRASSMENT", - "INTEREST", - "PRIDE", - "SADNESS", - "SURPRISE" - ], - "description": "Emotion entry.", + "endTimeOffset": { + "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the end of the segment (inclusive).", + "format": "google-duration", "type": "string" }, - "score": { - "description": "Confidence score.", - "format": "float", - "type": "number" + "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": "GoogleCloudVideointelligenceV1p1beta1_EmotionAttribute", - "description": "Emotion attribute.", - "type": "object" + "id": "GoogleCloudVideointelligenceV1beta2_VideoSegment" }, - "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAttribute": { - "description": "Face detection attribute.", + "GoogleCloudVideointelligenceV1_VideoAnnotationResults": { + "description": "Annotation results for a single video.", "type": "object", "properties": { - "normalizedBoundingBox": { - "description": "Normalized Bounding box.", - "$ref": "GoogleCloudVideointelligenceV1p1beta1_NormalizedBoundingBox" - }, - "emotions": { - "description": "Emotion attributes.", + "shotLabelAnnotations": { + "description": "Label annotations on shot level.\nThere is exactly one element for each unique label.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_EmotionAttribute" + "$ref": "GoogleCloudVideointelligenceV1_LabelAnnotation" } - } - }, - "id": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAttribute" - }, - "GoogleCloudVideointelligenceV1beta1_SafeSearchAnnotation": { - "properties": { - "adult": { - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Likelihood of adult content.", - "type": "string", - "enumDescriptions": [ - "Unknown likelihood.", - "Very unlikely.", - "Unlikely.", - "Possible.", - "Likely.", - "Very likely." - ] }, - "racy": { - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Likelihood of racy content.", - "type": "string", - "enumDescriptions": [ - "Unknown likelihood.", - "Very unlikely.", - "Unlikely.", - "Possible.", - "Likely.", - "Very likely." - ] + "error": { + "description": "Output only. Non-streaming error only. If set, indicates an error. Note\nthat for a single `AnnotateVideoRequest` some videos may succeed and some\nmay fail.", + "$ref": "GoogleRpc_Status" }, - "timeOffset": { - "description": "Video time offset in microseconds.", - "format": "int64", + "frameLabelAnnotations": { + "description": "Label annotations on frame level.\nThere is exactly one element for each unique label.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1_LabelAnnotation" + } + }, + "inputUri": { + "description": "Output only. Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", "type": "string" }, - "spoof": { - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "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." - ] + "explicitAnnotation": { + "$ref": "GoogleCloudVideointelligenceV1_ExplicitContentAnnotation", + "description": "Explicit content annotation." }, - "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" + "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" + } }, - "medical": { - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Likelihood of medical content.", - "type": "string", - "enumDescriptions": [ - "Unknown likelihood.", - "Very unlikely.", - "Unlikely.", - "Possible.", - "Likely.", - "Very likely." - ] + "shotAnnotations": { + "description": "Shot annotations. Each shot is represented as a video segment.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1_VideoSegment" + } } }, - "id": "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" + "id": "GoogleCloudVideointelligenceV1_VideoAnnotationResults" }, - "GoogleCloudVideointelligenceV1beta2_Entity": { + "GoogleCloudVideointelligenceV1p1beta1_Entity": { + "id": "GoogleCloudVideointelligenceV1p1beta1_Entity", + "description": "Detected entity from video analysis.", + "type": "object", "properties": { "languageCode": { "description": "Language code for `description` in BCP-47 format.", @@ -518,256 +376,196 @@ "description": "Textual description, e.g. `Fixed-gear bicycle`.", "type": "string" } - }, - "id": "GoogleCloudVideointelligenceV1beta2_Entity", - "description": "Detected entity from video analysis.", - "type": "object" + } }, - "GoogleCloudVideointelligenceV1beta1_LabelAnnotation": { - "description": "Label annotation.", + "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", "properties": { - "description": { - "description": "Textual description, e.g. `Fixed-gear bicycle`.", - "type": "string" - }, - "locations": { - "description": "Where the label was detected and with what confidence.", + "annotationResults": { + "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1beta1_LabelLocation" + "$ref": "GoogleCloudVideointelligenceV1beta2_VideoAnnotationResults" } - }, - "languageCode": { - "description": "Language code for `description` in BCP-47 format.", - "type": "string" } }, - "id": "GoogleCloudVideointelligenceV1beta1_LabelAnnotation" + "id": "GoogleCloudVideointelligenceV1beta2_AnnotateVideoResponse" }, - "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionFrame": { - "description": "Video frame level annotation results for face detection.", + "GoogleCloudVideointelligenceV1p1beta1_FaceSegment": { + "description": "Video segment level annotation results for face detection.", "type": "object", "properties": { - "timeOffset": { - "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the video frame for this location.", - "format": "google-duration", - "type": "string" - }, - "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.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAttribute" - } + "segment": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_VideoSegment", + "description": "Video segment where a face was detected." } }, - "id": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionFrame" + "id": "GoogleCloudVideointelligenceV1p1beta1_FaceSegment" }, - "GoogleCloudVideointelligenceV1_LabelAnnotation": { - "description": "Label annotation.", + "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationResults": { + "id": "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationResults", + "description": "Annotation results for a single video.", "type": "object", "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`.", + "shotLabelAnnotations": { + "description": "Label annotations on shot level.\nThere is exactly one element for each unique label.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1_Entity" + "$ref": "GoogleCloudVideointelligenceV1p1beta1_LabelAnnotation" } }, - "entity": { - "$ref": "GoogleCloudVideointelligenceV1_Entity", - "description": "Detected entity." - }, - "frames": { - "description": "All video frames where a label was detected.", + "faceDetectionAnnotations": { + "description": "Face detection annotations.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1_LabelFrame" + "$ref": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAnnotation" } }, - "segments": { - "description": "All video segments where a label was detected.", + "error": { + "$ref": "GoogleRpc_Status", + "description": "Output only. Non-streaming error only. If set, indicates an error. Note\nthat for a single `AnnotateVideoRequest` some videos may succeed and some\nmay fail." + }, + "speechTranscriptions": { + "description": "Speech transcription.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1_LabelSegment" + "$ref": "GoogleCloudVideointelligenceV1p1beta1_SpeechTranscription" } - } - }, - "id": "GoogleCloudVideointelligenceV1_LabelAnnotation" - }, - "GoogleCloudVideointelligenceV1beta1_VideoContext": { - "properties": { - "labelDetectionMode": { - "enum": [ - "LABEL_DETECTION_MODE_UNSPECIFIED", - "SHOT_MODE", - "FRAME_MODE", - "SHOT_AND_FRAME_MODE" - ], - "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." - ] }, - "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" + "frameLabelAnnotations": { + "description": "Label annotations on frame level.\nThere is exactly one element for each unique label.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_LabelAnnotation" + } }, - "safeSearchDetectionModel": { - "description": "Model to use for safe search detection.\nSupported values: \"latest\" and \"stable\" (the default).", + "inputUri": { + "description": "Output only. Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", "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.", + "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": "GoogleCloudVideointelligenceV1beta1_VideoSegment" + "$ref": "GoogleCloudVideointelligenceV1p1beta1_LabelAnnotation" } }, - "labelDetectionModel": { - "description": "Model to use for label detection.\nSupported values: \"latest\" and \"stable\" (the default).", - "type": "string" + "explicitAnnotation": { + "description": "Explicit content annotation.", + "$ref": "GoogleCloudVideointelligenceV1p1beta1_ExplicitContentAnnotation" }, - "shotChangeDetectionModel": { - "description": "Model to use for shot change detection.\nSupported values: \"latest\" and \"stable\" (the default).", - "type": "string" + "shotAnnotations": { + "description": "Shot annotations. Each shot is represented as a video segment.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_VideoSegment" + } } - }, - "id": "GoogleCloudVideointelligenceV1beta1_VideoContext", - "description": "Video context and/or feature-specific parameters.", - "type": "object" + } }, - "GoogleCloudVideointelligenceV1_VideoSegment": { - "description": "Video segment.", + "GoogleRpc_Status": { + "id": "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": { - "endTimeOffset": { - "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the end of the segment (inclusive).", - "format": "google-duration", + "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" }, - "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" - }, - "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.", - "type": "object", - "properties": { - "annotationResults": { - "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.", + "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": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationResults" + "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": "GoogleCloudVideointelligenceV1p1beta1_AnnotateVideoResponse" + } }, - "GoogleCloudVideointelligenceV1beta2_VideoAnnotationResults": { - "description": "Annotation results for a single video.", + "GoogleCloudVideointelligenceV1_LabelFrame": { + "id": "GoogleCloudVideointelligenceV1_LabelFrame", + "description": "Video frame level annotation results for label detection.", "type": "object", "properties": { - "error": { - "$ref": "GoogleRpc_Status", - "description": "Output only. Non-streaming error only. If set, indicates an error. Note\nthat for a single `AnnotateVideoRequest` some videos may succeed and some\nmay fail." - }, - "frameLabelAnnotations": { - "description": "Label annotations on frame level.\nThere is exactly one element for each unique label.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1beta2_LabelAnnotation" - } - }, - "inputUri": { - "description": "Output only. Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", + "timeOffset": { + "description": "Time-offset, relative to the beginning of the video, corresponding to the\nvideo frame for this location.", + "format": "google-duration", "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" - } - }, - "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" - } + "confidence": { + "description": "Confidence that the label is accurate. Range: [0, 1].", + "format": "float", + "type": "number" } - }, - "id": "GoogleCloudVideointelligenceV1beta2_VideoAnnotationResults" + } }, - "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.", + "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAnnotation": { + "id": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAnnotation", + "description": "Face detection annotation.", "type": "object", "properties": { - "annotationProgress": { - "description": "Progress metadata for all videos specified in `AnnotateVideoRequest`.", + "segments": { + "description": "All video segments where a face was detected.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationProgress" + "$ref": "GoogleCloudVideointelligenceV1p1beta1_FaceSegment" + } + }, + "frames": { + "description": "All video frames where a face was detected.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionFrame" } } - }, - "id": "GoogleCloudVideointelligenceV1p1beta1_AnnotateVideoProgress" + } }, - "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`.", + "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationProgress": { + "id": "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationProgress", + "description": "Annotation progress for a single video.", "type": "object", "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", + "startTime": { + "description": "Output only. Time when the request was received.", + "format": "google-datetime", "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", + "inputUri": { + "description": "Output only. Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", "type": "string" }, - "word": { - "description": "Output only. The word corresponding to this set of information.", + "progressPercent": { + "description": "Output only. Approximate percentage processed thus far. Guaranteed to be\n100 when fully processed.", + "format": "int32", + "type": "integer" + }, + "updateTime": { + "description": "Output only. Time of the most recent update.", + "format": "google-datetime", "type": "string" } - }, - "id": "GoogleCloudVideointelligenceV1p1beta1_WordInfo" + } }, - "GoogleCloudVideointelligenceV1_ExplicitContentFrame": { + "GoogleCloudVideointelligenceV1p1beta1_ExplicitContentFrame": { + "id": "GoogleCloudVideointelligenceV1p1beta1_ExplicitContentFrame", "description": "Video frame level annotation results for explicit content.", "type": "object", "properties": { + "timeOffset": { + "description": "Time-offset, relative to the beginning of the video, corresponding to the\nvideo frame for this location.", + "format": "google-duration", + "type": "string" + }, "pornographyLikelihood": { - "enum": [ - "LIKELIHOOD_UNSPECIFIED", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], "description": "Likelihood of the pornography content..", "type": "string", "enumDescriptions": [ @@ -777,49 +575,50 @@ "Possible.", "Likely.", "Very likely." + ], + "enum": [ + "LIKELIHOOD_UNSPECIFIED", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" ] - }, + } + } + }, + "GoogleCloudVideointelligenceV1p1beta1_LabelFrame": { + "description": "Video frame level annotation results for label detection.", + "type": "object", + "properties": { "timeOffset": { "description": "Time-offset, relative to the beginning of the video, corresponding to the\nvideo frame for this location.", "format": "google-duration", "type": "string" + }, + "confidence": { + "description": "Confidence that the label is accurate. Range: [0, 1].", + "format": "float", + "type": "number" } }, - "id": "GoogleCloudVideointelligenceV1_ExplicitContentFrame" + "id": "GoogleCloudVideointelligenceV1p1beta1_LabelFrame" }, - "GoogleCloudVideointelligenceV1p1beta1_LabelAnnotation": { + "GoogleCloudVideointelligenceV1p1beta1_SpeechTranscription": { + "id": "GoogleCloudVideointelligenceV1p1beta1_SpeechTranscription", + "description": "A speech recognition result corresponding to a portion of the audio.", + "type": "object", "properties": { - "frames": { - "description": "All video frames where a label was detected.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_LabelFrame" - } - }, - "segments": { - "description": "All video segments where a label was detected.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_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`.", + "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", "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_Entity" + "$ref": "GoogleCloudVideointelligenceV1p1beta1_SpeechRecognitionAlternative" } - }, - "entity": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_Entity", - "description": "Detected entity." } - }, - "id": "GoogleCloudVideointelligenceV1p1beta1_LabelAnnotation", - "description": "Label annotation.", - "type": "object" + } }, - "GoogleCloudVideointelligenceV1_ExplicitContentAnnotation": { + "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", "properties": { @@ -827,107 +626,83 @@ "description": "All video frames where explicit content was detected.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1_ExplicitContentFrame" + "$ref": "GoogleCloudVideointelligenceV1beta2_ExplicitContentFrame" } } }, - "id": "GoogleCloudVideointelligenceV1_ExplicitContentAnnotation" + "id": "GoogleCloudVideointelligenceV1beta2_ExplicitContentAnnotation" }, - "GoogleCloudVideointelligenceV1beta2_AnnotateVideoProgress": { + "GoogleCloudVideointelligenceV1beta1_LabelLocation": { + "description": "Label location.", + "type": "object", "properties": { - "annotationProgress": { - "description": "Progress metadata for all videos specified in `AnnotateVideoRequest`.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1beta2_VideoAnnotationProgress" - } + "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": "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": "GoogleCloudVideointelligenceV1beta1_LabelLocation" }, - "GoogleCloudVideointelligenceV1p1beta1_SpeechRecognitionAlternative": { + "GoogleCloudVideointelligenceV1beta2_LabelFrame": { + "description": "Video frame level annotation results for label detection.", + "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 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.", + "timeOffset": { + "description": "Time-offset, relative to the beginning of the video, corresponding to the\nvideo frame for this location.", + "format": "google-duration", "type": "string" }, - "words": { - "description": "Output only. A list of word-specific information for each recognized word.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_WordInfo" - } - } - }, - "id": "GoogleCloudVideointelligenceV1p1beta1_SpeechRecognitionAlternative", - "description": "Alternative hypotheses (a.k.a. n-best list).", - "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", - "properties": { - "annotationProgress": { - "description": "Progress metadata for all videos specified in `AnnotateVideoRequest`.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1_VideoAnnotationProgress" - } + "confidence": { + "description": "Confidence that the label is accurate. Range: [0, 1].", + "format": "float", + "type": "number" } }, - "id": "GoogleCloudVideointelligenceV1_AnnotateVideoProgress" + "id": "GoogleCloudVideointelligenceV1beta2_LabelFrame" }, - "GoogleLongrunning_Operation": { - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "GoogleCloudVideointelligenceV1p1beta1_LabelSegment": { + "description": "Video segment level annotation results for label detection.", "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": "GoogleRpc_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" + "segment": { + "description": "Video segment where a label was detected.", + "$ref": "GoogleCloudVideointelligenceV1p1beta1_VideoSegment" }, - "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" + "confidence": { + "description": "Confidence that the label is accurate. Range: [0, 1].", + "format": "float", + "type": "number" } }, - "id": "GoogleLongrunning_Operation" + "id": "GoogleCloudVideointelligenceV1p1beta1_LabelSegment" }, - "GoogleCloudVideointelligenceV1beta2_VideoAnnotationProgress": { + "GoogleCloudVideointelligenceV1_VideoAnnotationProgress": { "description": "Annotation progress for a single video.", "type": "object", "properties": { - "updateTime": { - "description": "Output only. Time of the most recent update.", - "format": "google-datetime", - "type": "string" - }, "startTime": { "description": "Output only. Time when the request was received.", "format": "google-datetime", @@ -941,577 +716,683 @@ "description": "Output only. Approximate percentage processed thus far. Guaranteed to be\n100 when fully processed.", "format": "int32", "type": "integer" - } - }, - "id": "GoogleCloudVideointelligenceV1beta2_VideoAnnotationProgress" - }, - "GoogleCloudVideointelligenceV1beta1_VideoAnnotationResults": { - "properties": { - "inputUri": { - "description": "Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", - "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" - } - }, - "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" - } - } - }, - "id": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationResults", - "description": "Annotation results for a single video.", - "type": "object" - }, - "GoogleCloudVideointelligenceV1beta2_ExplicitContentFrame": { - "properties": { - "pornographyLikelihood": { - "enum": [ - "LIKELIHOOD_UNSPECIFIED", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Likelihood of the pornography content..", - "type": "string", - "enumDescriptions": [ - "Unspecified likelihood.", - "Very unlikely.", - "Unlikely.", - "Possible.", - "Likely.", - "Very likely." - ] }, - "timeOffset": { - "description": "Time-offset, relative to the beginning of the video, corresponding to the\nvideo frame for this location.", - "format": "google-duration", + "updateTime": { + "description": "Output only. Time of the most recent update.", + "format": "google-datetime", "type": "string" } }, - "id": "GoogleCloudVideointelligenceV1beta2_ExplicitContentFrame", - "description": "Video frame level annotation results for explicit content.", - "type": "object" - }, - "GoogleCloudVideointelligenceV1p1beta1_ExplicitContentAnnotation": { - "properties": { - "frames": { - "description": "All video frames where explicit content was detected.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_ExplicitContentFrame" - } - } - }, - "id": "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.", - "type": "object" + "id": "GoogleCloudVideointelligenceV1_VideoAnnotationProgress" }, - "GoogleCloudVideointelligenceV1beta2_LabelAnnotation": { + "GoogleCloudVideointelligenceV1_AnnotateVideoResponse": { + "id": "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", "properties": { - "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`.", + "annotationResults": { + "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1beta2_Entity" + "$ref": "GoogleCloudVideointelligenceV1_VideoAnnotationResults" } - }, - "entity": { - "$ref": "GoogleCloudVideointelligenceV1beta2_Entity", - "description": "Detected entity." } - }, - "id": "GoogleCloudVideointelligenceV1beta2_LabelAnnotation", - "description": "Label annotation.", - "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.", + "GoogleCloudVideointelligenceV1beta1_AnnotateVideoResponse": { + "id": "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", "properties": { - "annotationProgress": { - "description": "Progress metadata for all videos specified in `AnnotateVideoRequest`.", + "annotationResults": { + "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationProgress" + "$ref": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationResults" } } - }, - "id": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoProgress" + } }, - "GoogleCloudVideointelligenceV1p1beta1_VideoSegment": { + "GoogleCloudVideointelligenceV1_LabelSegment": { + "description": "Video segment level annotation results for label detection.", + "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" + "confidence": { + "description": "Confidence that the label is accurate. Range: [0, 1].", + "format": "float", + "type": "number" }, - "startTimeOffset": { - "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the start of the segment (inclusive).", - "format": "google-duration", - "type": "string" + "segment": { + "description": "Video segment where a label was detected.", + "$ref": "GoogleCloudVideointelligenceV1_VideoSegment" } }, - "id": "GoogleCloudVideointelligenceV1p1beta1_VideoSegment", - "description": "Video segment.", - "type": "object" + "id": "GoogleCloudVideointelligenceV1_LabelSegment" }, - "GoogleCloudVideointelligenceV1_Entity": { + "GoogleCloudVideointelligenceV1beta1_VideoAnnotationProgress": { + "description": "Annotation progress for a single video.", + "type": "object", "properties": { - "languageCode": { - "description": "Language code for `description` in BCP-47 format.", + "inputUri": { + "description": "Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", "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/).", + "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" }, - "description": { - "description": "Textual description, e.g. `Fixed-gear bicycle`.", + "startTime": { + "description": "Time when the request was received.", + "format": "google-datetime", "type": "string" } }, - "id": "GoogleCloudVideointelligenceV1_Entity", - "description": "Detected entity from video analysis.", - "type": "object" + "id": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationProgress" }, - "GoogleCloudVideointelligenceV1beta2_VideoSegment": { - "description": "Video segment.", + "GoogleCloudVideointelligenceV1p1beta1_NormalizedBoundingBox": { + "description": "Normalized bounding box.\nThe normalized vertex coordinates are relative to the original image.\nRange: [0, 1].", "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" + "top": { + "description": "Top Y coordinate.", + "format": "float", + "type": "number" + }, + "left": { + "description": "Left X coordinate.", + "format": "float", + "type": "number" + }, + "right": { + "description": "Right X coordinate.", + "format": "float", + "type": "number" + }, + "bottom": { + "description": "Bottom Y coordinate.", + "format": "float", + "type": "number" } }, - "id": "GoogleCloudVideointelligenceV1beta2_VideoSegment" + "id": "GoogleCloudVideointelligenceV1p1beta1_NormalizedBoundingBox" }, - "GoogleCloudVideointelligenceV1_VideoAnnotationResults": { + "GoogleCloudVideointelligenceV1beta1_AnnotateVideoRequest": { + "description": "Video annotation request.", + "type": "object", "properties": { - "explicitAnnotation": { - "description": "Explicit content annotation.", - "$ref": "GoogleCloudVideointelligenceV1_ExplicitContentAnnotation" - }, - "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" - } - }, - "shotAnnotations": { - "description": "Shot annotations. Each shot is represented as a video segment.", + "features": { + "description": "Requested video annotation features.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1_VideoSegment" - } + "enum": [ + "FEATURE_UNSPECIFIED", + "LABEL_DETECTION", + "SHOT_CHANGE_DETECTION", + "SAFE_SEARCH_DETECTION" + ], + "type": "string" + }, + "enumDescriptions": [ + "Unspecified.", + "Label detection. Detect objects, such as dog or flower.", + "Shot change detection.", + "Safe search detection." + ] }, - "shotLabelAnnotations": { - "description": "Label annotations on shot level.\nThere is exactly one element for each unique label.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1_LabelAnnotation" - } + "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).", + "type": "string" }, - "error": { - "$ref": "GoogleRpc_Status", - "description": "Output only. Non-streaming error only. If set, indicates an error. Note\nthat for a single `AnnotateVideoRequest` some videos may succeed and some\nmay fail." + "videoContext": { + "$ref": "GoogleCloudVideointelligenceV1beta1_VideoContext", + "description": "Additional video context and/or feature-specific parameters." }, - "frameLabelAnnotations": { - "description": "Label annotations on frame level.\nThere is exactly one element for each unique label.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1_LabelAnnotation" - } + "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": "Output only. Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", + "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" } }, - "id": "GoogleCloudVideointelligenceV1_VideoAnnotationResults", - "description": "Annotation results for a single video.", - "type": "object" + "id": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoRequest" }, - "GoogleCloudVideointelligenceV1p1beta1_Entity": { + "GoogleCloudVideointelligenceV1beta1_VideoSegment": { + "description": "Video segment.", + "type": "object", "properties": { - "entityId": { - "description": "Opaque entity ID. Some IDs may be available in\n[Google Knowledge Graph Search\nAPI](https://developers.google.com/knowledge-graph/).", + "endTimeOffset": { + "description": "End offset in microseconds (inclusive). Unset means 0.", + "format": "int64", "type": "string" }, - "description": { - "description": "Textual description, e.g. `Fixed-gear bicycle`.", + "startTimeOffset": { + "description": "Start offset in microseconds (inclusive). Unset means 0.", + "format": "int64", "type": "string" + } + }, + "id": "GoogleCloudVideointelligenceV1beta1_VideoSegment" + }, + "GoogleCloudVideointelligenceV1beta2_LabelSegment": { + "description": "Video segment level annotation results for label detection.", + "type": "object", + "properties": { + "confidence": { + "description": "Confidence that the label is accurate. Range: [0, 1].", + "format": "float", + "type": "number" }, - "languageCode": { - "description": "Language code for `description` in BCP-47 format.", - "type": "string" + "segment": { + "$ref": "GoogleCloudVideointelligenceV1beta2_VideoSegment", + "description": "Video segment where a label was detected." } }, - "id": "GoogleCloudVideointelligenceV1p1beta1_Entity", - "description": "Detected entity from video analysis.", - "type": "object" + "id": "GoogleCloudVideointelligenceV1beta2_LabelSegment" }, - "GoogleCloudVideointelligenceV1beta2_AnnotateVideoResponse": { + "GoogleCloudVideointelligenceV1p1beta1_EmotionAttribute": { + "id": "GoogleCloudVideointelligenceV1p1beta1_EmotionAttribute", + "description": "Emotion attribute.", + "type": "object", "properties": { - "annotationResults": { - "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.", + "emotion": { + "description": "Emotion entry.", + "type": "string", + "enumDescriptions": [ + "Unspecified emotion.", + "Amusement.", + "Anger.", + "Concentration.", + "Contentment.", + "Desire.", + "Disappointment.", + "Disgust.", + "Elation.", + "Embarrassment.", + "Interest.", + "Pride.", + "Sadness.", + "Surprise." + ], + "enum": [ + "EMOTION_UNSPECIFIED", + "AMUSEMENT", + "ANGER", + "CONCENTRATION", + "CONTENTMENT", + "DESIRE", + "DISAPPOINTMENT", + "DISGUST", + "ELATION", + "EMBARRASSMENT", + "INTEREST", + "PRIDE", + "SADNESS", + "SURPRISE" + ] + }, + "score": { + "description": "Confidence score.", + "format": "float", + "type": "number" + } + } + }, + "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAttribute": { + "description": "Face detection attribute.", + "type": "object", + "properties": { + "normalizedBoundingBox": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_NormalizedBoundingBox", + "description": "Normalized Bounding box." + }, + "emotions": { + "description": "Emotion attributes.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1beta2_VideoAnnotationResults" + "$ref": "GoogleCloudVideointelligenceV1p1beta1_EmotionAttribute" } } }, - "id": "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": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAttribute" }, - "GoogleCloudVideointelligenceV1p1beta1_FaceSegment": { - "description": "Video segment level annotation results for face detection.", + "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": { - "segment": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_VideoSegment", - "description": "Video segment where a face was detected." + "medical": { + "enumDescriptions": [ + "Unknown likelihood.", + "Very unlikely.", + "Unlikely.", + "Possible.", + "Likely.", + "Very likely." + ], + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "description": "Likelihood of medical content.", + "type": "string" + }, + "adult": { + "description": "Likelihood of adult content.", + "type": "string", + "enumDescriptions": [ + "Unknown likelihood.", + "Very unlikely.", + "Unlikely.", + "Possible.", + "Likely.", + "Very likely." + ], + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ] + }, + "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" + }, + "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" + ] + }, + "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" + } + }, + "id": "GoogleCloudVideointelligenceV1beta1_SafeSearchAnnotation" + }, + "GoogleCloudVideointelligenceV1beta2_Entity": { + "id": "GoogleCloudVideointelligenceV1beta2_Entity", + "description": "Detected entity from video analysis.", + "type": "object", + "properties": { + "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" + }, + "description": { + "description": "Textual description, e.g. `Fixed-gear bicycle`.", + "type": "string" + }, + "languageCode": { + "description": "Language code for `description` in BCP-47 format.", + "type": "string" } - }, - "id": "GoogleCloudVideointelligenceV1p1beta1_FaceSegment" + } }, - "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationResults": { - "description": "Annotation results for a single video.", + "GoogleCloudVideointelligenceV1beta1_LabelAnnotation": { + "id": "GoogleCloudVideointelligenceV1beta1_LabelAnnotation", + "description": "Label annotation.", "type": "object", "properties": { - "speechTranscriptions": { - "description": "Speech transcription.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_SpeechTranscription" - } + "languageCode": { + "description": "Language code for `description` in BCP-47 format.", + "type": "string" }, - "frameLabelAnnotations": { - "description": "Label annotations on frame level.\nThere is exactly one element for each unique label.", + "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": "GoogleCloudVideointelligenceV1p1beta1_LabelAnnotation" + "$ref": "GoogleCloudVideointelligenceV1beta1_LabelLocation" } - }, - "inputUri": { - "description": "Output only. Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", + } + } + }, + "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionFrame": { + "description": "Video frame level annotation results for face detection.", + "type": "object", + "properties": { + "timeOffset": { + "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the video frame for this location.", + "format": "google-duration", "type": "string" }, - "segmentLabelAnnotations": { - "description": "Label annotations on video level or user specified segment level.\nThere is exactly one element for each unique label.", + "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.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_LabelAnnotation" + "$ref": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAttribute" } + } + }, + "id": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionFrame" + }, + "GoogleCloudVideointelligenceV1_LabelAnnotation": { + "id": "GoogleCloudVideointelligenceV1_LabelAnnotation", + "description": "Label annotation.", + "type": "object", + "properties": { + "entity": { + "description": "Detected entity.", + "$ref": "GoogleCloudVideointelligenceV1_Entity" }, - "explicitAnnotation": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_ExplicitContentAnnotation", - "description": "Explicit content annotation." - }, - "shotAnnotations": { - "description": "Shot annotations. Each shot is represented as a video segment.", + "frames": { + "description": "All video frames where a label was detected.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_VideoSegment" + "$ref": "GoogleCloudVideointelligenceV1_LabelFrame" } }, - "shotLabelAnnotations": { - "description": "Label annotations on shot level.\nThere is exactly one element for each unique label.", + "segments": { + "description": "All video segments where a label was detected.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_LabelAnnotation" + "$ref": "GoogleCloudVideointelligenceV1_LabelSegment" } }, - "faceDetectionAnnotations": { - "description": "Face detection annotations.", + "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": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAnnotation" + "$ref": "GoogleCloudVideointelligenceV1_Entity" } - }, - "error": { - "description": "Output only. Non-streaming error only. If set, indicates an error. Note\nthat for a single `AnnotateVideoRequest` some videos may succeed and some\nmay fail.", - "$ref": "GoogleRpc_Status" } - }, - "id": "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationResults" + } }, - "GoogleRpc_Status": { + "GoogleCloudVideointelligenceV1beta1_VideoContext": { + "id": "GoogleCloudVideointelligenceV1beta1_VideoContext", + "description": "Video context and/or feature-specific parameters.", + "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.", + "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": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" + "$ref": "GoogleCloudVideointelligenceV1beta1_VideoSegment" } }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" + "labelDetectionModel": { + "description": "Model to use for label detection.\nSupported values: \"latest\" and \"stable\" (the default).", + "type": "string" }, - "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.", + "shotChangeDetectionModel": { + "description": "Model to use for shot change detection.\nSupported values: \"latest\" and \"stable\" (the default).", + "type": "string" + }, + "labelDetectionMode": { + "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" + ], + "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" + }, + "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" + }, + "safeSearchDetectionModel": { + "description": "Model to use for safe search detection.\nSupported values: \"latest\" and \"stable\" (the default).", "type": "string" } - }, - "id": "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" + } }, - "GoogleCloudVideointelligenceV1_LabelFrame": { - "description": "Video frame level annotation results for label detection.", + "GoogleCloudVideointelligenceV1_VideoSegment": { + "description": "Video segment.", "type": "object", "properties": { - "confidence": { - "description": "Confidence that the label is accurate. Range: [0, 1].", - "format": "float", - "type": "number" + "endTimeOffset": { + "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the end of the segment (inclusive).", + "format": "google-duration", + "type": "string" }, - "timeOffset": { - "description": "Time-offset, relative to the beginning of the video, corresponding to the\nvideo frame for this location.", + "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_LabelFrame" + "id": "GoogleCloudVideointelligenceV1_VideoSegment" }, - "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAnnotation": { + "GoogleCloudVideointelligenceV1p1beta1_AnnotateVideoResponse": { + "id": "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.", + "type": "object", "properties": { - "frames": { - "description": "All video frames where a face was detected.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionFrame" - } - }, - "segments": { - "description": "All video segments where a face was detected.", + "annotationResults": { + "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_FaceSegment" + "$ref": "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationResults" } } - }, - "id": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAnnotation", - "description": "Face detection annotation.", - "type": "object" + } }, - "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationProgress": { - "description": "Annotation progress for a single video.", + "GoogleCloudVideointelligenceV1beta2_VideoAnnotationResults": { + "description": "Annotation results for a single video.", "type": "object", "properties": { - "updateTime": { - "description": "Output only. Time of the most recent update.", - "format": "google-datetime", - "type": "string" + "shotLabelAnnotations": { + "description": "Label annotations on shot level.\nThere is exactly one element for each unique label.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1beta2_LabelAnnotation" + } }, - "startTime": { - "description": "Output only. Time when the request was received.", - "format": "google-datetime", - "type": "string" + "error": { + "$ref": "GoogleRpc_Status", + "description": "Output only. Non-streaming error only. If set, indicates an error. Note\nthat for a single `AnnotateVideoRequest` some videos may succeed and some\nmay fail." + }, + "frameLabelAnnotations": { + "description": "Label annotations on frame level.\nThere is exactly one element for each unique label.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1beta2_LabelAnnotation" + } }, "inputUri": { "description": "Output only. Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", "type": "string" }, - "progressPercent": { - "description": "Output only. Approximate percentage processed thus far. Guaranteed to be\n100 when fully processed.", - "format": "int32", - "type": "integer" - } - }, - "id": "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationProgress" - }, - "GoogleCloudVideointelligenceV1p1beta1_ExplicitContentFrame": { - "description": "Video frame level annotation results for explicit content.", - "type": "object", - "properties": { - "pornographyLikelihood": { - "enum": [ - "LIKELIHOOD_UNSPECIFIED", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Likelihood of the pornography content..", - "type": "string", - "enumDescriptions": [ - "Unspecified likelihood.", - "Very unlikely.", - "Unlikely.", - "Possible.", - "Likely.", - "Very likely." - ] + "explicitAnnotation": { + "$ref": "GoogleCloudVideointelligenceV1beta2_ExplicitContentAnnotation", + "description": "Explicit content annotation." }, - "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": "GoogleCloudVideointelligenceV1p1beta1_ExplicitContentFrame" - }, - "GoogleCloudVideointelligenceV1p1beta1_LabelFrame": { - "properties": { - "confidence": { - "description": "Confidence that the label is accurate. Range: [0, 1].", - "format": "float", - "type": "number" + "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" + } }, - "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": "GoogleCloudVideointelligenceV1p1beta1_LabelFrame", - "description": "Video frame level annotation results for label detection.", - "type": "object" - }, - "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.", + "shotAnnotations": { + "description": "Shot annotations. Each shot is represented as a video segment.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_SpeechRecognitionAlternative" + "$ref": "GoogleCloudVideointelligenceV1beta2_VideoSegment" } } }, - "id": "GoogleCloudVideointelligenceV1p1beta1_SpeechTranscription", - "description": "A speech recognition result corresponding to a portion of the audio.", - "type": "object" + "id": "GoogleCloudVideointelligenceV1beta2_VideoAnnotationResults" }, - "GoogleCloudVideointelligenceV1beta2_ExplicitContentAnnotation": { + "GoogleCloudVideointelligenceV1p1beta1_AnnotateVideoProgress": { + "id": "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.", + "type": "object", "properties": { - "frames": { - "description": "All video frames where explicit content was detected.", + "annotationProgress": { + "description": "Progress metadata for all videos specified in `AnnotateVideoRequest`.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1beta2_ExplicitContentFrame" + "$ref": "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationProgress" } } - }, - "id": "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" + } }, - "GoogleCloudVideointelligenceV1beta1_LabelLocation": { - "description": "Label location.", + "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`.", "type": "object", "properties": { - "level": { - "enum": [ - "LABEL_LEVEL_UNSPECIFIED", - "VIDEO_LEVEL", - "SEGMENT_LEVEL", - "SHOT_LEVEL", - "FRAME_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." - ] + "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" }, - "confidence": { - "description": "Confidence that the label is accurate. Range: [0, 1].", - "format": "float", - "type": "number" + "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" }, - "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" + "word": { + "description": "Output only. The word corresponding to this set of information.", + "type": "string" } }, - "id": "GoogleCloudVideointelligenceV1beta1_LabelLocation" + "id": "GoogleCloudVideointelligenceV1p1beta1_WordInfo" }, - "GoogleCloudVideointelligenceV1beta2_LabelFrame": { + "GoogleCloudVideointelligenceV1_ExplicitContentFrame": { + "description": "Video frame level annotation results for explicit content.", + "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" + }, + "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..", + "type": "string" } }, - "id": "GoogleCloudVideointelligenceV1beta2_LabelFrame", - "description": "Video frame level annotation results for label detection.", - "type": "object" + "id": "GoogleCloudVideointelligenceV1_ExplicitContentFrame" }, - "GoogleCloudVideointelligenceV1p1beta1_LabelSegment": { + "GoogleCloudVideointelligenceV1p1beta1_LabelAnnotation": { + "description": "Label annotation.", + "type": "object", "properties": { - "confidence": { - "description": "Confidence that the label is accurate. Range: [0, 1].", - "format": "float", - "type": "number" + "entity": { + "description": "Detected entity.", + "$ref": "GoogleCloudVideointelligenceV1p1beta1_Entity" }, - "segment": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_VideoSegment", - "description": "Video segment where a label was detected." + "frames": { + "description": "All video frames where a label was detected.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_LabelFrame" + } + }, + "segments": { + "description": "All video segments where a label was detected.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_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": "GoogleCloudVideointelligenceV1p1beta1_Entity" + } } }, - "id": "GoogleCloudVideointelligenceV1p1beta1_LabelSegment", - "description": "Video segment level annotation results for label detection.", - "type": "object" + "id": "GoogleCloudVideointelligenceV1p1beta1_LabelAnnotation" } }, "icons": { @@ -1534,5 +1415,124 @@ "name": "videointelligence", "batchPath": "batch", "fullyEncodeReservedExpansion": true, - "title": "Cloud Video Intelligence API" + "title": "Cloud Video Intelligence API", + "ownerName": "Google", + "resources": { + "videos": { + "methods": { + "annotate": { + "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", + "request": { + "$ref": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoRequest" + }, + "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)." + } + } + } + }, + "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": { + "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" + ] + }, + "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": { + "location": "query", + "description": "OAuth bearer token.", + "type": "string" + } + }, + "version": "v1beta1", + "baseUrl": "https://videointelligence.googleapis.com/", + "servicePath": "", + "kind": "discovery#restDescription", + "description": "Cloud Video Intelligence API.", + "basePath": "" } diff --git a/DiscoveryJson/videointelligence_v1beta2.json b/DiscoveryJson/videointelligence_v1beta2.json index ec8ae57d72..2e840c29ae 100644 --- a/DiscoveryJson/videointelligence_v1beta2.json +++ b/DiscoveryJson/videointelligence_v1beta2.json @@ -1,316 +1,503 @@ { + "batchPath": "batch", + "fullyEncodeReservedExpansion": true, + "title": "Cloud Video Intelligence API", + "ownerName": "Google", + "resources": { + "videos": { + "methods": { + "annotate": { + "request": { + "$ref": "GoogleCloudVideointelligenceV1beta2_AnnotateVideoRequest" + }, + "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).", + "response": { + "$ref": "GoogleLongrunning_Operation" + }, + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": {}, + "flatPath": "v1beta2/videos:annotate", + "path": "v1beta2/videos:annotate", + "id": "videointelligence.videos.annotate" + } + } + } + }, + "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": { + "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": { + "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": { + "description": "API key. 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" + }, + "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": "v1beta2", "baseUrl": "https://videointelligence.googleapis.com/", - "servicePath": "", - "description": "Cloud Video Intelligence API.", "kind": "discovery#restDescription", + "description": "Cloud Video Intelligence API.", + "servicePath": "", "basePath": "", - "id": "videointelligence:v1beta2", - "documentationLink": "https://cloud.google.com/video-intelligence/docs/", "revision": "20180504", + "documentationLink": "https://cloud.google.com/video-intelligence/docs/", + "id": "videointelligence:v1beta2", "discoveryVersion": "v1", "version_module": true, "schemas": { - "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.", + "GoogleCloudVideointelligenceV1beta2_LabelFrame": { + "description": "Video frame level annotation results for label detection.", "type": "object", "properties": { - "annotationProgress": { - "description": "Progress metadata for all videos specified in `AnnotateVideoRequest`.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_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": "GoogleCloudVideointelligenceV1p1beta1_AnnotateVideoProgress" + "id": "GoogleCloudVideointelligenceV1beta2_LabelFrame" }, - "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`.", + "GoogleCloudVideointelligenceV1beta2_ShotChangeDetectionConfig": { + "description": "Config for SHOT_CHANGE_DETECTION.", "type": "object", "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.", + "model": { + "description": "Model to use for shot change detection.\nSupported values: \"builtin/stable\" (the default if unset) and\n\"builtin/latest\".", "type": "string" } }, - "id": "GoogleCloudVideointelligenceV1p1beta1_WordInfo" + "id": "GoogleCloudVideointelligenceV1beta2_ShotChangeDetectionConfig" }, - "GoogleCloudVideointelligenceV1beta2_LabelDetectionConfig": { - "description": "Config for LABEL_DETECTION.", + "GoogleCloudVideointelligenceV1p1beta1_LabelSegment": { + "description": "Video segment level annotation results for label detection.", "type": "object", "properties": { - "model": { - "description": "Model to use for label detection.\nSupported values: \"builtin/stable\" (the default if unset) and\n\"builtin/latest\".", - "type": "string" - }, - "labelDetectionMode": { - "description": "What labels should be detected with LABEL_DETECTION, in addition to\nvideo-level labels or segment-level labels.\nIf unspecified, defaults 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" - ] + "confidence": { + "description": "Confidence that the label is accurate. Range: [0, 1].", + "format": "float", + "type": "number" }, - "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.\nShould be used with `SHOT_AND_FRAME_MODE` enabled.", - "type": "boolean" + "segment": { + "description": "Video segment where a label was detected.", + "$ref": "GoogleCloudVideointelligenceV1p1beta1_VideoSegment" } }, - "id": "GoogleCloudVideointelligenceV1beta2_LabelDetectionConfig" + "id": "GoogleCloudVideointelligenceV1p1beta1_LabelSegment" }, - "GoogleCloudVideointelligenceV1_ExplicitContentFrame": { - "description": "Video frame level annotation results for explicit content.", + "GoogleCloudVideointelligenceV1_VideoAnnotationProgress": { + "description": "Annotation progress for a single video.", "type": "object", "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..", + "inputUri": { + "description": "Output only. 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.", - "format": "google-duration", + "progressPercent": { + "description": "Output only. Approximate percentage processed thus far. Guaranteed to be\n100 when fully processed.", + "format": "int32", + "type": "integer" + }, + "updateTime": { + "description": "Output only. Time of the most recent update.", + "format": "google-datetime", + "type": "string" + }, + "startTime": { + "description": "Output only. Time when the request was received.", + "format": "google-datetime", "type": "string" } }, - "id": "GoogleCloudVideointelligenceV1_ExplicitContentFrame" + "id": "GoogleCloudVideointelligenceV1_VideoAnnotationProgress" }, - "GoogleCloudVideointelligenceV1p1beta1_LabelAnnotation": { - "description": "Label annotation.", + "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", "properties": { - "entity": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_Entity", - "description": "Detected entity." - }, - "frames": { - "description": "All video frames where a label was detected.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_LabelFrame" - } - }, - "segments": { - "description": "All video segments where a label was detected.", + "annotationResults": { + "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_LabelSegment" + "$ref": "GoogleCloudVideointelligenceV1_VideoAnnotationResults" } + } + }, + "id": "GoogleCloudVideointelligenceV1_AnnotateVideoResponse" + }, + "GoogleCloudVideointelligenceV1_LabelSegment": { + "description": "Video segment level annotation results for label detection.", + "type": "object", + "properties": { + "segment": { + "description": "Video segment where a label was detected.", + "$ref": "GoogleCloudVideointelligenceV1_VideoSegment" }, - "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": "GoogleCloudVideointelligenceV1p1beta1_Entity" - } + "confidence": { + "description": "Confidence that the label is accurate. Range: [0, 1].", + "format": "float", + "type": "number" } }, - "id": "GoogleCloudVideointelligenceV1p1beta1_LabelAnnotation" + "id": "GoogleCloudVideointelligenceV1_LabelSegment" }, - "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.", + "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", "properties": { - "frames": { - "description": "All video frames where explicit content was detected.", + "annotationResults": { + "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1_ExplicitContentFrame" + "$ref": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationResults" } } }, - "id": "GoogleCloudVideointelligenceV1_ExplicitContentAnnotation" + "id": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoResponse" }, - "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.", + "GoogleCloudVideointelligenceV1beta1_VideoAnnotationProgress": { + "description": "Annotation progress for a single video.", "type": "object", "properties": { - "annotationProgress": { - "description": "Progress metadata for all videos specified in `AnnotateVideoRequest`.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1beta2_VideoAnnotationProgress" - } + "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" } }, - "id": "GoogleCloudVideointelligenceV1beta2_AnnotateVideoProgress" + "id": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationProgress" }, - "GoogleCloudVideointelligenceV1p1beta1_SpeechRecognitionAlternative": { - "description": "Alternative hypotheses (a.k.a. n-best list).", + "GoogleCloudVideointelligenceV1p1beta1_NormalizedBoundingBox": { + "description": "Normalized bounding box.\nThe normalized vertex coordinates are relative to the original image.\nRange: [0, 1].", "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 consistent.\nThe default of 0.0 is a sentinel value indicating `confidence` was not set.", + "right": { + "description": "Right X coordinate.", "format": "float", "type": "number" }, - "transcript": { - "description": "Output only. Transcript text representing the words that the user spoke.", - "type": "string" + "bottom": { + "description": "Bottom Y coordinate.", + "format": "float", + "type": "number" }, - "words": { - "description": "Output only. A list of word-specific information for each recognized word.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_WordInfo" - } + "top": { + "description": "Top Y coordinate.", + "format": "float", + "type": "number" + }, + "left": { + "description": "Left X coordinate.", + "format": "float", + "type": "number" } }, - "id": "GoogleCloudVideointelligenceV1p1beta1_SpeechRecognitionAlternative" + "id": "GoogleCloudVideointelligenceV1p1beta1_NormalizedBoundingBox" }, - "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.", + "GoogleCloudVideointelligenceV1beta1_VideoSegment": { + "description": "Video segment.", "type": "object", "properties": { - "annotationProgress": { - "description": "Progress metadata for all videos specified in `AnnotateVideoRequest`.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1_VideoAnnotationProgress" - } + "endTimeOffset": { + "description": "End offset in microseconds (inclusive). Unset means 0.", + "format": "int64", + "type": "string" + }, + "startTimeOffset": { + "description": "Start offset in microseconds (inclusive). Unset means 0.", + "format": "int64", + "type": "string" } }, - "id": "GoogleCloudVideointelligenceV1_AnnotateVideoProgress" + "id": "GoogleCloudVideointelligenceV1beta1_VideoSegment" }, - "GoogleLongrunning_Operation": { - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "GoogleCloudVideointelligenceV1beta2_LabelSegment": { + "description": "Video segment level annotation results for label detection.", "type": "object", "properties": { - "error": { - "description": "The error result of the operation in case of failure or cancellation.", - "$ref": "GoogleRpc_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" - }, - "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" + "confidence": { + "description": "Confidence that the label is accurate. Range: [0, 1].", + "format": "float", + "type": "number" }, - "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" + "segment": { + "description": "Video segment where a label was detected.", + "$ref": "GoogleCloudVideointelligenceV1beta2_VideoSegment" } }, - "id": "GoogleLongrunning_Operation" + "id": "GoogleCloudVideointelligenceV1beta2_LabelSegment" }, - "GoogleCloudVideointelligenceV1beta1_VideoAnnotationResults": { - "description": "Annotation results for a single video.", + "GoogleCloudVideointelligenceV1p1beta1_EmotionAttribute": { + "description": "Emotion attribute.", "type": "object", "properties": { - "labelAnnotations": { - "description": "Label annotations. There is exactly one element for each unique label.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1beta1_LabelAnnotation" - } - }, - "error": { - "$ref": "GoogleRpc_Status", - "description": "If set, indicates an error. Note that for a single `AnnotateVideoRequest`\nsome videos may succeed and some may fail." + "emotion": { + "enumDescriptions": [ + "Unspecified emotion.", + "Amusement.", + "Anger.", + "Concentration.", + "Contentment.", + "Desire.", + "Disappointment.", + "Disgust.", + "Elation.", + "Embarrassment.", + "Interest.", + "Pride.", + "Sadness.", + "Surprise." + ], + "enum": [ + "EMOTION_UNSPECIFIED", + "AMUSEMENT", + "ANGER", + "CONCENTRATION", + "CONTENTMENT", + "DESIRE", + "DISAPPOINTMENT", + "DISGUST", + "ELATION", + "EMBARRASSMENT", + "INTEREST", + "PRIDE", + "SADNESS", + "SURPRISE" + ], + "description": "Emotion entry.", + "type": "string" }, - "shotAnnotations": { - "description": "Shot annotations. Each shot is represented as a video segment.", + "score": { + "description": "Confidence score.", + "format": "float", + "type": "number" + } + }, + "id": "GoogleCloudVideointelligenceV1p1beta1_EmotionAttribute" + }, + "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAttribute": { + "description": "Face detection attribute.", + "type": "object", + "properties": { + "emotions": { + "description": "Emotion attributes.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1beta1_VideoSegment" + "$ref": "GoogleCloudVideointelligenceV1p1beta1_EmotionAttribute" } }, - "inputUri": { - "description": "Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", + "normalizedBoundingBox": { + "description": "Normalized Bounding box.", + "$ref": "GoogleCloudVideointelligenceV1p1beta1_NormalizedBoundingBox" + } + }, + "id": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAttribute" + }, + "GoogleCloudVideointelligenceV1beta2_ExplicitContentDetectionConfig": { + "description": "Config for EXPLICIT_CONTENT_DETECTION.", + "type": "object", + "properties": { + "model": { + "description": "Model to use for explicit content detection.\nSupported values: \"builtin/stable\" (the default if unset) and\n\"builtin/latest\".", "type": "string" - }, - "safeSearchAnnotations": { - "description": "Safe search annotations.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1beta1_SafeSearchAnnotation" - } } }, - "id": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationResults" + "id": "GoogleCloudVideointelligenceV1beta2_ExplicitContentDetectionConfig" }, - "GoogleCloudVideointelligenceV1beta2_VideoAnnotationProgress": { - "description": "Annotation progress for a single video.", + "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": { - "progressPercent": { - "description": "Output only. Approximate percentage processed thus far. Guaranteed to be\n100 when fully processed.", - "format": "int32", - "type": "integer" + "adult": { + "description": "Likelihood of adult content.", + "type": "string", + "enumDescriptions": [ + "Unknown likelihood.", + "Very unlikely.", + "Unlikely.", + "Possible.", + "Likely.", + "Very likely." + ], + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ] + }, + "racy": { + "enumDescriptions": [ + "Unknown likelihood.", + "Very unlikely.", + "Unlikely.", + "Possible.", + "Likely.", + "Very likely." + ], + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "description": "Likelihood of racy content.", + "type": "string" }, - "updateTime": { - "description": "Output only. Time of the most recent update.", - "format": "google-datetime", + "timeOffset": { + "description": "Video time offset in microseconds.", + "format": "int64", "type": "string" }, - "startTime": { - "description": "Output only. Time when the request was received.", - "format": "google-datetime", + "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" }, - "inputUri": { - "description": "Output only. Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", + "spoof": { + "enumDescriptions": [ + "Unknown likelihood.", + "Very unlikely.", + "Unlikely.", + "Possible.", + "Likely.", + "Very likely." + ], + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "description": "Likelihood that an obvious modification was made to the original\nversion to make it appear funny or offensive.", "type": "string" - } - }, - "id": "GoogleCloudVideointelligenceV1beta2_VideoAnnotationProgress" - }, - "GoogleCloudVideointelligenceV1beta2_ExplicitContentFrame": { - "description": "Video frame level annotation results for explicit content.", - "type": "object", - "properties": { - "pornographyLikelihood": { - "description": "Likelihood of the pornography content..", + }, + "medical": { + "description": "Likelihood of medical content.", "type": "string", "enumDescriptions": [ - "Unspecified likelihood.", + "Unknown likelihood.", "Very unlikely.", "Unlikely.", "Possible.", @@ -318,273 +505,240 @@ "Very likely." ], "enum": [ - "LIKELIHOOD_UNSPECIFIED", + "UNKNOWN", "VERY_UNLIKELY", "UNLIKELY", "POSSIBLE", "LIKELY", "VERY_LIKELY" ] - }, - "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_ExplicitContentFrame" - }, - "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.", - "type": "object", - "properties": { - "frames": { - "description": "All video frames where explicit content was detected.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_ExplicitContentFrame" - } } }, - "id": "GoogleCloudVideointelligenceV1p1beta1_ExplicitContentAnnotation" + "id": "GoogleCloudVideointelligenceV1beta1_SafeSearchAnnotation" }, - "GoogleCloudVideointelligenceV1beta2_LabelAnnotation": { - "description": "Label annotation.", + "GoogleCloudVideointelligenceV1beta2_Entity": { + "description": "Detected entity from video analysis.", "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" - } + "languageCode": { + "description": "Language code for `description` in BCP-47 format.", + "type": "string" }, - "segments": { - "description": "All video segments where a label was detected.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1beta2_LabelSegment" - } + "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" }, - "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" - } + "description": { + "description": "Textual description, e.g. `Fixed-gear bicycle`.", + "type": "string" } }, - "id": "GoogleCloudVideointelligenceV1beta2_LabelAnnotation" + "id": "GoogleCloudVideointelligenceV1beta2_Entity" }, - "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.", + "GoogleCloudVideointelligenceV1beta2_VideoContext": { + "description": "Video context and/or feature-specific parameters.", "type": "object", "properties": { - "annotationProgress": { - "description": "Progress metadata for all videos specified in `AnnotateVideoRequest`.", + "segments": { + "description": "Non-streaming request only. Video segments to annotate. The segments may\noverlap and are not required to be contiguous or span the whole video. If\nunspecified, each video is treated as a single segment.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationProgress" + "$ref": "GoogleCloudVideointelligenceV1beta2_VideoSegment" } + }, + "shotChangeDetectionConfig": { + "$ref": "GoogleCloudVideointelligenceV1beta2_ShotChangeDetectionConfig", + "description": "Config for SHOT_CHANGE_DETECTION." + }, + "labelDetectionConfig": { + "$ref": "GoogleCloudVideointelligenceV1beta2_LabelDetectionConfig", + "description": "Config for LABEL_DETECTION." + }, + "explicitContentDetectionConfig": { + "description": "Config for EXPLICIT_CONTENT_DETECTION.", + "$ref": "GoogleCloudVideointelligenceV1beta2_ExplicitContentDetectionConfig" } }, - "id": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoProgress" + "id": "GoogleCloudVideointelligenceV1beta2_VideoContext" }, - "GoogleCloudVideointelligenceV1p1beta1_VideoSegment": { - "description": "Video segment.", + "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionFrame": { + "description": "Video frame level annotation results for face detection.", "type": "object", "properties": { - "endTimeOffset": { - "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the end of the segment (inclusive).", + "timeOffset": { + "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the video frame for this location.", "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" + "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.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAttribute" + } } }, - "id": "GoogleCloudVideointelligenceV1p1beta1_VideoSegment" + "id": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionFrame" }, - "GoogleCloudVideointelligenceV1_Entity": { - "description": "Detected entity from video analysis.", + "GoogleCloudVideointelligenceV1beta1_LabelAnnotation": { + "description": "Label annotation.", "type": "object", "properties": { "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" + } + }, "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_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" + "id": "GoogleCloudVideointelligenceV1beta1_LabelAnnotation" }, - "GoogleCloudVideointelligenceV1_VideoAnnotationResults": { - "description": "Annotation results for a single video.", + "GoogleCloudVideointelligenceV1_LabelAnnotation": { + "description": "Label annotation.", "type": "object", "properties": { - "explicitAnnotation": { - "$ref": "GoogleCloudVideointelligenceV1_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": "GoogleCloudVideointelligenceV1_LabelAnnotation" - } - }, - "shotAnnotations": { - "description": "Shot annotations. Each shot is represented as a video segment.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1_VideoSegment" - } + "entity": { + "description": "Detected entity.", + "$ref": "GoogleCloudVideointelligenceV1_Entity" }, - "shotLabelAnnotations": { - "description": "Label annotations on shot level.\nThere is exactly one element for each unique label.", + "frames": { + "description": "All video frames where a label was detected.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1_LabelAnnotation" + "$ref": "GoogleCloudVideointelligenceV1_LabelFrame" } }, - "error": { - "description": "Output only. Non-streaming error only. If set, indicates an error. Note\nthat for a single `AnnotateVideoRequest` some videos may succeed and some\nmay fail.", - "$ref": "GoogleRpc_Status" - }, - "frameLabelAnnotations": { - "description": "Label annotations on frame level.\nThere is exactly one element for each unique label.", + "segments": { + "description": "All video segments where a label was detected.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1_LabelAnnotation" - } - }, - "inputUri": { - "description": "Output only. Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", - "type": "string" - } - }, - "id": "GoogleCloudVideointelligenceV1_VideoAnnotationResults" - }, - "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", - "properties": { - "annotationResults": { - "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.", + "$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": "GoogleCloudVideointelligenceV1beta2_VideoAnnotationResults" + "$ref": "GoogleCloudVideointelligenceV1_Entity" } } }, - "id": "GoogleCloudVideointelligenceV1beta2_AnnotateVideoResponse" + "id": "GoogleCloudVideointelligenceV1_LabelAnnotation" }, - "GoogleCloudVideointelligenceV1p1beta1_Entity": { - "description": "Detected entity from video analysis.", + "GoogleCloudVideointelligenceV1_VideoSegment": { + "description": "Video segment.", "type": "object", "properties": { - "description": { - "description": "Textual description, e.g. `Fixed-gear bicycle`.", - "type": "string" - }, - "languageCode": { - "description": "Language code for `description` in BCP-47 format.", + "endTimeOffset": { + "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the end of the segment (inclusive).", + "format": "google-duration", "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/).", + "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": "GoogleCloudVideointelligenceV1p1beta1_Entity" + "id": "GoogleCloudVideointelligenceV1_VideoSegment" }, - "GoogleCloudVideointelligenceV1p1beta1_FaceSegment": { - "description": "Video segment level annotation results for face detection.", + "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.", "type": "object", "properties": { - "segment": { - "description": "Video segment where a face was detected.", - "$ref": "GoogleCloudVideointelligenceV1p1beta1_VideoSegment" + "annotationResults": { + "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationResults" + } } }, - "id": "GoogleCloudVideointelligenceV1p1beta1_FaceSegment" + "id": "GoogleCloudVideointelligenceV1p1beta1_AnnotateVideoResponse" }, - "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.", + "GoogleCloudVideointelligenceV1beta2_AnnotateVideoRequest": { + "description": "Video annotation request.", "type": "object", "properties": { - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" + "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" }, - "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.", + "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" }, - "details": { - "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", + "inputContent": { + "description": "The video data bytes.\nIf unset, the input video(s) should be specified via `input_uri`.\nIf set, `input_uri` should be unset.", + "format": "byte", + "type": "string" + }, + "features": { + "description": "Requested video annotation features.", "type": "array", "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" - } + "enum": [ + "FEATURE_UNSPECIFIED", + "LABEL_DETECTION", + "SHOT_CHANGE_DETECTION", + "EXPLICIT_CONTENT_DETECTION" + ], + "type": "string" + }, + "enumDescriptions": [ + "Unspecified.", + "Label detection. Detect objects, such as dog or flower.", + "Shot change detection.", + "Explicit content detection." + ] + }, + "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).", + "type": "string" + }, + "videoContext": { + "$ref": "GoogleCloudVideointelligenceV1beta2_VideoContext", + "description": "Additional video context and/or feature-specific parameters." } }, - "id": "GoogleRpc_Status" + "id": "GoogleCloudVideointelligenceV1beta2_AnnotateVideoRequest" }, - "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationResults": { + "GoogleCloudVideointelligenceV1beta2_VideoAnnotationResults": { "description": "Annotation results for a single video.", "type": "object", "properties": { - "error": { - "$ref": "GoogleRpc_Status", - "description": "Output only. Non-streaming error only. If set, indicates an error. Note\nthat for a single `AnnotateVideoRequest` some videos may succeed and some\nmay fail." + "shotAnnotations": { + "description": "Shot annotations. Each shot is represented as a video segment.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1beta2_VideoSegment" + } }, - "speechTranscriptions": { - "description": "Speech transcription.", + "shotLabelAnnotations": { + "description": "Label annotations on shot level.\nThere is exactly one element for each unique label.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_SpeechTranscription" + "$ref": "GoogleCloudVideointelligenceV1beta2_LabelAnnotation" } }, + "error": { + "description": "Output only. Non-streaming error only. If set, indicates an error. Note\nthat for a single `AnnotateVideoRequest` some videos may succeed and some\nmay fail.", + "$ref": "GoogleRpc_Status" + }, "frameLabelAnnotations": { "description": "Label annotations on frame level.\nThere is exactly one element for each unique label.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_LabelAnnotation" + "$ref": "GoogleCloudVideointelligenceV1beta2_LabelAnnotation" } }, "inputUri": { @@ -595,102 +749,83 @@ "description": "Label annotations on video level or user specified segment level.\nThere is exactly one element for each unique label.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_LabelAnnotation" + "$ref": "GoogleCloudVideointelligenceV1beta2_LabelAnnotation" } }, "explicitAnnotation": { - "description": "Explicit content annotation.", - "$ref": "GoogleCloudVideointelligenceV1p1beta1_ExplicitContentAnnotation" - }, - "shotAnnotations": { - "description": "Shot annotations. Each shot is represented as a video segment.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_VideoSegment" - } - }, - "shotLabelAnnotations": { - "description": "Label annotations on shot level.\nThere is exactly one element for each unique label.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_LabelAnnotation" - } - }, - "faceDetectionAnnotations": { - "description": "Face detection annotations.", + "$ref": "GoogleCloudVideointelligenceV1beta2_ExplicitContentAnnotation", + "description": "Explicit content annotation." + } + }, + "id": "GoogleCloudVideointelligenceV1beta2_VideoAnnotationResults" + }, + "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.", + "type": "object", + "properties": { + "annotationProgress": { + "description": "Progress metadata for all videos specified in `AnnotateVideoRequest`.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAnnotation" + "$ref": "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationProgress" } } }, - "id": "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationResults" + "id": "GoogleCloudVideointelligenceV1p1beta1_AnnotateVideoProgress" }, - "GoogleCloudVideointelligenceV1_LabelFrame": { - "description": "Video frame level annotation results for label detection.", + "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`.", "type": "object", "properties": { - "confidence": { - "description": "Confidence that the label is accurate. Range: [0, 1].", - "format": "float", - "type": "number" + "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" }, - "timeOffset": { - "description": "Time-offset, relative to the beginning of the video, corresponding to the\nvideo frame for this location.", + "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" - } - }, - "id": "GoogleCloudVideointelligenceV1_LabelFrame" - }, - "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAnnotation": { - "description": "Face detection annotation.", - "type": "object", - "properties": { - "segments": { - "description": "All video segments where a face was detected.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_FaceSegment" - } }, - "frames": { - "description": "All video frames where a face was detected.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionFrame" - } + "word": { + "description": "Output only. The word corresponding to this set of information.", + "type": "string" } }, - "id": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAnnotation" + "id": "GoogleCloudVideointelligenceV1p1beta1_WordInfo" }, - "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationProgress": { - "description": "Annotation progress for a single video.", + "GoogleCloudVideointelligenceV1beta2_LabelDetectionConfig": { + "description": "Config for LABEL_DETECTION.", "type": "object", "properties": { - "progressPercent": { - "description": "Output only. Approximate percentage processed thus far. Guaranteed to be\n100 when fully processed.", - "format": "int32", - "type": "integer" - }, - "updateTime": { - "description": "Output only. Time of the most recent update.", - "format": "google-datetime", + "model": { + "description": "Model to use for label detection.\nSupported values: \"builtin/stable\" (the default if unset) and\n\"builtin/latest\".", "type": "string" }, - "startTime": { - "description": "Output only. Time when the request was received.", - "format": "google-datetime", + "labelDetectionMode": { + "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" + ], + "description": "What labels should be detected with LABEL_DETECTION, in addition to\nvideo-level labels or segment-level labels.\nIf unspecified, defaults to `SHOT_MODE`.", "type": "string" }, - "inputUri": { - "description": "Output only. Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", - "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.\nShould be used with `SHOT_AND_FRAME_MODE` enabled.", + "type": "boolean" } }, - "id": "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationProgress" + "id": "GoogleCloudVideointelligenceV1beta2_LabelDetectionConfig" }, - "GoogleCloudVideointelligenceV1p1beta1_ExplicitContentFrame": { + "GoogleCloudVideointelligenceV1_ExplicitContentFrame": { "description": "Video frame level annotation results for explicit content.", "type": "object", "properties": { @@ -720,60 +855,41 @@ "type": "string" } }, - "id": "GoogleCloudVideointelligenceV1p1beta1_ExplicitContentFrame" - }, - "GoogleCloudVideointelligenceV1p1beta1_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": "GoogleCloudVideointelligenceV1p1beta1_LabelFrame" + "id": "GoogleCloudVideointelligenceV1_ExplicitContentFrame" }, - "GoogleCloudVideointelligenceV1beta1_LabelLocation": { - "description": "Label location.", + "GoogleCloudVideointelligenceV1p1beta1_LabelAnnotation": { + "description": "Label annotation.", "type": "object", "properties": { - "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)." + "segments": { + "description": "All video segments where a label was detected.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_LabelSegment" + } }, - "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." - ], - "enum": [ - "LABEL_LEVEL_UNSPECIFIED", - "VIDEO_LEVEL", - "SEGMENT_LEVEL", - "SHOT_LEVEL", - "FRAME_LEVEL" - ], - "description": "Label level.", - "type": "string" + "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": "GoogleCloudVideointelligenceV1p1beta1_Entity" + } }, - "confidence": { - "description": "Confidence that the label is accurate. Range: [0, 1].", - "format": "float", - "type": "number" + "entity": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_Entity", + "description": "Detected entity." + }, + "frames": { + "description": "All video frames where a label was detected.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_LabelFrame" + } } }, - "id": "GoogleCloudVideointelligenceV1beta1_LabelLocation" + "id": "GoogleCloudVideointelligenceV1p1beta1_LabelAnnotation" }, - "GoogleCloudVideointelligenceV1beta2_ExplicitContentAnnotation": { + "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", "properties": { @@ -781,78 +897,102 @@ "description": "All video frames where explicit content was detected.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1beta2_ExplicitContentFrame" + "$ref": "GoogleCloudVideointelligenceV1_ExplicitContentFrame" } } }, - "id": "GoogleCloudVideointelligenceV1beta2_ExplicitContentAnnotation" + "id": "GoogleCloudVideointelligenceV1_ExplicitContentAnnotation" }, - "GoogleCloudVideointelligenceV1p1beta1_SpeechTranscription": { - "description": "A speech recognition result corresponding to a portion of the audio.", + "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", "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.", + "annotationProgress": { + "description": "Progress metadata for all videos specified in `AnnotateVideoRequest`.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_SpeechRecognitionAlternative" + "$ref": "GoogleCloudVideointelligenceV1beta2_VideoAnnotationProgress" } } }, - "id": "GoogleCloudVideointelligenceV1p1beta1_SpeechTranscription" + "id": "GoogleCloudVideointelligenceV1beta2_AnnotateVideoProgress" }, - "GoogleCloudVideointelligenceV1beta2_LabelFrame": { - "description": "Video frame level annotation results for label detection.", + "GoogleCloudVideointelligenceV1p1beta1_SpeechRecognitionAlternative": { + "description": "Alternative hypotheses (a.k.a. n-best list).", "type": "object", "properties": { "confidence": { - "description": "Confidence that the label is accurate. Range: [0, 1].", + "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" }, - "timeOffset": { - "description": "Time-offset, relative to the beginning of the video, corresponding to the\nvideo frame for this location.", - "format": "google-duration", + "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.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_WordInfo" + } } }, - "id": "GoogleCloudVideointelligenceV1beta2_LabelFrame" + "id": "GoogleCloudVideointelligenceV1p1beta1_SpeechRecognitionAlternative" }, - "GoogleCloudVideointelligenceV1beta2_ShotChangeDetectionConfig": { - "description": "Config for SHOT_CHANGE_DETECTION.", + "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", "properties": { - "model": { - "description": "Model to use for shot change detection.\nSupported values: \"builtin/stable\" (the default if unset) and\n\"builtin/latest\".", - "type": "string" + "annotationProgress": { + "description": "Progress metadata for all videos specified in `AnnotateVideoRequest`.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1_VideoAnnotationProgress" + } } }, - "id": "GoogleCloudVideointelligenceV1beta2_ShotChangeDetectionConfig" + "id": "GoogleCloudVideointelligenceV1_AnnotateVideoProgress" }, - "GoogleCloudVideointelligenceV1p1beta1_LabelSegment": { - "description": "Video segment level annotation results for label detection.", + "GoogleLongrunning_Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", "type": "object", "properties": { - "segment": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_VideoSegment", - "description": "Video segment where a label was detected." + "error": { + "$ref": "GoogleRpc_Status", + "description": "The error result of the operation in case of failure or cancellation." }, - "confidence": { - "description": "Confidence that the label is accurate. Range: [0, 1].", - "format": "float", - "type": "number" + "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": "GoogleCloudVideointelligenceV1p1beta1_LabelSegment" + "id": "GoogleLongrunning_Operation" }, - "GoogleCloudVideointelligenceV1_VideoAnnotationProgress": { + "GoogleCloudVideointelligenceV1beta2_VideoAnnotationProgress": { "description": "Annotation progress for a single video.", "type": "object", "properties": { - "inputUri": { - "description": "Output only. Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", - "type": "string" - }, "progressPercent": { "description": "Output only. Approximate percentage processed thus far. Guaranteed to be\n100 when fully processed.", "format": "int32", @@ -867,330 +1007,257 @@ "description": "Output only. Time when the request was received.", "format": "google-datetime", "type": "string" + }, + "inputUri": { + "description": "Output only. Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", + "type": "string" } }, - "id": "GoogleCloudVideointelligenceV1_VideoAnnotationProgress" + "id": "GoogleCloudVideointelligenceV1beta2_VideoAnnotationProgress" }, - "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.", + "GoogleCloudVideointelligenceV1beta1_VideoAnnotationResults": { + "description": "Annotation results for a single video.", "type": "object", "properties": { - "annotationResults": { - "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.", + "labelAnnotations": { + "description": "Label annotations. There is exactly one element for each unique label.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1_VideoAnnotationResults" + "$ref": "GoogleCloudVideointelligenceV1beta1_LabelAnnotation" + } + }, + "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/).", + "type": "string" + }, + "safeSearchAnnotations": { + "description": "Safe search annotations.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1beta1_SafeSearchAnnotation" } } }, - "id": "GoogleCloudVideointelligenceV1_AnnotateVideoResponse" + "id": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationResults" }, - "GoogleCloudVideointelligenceV1_LabelSegment": { - "description": "Video segment level annotation results for label detection.", + "GoogleCloudVideointelligenceV1beta2_ExplicitContentFrame": { + "description": "Video frame level annotation results for explicit content.", "type": "object", "properties": { - "confidence": { - "description": "Confidence that the label is accurate. Range: [0, 1].", - "format": "float", - "type": "number" + "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..", + "type": "string" }, - "segment": { - "$ref": "GoogleCloudVideointelligenceV1_VideoSegment", - "description": "Video segment where a label was detected." + "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_LabelSegment" + "id": "GoogleCloudVideointelligenceV1beta2_ExplicitContentFrame" }, - "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.", + "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.", "type": "object", "properties": { - "annotationResults": { - "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.", + "frames": { + "description": "All video frames where explicit content was detected.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationResults" + "$ref": "GoogleCloudVideointelligenceV1p1beta1_ExplicitContentFrame" } } }, - "id": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoResponse" + "id": "GoogleCloudVideointelligenceV1p1beta1_ExplicitContentAnnotation" }, - "GoogleCloudVideointelligenceV1beta1_VideoAnnotationProgress": { - "description": "Annotation progress for a single video.", + "GoogleCloudVideointelligenceV1beta2_LabelAnnotation": { + "description": "Label annotation.", "type": "object", "properties": { - "progressPercent": { - "description": "Approximate percentage processed thus far.\nGuaranteed to be 100 when fully processed.", - "format": "int32", - "type": "integer" + "entity": { + "$ref": "GoogleCloudVideointelligenceV1beta2_Entity", + "description": "Detected entity." }, - "updateTime": { - "description": "Time of the most recent update.", - "format": "google-datetime", - "type": "string" + "frames": { + "description": "All video frames where a label was detected.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1beta2_LabelFrame" + } }, - "startTime": { - "description": "Time when the request was received.", - "format": "google-datetime", - "type": "string" + "segments": { + "description": "All video segments where a label was detected.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1beta2_LabelSegment" + } }, - "inputUri": { - "description": "Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", - "type": "string" + "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": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationProgress" + "id": "GoogleCloudVideointelligenceV1beta2_LabelAnnotation" }, - "GoogleCloudVideointelligenceV1p1beta1_NormalizedBoundingBox": { - "description": "Normalized bounding box.\nThe normalized vertex coordinates are relative to the original image.\nRange: [0, 1].", + "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.", "type": "object", "properties": { - "right": { - "description": "Right X coordinate.", - "format": "float", - "type": "number" - }, - "bottom": { - "description": "Bottom Y coordinate.", - "format": "float", - "type": "number" - }, - "top": { - "description": "Top Y coordinate.", - "format": "float", - "type": "number" - }, - "left": { - "description": "Left X coordinate.", - "format": "float", - "type": "number" + "annotationProgress": { + "description": "Progress metadata for all videos specified in `AnnotateVideoRequest`.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1beta1_VideoAnnotationProgress" + } } }, - "id": "GoogleCloudVideointelligenceV1p1beta1_NormalizedBoundingBox" + "id": "GoogleCloudVideointelligenceV1beta1_AnnotateVideoProgress" }, - "GoogleCloudVideointelligenceV1beta1_VideoSegment": { + "GoogleCloudVideointelligenceV1p1beta1_VideoSegment": { "description": "Video segment.", "type": "object", "properties": { "endTimeOffset": { - "description": "End offset in microseconds (inclusive). Unset means 0.", - "format": "int64", + "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": "Start offset in microseconds (inclusive). Unset means 0.", - "format": "int64", + "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the start of the segment (inclusive).", + "format": "google-duration", "type": "string" } }, - "id": "GoogleCloudVideointelligenceV1beta1_VideoSegment" + "id": "GoogleCloudVideointelligenceV1p1beta1_VideoSegment" }, - "GoogleCloudVideointelligenceV1beta2_LabelSegment": { - "description": "Video segment level annotation results for label detection.", + "GoogleCloudVideointelligenceV1_Entity": { + "description": "Detected entity from video analysis.", "type": "object", "properties": { - "segment": { - "description": "Video segment where a label was detected.", - "$ref": "GoogleCloudVideointelligenceV1beta2_VideoSegment" + "description": { + "description": "Textual description, e.g. `Fixed-gear bicycle`.", + "type": "string" }, - "confidence": { - "description": "Confidence that the label is accurate. Range: [0, 1].", - "format": "float", - "type": "number" + "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_LabelSegment" + "id": "GoogleCloudVideointelligenceV1_Entity" }, - "GoogleCloudVideointelligenceV1p1beta1_EmotionAttribute": { - "description": "Emotion attribute.", + "GoogleCloudVideointelligenceV1beta2_VideoSegment": { + "description": "Video segment.", "type": "object", "properties": { - "emotion": { - "enumDescriptions": [ - "Unspecified emotion.", - "Amusement.", - "Anger.", - "Concentration.", - "Contentment.", - "Desire.", - "Disappointment.", - "Disgust.", - "Elation.", - "Embarrassment.", - "Interest.", - "Pride.", - "Sadness.", - "Surprise." - ], - "enum": [ - "EMOTION_UNSPECIFIED", - "AMUSEMENT", - "ANGER", - "CONCENTRATION", - "CONTENTMENT", - "DESIRE", - "DISAPPOINTMENT", - "DISGUST", - "ELATION", - "EMBARRASSMENT", - "INTEREST", - "PRIDE", - "SADNESS", - "SURPRISE" - ], - "description": "Emotion entry.", + "endTimeOffset": { + "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the end of the segment (inclusive).", + "format": "google-duration", "type": "string" }, - "score": { - "description": "Confidence score.", - "format": "float", - "type": "number" + "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": "GoogleCloudVideointelligenceV1p1beta1_EmotionAttribute" + "id": "GoogleCloudVideointelligenceV1beta2_VideoSegment" }, - "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAttribute": { - "description": "Face detection attribute.", + "GoogleCloudVideointelligenceV1_VideoAnnotationResults": { + "description": "Annotation results for a single video.", "type": "object", "properties": { - "emotions": { - "description": "Emotion attributes.", + "shotAnnotations": { + "description": "Shot annotations. Each shot is represented as a video segment.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_EmotionAttribute" + "$ref": "GoogleCloudVideointelligenceV1_VideoSegment" } }, - "normalizedBoundingBox": { - "description": "Normalized Bounding box.", - "$ref": "GoogleCloudVideointelligenceV1p1beta1_NormalizedBoundingBox" - } - }, - "id": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAttribute" - }, - "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": { - "spoof": { - "enumDescriptions": [ - "Unknown likelihood.", - "Very unlikely.", - "Unlikely.", - "Possible.", - "Likely.", - "Very likely." - ], - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Likelihood that an obvious modification was made to the original\nversion to make it appear funny or offensive.", - "type": "string" - }, - "violent": { - "description": "Likelihood of violent content.", - "type": "string", - "enumDescriptions": [ - "Unknown likelihood.", - "Very unlikely.", - "Unlikely.", - "Possible.", - "Likely.", - "Very likely." - ], - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ] - }, - "medical": { - "enumDescriptions": [ - "Unknown likelihood.", - "Very unlikely.", - "Unlikely.", - "Possible.", - "Likely.", - "Very likely." - ], - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "description": "Likelihood of medical content.", - "type": "string" - }, - "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" - ] + "shotLabelAnnotations": { + "description": "Label annotations on shot level.\nThere is exactly one element for each unique label.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1_LabelAnnotation" + } }, - "timeOffset": { - "description": "Video time offset in microseconds.", - "format": "int64", + "error": { + "description": "Output only. Non-streaming error only. If set, indicates an error. Note\nthat for a single `AnnotateVideoRequest` some videos may succeed and some\nmay fail.", + "$ref": "GoogleRpc_Status" + }, + "frameLabelAnnotations": { + "description": "Label annotations on frame level.\nThere is exactly one element for each unique label.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1_LabelAnnotation" + } + }, + "inputUri": { + "description": "Output only. 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" } }, - "id": "GoogleCloudVideointelligenceV1beta1_SafeSearchAnnotation" + "id": "GoogleCloudVideointelligenceV1_VideoAnnotationResults" }, - "GoogleCloudVideointelligenceV1beta2_ExplicitContentDetectionConfig": { - "description": "Config for EXPLICIT_CONTENT_DETECTION.", + "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", "properties": { - "model": { - "description": "Model to use for explicit content detection.\nSupported values: \"builtin/stable\" (the default if unset) and\n\"builtin/latest\".", - "type": "string" + "annotationResults": { + "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1beta2_VideoAnnotationResults" + } } }, - "id": "GoogleCloudVideointelligenceV1beta2_ExplicitContentDetectionConfig" + "id": "GoogleCloudVideointelligenceV1beta2_AnnotateVideoResponse" }, - "GoogleCloudVideointelligenceV1beta2_Entity": { + "GoogleCloudVideointelligenceV1p1beta1_Entity": { "description": "Detected entity from video analysis.", "type": "object", "properties": { @@ -1207,231 +1274,281 @@ "type": "string" } }, - "id": "GoogleCloudVideointelligenceV1beta2_Entity" + "id": "GoogleCloudVideointelligenceV1p1beta1_Entity" }, - "GoogleCloudVideointelligenceV1beta2_VideoContext": { - "description": "Video context and/or feature-specific parameters.", + "GoogleCloudVideointelligenceV1p1beta1_FaceSegment": { + "description": "Video segment level annotation results for face detection.", "type": "object", "properties": { - "segments": { - "description": "Non-streaming request only. Video segments to annotate. The segments may\noverlap and are not required to be contiguous or span the whole video. If\nunspecified, each video is treated as a single segment.", + "segment": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_VideoSegment", + "description": "Video segment where a face was detected." + } + }, + "id": "GoogleCloudVideointelligenceV1p1beta1_FaceSegment" + }, + "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": { - "$ref": "GoogleCloudVideointelligenceV1beta2_VideoSegment" + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" } }, - "shotChangeDetectionConfig": { - "description": "Config for SHOT_CHANGE_DETECTION.", - "$ref": "GoogleCloudVideointelligenceV1beta2_ShotChangeDetectionConfig" - }, - "labelDetectionConfig": { - "$ref": "GoogleCloudVideointelligenceV1beta2_LabelDetectionConfig", - "description": "Config for LABEL_DETECTION." + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" }, - "explicitContentDetectionConfig": { - "description": "Config for EXPLICIT_CONTENT_DETECTION.", - "$ref": "GoogleCloudVideointelligenceV1beta2_ExplicitContentDetectionConfig" + "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_VideoContext" + "id": "GoogleRpc_Status" }, - "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionFrame": { - "description": "Video frame level annotation results for face detection.", + "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationResults": { + "description": "Annotation results for a single video.", "type": "object", "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.", + "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": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAttribute" + "$ref": "GoogleCloudVideointelligenceV1p1beta1_LabelAnnotation" } }, - "timeOffset": { - "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the video frame for this location.", - "format": "google-duration", + "explicitAnnotation": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_ExplicitContentAnnotation", + "description": "Explicit content annotation." + }, + "shotAnnotations": { + "description": "Shot annotations. Each shot is represented as a video segment.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_VideoSegment" + } + }, + "shotLabelAnnotations": { + "description": "Label annotations on shot level.\nThere is exactly one element for each unique label.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_LabelAnnotation" + } + }, + "faceDetectionAnnotations": { + "description": "Face detection annotations.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAnnotation" + } + }, + "error": { + "$ref": "GoogleRpc_Status", + "description": "Output only. Non-streaming error only. If set, indicates an error. Note\nthat for a single `AnnotateVideoRequest` some videos may succeed and some\nmay fail." + }, + "speechTranscriptions": { + "description": "Speech transcription.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_SpeechTranscription" + } + }, + "frameLabelAnnotations": { + "description": "Label annotations on frame level.\nThere is exactly one element for each unique label.", + "type": "array", + "items": { + "$ref": "GoogleCloudVideointelligenceV1p1beta1_LabelAnnotation" + } + }, + "inputUri": { + "description": "Output only. Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", "type": "string" } }, - "id": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionFrame" + "id": "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationResults" }, - "GoogleCloudVideointelligenceV1beta1_LabelAnnotation": { - "description": "Label annotation.", + "GoogleCloudVideointelligenceV1_LabelFrame": { + "description": "Video frame level annotation results for label detection.", "type": "object", "properties": { - "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" - } + "confidence": { + "description": "Confidence that the label is accurate. Range: [0, 1].", + "format": "float", + "type": "number" }, - "languageCode": { - "description": "Language code for `description` in BCP-47 format.", + "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": "GoogleCloudVideointelligenceV1beta1_LabelAnnotation" + "id": "GoogleCloudVideointelligenceV1_LabelFrame" }, - "GoogleCloudVideointelligenceV1_LabelAnnotation": { - "description": "Label annotation.", + "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAnnotation": { + "description": "Face detection annotation.", "type": "object", "properties": { - "segments": { - "description": "All video segments where a label was detected.", + "frames": { + "description": "All video frames where a face was detected.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1_LabelSegment" + "$ref": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionFrame" } }, - "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`.", + "segments": { + "description": "All video segments where a face was detected.", "type": "array", "items": { - "$ref": "GoogleCloudVideointelligenceV1_Entity" + "$ref": "GoogleCloudVideointelligenceV1p1beta1_FaceSegment" } + } + }, + "id": "GoogleCloudVideointelligenceV1p1beta1_FaceDetectionAnnotation" + }, + "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationProgress": { + "description": "Annotation progress for a single video.", + "type": "object", + "properties": { + "progressPercent": { + "description": "Output only. Approximate percentage processed thus far. Guaranteed to be\n100 when fully processed.", + "format": "int32", + "type": "integer" }, - "entity": { - "description": "Detected entity.", - "$ref": "GoogleCloudVideointelligenceV1_Entity" + "updateTime": { + "description": "Output only. Time of the most recent update.", + "format": "google-datetime", + "type": "string" }, - "frames": { - "description": "All video frames where a label was detected.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1_LabelFrame" - } + "startTime": { + "description": "Output only. Time when the request was received.", + "format": "google-datetime", + "type": "string" + }, + "inputUri": { + "description": "Output only. Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", + "type": "string" + } + }, + "id": "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationProgress" + }, + "GoogleCloudVideointelligenceV1p1beta1_ExplicitContentFrame": { + "description": "Video frame level annotation results for explicit content.", + "type": "object", + "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..", + "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" } }, - "id": "GoogleCloudVideointelligenceV1_LabelAnnotation" + "id": "GoogleCloudVideointelligenceV1p1beta1_ExplicitContentFrame" }, - "GoogleCloudVideointelligenceV1_VideoSegment": { - "description": "Video segment.", + "GoogleCloudVideointelligenceV1p1beta1_LabelFrame": { + "description": "Video frame level annotation results for label detection.", "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" + "confidence": { + "description": "Confidence that the label is accurate. Range: [0, 1].", + "format": "float", + "type": "number" }, - "startTimeOffset": { - "description": "Time-offset, relative to the beginning of the video,\ncorresponding to the start of the segment (inclusive).", + "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_VideoSegment" + "id": "GoogleCloudVideointelligenceV1p1beta1_LabelFrame" }, - "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.", + "GoogleCloudVideointelligenceV1p1beta1_SpeechTranscription": { + "description": "A speech recognition result corresponding to a portion of the audio.", "type": "object", "properties": { - "annotationResults": { - "description": "Annotation results for all videos specified in `AnnotateVideoRequest`.", + "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", "items": { - "$ref": "GoogleCloudVideointelligenceV1p1beta1_VideoAnnotationResults" + "$ref": "GoogleCloudVideointelligenceV1p1beta1_SpeechRecognitionAlternative" } } }, - "id": "GoogleCloudVideointelligenceV1p1beta1_AnnotateVideoResponse" + "id": "GoogleCloudVideointelligenceV1p1beta1_SpeechTranscription" }, - "GoogleCloudVideointelligenceV1beta2_AnnotateVideoRequest": { - "description": "Video annotation request.", + "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", "properties": { - "inputContent": { - "description": "The video data bytes.\nIf unset, the input video(s) should be specified via `input_uri`.\nIf set, `input_uri` should be unset.", - "format": "byte", - "type": "string" - }, - "features": { - "enumDescriptions": [ - "Unspecified.", - "Label detection. Detect objects, such as dog or flower.", - "Shot change detection.", - "Explicit content detection." - ], - "description": "Requested video annotation features.", + "frames": { + "description": "All video frames where explicit content was detected.", "type": "array", "items": { - "enum": [ - "FEATURE_UNSPECIFIED", - "LABEL_DETECTION", - "SHOT_CHANGE_DETECTION", - "EXPLICIT_CONTENT_DETECTION" - ], - "type": "string" + "$ref": "GoogleCloudVideointelligenceV1beta2_ExplicitContentFrame" } - }, - "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).", - "type": "string" - }, - "videoContext": { - "$ref": "GoogleCloudVideointelligenceV1beta2_VideoContext", - "description": "Additional video context and/or feature-specific parameters." - }, - "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" } }, - "id": "GoogleCloudVideointelligenceV1beta2_AnnotateVideoRequest" + "id": "GoogleCloudVideointelligenceV1beta2_ExplicitContentAnnotation" }, - "GoogleCloudVideointelligenceV1beta2_VideoAnnotationResults": { - "description": "Annotation results for a single video.", + "GoogleCloudVideointelligenceV1beta1_LabelLocation": { + "description": "Label location.", "type": "object", "properties": { - "shotLabelAnnotations": { - "description": "Label annotations on shot level.\nThere is exactly one element for each unique label.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1beta2_LabelAnnotation" - } - }, - "error": { - "description": "Output only. Non-streaming error only. If set, indicates an error. Note\nthat for a single `AnnotateVideoRequest` some videos may succeed and some\nmay 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": "Output only. Video file location in\n[Google Cloud Storage](https://cloud.google.com/storage/).", + "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." + ], + "enum": [ + "LABEL_LEVEL_UNSPECIFIED", + "VIDEO_LEVEL", + "SEGMENT_LEVEL", + "SHOT_LEVEL", + "FRAME_LEVEL" + ], + "description": "Label level.", "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": "GoogleCloudVideointelligenceV1beta2_LabelAnnotation" - } - }, - "explicitAnnotation": { - "description": "Explicit content annotation.", - "$ref": "GoogleCloudVideointelligenceV1beta2_ExplicitContentAnnotation" + "confidence": { + "description": "Confidence that the label is accurate. Range: [0, 1].", + "format": "float", + "type": "number" }, - "shotAnnotations": { - "description": "Shot annotations. Each shot is represented as a video segment.", - "type": "array", - "items": { - "$ref": "GoogleCloudVideointelligenceV1beta2_VideoSegment" - } + "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)." } }, - "id": "GoogleCloudVideointelligenceV1beta2_VideoAnnotationResults" + "id": "GoogleCloudVideointelligenceV1beta1_LabelLocation" } }, "protocol": "rest", @@ -1451,122 +1568,5 @@ }, "rootUrl": "https://videointelligence.googleapis.com/", "ownerDomain": "google.com", - "name": "videointelligence", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Cloud Video Intelligence API", - "ownerName": "Google", - "resources": { - "videos": { - "methods": { - "annotate": { - "response": { - "$ref": "GoogleLongrunning_Operation" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1beta2/videos:annotate", - "path": "v1beta2/videos:annotate", - "id": "videointelligence.videos.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": "GoogleCloudVideointelligenceV1beta2_AnnotateVideoRequest" - } - } - } - } - }, - "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": { - "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" - }, - "$.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": { - "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" - } - }, - "version": "v1beta2" + "name": "videointelligence" } diff --git a/DiscoveryJson/vision_v1.json b/DiscoveryJson/vision_v1.json index 40e0cf6bec..349c693248 100644 --- a/DiscoveryJson/vision_v1.json +++ b/DiscoveryJson/vision_v1.json @@ -1,541 +1,1101 @@ { "schemas": { - "AnnotateImageRequest": { - "description": "Request for performing Google Cloud Vision API tasks over a user-provided\nimage, with user-requested features.", + "GoogleCloudVisionV1p2beta1LocationInfo": { + "description": "Detected entity location information.", "type": "object", "properties": { - "image": { - "description": "The image to be processed.", - "$ref": "Image" - }, - "features": { - "description": "Requested features.", - "type": "array", - "items": { - "$ref": "Feature" - } - }, - "imageContext": { - "description": "Additional context that may accompany the image.", - "$ref": "ImageContext" + "latLng": { + "$ref": "LatLng", + "description": "lat/long location coordinates." } }, - "id": "AnnotateImageRequest" + "id": "GoogleCloudVisionV1p2beta1LocationInfo" }, - "Symbol": { - "description": "A single symbol representation.", + "GoogleCloudVisionV1p2beta1CropHintsAnnotation": { + "description": "Set of crop hints that are used to generate new crops when serving images.", "type": "object", "properties": { - "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)." - }, - "confidence": { - "description": "Confidence of the OCR results for the symbol. Range [0, 1].", - "format": "float", - "type": "number" - }, - "text": { - "description": "The actual UTF-8 representation of the symbol.", - "type": "string" + "cropHints": { + "description": "Crop hint results.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1CropHint" + } } }, - "id": "Symbol" + "id": "GoogleCloudVisionV1p2beta1CropHintsAnnotation" }, - "LatLongRect": { - "description": "Rectangle determined by min and max `LatLng` pairs.", + "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": { - "maxLatLng": { - "description": "Max lat/long pair.", - "$ref": "LatLng" - }, - "minLatLng": { - "$ref": "LatLng", - "description": "Min lat/long pair." - } - }, - "id": "LatLongRect" + "properties": {}, + "id": "Empty" }, - "GoogleCloudVisionV1p2beta1GcsDestination": { - "description": "The Google Cloud Storage location where the output will be written to.", + "Block": { + "description": "Logical element on the page.", "type": "object", "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" - } - }, - "id": "GoogleCloudVisionV1p2beta1GcsDestination" - }, - "GoogleCloudVisionV1p2beta1OperationMetadata": { - "properties": { - "createTime": { - "description": "The time when the batch request was received.", - "format": "google-datetime", - "type": "string" + "property": { + "$ref": "TextProperty", + "description": "Additional information detected for the block." }, - "state": { + "blockType": { "enumDescriptions": [ - "Invalid.", - "Request is received.", - "Request is actively being processed.", - "The batch processing is done.", - "The batch processing was cancelled." + "Unknown block type.", + "Regular text block.", + "Table block.", + "Image block.", + "Horizontal/vertical line box.", + "Barcode block." ], "enum": [ - "STATE_UNSPECIFIED", - "CREATED", - "RUNNING", - "DONE", - "CANCELLED" + "UNKNOWN", + "TEXT", + "TABLE", + "PICTURE", + "RULER", + "BARCODE" ], - "description": "Current state of the batch operation.", - "type": "string" - }, - "updateTime": { - "description": "The time when the operation result was last updated.", - "format": "google-datetime", + "description": "Detected block type (text, image etc) for this block.", "type": "string" - } - }, - "id": "GoogleCloudVisionV1p2beta1OperationMetadata", - "description": "Contains metadata for the BatchAnnotateImages operation.", - "type": "object" - }, - "GoogleCloudVisionV1p2beta1OutputConfig": { - "description": "The desired output location and metadata.", - "type": "object", - "properties": { - "gcsDestination": { - "description": "The Google Cloud Storage location to write the output(s) to.", - "$ref": "GoogleCloudVisionV1p2beta1GcsDestination" - }, - "batchSize": { - "description": "The max number of response protos to put into each output JSON file on\nGoogle Cloud Storage.\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" - } - }, - "id": "GoogleCloudVisionV1p2beta1OutputConfig" - }, - "GoogleCloudVisionV1p2beta1Word": { - "description": "A word representation.", - "type": "object", - "properties": { - "property": { - "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty", - "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": "GoogleCloudVisionV1p2beta1BoundingPoly" + "$ref": "BoundingPoly", + "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 word. Range [0, 1].", + "description": "Confidence of the OCR results on the block. 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.", + "paragraphs": { + "description": "List of paragraphs in this block (if this blocks is of type text).", "type": "array", "items": { - "$ref": "GoogleCloudVisionV1p2beta1Symbol" + "$ref": "Paragraph" } } }, - "id": "GoogleCloudVisionV1p2beta1Word" - }, - "GoogleCloudVisionV1p2beta1WebDetectionWebLabel": { - "description": "Label to provide extra metadata for the web detection.", - "type": "object", - "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" - } - }, - "id": "GoogleCloudVisionV1p2beta1WebDetectionWebLabel" - }, - "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" + "id": "Block" }, - "GoogleCloudVisionV1p2beta1Page": { - "description": "Detected page from OCR.", + "GoogleCloudVisionV1p2beta1FaceAnnotation": { + "description": "A face annotation object contains the results of face detection.", "type": "object", "properties": { - "width": { - "description": "Page width. For PDFs the unit is points. For images (including\nTIFFs) the unit is pixels.", - "format": "int32", - "type": "integer" + "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." + ] }, - "blocks": { - "description": "List of blocks of text, images etc on this page.", + "landmarks": { + "description": "Detected face landmarks.", "type": "array", "items": { - "$ref": "GoogleCloudVisionV1p2beta1Block" + "$ref": "GoogleCloudVisionV1p2beta1FaceAnnotationLandmark" } }, - "property": { - "description": "Additional information detected on the page.", - "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty" - }, - "confidence": { - "description": "Confidence of the OCR results on the page. Range [0, 1].", - "format": "float", - "type": "number" + "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" + ] }, - "height": { - "description": "Page height. For PDFs the unit is points. For images (including\nTIFFs) the unit is pixels.", - "format": "int32", - "type": "integer" - } - }, - "id": "GoogleCloudVisionV1p2beta1Page" - }, - "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty": { - "description": "Additional information detected on the structural component.", - "type": "object", - "properties": { - "detectedLanguages": { - "description": "A list of detected languages together with confidence.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationDetectedLanguage" - } + "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." + ] }, - "detectedBreak": { - "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationDetectedBreak", - "description": "Detected start or end of a text segment." - } - }, - "id": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty" - }, - "Color": { - "properties": { - "red": { - "description": "The amount of red in the color as a value in the interval [0, 1].", + "landmarkingConfidence": { + "description": "Face landmarking confidence. Range [0, 1].", "format": "float", "type": "number" }, - "green": { - "description": "The amount of green in the color as a value in the interval [0, 1].", + "detectionConfidence": { + "description": "Detection confidence. Range [0, 1].", "format": "float", "type": "number" }, - "blue": { - "description": "The amount of blue in the color as a value in the interval [0, 1].", + "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" }, - "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" - } - }, - "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" - }, - "GoogleCloudVisionV1p2beta1Symbol": { - "description": "A single symbol representation.", - "type": "object", - "properties": { - "property": { - "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty", - "description": "Additional information detected for the symbol." + "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" + ] }, - "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).", + "blurredLikelihood": { + "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": "Blurred likelihood.", + "type": "string" + }, + "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": { + "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.", "$ref": "GoogleCloudVisionV1p2beta1BoundingPoly" }, - "confidence": { - "description": "Confidence of the OCR results for the symbol. Range [0, 1].", + "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" }, - "text": { - "description": "The actual UTF-8 representation of the symbol.", - "type": "string" - } - }, - "id": "GoogleCloudVisionV1p2beta1Symbol" - }, - "ImageProperties": { - "properties": { - "dominantColors": { - "$ref": "DominantColorsAnnotation", - "description": "If present, dominant colors completed successfully." - } - }, - "id": "ImageProperties", - "description": "Stores image properties, such as dominant colors.", - "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", - "properties": { - "type": { + "sorrowLikelihood": { "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." + "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": [ - "TYPE_UNSPECIFIED", - "FACE_DETECTION", - "LANDMARK_DETECTION", - "LOGO_DETECTION", - "LABEL_DETECTION", - "TEXT_DETECTION", - "DOCUMENT_TEXT_DETECTION", - "SAFE_SEARCH_DETECTION", - "IMAGE_PROPERTIES", - "CROP_HINTS", - "WEB_DETECTION" + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" ], - "description": "The feature type.", - "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" - }, - "model": { - "description": "Model to use for the feature.\nSupported values: \"builtin/stable\" (the default if unset) and\n\"builtin/latest\".", - "type": "string" - } - }, - "id": "Feature" - }, - "DetectedLanguage": { - "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.", + "description": "Sorrow likelihood.", "type": "string" }, - "confidence": { - "description": "Confidence of detected language. Range [0, 1].", + "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": "GoogleCloudVisionV1p2beta1BoundingPoly" } }, - "id": "DetectedLanguage", - "description": "Detected language for a structural component.", - "type": "object" + "id": "GoogleCloudVisionV1p2beta1FaceAnnotation" }, - "WebEntity": { - "description": "Entity deduced from similar images on the Internet.", + "GoogleCloudVisionV1p2beta1NormalizedVertex": { + "description": "A vertex represents a 2D point in the image.\nNOTE: the normalized vertex coordinates are relative to the original image\nand range from 0 to 1.", "type": "object", "properties": { - "entityId": { - "description": "Opaque entity ID.", - "type": "string" - }, - "description": { - "description": "Canonical description of the entity, in English.", - "type": "string" + "y": { + "description": "Y coordinate.", + "format": "float", + "type": "number" }, - "score": { - "description": "Overall relevancy score for the entity.\nNot normalized and not comparable across different image queries.", + "x": { + "description": "X coordinate.", "format": "float", "type": "number" } }, - "id": "WebEntity" - }, - "GoogleCloudVisionV1p2beta1DominantColorsAnnotation": { - "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": "GoogleCloudVisionV1p2beta1ColorInfo" - } - } - }, - "id": "GoogleCloudVisionV1p2beta1DominantColorsAnnotation" + "id": "GoogleCloudVisionV1p2beta1NormalizedVertex" }, - "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.", - "type": "object", + "GoogleCloudVisionV1p2beta1FaceAnnotationLandmark": { "properties": { - "pages": { - "description": "List of pages detected by OCR.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p2beta1Page" - } - }, - "text": { - "description": "UTF-8 text detected on the pages.", + "position": { + "$ref": "GoogleCloudVisionV1p2beta1Position", + "description": "Face landmark position." + }, + "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" + ], + "description": "Face landmark type.", + "type": "string", + "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." + ] + } + }, + "id": "GoogleCloudVisionV1p2beta1FaceAnnotationLandmark", + "description": "A face-specific landmark (for example, a face feature).", + "type": "object" + }, + "GoogleCloudVisionV1p2beta1WebDetectionWebImage": { + "description": "Metadata for online images.", + "type": "object", + "properties": { + "score": { + "description": "(Deprecated) Overall relevancy score for the image.", + "format": "float", + "type": "number" + }, + "url": { + "description": "The result image URL.", "type": "string" } }, - "id": "GoogleCloudVisionV1p2beta1TextAnnotation" + "id": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" }, - "AnnotateImageResponse": { - "description": "Response to an image annotation request.", + "ImageSource": { + "description": "External image source (Google Cloud Storage or web URL image location).", "type": "object", "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" + "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" }, - "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": "TextAnnotation" + "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": "ImageSource" + }, + "Property": { + "description": "A `Property` consists of a user-supplied name/value pair.", + "type": "object", + "properties": { + "uint64Value": { + "description": "Value of numeric properties.", + "format": "uint64", + "type": "string" }, - "landmarkAnnotations": { - "description": "If present, landmark detection has completed successfully.", + "name": { + "description": "Name of the property.", + "type": "string" + }, + "value": { + "description": "Value of the property.", + "type": "string" + } + }, + "id": "Property" + }, + "WebDetection": { + "description": "Relevant information for the image from the Internet.", + "type": "object", + "properties": { + "visuallySimilarImages": { + "description": "The visually similar image results.", "type": "array", "items": { - "$ref": "EntityAnnotation" + "$ref": "WebImage" } }, - "textAnnotations": { - "description": "If present, text (OCR) detection has completed successfully.", + "bestGuessLabels": { + "description": "Best guess text labels for the request image.", "type": "array", "items": { - "$ref": "EntityAnnotation" + "$ref": "WebLabel" } }, - "imagePropertiesAnnotation": { - "description": "If present, image properties were extracted successfully.", - "$ref": "ImageProperties" + "fullMatchingImages": { + "description": "Fully matching images from the Internet.\nCan include resized copies of the query image.", + "type": "array", + "items": { + "$ref": "WebImage" + } }, - "faceAnnotations": { - "description": "If present, face detection has completed successfully.", + "webEntities": { + "description": "Deduced entities from similar images on the Internet.", "type": "array", "items": { - "$ref": "FaceAnnotation" + "$ref": "WebEntity" } }, - "logoAnnotations": { - "description": "If present, logo detection has completed successfully.", + "pagesWithMatchingImages": { + "description": "Web pages containing the matching images from the Internet.", "type": "array", "items": { - "$ref": "EntityAnnotation" + "$ref": "WebPage" } }, - "cropHintsAnnotation": { - "$ref": "CropHintsAnnotation", - "description": "If present, crop hints have completed successfully." + "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" + } + } + }, + "id": "WebDetection" + }, + "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": { + "y": { + "description": "Y coordinate.", + "format": "float", + "type": "number" }, - "webDetection": { - "description": "If present, web detection has completed successfully.", - "$ref": "WebDetection" + "x": { + "description": "X coordinate.", + "format": "float", + "type": "number" }, - "labelAnnotations": { - "description": "If present, label detection has completed successfully.", + "z": { + "description": "Z coordinate (or depth).", + "format": "float", + "type": "number" + } + }, + "id": "Position" + }, + "GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse": { + "description": "The response for a single offline file annotation request.", + "type": "object", + "properties": { + "outputConfig": { + "$ref": "GoogleCloudVisionV1p2beta1OutputConfig", + "description": "The output location and metadata from AsyncAnnotateFileRequest." + } + }, + "id": "GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse" + }, + "ColorInfo": { + "properties": { + "pixelFraction": { + "description": "The fraction of pixels the color occupies in the image.\nValue in range [0, 1].", + "format": "float", + "type": "number" + }, + "color": { + "description": "RGB components of the color.", + "$ref": "Color" + }, + "score": { + "description": "Image-specific score for this color. Value in range [0, 1].", + "format": "float", + "type": "number" + } + }, + "id": "ColorInfo", + "description": "Color information consists of RGB channels, score, and the fraction of\nthe image that the color occupies in the image.", + "type": "object" + }, + "Landmark": { + "description": "A face-specific landmark (for example, a face feature).", + "type": "object", + "properties": { + "position": { + "description": "Face landmark position.", + "$ref": "Position" + }, + "type": { + "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." + ], + "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" + ], + "description": "Face landmark type.", + "type": "string" + } + }, + "id": "Landmark" + }, + "Word": { + "description": "A word representation.", + "type": "object", + "properties": { + "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" + }, + "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": "Symbol" + } + }, + "property": { + "$ref": "TextProperty", + "description": "Additional information detected for the word." + } + }, + "id": "Word" + }, + "GoogleCloudVisionV1p2beta1ColorInfo": { + "description": "Color information consists of RGB channels, score, and the fraction of\nthe image that the color occupies in the image.", + "type": "object", + "properties": { + "score": { + "description": "Image-specific score for this color. Value in range [0, 1].", + "format": "float", + "type": "number" + }, + "pixelFraction": { + "description": "The fraction of pixels the color occupies in the image.\nValue in range [0, 1].", + "format": "float", + "type": "number" + }, + "color": { + "description": "RGB components of the color.", + "$ref": "Color" + } + }, + "id": "GoogleCloudVisionV1p2beta1ColorInfo" + }, + "GoogleCloudVisionV1p2beta1AnnotateImageResponse": { + "description": "Response to an image annotation request.", + "type": "object", + "properties": { + "safeSearchAnnotation": { + "$ref": "GoogleCloudVisionV1p2beta1SafeSearchAnnotation", + "description": "If present, safe-search annotation has completed successfully." + }, + "landmarkAnnotations": { + "description": "If present, landmark detection has completed successfully.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1EntityAnnotation" + } + }, + "faceAnnotations": { + "description": "If present, face detection has completed successfully.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1FaceAnnotation" + } + }, + "cropHintsAnnotation": { + "$ref": "GoogleCloudVisionV1p2beta1CropHintsAnnotation", + "description": "If present, crop hints have completed successfully." + }, + "labelAnnotations": { + "description": "If present, label detection has completed successfully.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1EntityAnnotation" + } + }, + "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": "GoogleCloudVisionV1p2beta1TextAnnotation" + }, + "textAnnotations": { + "description": "If present, text (OCR) detection has completed successfully.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1EntityAnnotation" + } + }, + "imagePropertiesAnnotation": { + "description": "If present, image properties were extracted successfully.", + "$ref": "GoogleCloudVisionV1p2beta1ImageProperties" + }, + "context": { + "$ref": "GoogleCloudVisionV1p2beta1ImageAnnotationContext", + "description": "If present, contextual information is needed to understand where this image\ncomes from." + }, + "logoAnnotations": { + "description": "If present, logo detection has completed successfully.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1EntityAnnotation" + } + }, + "webDetection": { + "$ref": "GoogleCloudVisionV1p2beta1WebDetection", + "description": "If present, web detection has completed successfully." + } + }, + "id": "GoogleCloudVisionV1p2beta1AnnotateImageResponse" + }, + "GoogleCloudVisionV1p2beta1ImageProperties": { + "description": "Stores image properties, such as dominant colors.", + "type": "object", + "properties": { + "dominantColors": { + "$ref": "GoogleCloudVisionV1p2beta1DominantColorsAnnotation", + "description": "If present, dominant colors completed successfully." + } + }, + "id": "GoogleCloudVisionV1p2beta1ImageProperties" + }, + "GoogleCloudVisionV1p2beta1Property": { + "description": "A `Property` consists of a user-supplied name/value pair.", + "type": "object", + "properties": { + "uint64Value": { + "description": "Value of numeric properties.", + "format": "uint64", + "type": "string" + }, + "name": { + "description": "Name of the property.", + "type": "string" + }, + "value": { + "description": "Value of the property.", + "type": "string" + } + }, + "id": "GoogleCloudVisionV1p2beta1Property" + }, + "BatchAnnotateImagesRequest": { + "properties": { + "requests": { + "description": "Individual image annotation requests for this batch.", + "type": "array", + "items": { + "$ref": "AnnotateImageRequest" + } + } + }, + "id": "BatchAnnotateImagesRequest", + "description": "Multiple image annotation requests are batched into a single service call.", + "type": "object" + }, + "DetectedBreak": { + "description": "Detected start or end of a structural component.", + "type": "object", + "properties": { + "type": { + "description": "Detected break type.", + "type": "string", + "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" + ] + }, + "isPrefix": { + "description": "True if break prepends the element.", + "type": "boolean" + } + }, + "id": "DetectedBreak" + }, + "GoogleCloudVisionV1p2beta1SafeSearchAnnotation": { + "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": { + "violence": { + "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." + ], + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ] + }, + "adult": { + "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": "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" + }, + "spoof": { + "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": "Spoof likelihood. The likelihood that an modification\nwas made to the image's canonical version to make it appear\nfunny or offensive.", + "type": "string" + }, + "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" + ] + } + }, + "id": "GoogleCloudVisionV1p2beta1SafeSearchAnnotation" + }, + "CancelOperationRequest": { + "description": "The request message for Operations.CancelOperation.", + "type": "object", + "properties": {}, + "id": "CancelOperationRequest" + }, + "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" + } + }, + "webDetectionParams": { + "$ref": "WebDetectionParams", + "description": "Parameters for web detection." + }, + "latLongRect": { + "$ref": "LatLongRect", + "description": "Not used." + }, + "cropHintsParams": { + "description": "Parameters for crop hints annotation request.", + "$ref": "CropHintsParams" + } + }, + "id": "ImageContext", + "description": "Image context and/or feature-specific parameters.", + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a\nnetwork 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\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" + }, + "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" + } + }, + "id": "Operation" + }, + "GoogleCloudVisionV1p2beta1InputConfig": { + "description": "The desired input location and metadata.", + "type": "object", + "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" + } + }, + "id": "GoogleCloudVisionV1p2beta1InputConfig" + }, + "Page": { + "description": "Detected page from OCR.", + "type": "object", + "properties": { + "width": { + "description": "Page width. For PDFs the unit is points. For images (including\nTIFFs) the unit is pixels.", + "format": "int32", + "type": "integer" + }, + "blocks": { + "description": "List of blocks of text, images etc on this page.", "type": "array", "items": { - "$ref": "EntityAnnotation" + "$ref": "Block" } }, - "safeSearchAnnotation": { - "description": "If present, safe-search annotation has completed successfully.", - "$ref": "SafeSearchAnnotation" + "property": { + "description": "Additional information detected on the page.", + "$ref": "TextProperty" + }, + "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" } }, - "id": "AnnotateImageResponse" + "id": "Page" }, - "GoogleCloudVisionV1p2beta1WebDetection": { - "description": "Relevant information for the image from the Internet.", + "GoogleCloudVisionV1p2beta1Paragraph": { + "description": "Structural unit of text representing a number of words in certain order.", "type": "object", "properties": { - "visuallySimilarImages": { - "description": "The visually similar image results.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" - } + "property": { + "description": "Additional information detected for the paragraph.", + "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty" }, - "bestGuessLabels": { - "description": "Best guess text labels for the request image.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebLabel" - } + "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)." }, - "fullMatchingImages": { - "description": "Fully matching images from the Internet.\nCan include resized copies of the query image.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" - } + "confidence": { + "description": "Confidence of the OCR results for the paragraph. Range [0, 1].", + "format": "float", + "type": "number" }, - "webEntities": { - "description": "Deduced entities from similar images on the Internet.", + "words": { + "description": "List of words in this paragraph.", "type": "array", "items": { - "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebEntity" + "$ref": "GoogleCloudVisionV1p2beta1Word" } - }, - "pagesWithMatchingImages": { - "description": "Web pages containing the matching images from the Internet.", + } + }, + "id": "GoogleCloudVisionV1p2beta1Paragraph" + }, + "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": { - "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebPage" + "type": "object", + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + } } }, - "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": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" - } + "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": "GoogleCloudVisionV1p2beta1WebDetection" + "id": "Status" }, - "GoogleCloudVisionV1p2beta1LocationInfo": { + "WebDetectionParams": { + "description": "Parameters for web detection request.", + "type": "object", "properties": { - "latLng": { - "description": "lat/long location coordinates.", - "$ref": "LatLng" + "includeGeoResults": { + "description": "Whether to include results derived from the geo information in the image.", + "type": "boolean" } }, - "id": "GoogleCloudVisionV1p2beta1LocationInfo", - "description": "Detected entity location information.", - "type": "object" + "id": "WebDetectionParams" }, - "GoogleCloudVisionV1p2beta1CropHintsAnnotation": { + "CropHintsAnnotation": { "description": "Set of crop hints that are used to generate new crops when serving images.", "type": "object", "properties": { @@ -543,201 +1103,101 @@ "description": "Crop hint results.", "type": "array", "items": { - "$ref": "GoogleCloudVisionV1p2beta1CropHint" + "$ref": "CropHint" } } }, - "id": "GoogleCloudVisionV1p2beta1CropHintsAnnotation" - }, - "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" + "id": "CropHintsAnnotation" }, - "Block": { + "ListOperationsResponse": { "properties": { - "boundingBox": { - "$ref": "BoundingPoly", - "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" + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" }, - "paragraphs": { - "description": "List of paragraphs in this block (if this blocks is of type text).", + "operations": { + "description": "A list of operations that matches the specified filter in the request.", "type": "array", "items": { - "$ref": "Paragraph" + "$ref": "Operation" } - }, - "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" } }, - "id": "Block", - "description": "Logical element on the page.", + "id": "ListOperationsResponse", + "description": "The response message for Operations.ListOperations.", "type": "object" }, - "GoogleCloudVisionV1p2beta1FaceAnnotationLandmark": { - "description": "A face-specific landmark (for example, a face feature).", - "type": "object", - "properties": { - "position": { - "$ref": "GoogleCloudVisionV1p2beta1Position", - "description": "Face landmark position." - }, - "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" - ], - "description": "Face landmark type.", - "type": "string", - "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." - ] - } - }, - "id": "GoogleCloudVisionV1p2beta1FaceAnnotationLandmark" - }, - "GoogleCloudVisionV1p2beta1NormalizedVertex": { - "properties": { - "y": { - "description": "Y coordinate.", - "format": "float", - "type": "number" + "GoogleCloudVisionV1p2beta1BoundingPoly": { + "description": "A bounding polygon for the detected image annotation.", + "type": "object", + "properties": { + "normalizedVertices": { + "description": "The bounding polygon normalized vertices.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1NormalizedVertex" + } }, - "x": { - "description": "X coordinate.", - "format": "float", - "type": "number" + "vertices": { + "description": "The bounding polygon vertices.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1Vertex" + } } }, - "id": "GoogleCloudVisionV1p2beta1NormalizedVertex", - "description": "A vertex represents a 2D point in the image.\nNOTE: the normalized vertex coordinates are relative to the original image\nand range from 0 to 1.", - "type": "object" + "id": "GoogleCloudVisionV1p2beta1BoundingPoly" }, - "GoogleCloudVisionV1p2beta1FaceAnnotation": { + "GoogleCloudVisionV1p2beta1TextAnnotationDetectedBreak": { + "description": "Detected start or end of a structural component.", + "type": "object", "properties": { - "surpriseLikelihood": { + "isPrefix": { + "description": "True if break prepends the element.", + "type": "boolean" + }, + "type": { "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." + "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", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" + "SPACE", + "SURE_SPACE", + "EOL_SURE_SPACE", + "HYPHEN", + "LINE_BREAK" ], - "description": "Surprise likelihood.", + "description": "Detected break type.", + "type": "string" + } + }, + "id": "GoogleCloudVisionV1p2beta1TextAnnotationDetectedBreak" + }, + "GoogleCloudVisionV1p2beta1ImageAnnotationContext": { + "description": "If an image was produced from a file (e.g. a PDF), this message gives\ninformation about the source of that image.", + "type": "object", + "properties": { + "uri": { + "description": "The URI of the file used to produce the image.", "type": "string" }, - "landmarks": { - "description": "Detected face landmarks.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p2beta1FaceAnnotationLandmark" - } - }, - "angerLikelihood": { + "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" + } + }, + "id": "GoogleCloudVisionV1p2beta1ImageAnnotationContext" + }, + "SafeSearchAnnotation": { + "properties": { + "medical": { "enumDescriptions": [ "Unknown likelihood.", "It is very unlikely that the image belongs to the specified vertical.", @@ -754,10 +1214,10 @@ "LIKELY", "VERY_LIKELY" ], - "description": "Anger likelihood.", + "description": "Likelihood that this is a medical image.", "type": "string" }, - "joyLikelihood": { + "racy": { "enum": [ "UNKNOWN", "VERY_UNLIKELY", @@ -766,34 +1226,7 @@ "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": { - "description": "Detection confidence. Range [0, 1].", - "format": "float", - "type": "number" - }, - "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": { - "description": "Under-exposed likelihood.", + "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.", @@ -802,17 +1235,9 @@ "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" ] }, - "blurredLikelihood": { + "violence": { "enum": [ "UNKNOWN", "VERY_UNLIKELY", @@ -821,7 +1246,7 @@ "LIKELY", "VERY_LIKELY" ], - "description": "Blurred likelihood.", + "description": "Likelihood that this image contains violent content.", "type": "string", "enumDescriptions": [ "Unknown likelihood.", @@ -832,7 +1257,7 @@ "It is very likely that the image belongs to the specified vertical." ] }, - "headwearLikelihood": { + "adult": { "enumDescriptions": [ "Unknown likelihood.", "It is very unlikely that the image belongs to the specified vertical.", @@ -849,19 +1274,10 @@ "LIKELY", "VERY_LIKELY" ], - "description": "Headwear likelihood.", + "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" }, - "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.", - "$ref": "GoogleCloudVisionV1p2beta1BoundingPoly" - }, - "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": { + "spoof": { "enumDescriptions": [ "Unknown likelihood.", "It is very unlikely that the image belongs to the specified vertical.", @@ -878,124 +1294,17 @@ "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" - }, - "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": "GoogleCloudVisionV1p2beta1BoundingPoly" - } - }, - "id": "GoogleCloudVisionV1p2beta1FaceAnnotation", - "description": "A face annotation object contains the results of face detection.", - "type": "object" - }, - "WebDetection": { - "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": "WebLabel" - } - }, - "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" - }, - "GoogleCloudVisionV1p2beta1WebDetectionWebImage": { - "description": "Metadata for online images.", - "type": "object", - "properties": { - "score": { - "description": "(Deprecated) Overall relevancy score for the image.", - "format": "float", - "type": "number" - }, - "url": { - "description": "The result image URL.", - "type": "string" - } - }, - "id": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" - }, - "ImageSource": { - "description": "External image source (Google Cloud Storage or web URL image location).", - "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": "ImageSource" - }, - "Property": { - "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.", + "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" } }, - "id": "Property", - "description": "A `Property` consists of a user-supplied name/value pair.", + "id": "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" }, - "Position": { + "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.", + "type": "object", "properties": { "y": { "description": "Y coordinate.", @@ -1013,759 +1322,557 @@ "type": "number" } }, - "id": "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" + "id": "GoogleCloudVisionV1p2beta1Position" }, - "ColorInfo": { - "description": "Color information consists of RGB channels, score, and the fraction of\nthe image that the color occupies in the image.", + "DominantColorsAnnotation": { + "description": "Set of dominant colors and their corresponding scores.", "type": "object", "properties": { - "score": { - "description": "Image-specific score for this color. Value in range [0, 1].", - "format": "float", - "type": "number" - }, - "pixelFraction": { - "description": "The fraction of pixels the color occupies in the image.\nValue in range [0, 1].", - "format": "float", - "type": "number" - }, - "color": { - "description": "RGB components of the color.", - "$ref": "Color" + "colors": { + "description": "RGB color values with their score and pixel fraction.", + "type": "array", + "items": { + "$ref": "ColorInfo" + } } }, - "id": "ColorInfo" + "id": "DominantColorsAnnotation" }, - "GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse": { - "description": "The response for a single offline file annotation request.", + "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": { - "outputConfig": { - "$ref": "GoogleCloudVisionV1p2beta1OutputConfig", - "description": "The output location and metadata from AsyncAnnotateFileRequest." + "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": "GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse" + "id": "TextAnnotation" }, - "Landmark": { - "description": "A face-specific landmark (for example, a face feature).", + "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": { - "position": { - "$ref": "Position", - "description": "Face landmark position." + "y": { + "description": "Y coordinate.", + "format": "int32", + "type": "integer" }, - "type": { - "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." - ], - "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" - ], - "description": "Face landmark type.", - "type": "string" + "x": { + "description": "X coordinate.", + "format": "int32", + "type": "integer" } }, - "id": "Landmark" + "id": "Vertex" }, - "Word": { - "description": "A word representation.", + "WebLabel": { + "description": "Label to provide extra metadata for the web detection.", "type": "object", "properties": { - "symbols": { - "description": "List of symbols in the word.\nThe order of the symbols follows the natural reading order.", - "type": "array", - "items": { - "$ref": "Symbol" - } - }, - "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" + "label": { + "description": "Label for extra metadata.", + "type": "string" }, - "confidence": { - "description": "Confidence of the OCR results for the word. Range [0, 1].", - "format": "float", - "type": "number" + "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": "Word" + "id": "WebLabel" }, - "GoogleCloudVisionV1p2beta1ColorInfo": { - "description": "Color information consists of RGB channels, score, and the fraction of\nthe image that the color occupies in the image.", + "GoogleCloudVisionV1p2beta1WebDetectionWebEntity": { + "description": "Entity deduced from similar images on the Internet.", "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." + "description": { + "description": "Canonical description of the entity, in English.", + "type": "string" }, "score": { - "description": "Image-specific score for this color. Value in range [0, 1].", + "description": "Overall relevancy score for the entity.\nNot normalized and not comparable across different image queries.", "format": "float", "type": "number" + }, + "entityId": { + "description": "Opaque entity ID.", + "type": "string" } }, - "id": "GoogleCloudVisionV1p2beta1ColorInfo" + "id": "GoogleCloudVisionV1p2beta1WebDetectionWebEntity" }, - "GoogleCloudVisionV1p2beta1AnnotateImageResponse": { + "TextProperty": { + "description": "Additional information detected on the structural component.", + "type": "object", "properties": { - "landmarkAnnotations": { - "description": "If present, landmark detection has completed successfully.", + "detectedBreak": { + "$ref": "DetectedBreak", + "description": "Detected start or end of a text segment." + }, + "detectedLanguages": { + "description": "A list of detected languages together with confidence.", "type": "array", "items": { - "$ref": "GoogleCloudVisionV1p2beta1EntityAnnotation" + "$ref": "DetectedLanguage" } - }, - "faceAnnotations": { - "description": "If present, face detection has completed successfully.", + } + }, + "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": "GoogleCloudVisionV1p2beta1FaceAnnotation" + "$ref": "Vertex" } - }, - "cropHintsAnnotation": { - "description": "If present, crop hints have completed successfully.", - "$ref": "GoogleCloudVisionV1p2beta1CropHintsAnnotation" - }, - "labelAnnotations": { - "description": "If present, label detection has completed successfully.", + } + }, + "id": "BoundingPoly" + }, + "GoogleCloudVisionV1p2beta1GcsSource": { + "description": "The Google Cloud Storage location where the input will be read from.", + "type": "object", + "properties": { + "uri": { + "description": "Google Cloud Storage URI for the input file. This must only be a\nGoogle Cloud Storage object. Wildcards are not currently supported.", + "type": "string" + } + }, + "id": "GoogleCloudVisionV1p2beta1GcsSource" + }, + "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": { - "$ref": "GoogleCloudVisionV1p2beta1EntityAnnotation" + "format": "float", + "type": "number" } + } + }, + "id": "CropHintsParams" + }, + "GoogleCloudVisionV1p2beta1EntityAnnotation": { + "description": "Set of detected entity features.", + "type": "object", + "properties": { + "description": { + "description": "Entity textual description, expressed in its `locale` language.", + "type": "string" }, - "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": "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." + "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" }, - "textAnnotations": { - "description": "If present, text (OCR) detection has completed successfully.", + "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": "GoogleCloudVisionV1p2beta1EntityAnnotation" + "$ref": "GoogleCloudVisionV1p2beta1Property" } }, - "imagePropertiesAnnotation": { - "$ref": "GoogleCloudVisionV1p2beta1ImageProperties", - "description": "If present, image properties were extracted successfully." + "score": { + "description": "Overall score of the result. Range [0, 1].", + "format": "float", + "type": "number" }, - "logoAnnotations": { - "description": "If present, logo detection has completed successfully.", + "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": "GoogleCloudVisionV1p2beta1EntityAnnotation" + "$ref": "GoogleCloudVisionV1p2beta1LocationInfo" } }, - "context": { - "description": "If present, contextual information is needed to understand where this image\ncomes from.", - "$ref": "GoogleCloudVisionV1p2beta1ImageAnnotationContext" - }, - "webDetection": { - "$ref": "GoogleCloudVisionV1p2beta1WebDetection", - "description": "If present, web detection has completed successfully." - }, - "safeSearchAnnotation": { - "$ref": "GoogleCloudVisionV1p2beta1SafeSearchAnnotation", - "description": "If present, safe-search annotation has completed successfully." - } - }, - "id": "GoogleCloudVisionV1p2beta1AnnotateImageResponse", - "description": "Response to an image annotation request.", - "type": "object" - }, - "GoogleCloudVisionV1p2beta1Property": { - "description": "A `Property` consists of a user-supplied name/value pair.", - "type": "object", - "properties": { - "uint64Value": { - "description": "Value of numeric properties.", - "format": "uint64", + "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" }, - "name": { - "description": "Name of the property.", - "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" }, - "value": { - "description": "Value of the property.", + "locale": { + "description": "The language code for the locale in which the entity textual\n`description` is expressed.", "type": "string" + }, + "boundingPoly": { + "$ref": "GoogleCloudVisionV1p2beta1BoundingPoly", + "description": "Image region to which this entity belongs. Not produced\nfor `LABEL_DETECTION` features." } }, - "id": "GoogleCloudVisionV1p2beta1Property" - }, - "GoogleCloudVisionV1p2beta1ImageProperties": { - "description": "Stores image properties, such as dominant colors.", - "type": "object", - "properties": { - "dominantColors": { - "$ref": "GoogleCloudVisionV1p2beta1DominantColorsAnnotation", - "description": "If present, dominant colors completed successfully." - } - }, - "id": "GoogleCloudVisionV1p2beta1ImageProperties" + "id": "GoogleCloudVisionV1p2beta1EntityAnnotation" }, - "BatchAnnotateImagesRequest": { + "GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesResponse": { "properties": { - "requests": { - "description": "Individual image annotation requests for this batch.", + "responses": { + "description": "The list of file annotation responses, one for each request in\nAsyncBatchAnnotateFilesRequest.", "type": "array", "items": { - "$ref": "AnnotateImageRequest" + "$ref": "GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse" } } }, - "id": "BatchAnnotateImagesRequest", - "description": "Multiple image annotation requests are batched into a single service call.", + "id": "GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesResponse", + "description": "Response to an async batch file annotation request.", "type": "object" }, - "DetectedBreak": { - "description": "Detected start or end of a structural component.", + "LocationInfo": { + "description": "Detected entity location information.", "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" + "latLng": { + "description": "lat/long location coordinates.", + "$ref": "LatLng" } }, - "id": "DetectedBreak" + "id": "LocationInfo" }, - "GoogleCloudVisionV1p2beta1SafeSearchAnnotation": { - "description": "Set of features pertaining to the image, computed by computer vision\nmethods over safe-search verticals (for example, adult, spoof, medical,\nviolence).", + "BatchAnnotateImagesResponse": { + "description": "Response to a batch image annotation request.", "type": "object", "properties": { - "spoof": { - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ], - "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." - ] - }, - "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" - ] - }, - "racy": { - "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 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" - }, - "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": { - "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": "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" + "responses": { + "description": "Individual responses to image annotation requests within the batch.", + "type": "array", + "items": { + "$ref": "AnnotateImageResponse" + } } }, - "id": "GoogleCloudVisionV1p2beta1SafeSearchAnnotation" - }, - "CancelOperationRequest": { - "description": "The request message for Operations.CancelOperation.", - "type": "object", - "properties": {}, - "id": "CancelOperationRequest" + "id": "BatchAnnotateImagesResponse" }, - "ImageContext": { + "WebPage": { "properties": { - "latLongRect": { - "description": "Not used.", - "$ref": "LatLongRect" + "score": { + "description": "(Deprecated) Overall relevancy score for the web page.", + "format": "float", + "type": "number" + }, + "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": "WebImage" + } }, - "cropHintsParams": { - "description": "Parameters for crop hints annotation request.", - "$ref": "CropHintsParams" + "url": { + "description": "The result web page URL.", + "type": "string" }, - "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).", + "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": { - "type": "string" + "$ref": "WebImage" } - }, - "webDetectionParams": { - "description": "Parameters for web detection.", - "$ref": "WebDetectionParams" } }, - "id": "ImageContext", - "description": "Image context and/or feature-specific parameters.", + "id": "WebPage", + "description": "Metadata for web pages.", "type": "object" }, - "Operation": { - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", + "EntityAnnotation": { + "description": "Set of detected entity features.", "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`.", + "description": { + "description": "Entity textual description, expressed in its `locale` language.", "type": "string" }, - "error": { - "$ref": "Status", - "description": "The error result of the operation in case of failure or cancellation." + "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" }, - "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" + "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" } - } - }, - "id": "Operation" - }, - "GoogleCloudVisionV1p2beta1InputConfig": { - "properties": { - "mimeType": { - "description": "The type of the file. Currently only \"application/pdf\" and \"image/tiff\"\nare supported. Wildcards are not supported.", - "type": "string" }, - "gcsSource": { - "description": "The Google Cloud Storage location to read the input from.", - "$ref": "GoogleCloudVisionV1p2beta1GcsSource" - } - }, - "id": "GoogleCloudVisionV1p2beta1InputConfig", - "description": "The desired input location and metadata.", - "type": "object" - }, - "Page": { - "description": "Detected page from OCR.", - "type": "object", - "properties": { - "width": { - "description": "Page width. For PDFs the unit is points. For images (including\nTIFFs) the unit is pixels.", - "format": "int32", - "type": "integer" + "score": { + "description": "Overall score of the result. Range [0, 1].", + "format": "float", + "type": "number" }, - "blocks": { - "description": "List of blocks of text, images etc on this page.", + "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": "Block" + "$ref": "LocationInfo" } }, - "property": { - "description": "Additional information detected on the page.", - "$ref": "TextProperty" + "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": "Confidence of the OCR results on the page. Range [0, 1].", + "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" }, - "height": { - "description": "Page height. For PDFs the unit is points. For images (including\nTIFFs) the unit is pixels.", - "format": "int32", - "type": "integer" + "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." } }, - "id": "Page" + "id": "EntityAnnotation" }, - "GoogleCloudVisionV1p2beta1Paragraph": { + "GoogleCloudVisionV1p2beta1AnnotateFileResponse": { + "description": "Response to a single file annotation request. A file may contain one or more\nimages, which individually have their own responses.", + "type": "object", "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": "GoogleCloudVisionV1p2beta1BoundingPoly" - }, - "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.", + "responses": { + "description": "Individual responses to images found within the file.", "type": "array", "items": { - "$ref": "GoogleCloudVisionV1p2beta1Word" + "$ref": "GoogleCloudVisionV1p2beta1AnnotateImageResponse" } }, - "property": { - "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty", - "description": "Additional information detected for the paragraph." + "inputConfig": { + "$ref": "GoogleCloudVisionV1p2beta1InputConfig", + "description": "Information about the file for which this response is generated." } }, - "id": "GoogleCloudVisionV1p2beta1Paragraph", - "description": "Structural unit of text representing a number of words in certain order.", - "type": "object" + "id": "GoogleCloudVisionV1p2beta1AnnotateFileResponse" }, - "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.", + "GoogleCloudVisionV1p2beta1TextAnnotationDetectedLanguage": { + "description": "Detected language for a structural component.", "type": "object", "properties": { - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" + "confidence": { + "description": "Confidence of detected language. Range [0, 1].", + "format": "float", + "type": "number" }, - "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": "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" - }, - "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" + "id": "GoogleCloudVisionV1p2beta1TextAnnotationDetectedLanguage" }, - "WebDetectionParams": { - "description": "Parameters for web detection request.", + "CropHint": { + "description": "Single crop hint that is used to generate a new crop when serving an image.", "type": "object", "properties": { - "includeGeoResults": { - "description": "Whether to include results derived from the geo information in the image.", - "type": "boolean" + "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": "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`." } }, - "id": "WebDetectionParams" + "id": "CropHint" }, - "CropHintsAnnotation": { - "description": "Set of crop hints that are used to generate new crops when serving images.", + "WebImage": { + "properties": { + "score": { + "description": "(Deprecated) Overall relevancy score for the image.", + "format": "float", + "type": "number" + }, + "url": { + "description": "The result image URL.", + "type": "string" + } + }, + "id": "WebImage", + "description": "Metadata for online images.", + "type": "object" + }, + "GoogleCloudVisionV1p2beta1WebDetectionWebPage": { + "description": "Metadata for web pages.", "type": "object", "properties": { - "cropHints": { - "description": "Crop hint results.", + "score": { + "description": "(Deprecated) Overall relevancy score for the web page.", + "format": "float", + "type": "number" + }, + "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": "CropHint" + "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" + } + }, + "url": { + "description": "The result web page URL.", + "type": "string" + }, + "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": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" } } }, - "id": "CropHintsAnnotation" + "id": "GoogleCloudVisionV1p2beta1WebDetectionWebPage" }, - "GoogleCloudVisionV1p2beta1BoundingPoly": { - "description": "A bounding polygon for the detected image annotation.", + "GoogleCloudVisionV1p2beta1Block": { + "description": "Logical element on the page.", "type": "object", "properties": { - "normalizedVertices": { - "description": "The bounding polygon normalized vertices.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p2beta1NormalizedVertex" - } + "property": { + "description": "Additional information detected for the block.", + "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty" + }, + "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" }, - "vertices": { - "description": "The bounding polygon vertices.", + "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": "GoogleCloudVisionV1p2beta1BoundingPoly" + }, + "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": "GoogleCloudVisionV1p2beta1Vertex" + "$ref": "GoogleCloudVisionV1p2beta1Paragraph" } } }, - "id": "GoogleCloudVisionV1p2beta1BoundingPoly" + "id": "GoogleCloudVisionV1p2beta1Block" }, - "ListOperationsResponse": { - "description": "The response message for Operations.ListOperations.", - "type": "object", + "Paragraph": { "properties": { - "nextPageToken": { - "description": "The standard List next-page token.", - "type": "string" + "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)." }, - "operations": { - "description": "A list of operations that matches the specified filter in the request.", + "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": "Operation" + "$ref": "Word" } - } - }, - "id": "ListOperationsResponse" - }, - "GoogleCloudVisionV1p2beta1TextAnnotationDetectedBreak": { - "description": "Detected start or end of a structural component.", - "type": "object", - "properties": { - "isPrefix": { - "description": "True if break prepends the element.", - "type": "boolean" }, - "type": { - "enum": [ - "UNKNOWN", - "SPACE", - "SURE_SPACE", - "EOL_SURE_SPACE", - "HYPHEN", - "LINE_BREAK" - ], - "description": "Detected break type.", - "type": "string", - "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." - ] + "property": { + "description": "Additional information detected for the paragraph.", + "$ref": "TextProperty" } }, - "id": "GoogleCloudVisionV1p2beta1TextAnnotationDetectedBreak" + "id": "Paragraph", + "description": "Structural unit of text representing a number of words in certain order.", + "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.", + "Image": { + "description": "Client image to perform Google Cloud Vision API tasks over.", "type": "object", "properties": { - "uri": { - "description": "The URI of the file used to produce the image.", + "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" }, - "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" + "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": "GoogleCloudVisionV1p2beta1ImageAnnotationContext" + "id": "Image" }, - "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.", - "type": "object", + "GoogleCloudVisionV1p2beta1CropHint": { "properties": { - "y": { - "description": "Y coordinate.", + "confidence": { + "description": "Confidence of this being a salient region. Range [0, 1].", "format": "float", "type": "number" }, - "x": { - "description": "X coordinate.", + "importanceFraction": { + "description": "Fraction of importance of this salient region with respect to the original\nimage.", "format": "float", "type": "number" }, - "z": { - "description": "Z coordinate (or depth).", - "format": "float", - "type": "number" + "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`." } }, - "id": "GoogleCloudVisionV1p2beta1Position" + "id": "GoogleCloudVisionV1p2beta1CropHint", + "description": "Single crop hint that is used to generate a new crop when serving an image.", + "type": "object" }, - "SafeSearchAnnotation": { + "FaceAnnotation": { + "description": "A face annotation object contains the results of face detection.", + "type": "object", "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.", - "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" - ] + "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.", + "$ref": "BoundingPoly" }, - "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", + "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.", @@ -1781,9 +1888,20 @@ "POSSIBLE", "LIKELY", "VERY_LIKELY" - ] + ], + "description": "Sorrow likelihood.", + "type": "string" }, - "medical": { + "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": { + "$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." + }, + "angerLikelihood": { "enum": [ "UNKNOWN", "VERY_UNLIKELY", @@ -1792,7 +1910,7 @@ "LIKELY", "VERY_LIKELY" ], - "description": "Likelihood that this is a medical image.", + "description": "Anger likelihood.", "type": "string", "enumDescriptions": [ "Unknown likelihood.", @@ -1803,7 +1921,14 @@ "It is very likely that the image belongs to the specified vertical." ] }, - "racy": { + "landmarks": { + "description": "Detected face landmarks.", + "type": "array", + "items": { + "$ref": "Landmark" + } + }, + "surpriseLikelihood": { "enum": [ "UNKNOWN", "VERY_UNLIKELY", @@ -1812,7 +1937,7 @@ "LIKELY", "VERY_LIKELY" ], - "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.", + "description": "Surprise likelihood.", "type": "string", "enumDescriptions": [ "Unknown likelihood.", @@ -1823,7 +1948,12 @@ "It is very likely that the image belongs to the specified vertical." ] }, - "violence": { + "landmarkingConfidence": { + "description": "Face landmarking confidence. Range [0, 1].", + "format": "float", + "type": "number" + }, + "joyLikelihood": { "enumDescriptions": [ "Unknown likelihood.", "It is very unlikely that the image belongs to the specified vertical.", @@ -1840,47 +1970,83 @@ "LIKELY", "VERY_LIKELY" ], - "description": "Likelihood that this image contains violent content.", + "description": "Joy likelihood.", "type": "string" - } - }, - "id": "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" - }, - "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.", + "underExposedLikelihood": { + "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": "Under-exposed likelihood.", + "type": "string" + }, + "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" + }, + "detectionConfidence": { + "description": "Detection confidence. Range [0, 1].", + "format": "float", + "type": "number" + }, + "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" + ] + }, + "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" } }, - "id": "TextAnnotation" + "id": "FaceAnnotation" }, - "Vertex": { + "GoogleCloudVisionV1p2beta1Vertex": { "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": { @@ -1895,704 +2061,538 @@ "type": "integer" } }, - "id": "Vertex" + "id": "GoogleCloudVisionV1p2beta1Vertex" }, - "WebLabel": { - "description": "Label to provide extra metadata for the web detection.", - "type": "object", + "AnnotateImageRequest": { "properties": { - "label": { - "description": "Label for extra metadata.", - "type": "string" + "image": { + "description": "The image to be processed.", + "$ref": "Image" }, - "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" + "features": { + "description": "Requested features.", + "type": "array", + "items": { + "$ref": "Feature" + } + }, + "imageContext": { + "$ref": "ImageContext", + "description": "Additional context that may accompany the image." } }, - "id": "WebLabel" + "id": "AnnotateImageRequest", + "description": "Request for performing Google Cloud Vision API tasks over a user-provided\nimage, with user-requested features.", + "type": "object" }, - "GoogleCloudVisionV1p2beta1WebDetectionWebEntity": { - "description": "Entity deduced from similar images on the Internet.", + "Symbol": { + "description": "A single symbol representation.", "type": "object", "properties": { - "entityId": { - "description": "Opaque entity ID.", - "type": "string" + "property": { + "description": "Additional information detected for the symbol.", + "$ref": "TextProperty" }, - "description": { - "description": "Canonical description of the entity, in English.", - "type": "string" + "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)." }, - "score": { - "description": "Overall relevancy score for the entity.\nNot normalized and not comparable across different image queries.", + "confidence": { + "description": "Confidence of the OCR results for the symbol. Range [0, 1].", "format": "float", "type": "number" + }, + "text": { + "description": "The actual UTF-8 representation of the symbol.", + "type": "string" } }, - "id": "GoogleCloudVisionV1p2beta1WebDetectionWebEntity" - }, - "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" + "id": "Symbol" }, - "TextProperty": { - "description": "Additional information detected on the structural component.", + "LatLongRect": { + "description": "Rectangle determined by min and max `LatLng` pairs.", "type": "object", "properties": { - "detectedLanguages": { - "description": "A list of detected languages together with confidence.", - "type": "array", - "items": { - "$ref": "DetectedLanguage" - } + "maxLatLng": { + "$ref": "LatLng", + "description": "Max lat/long pair." }, - "detectedBreak": { - "description": "Detected start or end of a text segment.", - "$ref": "DetectedBreak" + "minLatLng": { + "description": "Min lat/long pair.", + "$ref": "LatLng" } }, - "id": "TextProperty" + "id": "LatLongRect" }, - "GoogleCloudVisionV1p2beta1GcsSource": { + "GoogleCloudVisionV1p2beta1GcsDestination": { "properties": { "uri": { - "description": "Google Cloud Storage URI for the input file. This must only be a\nGoogle Cloud Storage object. Wildcards are not currently supported.", + "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" } }, - "id": "GoogleCloudVisionV1p2beta1GcsSource", - "description": "The Google Cloud Storage location where the input will be read from.", + "id": "GoogleCloudVisionV1p2beta1GcsDestination", + "description": "The Google Cloud Storage location where the output will be written to.", "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" - }, - "GoogleCloudVisionV1p2beta1EntityAnnotation": { - "description": "Set of detected entity features.", - "type": "object", + "GoogleCloudVisionV1p2beta1OperationMetadata": { "properties": { - "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": "GoogleCloudVisionV1p2beta1LocationInfo" - } - }, - "mid": { - "description": "Opaque entity ID. Some IDs may be available in\n[Google Knowledge Graph Search\nAPI](https://developers.google.com/knowledge-graph/).", + "createTime": { + "description": "The time when the batch request was received.", + "format": "google-datetime", "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.", + "state": { + "enumDescriptions": [ + "Invalid.", + "Request is received.", + "Request is actively being processed.", + "The batch processing is done.", + "The batch processing was cancelled." + ], + "enum": [ + "STATE_UNSPECIFIED", + "CREATED", + "RUNNING", + "DONE", + "CANCELLED" + ], + "description": "Current state of the batch operation.", "type": "string" }, - "boundingPoly": { - "$ref": "GoogleCloudVisionV1p2beta1BoundingPoly", - "description": "Image region to which this entity belongs. Not produced\nfor `LABEL_DETECTION` features." - }, - "description": { - "description": "Entity textual description, expressed in its `locale` language.", + "updateTime": { + "description": "The time when the operation result was last updated.", + "format": "google-datetime", "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": "GoogleCloudVisionV1p2beta1Property" - } - } - }, - "id": "GoogleCloudVisionV1p2beta1EntityAnnotation" - }, - "GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesResponse": { - "description": "Response to an async batch file annotation request.", - "type": "object", - "properties": { - "responses": { - "description": "The list of file annotation responses, one for each request in\nAsyncBatchAnnotateFilesRequest.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse" - } - } - }, - "id": "GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesResponse" - }, - "LocationInfo": { - "description": "Detected entity location information.", - "type": "object", - "properties": { - "latLng": { - "$ref": "LatLng", - "description": "lat/long location coordinates." } }, - "id": "LocationInfo" + "id": "GoogleCloudVisionV1p2beta1OperationMetadata", + "description": "Contains metadata for the BatchAnnotateImages operation.", + "type": "object" }, - "BatchAnnotateImagesResponse": { - "description": "Response to a batch image annotation request.", + "GoogleCloudVisionV1p2beta1OutputConfig": { + "description": "The desired output location and metadata.", "type": "object", "properties": { - "responses": { - "description": "Individual responses to image annotation requests within the batch.", - "type": "array", - "items": { - "$ref": "AnnotateImageResponse" - } + "gcsDestination": { + "$ref": "GoogleCloudVisionV1p2beta1GcsDestination", + "description": "The Google Cloud Storage location to write the output(s) to." + }, + "batchSize": { + "description": "The max number of response protos to put into each output JSON file on\nGoogle Cloud Storage.\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" } }, - "id": "BatchAnnotateImagesResponse" - }, - "WebPage": { - "description": "Metadata for web pages.", + "id": "GoogleCloudVisionV1p2beta1OutputConfig" + }, + "GoogleCloudVisionV1p2beta1Word": { + "description": "A word representation.", "type": "object", "properties": { - "score": { - "description": "(Deprecated) Overall relevancy score for the web page.", + "property": { + "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty", + "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": "GoogleCloudVisionV1p2beta1BoundingPoly" + }, + "confidence": { + "description": "Confidence of the OCR results for the word. Range [0, 1].", "format": "float", "type": "number" }, - "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.", + "symbols": { + "description": "List of symbols in the word.\nThe order of the symbols follows the natural reading order.", "type": "array", "items": { - "$ref": "WebImage" + "$ref": "GoogleCloudVisionV1p2beta1Symbol" } - }, - "url": { - "description": "The result web page URL.", + } + }, + "id": "GoogleCloudVisionV1p2beta1Word" + }, + "GoogleCloudVisionV1p2beta1WebDetectionWebLabel": { + "description": "Label to provide extra metadata for the web detection.", + "type": "object", + "properties": { + "label": { + "description": "Label for extra metadata.", "type": "string" }, - "pageTitle": { - "description": "Title for the web page, may contain HTML markups.", + "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" - }, - "fullMatchingImages": { - "description": "Fully matching images on the page.\nCan include resized copies of the query image.", - "type": "array", - "items": { - "$ref": "WebImage" - } } }, - "id": "WebPage" + "id": "GoogleCloudVisionV1p2beta1WebDetectionWebLabel" }, - "EntityAnnotation": { - "description": "Set of detected entity features.", + "GoogleCloudVisionV1p2beta1Page": { + "description": "Detected page from OCR.", "type": "object", "properties": { - "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" - } - }, - "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" + "property": { + "description": "Additional information detected on the page.", + "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty" }, "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].", + "description": "Confidence of the OCR results on the page. Range [0, 1].", "format": "float", "type": "number" }, - "boundingPoly": { - "description": "Image region to which this entity belongs. Not produced\nfor `LABEL_DETECTION` features.", - "$ref": "BoundingPoly" - }, - "locale": { - "description": "The language code for the locale in which the entity textual\n`description` is expressed.", - "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" + "height": { + "description": "Page height. For PDFs the unit is points. For images (including\nTIFFs) the unit is pixels.", + "format": "int32", + "type": "integer" }, - "description": { - "description": "Entity textual description, expressed in its `locale` language.", - "type": "string" + "width": { + "description": "Page width. For PDFs the unit is points. For images (including\nTIFFs) the unit is pixels.", + "format": "int32", + "type": "integer" }, - "properties": { - "description": "Some entities may have optional user-supplied `Property` (name/value)\nfields, such a score or string that qualifies the entity.", + "blocks": { + "description": "List of blocks of text, images etc on this page.", "type": "array", "items": { - "$ref": "Property" + "$ref": "GoogleCloudVisionV1p2beta1Block" } } }, - "id": "EntityAnnotation" + "id": "GoogleCloudVisionV1p2beta1Page" }, - "GoogleCloudVisionV1p2beta1AnnotateFileResponse": { + "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty": { + "description": "Additional information detected on the structural component.", + "type": "object", "properties": { - "inputConfig": { - "description": "Information about the file for which this response is generated.", - "$ref": "GoogleCloudVisionV1p2beta1InputConfig" - }, - "responses": { - "description": "Individual responses to images found within the file.", + "detectedLanguages": { + "description": "A list of detected languages together with confidence.", "type": "array", "items": { - "$ref": "GoogleCloudVisionV1p2beta1AnnotateImageResponse" + "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationDetectedLanguage" } + }, + "detectedBreak": { + "description": "Detected start or end of a text segment.", + "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationDetectedBreak" } }, - "id": "GoogleCloudVisionV1p2beta1AnnotateFileResponse", - "description": "Response to a single file annotation request. A file may contain one or more\nimages, which individually have their own responses.", - "type": "object" + "id": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty" }, - "GoogleCloudVisionV1p2beta1TextAnnotationDetectedLanguage": { - "description": "Detected language for a structural component.", + "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": { - "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" + "longitude": { + "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].", + "format": "double", + "type": "number" }, - "confidence": { - "description": "Confidence of detected language. Range [0, 1].", - "format": "float", + "latitude": { + "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].", + "format": "double", "type": "number" } }, - "id": "GoogleCloudVisionV1p2beta1TextAnnotationDetectedLanguage" + "id": "LatLng" }, - "CropHint": { - "description": "Single crop hint that is used to generate a new crop when serving an image.", + "GoogleCloudVisionV1p2beta1Symbol": { + "description": "A single symbol representation.", "type": "object", "properties": { - "confidence": { - "description": "Confidence of this being a salient region. Range [0, 1].", - "format": "float", - "type": "number" + "property": { + "description": "Additional information detected for the symbol.", + "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty" }, - "importanceFraction": { - "description": "Fraction of importance of this salient region with respect to the original\nimage.", + "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": "GoogleCloudVisionV1p2beta1BoundingPoly" + }, + "confidence": { + "description": "Confidence of the OCR results for the symbol. Range [0, 1].", "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" + "text": { + "description": "The actual UTF-8 representation of the symbol.", + "type": "string" } }, - "id": "CropHint" + "id": "GoogleCloudVisionV1p2beta1Symbol" }, - "WebImage": { - "description": "Metadata for online images.", + "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", "properties": { - "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" }, - "url": { - "description": "The result image URL.", - "type": "string" + "green": { + "description": "The amount of green in the color as a value in the interval [0, 1].", + "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" + }, + "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" } }, - "id": "WebImage" + "id": "Color" }, - "GoogleCloudVisionV1p2beta1WebDetectionWebPage": { - "description": "Metadata for web pages.", + "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", "properties": { - "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": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" - } - }, - "score": { - "description": "(Deprecated) Overall relevancy score for the web page.", - "format": "float", - "type": "number" + "type": { + "description": "The feature type.", + "type": "string", + "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." + ], + "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" + ] }, - "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": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" - } + "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" }, - "url": { - "description": "The result web page URL.", + "model": { + "description": "Model to use for the feature.\nSupported values: \"builtin/stable\" (the default if unset) and\n\"builtin/latest\".", "type": "string" } }, - "id": "GoogleCloudVisionV1p2beta1WebDetectionWebPage" + "id": "Feature" + }, + "ImageProperties": { + "description": "Stores image properties, such as dominant colors.", + "type": "object", + "properties": { + "dominantColors": { + "$ref": "DominantColorsAnnotation", + "description": "If present, dominant colors completed successfully." + } + }, + "id": "ImageProperties" }, - "GoogleCloudVisionV1p2beta1Block": { + "DetectedLanguage": { "properties": { - "property": { - "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty", - "description": "Additional information detected for the block." - }, - "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": { - "$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)." + "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 the OCR results on the block. Range [0, 1].", + "description": "Confidence of detected language. 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": "GoogleCloudVisionV1p2beta1Paragraph" - } } }, - "id": "GoogleCloudVisionV1p2beta1Block", - "description": "Logical element on the page.", + "id": "DetectedLanguage", + "description": "Detected language for a structural component.", "type": "object" }, - "Paragraph": { - "description": "Structural unit of text representing a number of words in certain order.", - "type": "object", + "WebEntity": { "properties": { - "property": { - "description": "Additional information detected for the paragraph.", - "$ref": "TextProperty" - }, - "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" + "description": { + "description": "Canonical description of the entity, in English.", + "type": "string" }, - "confidence": { - "description": "Confidence of the OCR results for the paragraph. Range [0, 1].", + "score": { + "description": "Overall relevancy score for the entity.\nNot normalized and not comparable across different image queries.", "format": "float", "type": "number" }, - "words": { - "description": "List of words in this paragraph.", - "type": "array", - "items": { - "$ref": "Word" - } + "entityId": { + "description": "Opaque entity ID.", + "type": "string" } }, - "id": "Paragraph" + "id": "WebEntity", + "description": "Entity deduced from similar images on the Internet.", + "type": "object" }, - "Image": { - "description": "Client image to perform Google Cloud Vision API tasks over.", + "GoogleCloudVisionV1p2beta1DominantColorsAnnotation": { + "description": "Set of dominant colors and their corresponding scores.", "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": "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." + "colors": { + "description": "RGB color values with their score and pixel fraction.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1ColorInfo" + } } }, - "id": "Image" + "id": "GoogleCloudVisionV1p2beta1DominantColorsAnnotation" }, - "GoogleCloudVisionV1p2beta1CropHint": { - "description": "Single crop hint that is used to generate a new crop when serving an image.", + "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.", "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" + "pages": { + "description": "List of pages detected by OCR.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1Page" + } }, - "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`." + "text": { + "description": "UTF-8 text detected on the pages.", + "type": "string" } }, - "id": "GoogleCloudVisionV1p2beta1CropHint" + "id": "GoogleCloudVisionV1p2beta1TextAnnotation" }, - "FaceAnnotation": { - "description": "A face annotation object contains the results of face detection.", - "type": "object", + "AnnotateImageResponse": { "properties": { - "surpriseLikelihood": { - "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": "Surprise likelihood.", - "type": "string" - }, - "landmarks": { - "description": "Detected face landmarks.", + "labelAnnotations": { + "description": "If present, label detection has completed successfully.", "type": "array", "items": { - "$ref": "Landmark" + "$ref": "EntityAnnotation" } }, - "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" - }, - "joyLikelihood": { - "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": "Joy likelihood.", - "type": "string" - }, - "landmarkingConfidence": { - "description": "Face landmarking confidence. Range [0, 1].", - "format": "float", - "type": "number" - }, - "detectionConfidence": { - "description": "Detection confidence. Range [0, 1].", - "format": "float", - "type": "number" + "safeSearchAnnotation": { + "description": "If present, safe-search annotation has completed successfully.", + "$ref": "SafeSearchAnnotation" }, - "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" + "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." }, - "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" - ] + "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": "TextAnnotation" }, - "blurredLikelihood": { - "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": "Blurred likelihood.", - "type": "string" + "landmarkAnnotations": { + "description": "If present, landmark detection has completed successfully.", + "type": "array", + "items": { + "$ref": "EntityAnnotation" + } }, - "headwearLikelihood": { - "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." - ], - "enum": [ - "UNKNOWN", - "VERY_UNLIKELY", - "UNLIKELY", - "POSSIBLE", - "LIKELY", - "VERY_LIKELY" - ] + "textAnnotations": { + "description": "If present, text (OCR) detection has completed successfully.", + "type": "array", + "items": { + "$ref": "EntityAnnotation" + } }, - "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." + "imagePropertiesAnnotation": { + "description": "If present, image properties were extracted successfully.", + "$ref": "ImageProperties" }, - "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" + "faceAnnotations": { + "description": "If present, face detection has completed successfully.", + "type": "array", + "items": { + "$ref": "FaceAnnotation" + } }, - "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" + "logoAnnotations": { + "description": "If present, logo detection has completed successfully.", + "type": "array", + "items": { + "$ref": "EntityAnnotation" + } }, - "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" + "cropHintsAnnotation": { + "$ref": "CropHintsAnnotation", + "description": "If present, crop hints have completed successfully." }, - "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" + "webDetection": { + "$ref": "WebDetection", + "description": "If present, web detection has completed successfully." } }, - "id": "FaceAnnotation" + "id": "AnnotateImageResponse", + "description": "Response to an image annotation request.", + "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.", + "GoogleCloudVisionV1p2beta1WebDetection": { + "description": "Relevant information for the image from the Internet.", "type": "object", "properties": { - "y": { - "description": "Y coordinate.", - "format": "int32", - "type": "integer" + "visuallySimilarImages": { + "description": "The visually similar image results.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" + } }, - "x": { - "description": "X coordinate.", - "format": "int32", - "type": "integer" + "bestGuessLabels": { + "description": "Best guess text labels for the request image.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebLabel" + } + }, + "fullMatchingImages": { + "description": "Fully matching images from the Internet.\nCan include resized copies of the query image.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" + } + }, + "webEntities": { + "description": "Deduced entities from similar images on the Internet.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebEntity" + } + }, + "pagesWithMatchingImages": { + "description": "Web pages containing the matching images from the Internet.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebPage" + } + }, + "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": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" + } } }, - "id": "GoogleCloudVisionV1p2beta1Vertex" + "id": "GoogleCloudVisionV1p2beta1WebDetection" } }, + "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" }, - "protocol": "rest", "canonicalName": "Vision", "auth": { "oauth2": { @@ -2626,11 +2626,11 @@ "httpMethod": "POST", "parameters": { "name": { + "location": "path", "description": "The name of the operation resource to be cancelled.", "required": true, "type": "string", - "pattern": "^operations/.+$", - "location": "path" + "pattern": "^operations/.+$" } }, "scopes": [ @@ -2654,47 +2654,43 @@ "name" ], "httpMethod": "DELETE", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-vision" - ], "parameters": { "name": { + "pattern": "^operations/.+$", "location": "path", "description": "The name of the operation resource to be deleted.", "required": true, - "type": "string", - "pattern": "^operations/.+$" + "type": "string" } }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-vision" + ], "flatPath": "v1/operations/{operationsId}", "path": "v1/{+name}", "id": "vision.operations.delete" }, "list": { - "flatPath": "v1/operations", - "id": "vision.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", - "parameterOrder": [ - "name" - ], "response": { "$ref": "ListOperationsResponse" }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-vision" + ], "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$", - "location": "path" + "pattern": "^operations$" }, "pageToken": { "location": "query", @@ -2702,22 +2698,22 @@ "type": "string" }, "pageSize": { + "location": "query", "description": "The standard list page size.", "format": "int32", - "type": "integer", + "type": "integer" + }, + "filter": { + "description": "The standard list filter.", + "type": "string", "location": "query" } }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-vision" - ] + "flatPath": "v1/operations", + "path": "v1/{+name}", + "id": "vision.operations.list" }, "get": { - "flatPath": "v1/operations/{operationsId}", - "path": "v1/{+name}", - "id": "vision.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" }, @@ -2727,17 +2723,21 @@ "httpMethod": "GET", "parameters": { "name": { + "location": "path", "description": "The name of the operation resource.", "required": true, "type": "string", - "pattern": "^operations/[^/]+$", - "location": "path" + "pattern": "^operations/[^/]+$" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-vision" - ] + ], + "flatPath": "v1/operations/{operationsId}", + "path": "v1/{+name}", + "id": "vision.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." } } }, @@ -2746,13 +2746,14 @@ "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", "response": { "$ref": "Operation" }, "parameterOrder": [ "name" ], - "httpMethod": "GET", "parameters": { "name": { "description": "The name of the operation resource.", @@ -2767,9 +2768,8 @@ "https://www.googleapis.com/auth/cloud-vision" ], "flatPath": "v1/locations/{locationsId}/operations/{operationsId}", - "path": "v1/{+name}", "id": "vision.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." + "path": "v1/{+name}" } } } @@ -2800,37 +2800,21 @@ } }, "parameters": { - "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" + "default": "true", + "location": "query" }, "uploadType": { - "location": "query", "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string" + "type": "string", + "location": "query" }, "fields": { "location": "query", @@ -2838,22 +2822,22 @@ "type": "string" }, "$.xgafv": { + "enum": [ + "1", + "2" + ], "description": "V1 error format.", "type": "string", "enumDescriptions": [ "v1 error format", "v2 error format" ], - "location": "query", - "enum": [ - "1", - "2" - ] + "location": "query" }, "callback": { - "location": "query", "description": "JSONP", - "type": "string" + "type": "string", + "location": "query" }, "alt": { "enum": [ @@ -2877,25 +2861,41 @@ "location": "query" }, "access_token": { - "location": "query", "description": "OAuth access token.", - "type": "string" + "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": "v1", "baseUrl": "https://vision.googleapis.com/", - "servicePath": "", "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": "", "basePath": "", - "id": "vision:v1", - "documentationLink": "https://cloud.google.com/vision/", "revision": "20180420", + "documentationLink": "https://cloud.google.com/vision/", + "id": "vision:v1", "discoveryVersion": "v1", "version_module": true } diff --git a/DiscoveryJson/vision_v1p1beta1.json b/DiscoveryJson/vision_v1p1beta1.json index e36cfe6164..2dc672da8e 100644 --- a/DiscoveryJson/vision_v1p1beta1.json +++ b/DiscoveryJson/vision_v1p1beta1.json @@ -1,494 +1,299 @@ { + "id": "vision:v1p1beta1", + "documentationLink": "https://cloud.google.com/vision/", + "revision": "20180420", "discoveryVersion": "v1", "version_module": true, "schemas": { - "GoogleCloudVisionV1p1beta1CropHintsParams": { - "description": "Parameters for crop hints annotation request.", + "GoogleCloudVisionV1p2beta1WebDetection": { + "description": "Relevant information for the image from the Internet.", "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.", + "visuallySimilarImages": { + "description": "The visually similar image results.", "type": "array", "items": { - "format": "float", - "type": "number" + "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" } - } - }, - "id": "GoogleCloudVisionV1p1beta1CropHintsParams" - }, - "GoogleCloudVisionV1p1beta1ImageSource": { - "description": "External image source (Google Cloud Storage or web URL image location).", - "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" - }, - "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", - "properties": { - "y": { - "description": "Y coordinate.", - "format": "int32", - "type": "integer" + "bestGuessLabels": { + "description": "Best guess text labels for the request image.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebLabel" + } }, - "x": { - "description": "X coordinate.", - "format": "int32", - "type": "integer" - } - }, - "id": "GoogleCloudVisionV1p1beta1Vertex" - }, - "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" - } - }, - "id": "GoogleCloudVisionV1p2beta1GcsDestination", - "description": "The Google Cloud Storage location where the output will be written to.", - "type": "object" - }, - "GoogleCloudVisionV1p2beta1OperationMetadata": { - "description": "Contains metadata for the BatchAnnotateImages operation.", - "type": "object", - "properties": { - "createTime": { - "description": "The time when the batch request was received.", - "format": "google-datetime", - "type": "string" + "fullMatchingImages": { + "description": "Fully matching images from the Internet.\nCan include resized copies of the query image.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" + } }, - "state": { - "enum": [ - "STATE_UNSPECIFIED", - "CREATED", - "RUNNING", - "DONE", - "CANCELLED" - ], - "description": "Current state of the batch operation.", - "type": "string", - "enumDescriptions": [ - "Invalid.", - "Request is received.", - "Request is actively being processed.", - "The batch processing is done.", - "The batch processing was cancelled." - ] + "webEntities": { + "description": "Deduced entities from similar images on the Internet.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebEntity" + } }, - "updateTime": { - "description": "The time when the operation result was last updated.", - "format": "google-datetime", - "type": "string" - } - }, - "id": "GoogleCloudVisionV1p2beta1OperationMetadata" - }, - "GoogleCloudVisionV1p1beta1DominantColorsAnnotation": { - "description": "Set of dominant colors and their corresponding scores.", - "type": "object", - "properties": { - "colors": { - "description": "RGB color values with their score and pixel fraction.", + "pagesWithMatchingImages": { + "description": "Web pages containing the matching images from the Internet.", "type": "array", "items": { - "$ref": "GoogleCloudVisionV1p1beta1ColorInfo" + "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebPage" } - } - }, - "id": "GoogleCloudVisionV1p1beta1DominantColorsAnnotation" - }, - "GoogleCloudVisionV1p2beta1OutputConfig": { - "description": "The desired output location and metadata.", - "type": "object", - "properties": { - "batchSize": { - "description": "The max number of response protos to put into each output JSON file on\nGoogle Cloud Storage.\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." + "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": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" + } } }, - "id": "GoogleCloudVisionV1p2beta1OutputConfig" + "id": "GoogleCloudVisionV1p2beta1WebDetection" }, - "GoogleCloudVisionV1p2beta1WebDetectionWebLabel": { + "GoogleCloudVisionV1p2beta1LocationInfo": { + "description": "Detected entity location information.", + "type": "object", "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" + "latLng": { + "$ref": "LatLng", + "description": "lat/long location coordinates." } }, - "id": "GoogleCloudVisionV1p2beta1WebDetectionWebLabel", - "description": "Label to provide extra metadata for the web detection.", - "type": "object" + "id": "GoogleCloudVisionV1p2beta1LocationInfo" }, - "GoogleCloudVisionV1p2beta1Word": { - "description": "A word representation.", + "GoogleCloudVisionV1p2beta1CropHintsAnnotation": { + "description": "Set of crop hints that are used to generate new crops when serving images.", "type": "object", "properties": { - "property": { - "description": "Additional information detected for the word.", - "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty" - }, - "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" - }, - "symbols": { - "description": "List of symbols in the word.\nThe order of the symbols follows the natural reading order.", + "cropHints": { + "description": "Crop hint results.", "type": "array", "items": { - "$ref": "GoogleCloudVisionV1p2beta1Symbol" + "$ref": "GoogleCloudVisionV1p2beta1CropHint" } } }, - "id": "GoogleCloudVisionV1p2beta1Word" + "id": "GoogleCloudVisionV1p2beta1CropHintsAnnotation" }, - "GoogleCloudVisionV1p1beta1CropHint": { - "description": "Single crop hint that is used to generate a new crop when serving an image.", + "GoogleCloudVisionV1p2beta1FaceAnnotation": { + "description": "A face annotation object contains the results of face detection.", "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.", + "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" }, - "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" - }, - "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty": { - "properties": { - "detectedLanguages": { - "description": "A list of detected languages together with confidence.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationDetectedLanguage" - } + "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." }, - "detectedBreak": { - "description": "Detected start or end of a text segment.", - "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationDetectedBreak" - } - }, - "id": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty", - "description": "Additional information detected on the structural component.", - "type": "object" - }, - "GoogleCloudVisionV1p2beta1Page": { - "description": "Detected page from OCR.", - "type": "object", - "properties": { - "width": { - "description": "Page width. For PDFs the unit is points. For images (including\nTIFFs) the unit is pixels.", - "format": "int32", - "type": "integer" + "angerLikelihood": { + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "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." + ] }, - "blocks": { - "description": "List of blocks of text, images etc on this page.", + "landmarks": { + "description": "Detected face landmarks.", "type": "array", "items": { - "$ref": "GoogleCloudVisionV1p2beta1Block" + "$ref": "GoogleCloudVisionV1p2beta1FaceAnnotationLandmark" } }, - "property": { - "description": "Additional information detected on the page.", - "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty" - }, - "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" - } - }, - "id": "GoogleCloudVisionV1p2beta1Page" - }, - "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": { - "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" - } - }, - "id": "LatLng" - }, - "GoogleCloudVisionV1p2beta1Symbol": { - "properties": { - "property": { - "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty", - "description": "Additional information detected for the symbol." + "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." + ] }, - "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)." + "joyLikelihood": { + "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": "Joy likelihood.", + "type": "string" }, - "confidence": { - "description": "Confidence of the OCR results for the symbol. Range [0, 1].", + "landmarkingConfidence": { + "description": "Face landmarking confidence. Range [0, 1].", "format": "float", "type": "number" }, - "text": { - "description": "The actual UTF-8 representation of the symbol.", + "underExposedLikelihood": { + "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": "Under-exposed likelihood.", "type": "string" - } - }, - "id": "GoogleCloudVisionV1p2beta1Symbol", - "description": "A single symbol representation.", - "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", - "properties": { - "red": { - "description": "The amount of red 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].", + "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" }, - "blue": { - "description": "The amount of blue in the color as a value in the interval [0, 1].", + "detectionConfidence": { + "description": "Detection confidence. Range [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" - } - }, - "id": "Color" - }, - "GoogleCloudVisionV1p1beta1CropHintsAnnotation": { - "properties": { - "cropHints": { - "description": "Crop hint results.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1CropHint" - } - } - }, - "id": "GoogleCloudVisionV1p1beta1CropHintsAnnotation", - "description": "Set of crop hints that are used to generate new crops when serving images.", - "type": "object" - }, - "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" - } + "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." + ] }, - "webDetectionParams": { - "$ref": "GoogleCloudVisionV1p1beta1WebDetectionParams", - "description": "Parameters for web detection." + "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." + ] }, - "latLongRect": { - "$ref": "GoogleCloudVisionV1p1beta1LatLongRect", - "description": "Not used." + "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.", + "$ref": "GoogleCloudVisionV1p2beta1BoundingPoly" }, - "cropHintsParams": { - "$ref": "GoogleCloudVisionV1p1beta1CropHintsParams", - "description": "Parameters for crop hints annotation request." - } - }, - "id": "GoogleCloudVisionV1p1beta1ImageContext" - }, - "GoogleCloudVisionV1p1beta1WebDetectionWebLabel": { - "description": "Label to provide extra metadata for the web detection.", - "type": "object", - "properties": { - "label": { - "description": "Label for extra metadata.", - "type": "string" + "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" }, - "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.", + "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" } }, - "id": "GoogleCloudVisionV1p1beta1WebDetectionWebLabel" - }, - "GoogleCloudVisionV1p2beta1DominantColorsAnnotation": { - "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": "GoogleCloudVisionV1p2beta1ColorInfo" - } - } - }, - "id": "GoogleCloudVisionV1p2beta1DominantColorsAnnotation" + "id": "GoogleCloudVisionV1p2beta1FaceAnnotation" }, - "GoogleCloudVisionV1p1beta1TextAnnotationDetectedLanguage": { - "description": "Detected language for a structural component.", + "GoogleCloudVisionV1p2beta1NormalizedVertex": { + "description": "A vertex represents a 2D point in the image.\nNOTE: the normalized vertex coordinates are relative to the original image\nand range from 0 to 1.", "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" + "y": { + "description": "Y coordinate.", + "format": "float", + "type": "number" }, - "confidence": { - "description": "Confidence of detected language. Range [0, 1].", + "x": { + "description": "X coordinate.", "format": "float", "type": "number" } }, - "id": "GoogleCloudVisionV1p1beta1TextAnnotationDetectedLanguage" - }, - "GoogleCloudVisionV1p2beta1TextAnnotation": { - "properties": { - "pages": { - "description": "List of pages detected by OCR.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p2beta1Page" - } - }, - "text": { - "description": "UTF-8 text detected on the pages.", - "type": "string" - } - }, - "id": "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.", - "type": "object" - }, - "GoogleCloudVisionV1p2beta1WebDetection": { - "description": "Relevant information for the image from the Internet.", - "type": "object", - "properties": { - "visuallySimilarImages": { - "description": "The visually similar image results.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" - } - }, - "bestGuessLabels": { - "description": "Best guess text labels for the request image.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebLabel" - } - }, - "fullMatchingImages": { - "description": "Fully matching images from the Internet.\nCan include resized copies of the query image.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" - } - }, - "webEntities": { - "description": "Deduced entities from similar images on the Internet.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebEntity" - } - }, - "pagesWithMatchingImages": { - "description": "Web pages containing the matching images from the Internet.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebPage" - } - }, - "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": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" - } - } - }, - "id": "GoogleCloudVisionV1p2beta1WebDetection" - }, - "GoogleCloudVisionV1p2beta1CropHintsAnnotation": { - "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": "GoogleCloudVisionV1p2beta1CropHint" - } - } - }, - "id": "GoogleCloudVisionV1p2beta1CropHintsAnnotation" - }, - "GoogleCloudVisionV1p2beta1LocationInfo": { - "properties": { - "latLng": { - "description": "lat/long location coordinates.", - "$ref": "LatLng" - } - }, - "id": "GoogleCloudVisionV1p2beta1LocationInfo", - "description": "Detected entity location information.", - "type": "object" + "id": "GoogleCloudVisionV1p2beta1NormalizedVertex" }, "GoogleCloudVisionV1p2beta1FaceAnnotationLandmark": { "description": "A face-specific landmark (for example, a face feature).", "type": "object", "properties": { + "position": { + "description": "Face landmark position.", + "$ref": "GoogleCloudVisionV1p2beta1Position" + }, "type": { + "description": "Face landmark type.", + "type": "string", "enumDescriptions": [ "Unknown face landmark detected. Should not be filled.", "Left eye.", @@ -562,304 +367,94 @@ "CHIN_GNATHION", "CHIN_LEFT_GONION", "CHIN_RIGHT_GONION" - ], - "description": "Face landmark type.", - "type": "string" - }, - "position": { - "description": "Face landmark position.", - "$ref": "GoogleCloudVisionV1p2beta1Position" + ] } }, "id": "GoogleCloudVisionV1p2beta1FaceAnnotationLandmark" }, - "GoogleCloudVisionV1p2beta1NormalizedVertex": { + "GoogleCloudVisionV1p2beta1WebDetectionWebImage": { + "description": "Metadata for online images.", + "type": "object", "properties": { - "y": { - "description": "Y coordinate.", + "score": { + "description": "(Deprecated) Overall relevancy score for the image.", "format": "float", "type": "number" }, - "x": { - "description": "X coordinate.", - "format": "float", - "type": "number" + "url": { + "description": "The result image URL.", + "type": "string" } }, - "id": "GoogleCloudVisionV1p2beta1NormalizedVertex", - "description": "A vertex represents a 2D point in the image.\nNOTE: the normalized vertex coordinates are relative to the original image\nand range from 0 to 1.", - "type": "object" + "id": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" }, - "GoogleCloudVisionV1p2beta1FaceAnnotation": { - "description": "A face annotation object contains the results of face detection.", + "GoogleCloudVisionV1p1beta1WebDetectionWebEntity": { + "description": "Entity deduced from similar images on the Internet.", "type": "object", "properties": { - "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.", - "$ref": "GoogleCloudVisionV1p2beta1BoundingPoly" - }, - "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" + "entityId": { + "description": "Opaque entity ID.", + "type": "string" }, - "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.", + "description": { + "description": "Canonical description of the entity, in English.", "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].", + "score": { + "description": "Overall relevancy score for the entity.\nNot normalized and not comparable across different image queries.", "format": "float", "type": "number" + } + }, + "id": "GoogleCloudVisionV1p1beta1WebDetectionWebEntity" + }, + "GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse": { + "description": "The response for a single offline file annotation request.", + "type": "object", + "properties": { + "outputConfig": { + "$ref": "GoogleCloudVisionV1p2beta1OutputConfig", + "description": "The output location and metadata from AsyncAnnotateFileRequest." + } + }, + "id": "GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse" + }, + "GoogleCloudVisionV1p1beta1WebDetection": { + "properties": { + "visuallySimilarImages": { + "description": "The visually similar image results.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1WebDetectionWebImage" + } }, - "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": "GoogleCloudVisionV1p2beta1BoundingPoly" + "bestGuessLabels": { + "description": "Best guess text labels for the request image.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1WebDetectionWebLabel" + } }, - "surpriseLikelihood": { - "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": "Surprise likelihood.", - "type": "string" + "fullMatchingImages": { + "description": "Fully matching images from the Internet.\nCan include resized copies of the query image.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1WebDetectionWebImage" + } }, - "landmarks": { - "description": "Detected face landmarks.", + "webEntities": { + "description": "Deduced entities from similar images on the Internet.", "type": "array", "items": { - "$ref": "GoogleCloudVisionV1p2beta1FaceAnnotationLandmark" + "$ref": "GoogleCloudVisionV1p1beta1WebDetectionWebEntity" } }, - "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" - ] - }, - "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" - ] - }, - "landmarkingConfidence": { - "description": "Face landmarking confidence. Range [0, 1].", - "format": "float", - "type": "number" - }, - "detectionConfidence": { - "description": "Detection confidence. Range [0, 1].", - "format": "float", - "type": "number" - }, - "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": { - "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": "Under-exposed likelihood.", - "type": "string" - }, - "blurredLikelihood": { - "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": "Blurred likelihood.", - "type": "string" - }, - "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" - } - }, - "id": "GoogleCloudVisionV1p2beta1FaceAnnotation" - }, - "GoogleCloudVisionV1p2beta1WebDetectionWebImage": { - "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.", - "format": "float", - "type": "number" - } - }, - "id": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" - }, - "GoogleCloudVisionV1p1beta1WebDetectionWebEntity": { - "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": "GoogleCloudVisionV1p1beta1WebDetectionWebEntity", - "description": "Entity deduced from similar images on the Internet.", - "type": "object" - }, - "GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse": { - "description": "The response for a single offline file annotation request.", - "type": "object", - "properties": { - "outputConfig": { - "$ref": "GoogleCloudVisionV1p2beta1OutputConfig", - "description": "The output location and metadata from AsyncAnnotateFileRequest." - } - }, - "id": "GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse" - }, - "GoogleCloudVisionV1p1beta1WebDetection": { - "properties": { - "visuallySimilarImages": { - "description": "The visually similar image results.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1WebDetectionWebImage" - } - }, - "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" - } + "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.", @@ -875,17 +470,6 @@ }, "GoogleCloudVisionV1p1beta1AnnotateImageResponse": { "properties": { - "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." - }, - "landmarkAnnotations": { - "description": "If present, landmark detection has completed successfully.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1EntityAnnotation" - } - }, "textAnnotations": { "description": "If present, text (OCR) detection has completed successfully.", "type": "array", @@ -893,10 +477,6 @@ "$ref": "GoogleCloudVisionV1p1beta1EntityAnnotation" } }, - "imagePropertiesAnnotation": { - "$ref": "GoogleCloudVisionV1p1beta1ImageProperties", - "description": "If present, image properties were extracted successfully." - }, "faceAnnotations": { "description": "If present, face detection has completed successfully.", "type": "array", @@ -904,6 +484,10 @@ "$ref": "GoogleCloudVisionV1p1beta1FaceAnnotation" } }, + "imagePropertiesAnnotation": { + "description": "If present, image properties were extracted successfully.", + "$ref": "GoogleCloudVisionV1p1beta1ImageProperties" + }, "logoAnnotations": { "description": "If present, logo detection has completed successfully.", "type": "array", @@ -912,12 +496,12 @@ } }, "cropHintsAnnotation": { - "$ref": "GoogleCloudVisionV1p1beta1CropHintsAnnotation", - "description": "If present, crop hints have completed successfully." + "description": "If present, crop hints have completed successfully.", + "$ref": "GoogleCloudVisionV1p1beta1CropHintsAnnotation" }, "webDetection": { - "description": "If present, web detection has completed successfully.", - "$ref": "GoogleCloudVisionV1p1beta1WebDetection" + "$ref": "GoogleCloudVisionV1p1beta1WebDetection", + "description": "If present, web detection has completed successfully." }, "labelAnnotations": { "description": "If present, label detection has completed successfully.", @@ -931,8 +515,19 @@ "$ref": "GoogleCloudVisionV1p1beta1SafeSearchAnnotation" }, "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" + "$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": { + "$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." + }, + "landmarkAnnotations": { + "description": "If present, landmark detection has completed successfully.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1EntityAnnotation" + } } }, "id": "GoogleCloudVisionV1p1beta1AnnotateImageResponse", @@ -943,26 +538,6 @@ "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": { - "spoof": { - "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": "Spoof likelihood. The likelihood that an modification\nwas made to the image's canonical version to make it appear\nfunny or offensive.", - "type": "string" - }, "medical": { "enum": [ "UNKNOWN", @@ -984,6 +559,14 @@ ] }, "racy": { + "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", @@ -993,7 +576,9 @@ "VERY_LIKELY" ], "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", + "type": "string" + }, + "violence": { "enumDescriptions": [ "Unknown likelihood.", "It is very unlikely that the image belongs to the specified vertical.", @@ -1001,9 +586,19 @@ "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" }, - "violence": { + "adult": { "enumDescriptions": [ "Unknown likelihood.", "It is very unlikely that the image belongs to the specified vertical.", @@ -1020,10 +615,10 @@ "LIKELY", "VERY_LIKELY" ], - "description": "Likelihood that this image contains violent content.", + "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" }, - "adult": { + "spoof": { "enumDescriptions": [ "Unknown likelihood.", "It is very unlikely that the image belongs to the specified vertical.", @@ -1040,13 +635,15 @@ "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.", + "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" } }, "id": "GoogleCloudVisionV1p1beta1SafeSearchAnnotation" }, "GoogleCloudVisionV1p2beta1ColorInfo": { + "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].", @@ -1063,76 +660,74 @@ "type": "number" } }, - "id": "GoogleCloudVisionV1p2beta1ColorInfo", - "description": "Color information consists of RGB channels, score, and the fraction of\nthe image that the color occupies in the image.", - "type": "object" + "id": "GoogleCloudVisionV1p2beta1ColorInfo" }, "GoogleCloudVisionV1p2beta1AnnotateImageResponse": { "description": "Response to an image annotation request.", "type": "object", "properties": { - "safeSearchAnnotation": { - "description": "If present, safe-search annotation has completed successfully.", - "$ref": "GoogleCloudVisionV1p2beta1SafeSearchAnnotation" - }, - "landmarkAnnotations": { - "description": "If present, landmark detection has completed successfully.", + "textAnnotations": { + "description": "If present, text (OCR) detection has completed successfully.", "type": "array", "items": { "$ref": "GoogleCloudVisionV1p2beta1EntityAnnotation" } }, - "faceAnnotations": { - "description": "If present, face detection has completed successfully.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p2beta1FaceAnnotation" - } + "imagePropertiesAnnotation": { + "description": "If present, image properties were extracted successfully.", + "$ref": "GoogleCloudVisionV1p2beta1ImageProperties" }, - "cropHintsAnnotation": { - "$ref": "GoogleCloudVisionV1p2beta1CropHintsAnnotation", - "description": "If present, crop hints have completed successfully." + "context": { + "$ref": "GoogleCloudVisionV1p2beta1ImageAnnotationContext", + "description": "If present, contextual information is needed to understand where this image\ncomes from." }, - "labelAnnotations": { - "description": "If present, label detection has completed successfully.", + "logoAnnotations": { + "description": "If present, logo detection has completed successfully.", "type": "array", "items": { "$ref": "GoogleCloudVisionV1p2beta1EntityAnnotation" } }, - "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" + "webDetection": { + "$ref": "GoogleCloudVisionV1p2beta1WebDetection", + "description": "If present, web detection has completed successfully." }, - "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." + "safeSearchAnnotation": { + "description": "If present, safe-search annotation has completed successfully.", + "$ref": "GoogleCloudVisionV1p2beta1SafeSearchAnnotation" }, - "textAnnotations": { - "description": "If present, text (OCR) detection has completed successfully.", + "landmarkAnnotations": { + "description": "If present, landmark detection has completed successfully.", "type": "array", "items": { "$ref": "GoogleCloudVisionV1p2beta1EntityAnnotation" } }, - "imagePropertiesAnnotation": { - "$ref": "GoogleCloudVisionV1p2beta1ImageProperties", - "description": "If present, image properties were extracted successfully." + "faceAnnotations": { + "description": "If present, face detection has completed successfully.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1FaceAnnotation" + } }, - "context": { - "$ref": "GoogleCloudVisionV1p2beta1ImageAnnotationContext", - "description": "If present, contextual information is needed to understand where this image\ncomes from." + "cropHintsAnnotation": { + "description": "If present, crop hints have completed successfully.", + "$ref": "GoogleCloudVisionV1p2beta1CropHintsAnnotation" }, - "logoAnnotations": { - "description": "If present, logo detection has completed successfully.", + "labelAnnotations": { + "description": "If present, label detection has completed successfully.", "type": "array", "items": { "$ref": "GoogleCloudVisionV1p2beta1EntityAnnotation" } }, - "webDetection": { - "$ref": "GoogleCloudVisionV1p2beta1WebDetection", - "description": "If present, web detection has 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." + }, + "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": "GoogleCloudVisionV1p2beta1TextAnnotation" } }, "id": "GoogleCloudVisionV1p2beta1AnnotateImageResponse" @@ -1141,10 +736,6 @@ "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", @@ -1153,34 +744,28 @@ "name": { "description": "Name of the property.", "type": "string" + }, + "value": { + "description": "Value of the property.", + "type": "string" } }, "id": "GoogleCloudVisionV1p2beta1Property" }, "GoogleCloudVisionV1p2beta1ImageProperties": { - "description": "Stores image properties, such as dominant colors.", - "type": "object", "properties": { "dominantColors": { - "$ref": "GoogleCloudVisionV1p2beta1DominantColorsAnnotation", - "description": "If present, dominant colors completed successfully." + "description": "If present, dominant colors completed successfully.", + "$ref": "GoogleCloudVisionV1p2beta1DominantColorsAnnotation" } }, - "id": "GoogleCloudVisionV1p2beta1ImageProperties" + "id": "GoogleCloudVisionV1p2beta1ImageProperties", + "description": "Stores image properties, such as dominant colors.", + "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).", - "type": "object", "properties": { "spoof": { - "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", @@ -1190,9 +775,7 @@ "VERY_LIKELY" ], "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" - }, - "medical": { + "type": "string", "enumDescriptions": [ "Unknown likelihood.", "It is very unlikely that the image belongs to the specified vertical.", @@ -1200,7 +783,9 @@ "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." - ], + ] + }, + "medical": { "enum": [ "UNKNOWN", "VERY_UNLIKELY", @@ -1210,9 +795,25 @@ "VERY_LIKELY" ], "description": "Likelihood that this is a medical image.", - "type": "string" + "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." + ] }, "racy": { + "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", @@ -1222,19 +823,9 @@ "VERY_LIKELY" ], "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." - ] + "type": "string" }, "violence": { - "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.", @@ -1250,7 +841,9 @@ "POSSIBLE", "LIKELY", "VERY_LIKELY" - ] + ], + "description": "Likelihood that this image contains violent content.", + "type": "string" }, "adult": { "enumDescriptions": [ @@ -1273,16 +866,14 @@ "type": "string" } }, - "id": "GoogleCloudVisionV1p2beta1SafeSearchAnnotation" + "id": "GoogleCloudVisionV1p2beta1SafeSearchAnnotation", + "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" }, "GoogleCloudVisionV1p1beta1Paragraph": { "description": "Structural unit of text representing a number of words in certain order.", "type": "object", "properties": { - "property": { - "description": "Additional information detected for the paragraph.", - "$ref": "GoogleCloudVisionV1p1beta1TextAnnotationTextProperty" - }, "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": "GoogleCloudVisionV1p1beta1BoundingPoly" @@ -1298,11 +889,17 @@ "items": { "$ref": "GoogleCloudVisionV1p1beta1Word" } + }, + "property": { + "$ref": "GoogleCloudVisionV1p1beta1TextAnnotationTextProperty", + "description": "Additional information detected for the paragraph." } }, "id": "GoogleCloudVisionV1p1beta1Paragraph" }, "GoogleCloudVisionV1p1beta1EntityAnnotation": { + "description": "Set of detected entity features.", + "type": "object", "properties": { "score": { "description": "Overall score of the result. Range [0, 1].", @@ -1325,14 +922,14 @@ "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" }, - "boundingPoly": { - "description": "Image region to which this entity belongs. Not produced\nfor `LABEL_DETECTION` features.", - "$ref": "GoogleCloudVisionV1p1beta1BoundingPoly" - }, "description": { "description": "Entity textual description, expressed in its `locale` language.", "type": "string" @@ -1350,31 +947,27 @@ } } }, - "id": "GoogleCloudVisionV1p1beta1EntityAnnotation", - "description": "Set of detected entity features.", - "type": "object" + "id": "GoogleCloudVisionV1p1beta1EntityAnnotation" }, "GoogleCloudVisionV1p2beta1InputConfig": { "description": "The desired input location and metadata.", "type": "object", "properties": { + "gcsSource": { + "description": "The Google Cloud Storage location to read the input from.", + "$ref": "GoogleCloudVisionV1p2beta1GcsSource" + }, "mimeType": { "description": "The type of the file. Currently only \"application/pdf\" and \"image/tiff\"\nare supported. Wildcards are not supported.", "type": "string" - }, - "gcsSource": { - "$ref": "GoogleCloudVisionV1p2beta1GcsSource", - "description": "The Google Cloud Storage location to read the input from." } }, "id": "GoogleCloudVisionV1p2beta1InputConfig" }, "GoogleCloudVisionV1p2beta1Paragraph": { + "description": "Structural unit of text representing a number of words in certain order.", + "type": "object", "properties": { - "property": { - "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty", - "description": "Additional information detected for the paragraph." - }, "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)." @@ -1390,11 +983,13 @@ "items": { "$ref": "GoogleCloudVisionV1p2beta1Word" } + }, + "property": { + "description": "Additional information detected for the paragraph.", + "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty" } }, - "id": "GoogleCloudVisionV1p2beta1Paragraph", - "description": "Structural unit of text representing a number of words in certain order.", - "type": "object" + "id": "GoogleCloudVisionV1p2beta1Paragraph" }, "GoogleCloudVisionV1p1beta1WebDetectionParams": { "description": "Parameters for web detection request.", @@ -1408,8 +1003,6 @@ "id": "GoogleCloudVisionV1p1beta1WebDetectionParams" }, "GoogleCloudVisionV1p1beta1BatchAnnotateImagesRequest": { - "description": "Multiple image annotation requests are batched into a single service call.", - "type": "object", "properties": { "requests": { "description": "Individual image annotation requests for this batch.", @@ -1419,22 +1012,11 @@ } } }, - "id": "GoogleCloudVisionV1p1beta1BatchAnnotateImagesRequest" - }, - "GoogleCloudVisionV1p1beta1LocationInfo": { - "description": "Detected entity location information.", - "type": "object", - "properties": { - "latLng": { - "$ref": "LatLng", - "description": "lat/long location coordinates." - } - }, - "id": "GoogleCloudVisionV1p1beta1LocationInfo" + "id": "GoogleCloudVisionV1p1beta1BatchAnnotateImagesRequest", + "description": "Multiple image annotation requests are batched into a single service call.", + "type": "object" }, "GoogleCloudVisionV1p1beta1TextAnnotationTextProperty": { - "description": "Additional information detected on the structural component.", - "type": "object", "properties": { "detectedLanguages": { "description": "A list of detected languages together with confidence.", @@ -1444,25 +1026,29 @@ } }, "detectedBreak": { - "description": "Detected start or end of a text segment.", - "$ref": "GoogleCloudVisionV1p1beta1TextAnnotationDetectedBreak" + "$ref": "GoogleCloudVisionV1p1beta1TextAnnotationDetectedBreak", + "description": "Detected start or end of a text segment." + } + }, + "id": "GoogleCloudVisionV1p1beta1TextAnnotationTextProperty", + "description": "Additional information detected on the structural component.", + "type": "object" + }, + "GoogleCloudVisionV1p1beta1LocationInfo": { + "properties": { + "latLng": { + "$ref": "LatLng", + "description": "lat/long location coordinates." } }, - "id": "GoogleCloudVisionV1p1beta1TextAnnotationTextProperty" + "id": "GoogleCloudVisionV1p1beta1LocationInfo", + "description": "Detected entity location information.", + "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": { - "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", @@ -1473,6 +1059,15 @@ }, "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" @@ -1481,6 +1076,10 @@ "description": "A word representation.", "type": "object", "properties": { + "property": { + "description": "Additional information detected for the word.", + "$ref": "GoogleCloudVisionV1p1beta1TextAnnotationTextProperty" + }, "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)." @@ -1496,44 +1095,27 @@ "items": { "$ref": "GoogleCloudVisionV1p1beta1Symbol" } - }, - "property": { - "description": "Additional information detected for the word.", - "$ref": "GoogleCloudVisionV1p1beta1TextAnnotationTextProperty" } }, "id": "GoogleCloudVisionV1p1beta1Word" }, "GoogleCloudVisionV1p1beta1LatLongRect": { - "description": "Rectangle determined by min and max `LatLng` pairs.", - "type": "object", "properties": { "minLatLng": { - "description": "Min lat/long pair.", - "$ref": "LatLng" + "$ref": "LatLng", + "description": "Min lat/long pair." }, "maxLatLng": { "$ref": "LatLng", "description": "Max lat/long pair." } }, - "id": "GoogleCloudVisionV1p1beta1LatLongRect" + "id": "GoogleCloudVisionV1p1beta1LatLongRect", + "description": "Rectangle determined by min and max `LatLng` pairs.", + "type": "object" }, "GoogleCloudVisionV1p1beta1WebDetectionWebPage": { - "description": "Metadata for web pages.", - "type": "object", "properties": { - "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" - } - }, "score": { "description": "(Deprecated) Overall relevancy score for the web page.", "format": "float", @@ -1549,15 +1131,34 @@ "url": { "description": "The result web page URL.", "type": "string" + }, + "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" + "id": "GoogleCloudVisionV1p1beta1WebDetectionWebPage", + "description": "Metadata for web pages.", + "type": "object" }, "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", "properties": { + "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.", + "type": "string", "enumDescriptions": [ "Unspecified feature type.", "Run face detection.", @@ -1583,42 +1184,36 @@ "IMAGE_PROPERTIES", "CROP_HINTS", "WEB_DETECTION" - ], - "description": "The feature type.", - "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" - }, - "model": { - "description": "Model to use for the feature.\nSupported values: \"builtin/stable\" (the default if unset) and\n\"builtin/latest\".", - "type": "string" } }, "id": "GoogleCloudVisionV1p1beta1Feature" }, "GoogleCloudVisionV1p2beta1BoundingPoly": { - "description": "A bounding polygon for the detected image annotation.", - "type": "object", "properties": { - "normalizedVertices": { - "description": "The bounding polygon normalized vertices.", + "vertices": { + "description": "The bounding polygon vertices.", "type": "array", "items": { - "$ref": "GoogleCloudVisionV1p2beta1NormalizedVertex" + "$ref": "GoogleCloudVisionV1p2beta1Vertex" } }, - "vertices": { - "description": "The bounding polygon vertices.", + "normalizedVertices": { + "description": "The bounding polygon normalized vertices.", "type": "array", "items": { - "$ref": "GoogleCloudVisionV1p2beta1Vertex" + "$ref": "GoogleCloudVisionV1p2beta1NormalizedVertex" } } }, - "id": "GoogleCloudVisionV1p2beta1BoundingPoly" + "id": "GoogleCloudVisionV1p2beta1BoundingPoly", + "description": "A bounding polygon for the detected image annotation.", + "type": "object" }, "GoogleCloudVisionV1p1beta1Position": { "properties": { @@ -1643,6 +1238,8 @@ "type": "object" }, "GoogleCloudVisionV1p2beta1TextAnnotationDetectedBreak": { + "description": "Detected start or end of a structural component.", + "type": "object", "properties": { "type": { "enumDescriptions": [ @@ -1669,11 +1266,11 @@ "type": "boolean" } }, - "id": "GoogleCloudVisionV1p2beta1TextAnnotationDetectedBreak", - "description": "Detected start or end of a structural component.", - "type": "object" + "id": "GoogleCloudVisionV1p2beta1TextAnnotationDetectedBreak" }, "GoogleCloudVisionV1p1beta1WebDetectionWebImage": { + "description": "Metadata for online images.", + "type": "object", "properties": { "score": { "description": "(Deprecated) Overall relevancy score for the image.", @@ -1685,9 +1282,7 @@ "type": "string" } }, - "id": "GoogleCloudVisionV1p1beta1WebDetectionWebImage", - "description": "Metadata for online images.", - "type": "object" + "id": "GoogleCloudVisionV1p1beta1WebDetectionWebImage" }, "GoogleCloudVisionV1p1beta1Property": { "description": "A `Property` consists of a user-supplied name/value pair.", @@ -1748,8 +1343,6 @@ "id": "GoogleCloudVisionV1p2beta1Position" }, "GoogleCloudVisionV1p1beta1BatchAnnotateImagesResponse": { - "description": "Response to a batch image annotation request.", - "type": "object", "properties": { "responses": { "description": "Individual responses to image annotation requests within the batch.", @@ -1759,12 +1352,18 @@ } } }, - "id": "GoogleCloudVisionV1p1beta1BatchAnnotateImagesResponse" + "id": "GoogleCloudVisionV1p1beta1BatchAnnotateImagesResponse", + "description": "Response to a batch image annotation request.", + "type": "object" }, "GoogleCloudVisionV1p2beta1WebDetectionWebEntity": { "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" @@ -1773,10 +1372,6 @@ "description": "Overall relevancy score for the entity.\nNot normalized and not comparable across different image queries.", "format": "float", "type": "number" - }, - "entityId": { - "description": "Opaque entity ID.", - "type": "string" } }, "id": "GoogleCloudVisionV1p2beta1WebDetectionWebEntity" @@ -1828,8 +1423,6 @@ "id": "GoogleCloudVisionV1p1beta1ImageProperties" }, "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.", @@ -1841,12 +1434,23 @@ "$ref": "GoogleCloudVisionV1p1beta1ImageSource" } }, - "id": "GoogleCloudVisionV1p1beta1Image" + "id": "GoogleCloudVisionV1p1beta1Image", + "description": "Client image to perform Google Cloud Vision API tasks over.", + "type": "object" }, "GoogleCloudVisionV1p2beta1EntityAnnotation": { "description": "Set of detected entity features.", "type": "object", "properties": { + "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", @@ -1875,22 +1479,13 @@ "format": "float", "type": "number" }, - "locale": { - "description": "The language code for the locale in which the entity textual\n`description` is expressed.", - "type": "string" - }, "boundingPoly": { "description": "Image region to which this entity belongs. Not produced\nfor `LABEL_DETECTION` features.", "$ref": "GoogleCloudVisionV1p2beta1BoundingPoly" }, - "description": { - "description": "Entity textual description, expressed in its `locale` language.", + "locale": { + "description": "The language code for the locale in which the entity textual\n`description` is expressed.", "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" } }, "id": "GoogleCloudVisionV1p2beta1EntityAnnotation" @@ -1911,6 +1506,11 @@ }, "GoogleCloudVisionV1p1beta1ColorInfo": { "properties": { + "score": { + "description": "Image-specific score for this color. Value in range [0, 1].", + "format": "float", + "type": "number" + }, "pixelFraction": { "description": "The fraction of pixels the color occupies in the image.\nValue in range [0, 1].", "format": "float", @@ -1919,11 +1519,6 @@ "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", @@ -1934,10 +1529,6 @@ "description": "A face-specific landmark (for example, a face feature).", "type": "object", "properties": { - "position": { - "description": "Face landmark position.", - "$ref": "GoogleCloudVisionV1p1beta1Position" - }, "type": { "description": "Face landmark type.", "type": "string", @@ -2015,13 +1606,31 @@ "CHIN_LEFT_GONION", "CHIN_RIGHT_GONION" ] + }, + "position": { + "description": "Face landmark position.", + "$ref": "GoogleCloudVisionV1p1beta1Position" } }, "id": "GoogleCloudVisionV1p1beta1FaceAnnotationLandmark" }, + "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" + } + }, + "id": "GoogleCloudVisionV1p2beta1TextAnnotationDetectedLanguage", + "description": "Detected language for a structural component.", + "type": "object" + }, "GoogleCloudVisionV1p2beta1AnnotateFileResponse": { - "description": "Response to a single file annotation request. A file may contain one or more\nimages, which individually have their own responses.", - "type": "object", "properties": { "responses": { "description": "Individual responses to images found within the file.", @@ -2031,42 +1640,22 @@ } }, "inputConfig": { - "$ref": "GoogleCloudVisionV1p2beta1InputConfig", - "description": "Information about the file for which this response is generated." + "description": "Information about the file for which this response is generated.", + "$ref": "GoogleCloudVisionV1p2beta1InputConfig" } }, - "id": "GoogleCloudVisionV1p2beta1AnnotateFileResponse" - }, - "GoogleCloudVisionV1p2beta1TextAnnotationDetectedLanguage": { - "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": "GoogleCloudVisionV1p2beta1TextAnnotationDetectedLanguage", - "description": "Detected language for a structural component.", + "id": "GoogleCloudVisionV1p2beta1AnnotateFileResponse", + "description": "Response to a single file annotation request. A file may contain one or more\nimages, which individually have their own responses.", "type": "object" }, "GoogleCloudVisionV1p1beta1FaceAnnotation": { "properties": { - "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.", - "$ref": "GoogleCloudVisionV1p1beta1BoundingPoly" - }, - "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].", + "landmarkingConfidence": { + "description": "Face landmarking confidence. Range [0, 1].", "format": "float", "type": "number" }, - "sorrowLikelihood": { - "description": "Sorrow likelihood.", - "type": "string", + "joyLikelihood": { "enumDescriptions": [ "Unknown likelihood.", "It is very unlikely that the image belongs to the specified vertical.", @@ -2082,26 +1671,11 @@ "POSSIBLE", "LIKELY", "VERY_LIKELY" - ] - }, - "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": { - "$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." - }, - "surpriseLikelihood": { - "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." ], + "description": "Joy likelihood.", + "type": "string" + }, + "underExposedLikelihood": { "enum": [ "UNKNOWN", "VERY_UNLIKELY", @@ -2110,17 +1684,28 @@ "LIKELY", "VERY_LIKELY" ], - "description": "Surprise likelihood.", - "type": "string" + "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." + ] }, - "landmarks": { - "description": "Detected face landmarks.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p1beta1FaceAnnotationLandmark" - } + "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" }, - "angerLikelihood": { + "detectionConfidence": { + "description": "Detection confidence. Range [0, 1].", + "format": "float", + "type": "number" + }, + "blurredLikelihood": { "enumDescriptions": [ "Unknown likelihood.", "It is very unlikely that the image belongs to the specified vertical.", @@ -2137,17 +1722,10 @@ "LIKELY", "VERY_LIKELY" ], - "description": "Anger likelihood.", + "description": "Blurred likelihood.", "type": "string" }, - "landmarkingConfidence": { - "description": "Face landmarking confidence. Range [0, 1].", - "format": "float", - "type": "number" - }, - "joyLikelihood": { - "description": "Joy likelihood.", - "type": "string", + "headwearLikelihood": { "enumDescriptions": [ "Unknown likelihood.", "It is very unlikely that the image belongs to the specified vertical.", @@ -2163,19 +1741,20 @@ "POSSIBLE", "LIKELY", "VERY_LIKELY" - ] + ], + "description": "Headwear likelihood.", + "type": "string" }, - "detectionConfidence": { - "description": "Detection confidence. Range [0, 1].", - "format": "float", - "type": "number" + "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.", + "$ref": "GoogleCloudVisionV1p1beta1BoundingPoly" }, - "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].", + "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" }, - "underExposedLikelihood": { + "sorrowLikelihood": { "enum": [ "UNKNOWN", "VERY_UNLIKELY", @@ -2184,7 +1763,7 @@ "LIKELY", "VERY_LIKELY" ], - "description": "Under-exposed likelihood.", + "description": "Sorrow likelihood.", "type": "string", "enumDescriptions": [ "Unknown likelihood.", @@ -2195,7 +1774,16 @@ "It is very likely that the image belongs to the specified vertical." ] }, - "blurredLikelihood": { + "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": { + "$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." + }, + "angerLikelihood": { "enumDescriptions": [ "Unknown likelihood.", "It is very unlikely that the image belongs to the specified vertical.", @@ -2212,10 +1800,17 @@ "LIKELY", "VERY_LIKELY" ], - "description": "Blurred likelihood.", + "description": "Anger likelihood.", "type": "string" }, - "headwearLikelihood": { + "landmarks": { + "description": "Detected face landmarks.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1FaceAnnotationLandmark" + } + }, + "surpriseLikelihood": { "enumDescriptions": [ "Unknown likelihood.", "It is very unlikely that the image belongs to the specified vertical.", @@ -2232,297 +1827,705 @@ "LIKELY", "VERY_LIKELY" ], - "description": "Headwear likelihood.", + "description": "Surprise likelihood.", + "type": "string" + } + }, + "id": "GoogleCloudVisionV1p1beta1FaceAnnotation", + "description": "A face annotation object contains the results of face detection.", + "type": "object" + }, + "GoogleCloudVisionV1p1beta1TextAnnotationDetectedBreak": { + "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": "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" + }, + "GoogleCloudVisionV1p2beta1WebDetectionWebPage": { + "description": "Metadata for web pages.", + "type": "object", + "properties": { + "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": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" + } + }, + "url": { + "description": "The result web page URL.", + "type": "string" + }, + "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": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" + } + }, + "score": { + "description": "(Deprecated) Overall relevancy score for the web page.", + "format": "float", + "type": "number" + } + }, + "id": "GoogleCloudVisionV1p2beta1WebDetectionWebPage" + }, + "GoogleCloudVisionV1p2beta1Block": { + "description": "Logical element on the page.", + "type": "object", + "properties": { + "property": { + "description": "Additional information detected for the block.", + "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty" + }, + "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": { + "$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).", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1Paragraph" + } + } + }, + "id": "GoogleCloudVisionV1p2beta1Block" + }, + "GoogleCloudVisionV1p2beta1CropHint": { + "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": "GoogleCloudVisionV1p2beta1BoundingPoly" + } + }, + "id": "GoogleCloudVisionV1p2beta1CropHint" + }, + "GoogleCloudVisionV1p2beta1Vertex": { + "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": "GoogleCloudVisionV1p2beta1Vertex" + }, + "GoogleCloudVisionV1p1beta1Page": { + "description": "Detected page from OCR.", + "type": "object", + "properties": { + "width": { + "description": "Page width. For PDFs the unit is points. For images (including\nTIFFs) the unit is pixels.", + "format": "int32", + "type": "integer" + }, + "blocks": { + "description": "List of blocks of text, images etc on this page.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1Block" + } + }, + "property": { + "$ref": "GoogleCloudVisionV1p1beta1TextAnnotationTextProperty", + "description": "Additional information detected on the page." + }, + "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" + } + }, + "id": "GoogleCloudVisionV1p1beta1Page" + }, + "GoogleCloudVisionV1p1beta1Block": { + "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": { + "$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 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" + } + } + }, + "id": "GoogleCloudVisionV1p1beta1Block", + "description": "Logical element on the page.", + "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.", + "type": "object", + "properties": { + "pages": { + "description": "List of pages detected by OCR.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p1beta1Page" + } + }, + "text": { + "description": "UTF-8 text detected on the pages.", + "type": "string" + } + }, + "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" + }, + "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.", + "type": "array", + "items": { + "format": "float", + "type": "number" + } + } + }, + "id": "GoogleCloudVisionV1p1beta1CropHintsParams", + "description": "Parameters for crop hints annotation request.", + "type": "object" + }, + "GoogleCloudVisionV1p1beta1ImageSource": { + "description": "External image source (Google Cloud Storage or web URL image location).", + "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" + }, + "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" + }, + "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" } }, - "id": "GoogleCloudVisionV1p1beta1FaceAnnotation", - "description": "A face annotation object contains the results of face detection.", + "id": "GoogleCloudVisionV1p2beta1GcsDestination", + "description": "The Google Cloud Storage location where the output will be written to.", "type": "object" }, - "GoogleCloudVisionV1p1beta1TextAnnotationDetectedBreak": { + "GoogleCloudVisionV1p2beta1OperationMetadata": { "properties": { - "type": { - "description": "Detected break type.", - "type": "string", + "createTime": { + "description": "The time when the batch request was received.", + "format": "google-datetime", + "type": "string" + }, + "state": { "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." + "Invalid.", + "Request is received.", + "Request is actively being processed.", + "The batch processing is done.", + "The batch processing was cancelled." ], "enum": [ - "UNKNOWN", - "SPACE", - "SURE_SPACE", - "EOL_SURE_SPACE", - "HYPHEN", - "LINE_BREAK" - ] + "STATE_UNSPECIFIED", + "CREATED", + "RUNNING", + "DONE", + "CANCELLED" + ], + "description": "Current state of the batch operation.", + "type": "string" }, - "isPrefix": { - "description": "True if break prepends the element.", - "type": "boolean" + "updateTime": { + "description": "The time when the operation result was last updated.", + "format": "google-datetime", + "type": "string" } }, - "id": "GoogleCloudVisionV1p1beta1TextAnnotationDetectedBreak", - "description": "Detected start or end of a structural component.", + "id": "GoogleCloudVisionV1p2beta1OperationMetadata", + "description": "Contains metadata for the BatchAnnotateImages operation.", "type": "object" }, - "GoogleCloudVisionV1p1beta1AnnotateImageRequest": { - "description": "Request for performing Google Cloud Vision API tasks over a user-provided\nimage, with user-requested features.", - "type": "object", + "GoogleCloudVisionV1p1beta1DominantColorsAnnotation": { "properties": { - "image": { - "description": "The image to be processed.", - "$ref": "GoogleCloudVisionV1p1beta1Image" - }, - "features": { - "description": "Requested features.", + "colors": { + "description": "RGB color values with their score and pixel fraction.", "type": "array", "items": { - "$ref": "GoogleCloudVisionV1p1beta1Feature" + "$ref": "GoogleCloudVisionV1p1beta1ColorInfo" } + } + }, + "id": "GoogleCloudVisionV1p1beta1DominantColorsAnnotation", + "description": "Set of dominant colors and their corresponding scores.", + "type": "object" + }, + "GoogleCloudVisionV1p2beta1OutputConfig": { + "description": "The desired output location and metadata.", + "type": "object", + "properties": { + "batchSize": { + "description": "The max number of response protos to put into each output JSON file on\nGoogle Cloud Storage.\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" }, - "imageContext": { - "description": "Additional context that may accompany the image.", - "$ref": "GoogleCloudVisionV1p1beta1ImageContext" + "gcsDestination": { + "description": "The Google Cloud Storage location to write the output(s) to.", + "$ref": "GoogleCloudVisionV1p2beta1GcsDestination" } }, - "id": "GoogleCloudVisionV1p1beta1AnnotateImageRequest" + "id": "GoogleCloudVisionV1p2beta1OutputConfig" }, - "GoogleCloudVisionV1p2beta1WebDetectionWebPage": { + "GoogleCloudVisionV1p2beta1Word": { + "description": "A word representation.", + "type": "object", "properties": { - "score": { - "description": "(Deprecated) Overall relevancy score for the web page.", + "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": "GoogleCloudVisionV1p2beta1BoundingPoly" + }, + "confidence": { + "description": "Confidence of the OCR results for the word. Range [0, 1].", "format": "float", "type": "number" }, - "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.", + "symbols": { + "description": "List of symbols in the word.\nThe order of the symbols follows the natural reading order.", "type": "array", "items": { - "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" + "$ref": "GoogleCloudVisionV1p2beta1Symbol" } }, - "url": { - "description": "The result web page URL.", + "property": { + "description": "Additional information detected for the word.", + "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty" + } + }, + "id": "GoogleCloudVisionV1p2beta1Word" + }, + "GoogleCloudVisionV1p2beta1WebDetectionWebLabel": { + "description": "Label to provide extra metadata for the web detection.", + "type": "object", + "properties": { + "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" }, - "pageTitle": { - "description": "Title for the web page, may contain HTML markups.", + "label": { + "description": "Label for extra metadata.", "type": "string" + } + }, + "id": "GoogleCloudVisionV1p2beta1WebDetectionWebLabel" + }, + "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" }, - "fullMatchingImages": { - "description": "Fully matching images on the page.\nCan include resized copies of the query image.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" - } + "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": "GoogleCloudVisionV1p1beta1BoundingPoly" } }, - "id": "GoogleCloudVisionV1p2beta1WebDetectionWebPage", - "description": "Metadata for web pages.", - "type": "object" + "id": "GoogleCloudVisionV1p1beta1CropHint" }, - "GoogleCloudVisionV1p2beta1Block": { - "description": "Logical element on the page.", + "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" + }, + "GoogleCloudVisionV1p2beta1Page": { "properties": { "property": { "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty", - "description": "Additional information detected for the block." - }, - "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": "GoogleCloudVisionV1p2beta1BoundingPoly" + "description": "Additional information detected on the page." }, "confidence": { - "description": "Confidence of the OCR results on the block. Range [0, 1].", + "description": "Confidence of the OCR results on the page. Range [0, 1].", "format": "float", "type": "number" }, - "paragraphs": { - "description": "List of paragraphs in this block (if this blocks is of type text).", + "height": { + "description": "Page height. For PDFs the unit is points. For images (including\nTIFFs) the unit is pixels.", + "format": "int32", + "type": "integer" + }, + "width": { + "description": "Page width. For PDFs the unit is points. For images (including\nTIFFs) the unit is pixels.", + "format": "int32", + "type": "integer" + }, + "blocks": { + "description": "List of blocks of text, images etc on this page.", "type": "array", "items": { - "$ref": "GoogleCloudVisionV1p2beta1Paragraph" + "$ref": "GoogleCloudVisionV1p2beta1Block" } } }, - "id": "GoogleCloudVisionV1p2beta1Block" + "id": "GoogleCloudVisionV1p2beta1Page", + "description": "Detected page from OCR.", + "type": "object" }, - "GoogleCloudVisionV1p2beta1CropHint": { - "description": "Single crop hint that is used to generate a new crop when serving an image.", + "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty": { + "description": "Additional information detected on the structural component.", "type": "object", "properties": { - "confidence": { - "description": "Confidence of this being a salient region. Range [0, 1].", + "detectedLanguages": { + "description": "A list of detected languages together with confidence.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationDetectedLanguage" + } + }, + "detectedBreak": { + "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationDetectedBreak", + "description": "Detected start or end of a text segment." + } + }, + "id": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty" + }, + "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", + "properties": { + "red": { + "description": "The amount of red in the color as a value in the interval [0, 1].", "format": "float", "type": "number" }, - "importanceFraction": { - "description": "Fraction of importance of this salient region with respect to the original\nimage.", + "green": { + "description": "The amount of green in the color as a value in the interval [0, 1].", "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": "GoogleCloudVisionV1p2beta1BoundingPoly" + "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" } }, - "id": "GoogleCloudVisionV1p2beta1CropHint" + "id": "Color" }, - "GoogleCloudVisionV1p1beta1Block": { + "GoogleCloudVisionV1p2beta1Symbol": { + "description": "A single symbol representation.", + "type": "object", "properties": { "property": { - "description": "Additional information detected for the block.", - "$ref": "GoogleCloudVisionV1p1beta1TextAnnotationTextProperty" - }, - "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" + "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty", + "description": "Additional information detected for the symbol." }, "boundingBox": { - "$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)." + "$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 on the block. Range [0, 1].", + "description": "Confidence of the OCR results for the symbol. Range [0, 1].", "format": "float", "type": "number" }, - "paragraphs": { - "description": "List of paragraphs in this block (if this blocks is of type text).", + "text": { + "description": "The actual UTF-8 representation of the symbol.", + "type": "string" + } + }, + "id": "GoogleCloudVisionV1p2beta1Symbol" + }, + "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", "items": { - "$ref": "GoogleCloudVisionV1p1beta1Paragraph" + "$ref": "GoogleCloudVisionV1p1beta1CropHint" } } }, - "id": "GoogleCloudVisionV1p1beta1Block", - "description": "Logical element on the page.", - "type": "object" + "id": "GoogleCloudVisionV1p1beta1CropHintsAnnotation" }, - "GoogleCloudVisionV1p1beta1Page": { + "GoogleCloudVisionV1p1beta1ImageContext": { "properties": { - "width": { - "description": "Page width. For PDFs the unit is points. For images (including\nTIFFs) the unit is pixels.", - "format": "int32", - "type": "integer" - }, - "blocks": { - "description": "List of blocks of text, images etc on this page.", + "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": { - "$ref": "GoogleCloudVisionV1p1beta1Block" + "type": "string" } }, - "property": { - "description": "Additional information detected on the page.", - "$ref": "GoogleCloudVisionV1p1beta1TextAnnotationTextProperty" + "webDetectionParams": { + "description": "Parameters for web detection.", + "$ref": "GoogleCloudVisionV1p1beta1WebDetectionParams" }, - "confidence": { - "description": "Confidence of the OCR results on the page. Range [0, 1].", - "format": "float", - "type": "number" + "latLongRect": { + "description": "Not used.", + "$ref": "GoogleCloudVisionV1p1beta1LatLongRect" }, - "height": { - "description": "Page height. For PDFs the unit is points. For images (including\nTIFFs) the unit is pixels.", - "format": "int32", - "type": "integer" + "cropHintsParams": { + "$ref": "GoogleCloudVisionV1p1beta1CropHintsParams", + "description": "Parameters for crop hints annotation request." } }, - "id": "GoogleCloudVisionV1p1beta1Page", - "description": "Detected page from OCR.", + "id": "GoogleCloudVisionV1p1beta1ImageContext", + "description": "Image context and/or feature-specific parameters.", "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.", + "GoogleCloudVisionV1p1beta1WebDetectionWebLabel": { + "description": "Label to provide extra metadata for the web detection.", "type": "object", "properties": { - "y": { - "description": "Y coordinate.", - "format": "int32", - "type": "integer" + "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" }, - "x": { - "description": "X coordinate.", - "format": "int32", - "type": "integer" + "label": { + "description": "Label for extra metadata.", + "type": "string" } }, - "id": "GoogleCloudVisionV1p2beta1Vertex" + "id": "GoogleCloudVisionV1p1beta1WebDetectionWebLabel" }, - "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.", + "GoogleCloudVisionV1p1beta1TextAnnotationDetectedLanguage": { + "description": "Detected language for a structural component.", "type": "object", "properties": { - "pages": { - "description": "List of pages detected by OCR.", + "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" + } + }, + "id": "GoogleCloudVisionV1p1beta1TextAnnotationDetectedLanguage" + }, + "GoogleCloudVisionV1p2beta1DominantColorsAnnotation": { + "properties": { + "colors": { + "description": "RGB color values with their score and pixel fraction.", "type": "array", "items": { - "$ref": "GoogleCloudVisionV1p1beta1Page" + "$ref": "GoogleCloudVisionV1p2beta1ColorInfo" } - }, - "text": { - "description": "UTF-8 text detected on the pages.", - "type": "string" } }, - "id": "GoogleCloudVisionV1p1beta1TextAnnotation" + "id": "GoogleCloudVisionV1p2beta1DominantColorsAnnotation", + "description": "Set of dominant colors and their corresponding scores.", + "type": "object" }, - "GoogleCloudVisionV1p1beta1BoundingPoly": { - "description": "A bounding polygon for the detected image annotation.", + "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.", "type": "object", "properties": { - "vertices": { - "description": "The bounding polygon vertices.", + "pages": { + "description": "List of pages detected by OCR.", "type": "array", "items": { - "$ref": "GoogleCloudVisionV1p1beta1Vertex" + "$ref": "GoogleCloudVisionV1p2beta1Page" } + }, + "text": { + "description": "UTF-8 text detected on the pages.", + "type": "string" } }, - "id": "GoogleCloudVisionV1p1beta1BoundingPoly" + "id": "GoogleCloudVisionV1p2beta1TextAnnotation" } }, "icons": { @@ -2534,11 +2537,11 @@ "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" + }, + "https://www.googleapis.com/auth/cloud-vision": { + "description": "Apply machine learning models to understand and label images" } } } @@ -2554,53 +2557,79 @@ "images": { "methods": { "annotate": { - "httpMethod": "POST", - "parameterOrder": [], + "description": "Run image detection and annotation for a batch of images.", + "request": { + "$ref": "GoogleCloudVisionV1p1beta1BatchAnnotateImagesRequest" + }, "response": { "$ref": "GoogleCloudVisionV1p1beta1BatchAnnotateImagesResponse" }, + "parameterOrder": [], + "httpMethod": "POST", "parameters": {}, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-vision" ], "flatPath": "v1p1beta1/images:annotate", - "id": "vision.images.annotate", "path": "v1p1beta1/images:annotate", - "description": "Run image detection and annotation for a batch of images.", - "request": { - "$ref": "GoogleCloudVisionV1p1beta1BatchAnnotateImagesRequest" - } + "id": "vision.images.annotate" } } } }, "parameters": { - "upload_protocol": { - "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "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" }, - "prettyPrint": { + "pp": { "location": "query", - "description": "Returns response with indentations and line breaks.", + "description": "Pretty-print response.", "type": "boolean", "default": "true" }, - "fields": { + "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": "Selector specifying which fields to include in a partial response.", + "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", - "location": "query" + "type": "string" }, - "callback": { - "description": "JSONP", - "type": "string", - "location": "query" + "fields": { + "location": "query", + "description": "Selector specifying which fields to include in a partial response.", + "type": "string" }, "$.xgafv": { "enumDescriptions": [ @@ -2615,9 +2644,12 @@ "description": "V1 error format.", "type": "string" }, + "callback": { + "description": "JSONP", + "type": "string", + "location": "query" + }, "alt": { - "description": "Data format for response.", - "default": "json", "enum": [ "json", "media", @@ -2629,38 +2661,9 @@ "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": { - "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" + "description": "Data format for response.", + "default": "json" } }, "version": "v1p1beta1", @@ -2668,8 +2671,5 @@ "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": "", - "basePath": "", - "id": "vision:v1p1beta1", - "documentationLink": "https://cloud.google.com/vision/", - "revision": "20180420" + "basePath": "" } diff --git a/DiscoveryJson/vision_v1p2beta1.json b/DiscoveryJson/vision_v1p2beta1.json index 53aab71654..34d88db32e 100644 --- a/DiscoveryJson/vision_v1p2beta1.json +++ b/DiscoveryJson/vision_v1p2beta1.json @@ -1,272 +1,158 @@ { - "discoveryVersion": "v1", - "version_module": true, - "schemas": { - "GoogleCloudVisionV1p2beta1WebDetectionWebEntity": { - "description": "Entity deduced from similar images on the Internet.", - "type": "object", - "properties": { - "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" - }, - "entityId": { - "description": "Opaque entity ID.", - "type": "string" + "ownerDomain": "google.com", + "name": "vision", + "batchPath": "batch", + "fullyEncodeReservedExpansion": true, + "title": "Cloud Vision API", + "ownerName": "Google", + "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).", + "request": { + "$ref": "GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesRequest" + }, + "response": { + "$ref": "Operation" + }, + "parameterOrder": [], + "httpMethod": "POST", + "parameters": {}, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-vision" + ], + "flatPath": "v1p2beta1/files:asyncBatchAnnotate", + "path": "v1p2beta1/files:asyncBatchAnnotate", + "id": "vision.files.asyncBatchAnnotate" } - }, - "id": "GoogleCloudVisionV1p2beta1WebDetectionWebEntity" + } }, - "GoogleCloudVisionV1p2beta1GcsSource": { - "properties": { - "uri": { - "description": "Google Cloud Storage URI for the input file. This must only be a\nGoogle Cloud Storage object. Wildcards are not currently supported.", - "type": "string" + "images": { + "methods": { + "annotate": { + "flatPath": "v1p2beta1/images:annotate", + "path": "v1p2beta1/images:annotate", + "id": "vision.images.annotate", + "request": { + "$ref": "GoogleCloudVisionV1p2beta1BatchAnnotateImagesRequest" + }, + "description": "Run image detection and annotation for a batch of images.", + "response": { + "$ref": "GoogleCloudVisionV1p2beta1BatchAnnotateImagesResponse" + }, + "parameterOrder": [], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-vision" + ], + "parameters": {} } - }, - "id": "GoogleCloudVisionV1p2beta1GcsSource", - "description": "The Google Cloud Storage location where the input will be read from.", - "type": "object" + } + } + }, + "parameters": { + "oauth_token": { + "location": "query", + "description": "OAuth 2.0 token for the current user.", + "type": "string" }, - "GoogleCloudVisionV1p2beta1EntityAnnotation": { - "description": "Set of detected entity features.", - "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": "GoogleCloudVisionV1p2beta1LocationInfo" - } - }, - "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": { - "description": "Image region to which this entity belongs. Not produced\nfor `LABEL_DETECTION` features.", - "$ref": "GoogleCloudVisionV1p2beta1BoundingPoly" - }, - "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": { - "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": "GoogleCloudVisionV1p2beta1Property" - } - }, - "score": { - "description": "Overall score of the result. Range [0, 1].", - "format": "float", - "type": "number" - } - }, - "id": "GoogleCloudVisionV1p2beta1EntityAnnotation" + "bearer_token": { + "description": "OAuth bearer token.", + "type": "string", + "location": "query" }, - "GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesResponse": { - "description": "Response to an async batch file annotation request.", - "type": "object", - "properties": { - "responses": { - "description": "The list of file annotation responses, one for each request in\nAsyncBatchAnnotateFilesRequest.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse" - } - } - }, - "id": "GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesResponse" + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "type": "string", + "location": "query" }, - "GoogleCloudVisionV1p2beta1AnnotateFileResponse": { - "description": "Response to a single file annotation request. A file may contain one or more\nimages, which individually have their own responses.", - "type": "object", - "properties": { - "responses": { - "description": "Individual responses to images found within the file.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p2beta1AnnotateImageResponse" - } - }, - "inputConfig": { - "description": "Information about the file for which this response is generated.", - "$ref": "GoogleCloudVisionV1p2beta1InputConfig" - } - }, - "id": "GoogleCloudVisionV1p2beta1AnnotateFileResponse" + "prettyPrint": { + "description": "Returns response with indentations and line breaks.", + "type": "boolean", + "default": "true", + "location": "query" }, - "GoogleCloudVisionV1p2beta1TextAnnotationDetectedLanguage": { - "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": "GoogleCloudVisionV1p2beta1TextAnnotationDetectedLanguage" + "uploadType": { + "location": "query", + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string" }, - "GoogleCloudVisionV1p2beta1WebDetectionWebPage": { - "description": "Metadata for web pages.", - "type": "object", - "properties": { - "score": { - "description": "(Deprecated) Overall relevancy score for the web page.", - "format": "float", - "type": "number" - }, - "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": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" - } - }, - "url": { - "description": "The result web page URL.", - "type": "string" - }, - "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": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" - } - } - }, - "id": "GoogleCloudVisionV1p2beta1WebDetectionWebPage" + "fields": { + "location": "query", + "description": "Selector specifying which fields to include in a partial response.", + "type": "string" }, - "GoogleCloudVisionV1p2beta1Block": { - "description": "Logical element on the page.", - "type": "object", - "properties": { - "property": { - "description": "Additional information detected for the block.", - "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty" - }, - "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": "GoogleCloudVisionV1p2beta1BoundingPoly" - }, - "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": "GoogleCloudVisionV1p2beta1Paragraph" - } - } - }, - "id": "GoogleCloudVisionV1p2beta1Block" + "$.xgafv": { + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "enum": [ + "1", + "2" + ], + "description": "V1 error format.", + "type": "string" }, - "GoogleCloudVisionV1p2beta1CropHint": { - "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": "GoogleCloudVisionV1p2beta1BoundingPoly" - } - }, - "id": "GoogleCloudVisionV1p2beta1CropHint", - "description": "Single crop hint that is used to generate a new crop when serving an image.", - "type": "object" + "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" + ] }, - "GoogleCloudVisionV1p2beta1Vertex": { - "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": "GoogleCloudVisionV1p2beta1Vertex" + "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" }, - "GoogleCloudVisionV1p2beta1ImageSource": { - "description": "External image source (Google Cloud Storage or web URL image location).", - "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": "GoogleCloudVisionV1p2beta1ImageSource" + "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" + } + }, + "version": "v1p2beta1", + "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", + "basePath": "", + "documentationLink": "https://cloud.google.com/vision/", + "id": "vision:v1p2beta1", + "revision": "20180420", + "discoveryVersion": "v1", + "version_module": true, + "schemas": { "GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesRequest": { "description": "Multiple async file annotation requests are batched into a single service\ncall.", "type": "object", @@ -282,6 +168,8 @@ "id": "GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesRequest" }, "GoogleCloudVisionV1p2beta1Image": { + "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.", @@ -289,24 +177,11 @@ "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." - } - }, - "id": "GoogleCloudVisionV1p2beta1Image", - "description": "Client image to perform Google Cloud Vision API tasks over.", - "type": "object" - }, - "GoogleCloudVisionV1p2beta1GcsDestination": { - "description": "The Google Cloud Storage location where the output will be written to.", - "type": "object", - "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" + "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.", + "$ref": "GoogleCloudVisionV1p2beta1ImageSource" } }, - "id": "GoogleCloudVisionV1p2beta1GcsDestination" + "id": "GoogleCloudVisionV1p2beta1Image" }, "GoogleCloudVisionV1p2beta1OperationMetadata": { "properties": { @@ -343,74 +218,70 @@ "description": "Contains metadata for the BatchAnnotateImages operation.", "type": "object" }, - "GoogleCloudVisionV1p2beta1AsyncAnnotateFileRequest": { + "GoogleCloudVisionV1p2beta1GcsDestination": { "properties": { - "imageContext": { - "description": "Additional context that may accompany the image(s) in the file.", - "$ref": "GoogleCloudVisionV1p2beta1ImageContext" - }, - "outputConfig": { - "$ref": "GoogleCloudVisionV1p2beta1OutputConfig", - "description": "Required. The desired output location and metadata (e.g. format)." - }, - "inputConfig": { - "description": "Required. Information about the input file.", - "$ref": "GoogleCloudVisionV1p2beta1InputConfig" - }, - "features": { - "description": "Required. Requested features.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p2beta1Feature" - } + "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" } }, - "id": "GoogleCloudVisionV1p2beta1AsyncAnnotateFileRequest", - "description": "An offline file annotation request.", + "id": "GoogleCloudVisionV1p2beta1GcsDestination", + "description": "The Google Cloud Storage location where the output will be written to.", "type": "object" }, "GoogleCloudVisionV1p2beta1OutputConfig": { "description": "The desired output location and metadata.", "type": "object", "properties": { + "gcsDestination": { + "$ref": "GoogleCloudVisionV1p2beta1GcsDestination", + "description": "The Google Cloud Storage location to write the output(s) to." + }, "batchSize": { "description": "The max number of response protos to put into each output JSON file on\nGoogle Cloud Storage.\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." } }, "id": "GoogleCloudVisionV1p2beta1OutputConfig" }, - "GoogleCloudVisionV1p2beta1WebDetectionWebLabel": { - "description": "Label to provide extra metadata for the web detection.", + "GoogleCloudVisionV1p2beta1AsyncAnnotateFileRequest": { + "description": "An offline file annotation request.", "type": "object", "properties": { - "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" + "inputConfig": { + "description": "Required. Information about the input file.", + "$ref": "GoogleCloudVisionV1p2beta1InputConfig" }, - "label": { - "description": "Label for extra metadata.", - "type": "string" + "features": { + "description": "Required. Requested features.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1Feature" + } + }, + "imageContext": { + "$ref": "GoogleCloudVisionV1p2beta1ImageContext", + "description": "Additional context that may accompany the image(s) in the file." + }, + "outputConfig": { + "description": "Required. The desired output location and metadata (e.g. format).", + "$ref": "GoogleCloudVisionV1p2beta1OutputConfig" } }, - "id": "GoogleCloudVisionV1p2beta1WebDetectionWebLabel" + "id": "GoogleCloudVisionV1p2beta1AsyncAnnotateFileRequest" }, "GoogleCloudVisionV1p2beta1Word": { "description": "A word representation.", "type": "object", "properties": { "property": { - "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty", - "description": "Additional information detected for the word." + "description": "Additional information detected for the word.", + "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty" }, "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)." + "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": "GoogleCloudVisionV1p2beta1BoundingPoly" }, "confidence": { "description": "Confidence of the OCR results for the word. Range [0, 1].", @@ -427,23 +298,53 @@ }, "id": "GoogleCloudVisionV1p2beta1Word" }, - "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty": { - "description": "Additional information detected on the structural component.", + "GoogleCloudVisionV1p2beta1WebDetectionWebLabel": { + "description": "Label to provide extra metadata for the web detection.", "type": "object", "properties": { - "detectedBreak": { - "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationDetectedBreak", - "description": "Detected start or end of a text segment." + "label": { + "description": "Label for extra metadata.", + "type": "string" }, - "detectedLanguages": { - "description": "A list of detected languages together with confidence.", + "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": "GoogleCloudVisionV1p2beta1WebDetectionWebLabel" + }, + "GoogleCloudVisionV1p2beta1Page": { + "properties": { + "width": { + "description": "Page width. For PDFs the unit is points. For images (including\nTIFFs) the unit is pixels.", + "format": "int32", + "type": "integer" + }, + "blocks": { + "description": "List of blocks of text, images etc on this page.", "type": "array", "items": { - "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationDetectedLanguage" + "$ref": "GoogleCloudVisionV1p2beta1Block" } + }, + "property": { + "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty", + "description": "Additional information detected on the page." + }, + "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" } }, - "id": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty" + "id": "GoogleCloudVisionV1p2beta1Page", + "description": "Detected page from OCR.", + "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.", @@ -462,44 +363,31 @@ }, "id": "LatLng" }, - "GoogleCloudVisionV1p2beta1Page": { - "description": "Detected page from OCR.", + "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty": { + "description": "Additional information detected on the structural component.", "type": "object", "properties": { - "property": { - "description": "Additional information detected on the page.", - "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty" - }, - "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" - }, - "width": { - "description": "Page width. For PDFs the unit is points. For images (including\nTIFFs) the unit is pixels.", - "format": "int32", - "type": "integer" - }, - "blocks": { - "description": "List of blocks of text, images etc on this page.", + "detectedLanguages": { + "description": "A list of detected languages together with confidence.", "type": "array", "items": { - "$ref": "GoogleCloudVisionV1p2beta1Block" + "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationDetectedLanguage" } + }, + "detectedBreak": { + "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationDetectedBreak", + "description": "Detected start or end of a text segment." } }, - "id": "GoogleCloudVisionV1p2beta1Page" + "id": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty" }, "GoogleCloudVisionV1p2beta1AnnotateImageRequest": { + "description": "Request for performing Google Cloud Vision API tasks over a user-provided\nimage, with user-requested features.", + "type": "object", "properties": { "image": { - "$ref": "GoogleCloudVisionV1p2beta1Image", - "description": "The image to be processed." + "description": "The image to be processed.", + "$ref": "GoogleCloudVisionV1p2beta1Image" }, "features": { "description": "Requested features.", @@ -509,13 +397,11 @@ } }, "imageContext": { - "description": "Additional context that may accompany the image.", - "$ref": "GoogleCloudVisionV1p2beta1ImageContext" + "$ref": "GoogleCloudVisionV1p2beta1ImageContext", + "description": "Additional context that may accompany the image." } }, - "id": "GoogleCloudVisionV1p2beta1AnnotateImageRequest", - "description": "Request for performing Google Cloud Vision API tasks over a user-provided\nimage, with user-requested features.", - "type": "object" + "id": "GoogleCloudVisionV1p2beta1AnnotateImageRequest" }, "GoogleCloudVisionV1p2beta1CropHintsParams": { "description": "Parameters for crop hints annotation request.", @@ -537,8 +423,8 @@ "type": "object", "properties": { "property": { - "description": "Additional information detected for the symbol.", - "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty" + "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty", + "description": "Additional information detected for the symbol." }, "boundingBox": { "$ref": "GoogleCloudVisionV1p2beta1BoundingPoly", @@ -560,6 +446,11 @@ "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", "properties": { + "red": { + "description": "The amount of red 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", @@ -574,11 +465,6 @@ "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" @@ -605,34 +491,20 @@ "description": "List of pages detected by OCR.", "type": "array", "items": { - "$ref": "GoogleCloudVisionV1p2beta1Page" - } - }, - "text": { - "description": "UTF-8 text detected on the pages.", - "type": "string" - } - }, - "id": "GoogleCloudVisionV1p2beta1TextAnnotation" - }, - "GoogleCloudVisionV1p2beta1WebDetection": { - "description": "Relevant information for the image from the Internet.", - "type": "object", - "properties": { - "pagesWithMatchingImages": { - "description": "Web pages containing the matching images from the Internet.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebPage" - } - }, - "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": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" + "$ref": "GoogleCloudVisionV1p2beta1Page" } }, + "text": { + "description": "UTF-8 text detected on the pages.", + "type": "string" + } + }, + "id": "GoogleCloudVisionV1p2beta1TextAnnotation" + }, + "GoogleCloudVisionV1p2beta1WebDetection": { + "description": "Relevant information for the image from the Internet.", + "type": "object", + "properties": { "visuallySimilarImages": { "description": "The visually similar image results.", "type": "array", @@ -660,20 +532,34 @@ "items": { "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebEntity" } + }, + "pagesWithMatchingImages": { + "description": "Web pages containing the matching images from the Internet.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebPage" + } + }, + "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": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" + } } }, "id": "GoogleCloudVisionV1p2beta1WebDetection" }, "GoogleCloudVisionV1p2beta1LocationInfo": { - "description": "Detected entity location information.", - "type": "object", "properties": { "latLng": { "$ref": "LatLng", "description": "lat/long location coordinates." } }, - "id": "GoogleCloudVisionV1p2beta1LocationInfo" + "id": "GoogleCloudVisionV1p2beta1LocationInfo", + "description": "Detected entity location information.", + "type": "object" }, "GoogleCloudVisionV1p2beta1CropHintsAnnotation": { "description": "Set of crop hints that are used to generate new crops when serving images.", @@ -772,43 +658,32 @@ "type": "string" }, "position": { - "description": "Face landmark position.", - "$ref": "GoogleCloudVisionV1p2beta1Position" + "$ref": "GoogleCloudVisionV1p2beta1Position", + "description": "Face landmark position." } }, "id": "GoogleCloudVisionV1p2beta1FaceAnnotationLandmark" }, "GoogleCloudVisionV1p2beta1NormalizedVertex": { + "description": "A vertex represents a 2D point in the image.\nNOTE: the normalized vertex coordinates are relative to the original image\nand range from 0 to 1.", + "type": "object", "properties": { - "y": { - "description": "Y coordinate.", + "x": { + "description": "X coordinate.", "format": "float", "type": "number" }, - "x": { - "description": "X coordinate.", + "y": { + "description": "Y coordinate.", "format": "float", "type": "number" } }, - "id": "GoogleCloudVisionV1p2beta1NormalizedVertex", - "description": "A vertex represents a 2D point in the image.\nNOTE: the normalized vertex coordinates are relative to the original image\nand range from 0 to 1.", - "type": "object" + "id": "GoogleCloudVisionV1p2beta1NormalizedVertex" }, "GoogleCloudVisionV1p2beta1FaceAnnotation": { - "description": "A face annotation object contains the results of face detection.", - "type": "object", "properties": { - "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.", - "$ref": "GoogleCloudVisionV1p2beta1BoundingPoly" - }, - "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": { + "blurredLikelihood": { "enumDescriptions": [ "Unknown likelihood.", "It is very unlikely that the image belongs to the specified vertical.", @@ -825,20 +700,11 @@ "LIKELY", "VERY_LIKELY" ], - "description": "Sorrow likelihood.", + "description": "Blurred 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" - }, - "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": "GoogleCloudVisionV1p2beta1BoundingPoly" - }, - "angerLikelihood": { - "description": "Anger likelihood.", + "headwearLikelihood": { + "description": "Headwear likelihood.", "type": "string", "enumDescriptions": [ "Unknown likelihood.", @@ -857,16 +723,16 @@ "VERY_LIKELY" ] }, - "landmarks": { - "description": "Detected face landmarks.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p2beta1FaceAnnotationLandmark" - } + "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." }, - "surpriseLikelihood": { - "description": "Surprise likelihood.", - "type": "string", + "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.", @@ -882,14 +748,47 @@ "POSSIBLE", "LIKELY", "VERY_LIKELY" - ] + ], + "description": "Sorrow likelihood.", + "type": "string" }, - "landmarkingConfidence": { - "description": "Face landmarking confidence. Range [0, 1].", + "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" }, - "joyLikelihood": { + "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." + }, + "angerLikelihood": { + "enum": [ + "UNKNOWN", + "VERY_UNLIKELY", + "UNLIKELY", + "POSSIBLE", + "LIKELY", + "VERY_LIKELY" + ], + "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." + ] + }, + "landmarks": { + "description": "Detected face landmarks.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1FaceAnnotationLandmark" + } + }, + "surpriseLikelihood": { "enumDescriptions": [ "Unknown likelihood.", "It is very unlikely that the image belongs to the specified vertical.", @@ -906,11 +805,11 @@ "LIKELY", "VERY_LIKELY" ], - "description": "Joy likelihood.", + "description": "Surprise likelihood.", "type": "string" }, - "underExposedLikelihood": { - "description": "Under-exposed likelihood.", + "joyLikelihood": { + "description": "Joy likelihood.", "type": "string", "enumDescriptions": [ "Unknown likelihood.", @@ -929,8 +828,8 @@ "VERY_LIKELY" ] }, - "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].", + "landmarkingConfidence": { + "description": "Face landmarking confidence. Range [0, 1].", "format": "float", "type": "number" }, @@ -939,27 +838,14 @@ "format": "float", "type": "number" }, - "blurredLikelihood": { - "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": "Blurred likelihood.", - "type": "string" + "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" }, - "headwearLikelihood": { + "underExposedLikelihood": { + "description": "Under-exposed likelihood.", + "type": "string", "enumDescriptions": [ "Unknown likelihood.", "It is very unlikely that the image belongs to the specified vertical.", @@ -975,12 +861,12 @@ "POSSIBLE", "LIKELY", "VERY_LIKELY" - ], - "description": "Headwear likelihood.", - "type": "string" + ] } }, - "id": "GoogleCloudVisionV1p2beta1FaceAnnotation" + "id": "GoogleCloudVisionV1p2beta1FaceAnnotation", + "description": "A face annotation object contains the results of face detection.", + "type": "object" }, "GoogleCloudVisionV1p2beta1WebDetectionWebImage": { "properties": { @@ -1003,19 +889,6 @@ "type": "object", "properties": { "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." - ], "enum": [ "TYPE_UNSPECIFIED", "FACE_DETECTION", @@ -1030,7 +903,20 @@ "WEB_DETECTION" ], "description": "The feature type.", - "type": "string" + "type": "string", + "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." + ] }, "maxResults": { "description": "Maximum number of results of this type. Does not apply to\n`TEXT_DETECTION`, `DOCUMENT_TEXT_DETECTION`, or `CROP_HINTS`.", @@ -1056,7 +942,13 @@ "id": "GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse" }, "GoogleCloudVisionV1p2beta1ImageContext": { + "description": "Image context and/or feature-specific parameters.", + "type": "object", "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).", "type": "array", @@ -1069,21 +961,13 @@ "$ref": "GoogleCloudVisionV1p2beta1WebDetectionParams" }, "latLongRect": { - "description": "Not used.", - "$ref": "GoogleCloudVisionV1p2beta1LatLongRect" - }, - "cropHintsParams": { - "$ref": "GoogleCloudVisionV1p2beta1CropHintsParams", - "description": "Parameters for crop hints annotation request." + "$ref": "GoogleCloudVisionV1p2beta1LatLongRect", + "description": "Not used." } }, - "id": "GoogleCloudVisionV1p2beta1ImageContext", - "description": "Image context and/or feature-specific parameters.", - "type": "object" + "id": "GoogleCloudVisionV1p2beta1ImageContext" }, "GoogleCloudVisionV1p2beta1ColorInfo": { - "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].", @@ -1091,8 +975,8 @@ "type": "number" }, "color": { - "description": "RGB components of the color.", - "$ref": "Color" + "$ref": "Color", + "description": "RGB components of the color." }, "score": { "description": "Image-specific score for this color. Value in range [0, 1].", @@ -1100,12 +984,16 @@ "type": "number" } }, - "id": "GoogleCloudVisionV1p2beta1ColorInfo" + "id": "GoogleCloudVisionV1p2beta1ColorInfo", + "description": "Color information consists of RGB channels, score, and the fraction of\nthe image that the color occupies in the image.", + "type": "object" }, "GoogleCloudVisionV1p2beta1AnnotateImageResponse": { - "description": "Response to an image annotation request.", - "type": "object", "properties": { + "safeSearchAnnotation": { + "$ref": "GoogleCloudVisionV1p2beta1SafeSearchAnnotation", + "description": "If present, safe-search annotation has completed successfully." + }, "landmarkAnnotations": { "description": "If present, landmark detection has completed successfully.", "type": "array", @@ -1132,8 +1020,8 @@ } }, "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." + "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": "GoogleCloudVisionV1p2beta1TextAnnotation", @@ -1147,12 +1035,12 @@ } }, "imagePropertiesAnnotation": { - "description": "If present, image properties were extracted successfully.", - "$ref": "GoogleCloudVisionV1p2beta1ImageProperties" + "$ref": "GoogleCloudVisionV1p2beta1ImageProperties", + "description": "If present, image properties were extracted successfully." }, "context": { - "description": "If present, contextual information is needed to understand where this image\ncomes from.", - "$ref": "GoogleCloudVisionV1p2beta1ImageAnnotationContext" + "$ref": "GoogleCloudVisionV1p2beta1ImageAnnotationContext", + "description": "If present, contextual information is needed to understand where this image\ncomes from." }, "logoAnnotations": { "description": "If present, logo detection has completed successfully.", @@ -1162,66 +1050,50 @@ } }, "webDetection": { - "$ref": "GoogleCloudVisionV1p2beta1WebDetection", - "description": "If present, web detection has completed successfully." - }, - "safeSearchAnnotation": { - "$ref": "GoogleCloudVisionV1p2beta1SafeSearchAnnotation", - "description": "If present, safe-search annotation has completed successfully." + "description": "If present, web detection has completed successfully.", + "$ref": "GoogleCloudVisionV1p2beta1WebDetection" } }, - "id": "GoogleCloudVisionV1p2beta1AnnotateImageResponse" - }, - "GoogleCloudVisionV1p2beta1Property": { - "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": "GoogleCloudVisionV1p2beta1Property" + "id": "GoogleCloudVisionV1p2beta1AnnotateImageResponse", + "description": "Response to an image annotation request.", + "type": "object" }, "GoogleCloudVisionV1p2beta1ImageProperties": { "description": "Stores image properties, such as dominant colors.", "type": "object", "properties": { "dominantColors": { - "$ref": "GoogleCloudVisionV1p2beta1DominantColorsAnnotation", - "description": "If present, dominant colors completed successfully." + "description": "If present, dominant colors completed successfully.", + "$ref": "GoogleCloudVisionV1p2beta1DominantColorsAnnotation" } }, "id": "GoogleCloudVisionV1p2beta1ImageProperties" }, - "GoogleCloudVisionV1p2beta1BatchAnnotateImagesRequest": { - "description": "Multiple image annotation requests are batched into a single service call.", - "type": "object", - "properties": { - "requests": { - "description": "Individual image annotation requests for this batch.", - "type": "array", - "items": { - "$ref": "GoogleCloudVisionV1p2beta1AnnotateImageRequest" - } + "GoogleCloudVisionV1p2beta1Property": { + "description": "A `Property` consists of a user-supplied name/value pair.", + "type": "object", + "properties": { + "uint64Value": { + "description": "Value of numeric properties.", + "format": "uint64", + "type": "string" + }, + "name": { + "description": "Name of the property.", + "type": "string" + }, + "value": { + "description": "Value of the property.", + "type": "string" } }, - "id": "GoogleCloudVisionV1p2beta1BatchAnnotateImagesRequest" + "id": "GoogleCloudVisionV1p2beta1Property" }, "GoogleCloudVisionV1p2beta1SafeSearchAnnotation": { "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": { + "adult": { "enumDescriptions": [ "Unknown likelihood.", "It is very unlikely that the image belongs to the specified vertical.", @@ -1238,10 +1110,18 @@ "LIKELY", "VERY_LIKELY" ], - "description": "Likelihood that this is a medical image.", + "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" }, - "racy": { + "spoof": { + "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", @@ -1250,8 +1130,10 @@ "LIKELY", "VERY_LIKELY" ], - "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", + "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" + }, + "medical": { "enumDescriptions": [ "Unknown likelihood.", "It is very unlikely that the image belongs to the specified vertical.", @@ -1259,9 +1141,19 @@ "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" }, - "violence": { + "racy": { "enumDescriptions": [ "Unknown likelihood.", "It is very unlikely that the image belongs to the specified vertical.", @@ -1278,10 +1170,10 @@ "LIKELY", "VERY_LIKELY" ], - "description": "Likelihood that this image contains violent content.", + "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" }, - "adult": { + "violence": { "enumDescriptions": [ "Unknown likelihood.", "It is very unlikely that the image belongs to the specified vertical.", @@ -1298,265 +1190,524 @@ "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.", + "description": "Likelihood that this image contains violent content.", + "type": "string" + } + }, + "id": "GoogleCloudVisionV1p2beta1SafeSearchAnnotation" + }, + "GoogleCloudVisionV1p2beta1BatchAnnotateImagesRequest": { + "properties": { + "requests": { + "description": "Individual image annotation requests for this batch.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1AnnotateImageRequest" + } + } + }, + "id": "GoogleCloudVisionV1p2beta1BatchAnnotateImagesRequest", + "description": "Multiple image annotation requests are batched into a single service call.", + "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": { + "$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" + }, + "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" + }, + "GoogleCloudVisionV1p2beta1InputConfig": { + "description": "The desired input location and metadata.", + "type": "object", + "properties": { + "gcsSource": { + "description": "The Google Cloud Storage location to read the input from.", + "$ref": "GoogleCloudVisionV1p2beta1GcsSource" + }, + "mimeType": { + "description": "The type of the file. Currently only \"application/pdf\" and \"image/tiff\"\nare supported. Wildcards are not supported.", + "type": "string" + } + }, + "id": "GoogleCloudVisionV1p2beta1InputConfig" + }, + "GoogleCloudVisionV1p2beta1Paragraph": { + "description": "Structural unit of text representing a number of words in certain order.", + "type": "object", + "properties": { + "property": { + "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty", + "description": "Additional information detected for the paragraph." + }, + "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" + }, + "words": { + "description": "List of words in this paragraph.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1Word" + } + } + }, + "id": "GoogleCloudVisionV1p2beta1Paragraph" + }, + "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" + }, + "GoogleCloudVisionV1p2beta1BatchAnnotateImagesResponse": { + "description": "Response to a batch image annotation request.", + "type": "object", + "properties": { + "responses": { + "description": "Individual responses to image annotation requests within the batch.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1AnnotateImageResponse" + } + } + }, + "id": "GoogleCloudVisionV1p2beta1BatchAnnotateImagesResponse" + }, + "GoogleCloudVisionV1p2beta1BoundingPoly": { + "description": "A bounding polygon for the detected image annotation.", + "type": "object", + "properties": { + "normalizedVertices": { + "description": "The bounding polygon normalized vertices.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1NormalizedVertex" + } + }, + "vertices": { + "description": "The bounding polygon vertices.", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1Vertex" + } + } + }, + "id": "GoogleCloudVisionV1p2beta1BoundingPoly" + }, + "GoogleCloudVisionV1p2beta1TextAnnotationDetectedBreak": { + "description": "Detected start or end of a structural component.", + "type": "object", + "properties": { + "type": { + "description": "Detected break type.", + "type": "string", + "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" + ] + }, + "isPrefix": { + "description": "True if break prepends the element.", + "type": "boolean" + } + }, + "id": "GoogleCloudVisionV1p2beta1TextAnnotationDetectedBreak" + }, + "GoogleCloudVisionV1p2beta1LatLongRect": { + "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": "GoogleCloudVisionV1p2beta1LatLongRect" + }, + "GoogleCloudVisionV1p2beta1WebDetectionParams": { + "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": "GoogleCloudVisionV1p2beta1WebDetectionParams" + }, + "GoogleCloudVisionV1p2beta1ImageAnnotationContext": { + "description": "If an image was produced from a file (e.g. a PDF), this message gives\ninformation about the source of that image.", + "type": "object", + "properties": { + "uri": { + "description": "The URI of the file used to produce the image.", "type": "string" }, - "spoof": { - "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": "Spoof likelihood. The likelihood that an modification\nwas made to the image's canonical version to make it appear\nfunny or offensive.", - "type": "string" + "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" } }, - "id": "GoogleCloudVisionV1p2beta1SafeSearchAnnotation" + "id": "GoogleCloudVisionV1p2beta1ImageAnnotationContext" }, - "Operation": { + "GoogleCloudVisionV1p2beta1Position": { "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" + "x": { + "description": "X coordinate.", + "format": "float", + "type": "number" }, - "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" + "z": { + "description": "Z coordinate (or depth).", + "format": "float", + "type": "number" }, - "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`.", + "y": { + "description": "Y coordinate.", + "format": "float", + "type": "number" + } + }, + "id": "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.", + "type": "object" + }, + "GoogleCloudVisionV1p2beta1WebDetectionWebEntity": { + "description": "Entity deduced from similar images on the Internet.", + "type": "object", + "properties": { + "entityId": { + "description": "Opaque entity ID.", "type": "string" }, - "error": { - "description": "The error result of the operation in case of failure or cancellation.", - "$ref": "Status" + "description": { + "description": "Canonical description of the entity, in English.", + "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" + "score": { + "description": "Overall relevancy score for the entity.\nNot normalized and not comparable across different image queries.", + "format": "float", + "type": "number" } }, - "id": "Operation", - "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", - "type": "object" + "id": "GoogleCloudVisionV1p2beta1WebDetectionWebEntity" }, - "GoogleCloudVisionV1p2beta1InputConfig": { + "GoogleCloudVisionV1p2beta1GcsSource": { + "description": "The Google Cloud Storage location where the input will be read from.", + "type": "object", "properties": { - "gcsSource": { - "description": "The Google Cloud Storage location to read the input from.", - "$ref": "GoogleCloudVisionV1p2beta1GcsSource" - }, - "mimeType": { - "description": "The type of the file. Currently only \"application/pdf\" and \"image/tiff\"\nare supported. Wildcards are not supported.", + "uri": { + "description": "Google Cloud Storage URI for the input file. This must only be a\nGoogle Cloud Storage object. Wildcards are not currently supported.", "type": "string" } }, - "id": "GoogleCloudVisionV1p2beta1InputConfig", - "description": "The desired input location and metadata.", - "type": "object" + "id": "GoogleCloudVisionV1p2beta1GcsSource" }, - "GoogleCloudVisionV1p2beta1Paragraph": { + "GoogleCloudVisionV1p2beta1EntityAnnotation": { + "description": "Set of detected entity features.", + "type": "object", "properties": { - "property": { - "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty", - "description": "Additional information detected for the paragraph." + "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" }, - "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": "GoogleCloudVisionV1p2beta1BoundingPoly" + "description": { + "description": "Entity textual description, expressed in its `locale` language.", + "type": "string" }, - "confidence": { - "description": "Confidence of the OCR results for the paragraph. Range [0, 1].", + "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": "GoogleCloudVisionV1p2beta1Property" + } + }, + "score": { + "description": "Overall score of the result. Range [0, 1].", "format": "float", "type": "number" }, - "words": { - "description": "List of words in this paragraph.", + "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": "GoogleCloudVisionV1p2beta1Word" + "$ref": "GoogleCloudVisionV1p2beta1LocationInfo" } + }, + "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": { + "description": "Image region to which this entity belongs. Not produced\nfor `LABEL_DETECTION` features.", + "$ref": "GoogleCloudVisionV1p2beta1BoundingPoly" + }, + "locale": { + "description": "The language code for the locale in which the entity textual\n`description` is expressed.", + "type": "string" } }, - "id": "GoogleCloudVisionV1p2beta1Paragraph", - "description": "Structural unit of text representing a number of words in certain order.", - "type": "object" + "id": "GoogleCloudVisionV1p2beta1EntityAnnotation" }, - "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.", + "GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesResponse": { + "description": "Response to an async batch file annotation request.", "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.", + "responses": { + "description": "The list of file annotation responses, one for each request in\nAsyncBatchAnnotateFilesRequest.", "type": "array", "items": { - "additionalProperties": { - "description": "Properties of the object. Contains field @type with type URL.", - "type": "any" - }, - "type": "object" + "$ref": "GoogleCloudVisionV1p2beta1AsyncAnnotateFileResponse" } + } + }, + "id": "GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesResponse" + }, + "GoogleCloudVisionV1p2beta1TextAnnotationDetectedLanguage": { + "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" }, - "code": { - "description": "The status code, which should be an enum value of google.rpc.Code.", - "format": "int32", - "type": "integer" + "confidence": { + "description": "Confidence of detected language. Range [0, 1].", + "format": "float", + "type": "number" } }, - "id": "Status" + "id": "GoogleCloudVisionV1p2beta1TextAnnotationDetectedLanguage" }, - "GoogleCloudVisionV1p2beta1BatchAnnotateImagesResponse": { - "description": "Response to a batch image annotation request.", + "GoogleCloudVisionV1p2beta1AnnotateFileResponse": { + "description": "Response to a single file annotation request. A file may contain one or more\nimages, which individually have their own responses.", "type": "object", "properties": { "responses": { - "description": "Individual responses to image annotation requests within the batch.", + "description": "Individual responses to images found within the file.", "type": "array", "items": { "$ref": "GoogleCloudVisionV1p2beta1AnnotateImageResponse" } + }, + "inputConfig": { + "$ref": "GoogleCloudVisionV1p2beta1InputConfig", + "description": "Information about the file for which this response is generated." } }, - "id": "GoogleCloudVisionV1p2beta1BatchAnnotateImagesResponse" + "id": "GoogleCloudVisionV1p2beta1AnnotateFileResponse" }, - "GoogleCloudVisionV1p2beta1BoundingPoly": { - "description": "A bounding polygon for the detected image annotation.", + "GoogleCloudVisionV1p2beta1WebDetectionWebPage": { + "description": "Metadata for web pages.", "type": "object", "properties": { - "normalizedVertices": { - "description": "The bounding polygon normalized vertices.", + "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": "GoogleCloudVisionV1p2beta1NormalizedVertex" + "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" } }, - "vertices": { - "description": "The bounding polygon vertices.", + "score": { + "description": "(Deprecated) Overall relevancy score for the web page.", + "format": "float", + "type": "number" + }, + "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": "GoogleCloudVisionV1p2beta1Vertex" + "$ref": "GoogleCloudVisionV1p2beta1WebDetectionWebImage" } + }, + "url": { + "description": "The result web page URL.", + "type": "string" } }, - "id": "GoogleCloudVisionV1p2beta1BoundingPoly" + "id": "GoogleCloudVisionV1p2beta1WebDetectionWebPage" }, - "GoogleCloudVisionV1p2beta1TextAnnotationDetectedBreak": { + "GoogleCloudVisionV1p2beta1Block": { "properties": { - "type": { - "description": "Detected break type.", + "property": { + "$ref": "GoogleCloudVisionV1p2beta1TextAnnotationTextProperty", + "description": "Additional information detected for the block." + }, + "blockType": { + "description": "Detected block type (text, image etc) for this block.", "type": "string", "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." + "Unknown block type.", + "Regular text block.", + "Table block.", + "Image block.", + "Horizontal/vertical line box.", + "Barcode block." ], "enum": [ "UNKNOWN", - "SPACE", - "SURE_SPACE", - "EOL_SURE_SPACE", - "HYPHEN", - "LINE_BREAK" + "TEXT", + "TABLE", + "PICTURE", + "RULER", + "BARCODE" ] }, - "isPrefix": { - "description": "True if break prepends the element.", - "type": "boolean" + "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).", + "type": "array", + "items": { + "$ref": "GoogleCloudVisionV1p2beta1Paragraph" + } } }, - "id": "GoogleCloudVisionV1p2beta1TextAnnotationDetectedBreak", - "description": "Detected start or end of a structural component.", + "id": "GoogleCloudVisionV1p2beta1Block", + "description": "Logical element on the page.", "type": "object" }, - "GoogleCloudVisionV1p2beta1LatLongRect": { - "description": "Rectangle determined by min and max `LatLng` pairs.", + "GoogleCloudVisionV1p2beta1CropHint": { + "description": "Single crop hint that is used to generate a new crop when serving an image.", "type": "object", "properties": { - "maxLatLng": { - "description": "Max lat/long pair.", - "$ref": "LatLng" + "confidence": { + "description": "Confidence of this being a salient region. Range [0, 1].", + "format": "float", + "type": "number" }, - "minLatLng": { - "$ref": "LatLng", - "description": "Min lat/long pair." - } - }, - "id": "GoogleCloudVisionV1p2beta1LatLongRect" - }, - "GoogleCloudVisionV1p2beta1WebDetectionParams": { - "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" + "importanceFraction": { + "description": "Fraction of importance of this salient region with respect to the original\nimage.", + "format": "float", + "type": "number" + }, + "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`." } }, - "id": "GoogleCloudVisionV1p2beta1WebDetectionParams" + "id": "GoogleCloudVisionV1p2beta1CropHint" }, - "GoogleCloudVisionV1p2beta1ImageAnnotationContext": { - "description": "If an image was produced from a file (e.g. a PDF), this message gives\ninformation about the source of that image.", + "GoogleCloudVisionV1p2beta1Vertex": { + "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": { - "uri": { - "description": "The URI of the file used to produce the image.", - "type": "string" + "y": { + "description": "Y coordinate.", + "format": "int32", + "type": "integer" }, - "pageNumber": { - "description": "If the file was a PDF or TIFF, this field gives the page number within\nthe file used to produce the image.", + "x": { + "description": "X coordinate.", "format": "int32", "type": "integer" } }, - "id": "GoogleCloudVisionV1p2beta1ImageAnnotationContext" + "id": "GoogleCloudVisionV1p2beta1Vertex" }, - "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.", + "GoogleCloudVisionV1p2beta1ImageSource": { + "description": "External image source (Google Cloud Storage or web URL image location).", "type": "object", "properties": { - "y": { - "description": "Y coordinate.", - "format": "float", - "type": "number" - }, - "x": { - "description": "X coordinate.", - "format": "float", - "type": "number" + "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" }, - "z": { - "description": "Z coordinate (or depth).", - "format": "float", - "type": "number" + "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": "GoogleCloudVisionV1p2beta1Position" + "id": "GoogleCloudVisionV1p2beta1ImageSource" } }, "protocol": "rest", @@ -1577,156 +1728,5 @@ } } }, - "rootUrl": "https://vision.googleapis.com/", - "ownerDomain": "google.com", - "name": "vision", - "batchPath": "batch", - "fullyEncodeReservedExpansion": true, - "title": "Cloud Vision API", - "ownerName": "Google", - "resources": { - "files": { - "methods": { - "asyncBatchAnnotate": { - "response": { - "$ref": "Operation" - }, - "parameterOrder": [], - "httpMethod": "POST", - "parameters": {}, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-vision" - ], - "flatPath": "v1p2beta1/files:asyncBatchAnnotate", - "path": "v1p2beta1/files:asyncBatchAnnotate", - "id": "vision.files.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).", - "request": { - "$ref": "GoogleCloudVisionV1p2beta1AsyncBatchAnnotateFilesRequest" - } - } - } - }, - "images": { - "methods": { - "annotate": { - "response": { - "$ref": "GoogleCloudVisionV1p2beta1BatchAnnotateImagesResponse" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud-vision" - ], - "parameters": {}, - "flatPath": "v1p2beta1/images:annotate", - "path": "v1p2beta1/images:annotate", - "id": "vision.images.annotate", - "request": { - "$ref": "GoogleCloudVisionV1p2beta1BatchAnnotateImagesRequest" - }, - "description": "Run image detection and annotation for a batch of images." - } - } - } - }, - "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" - }, - "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": { - "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": { - "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": { - "location": "query", - "description": "OAuth bearer token.", - "type": "string" - } - }, - "version": "v1p2beta1", - "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": "", - "basePath": "", - "revision": "20180420", - "documentationLink": "https://cloud.google.com/vision/", - "id": "vision:v1p2beta1" + "rootUrl": "https://vision.googleapis.com/" } diff --git a/DiscoveryJson/websecurityscanner_v1alpha.json b/DiscoveryJson/websecurityscanner_v1alpha.json index 5dc1c9ea02..58f8465123 100644 --- a/DiscoveryJson/websecurityscanner_v1alpha.json +++ b/DiscoveryJson/websecurityscanner_v1alpha.json @@ -1,4 +1,5 @@ { + "rootUrl": "https://websecurityscanner.googleapis.com/", "ownerDomain": "google.com", "name": "websecurityscanner", "batchPath": "batch", @@ -9,192 +10,10 @@ "projects": { "resources": { "scanConfigs": { - "methods": { - "list": { - "response": { - "$ref": "ListScanConfigsResponse" - }, - "parameterOrder": [ - "parent" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "parameters": { - "pageSize": { - "description": "The maximum number of ScanConfigs to return, can be limited by server.\nIf not specified or not positive, the implementation will select a\nreasonable value.", - "format": "int32", - "type": "integer", - "location": "query" - }, - "parent": { - "description": "Required.\nThe parent resource name, which should be a project resource name in the\nformat 'projects/{projectId}'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - }, - "pageToken": { - "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 List request.\nIf unspecified, the first page of results is returned.", - "type": "string" - } - }, - "flatPath": "v1alpha/projects/{projectsId}/scanConfigs", - "path": "v1alpha/{+parent}/scanConfigs", - "id": "websecurityscanner.projects.scanConfigs.list", - "description": "Lists ScanConfigs under a given project." - }, - "create": { - "flatPath": "v1alpha/projects/{projectsId}/scanConfigs", - "id": "websecurityscanner.projects.scanConfigs.create", - "path": "v1alpha/{+parent}/scanConfigs", - "description": "Creates a new ScanConfig.", - "request": { - "$ref": "ScanConfig" - }, - "httpMethod": "POST", - "parameterOrder": [ - "parent" - ], - "response": { - "$ref": "ScanConfig" - }, - "parameters": { - "parent": { - "description": "Required.\nThe parent resource name where the scan is created, which should be a\nproject resource name in the format 'projects/{projectId}'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "flatPath": "v1alpha/projects/{projectsId}/scanConfigs/{scanConfigsId}", - "path": "v1alpha/{+name}", - "id": "websecurityscanner.projects.scanConfigs.get", - "description": "Gets a ScanConfig.", - "response": { - "$ref": "ScanConfig" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "GET", - "parameters": { - "name": { - "location": "path", - "description": "Required.\nThe resource name of the ScanConfig to be returned. The name follows the\nformat of 'projects/{projectId}/scanConfigs/{scanConfigId}'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/scanConfigs/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "patch": { - "httpMethod": "PATCH", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "ScanConfig" - }, - "parameters": { - "updateMask": { - "location": "query", - "description": "Required.\nThe update mask applies to the resource. For the `FieldMask` definition,\nsee\nhttps://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask", - "format": "google-fieldmask", - "type": "string" - }, - "name": { - "location": "path", - "description": "The resource name of the ScanConfig. The name follows the format of\n'projects/{projectId}/scanConfigs/{scanConfigId}'. The ScanConfig IDs are\ngenerated by the system.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/scanConfigs/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1alpha/projects/{projectsId}/scanConfigs/{scanConfigsId}", - "id": "websecurityscanner.projects.scanConfigs.patch", - "path": "v1alpha/{+name}", - "description": "Updates a ScanConfig. This method support partial update of a ScanConfig.", - "request": { - "$ref": "ScanConfig" - } - }, - "start": { - "description": "Start a ScanRun according to the given ScanConfig.", - "request": { - "$ref": "StartScanRunRequest" - }, - "httpMethod": "POST", - "parameterOrder": [ - "name" - ], - "response": { - "$ref": "ScanRun" - }, - "parameters": { - "name": { - "location": "path", - "description": "Required.\nThe resource name of the ScanConfig to be used. The name follows the\nformat of 'projects/{projectId}/scanConfigs/{scanConfigId}'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/scanConfigs/[^/]+$" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], - "flatPath": "v1alpha/projects/{projectsId}/scanConfigs/{scanConfigsId}:start", - "id": "websecurityscanner.projects.scanConfigs.start", - "path": "v1alpha/{+name}:start" - }, - "delete": { - "flatPath": "v1alpha/projects/{projectsId}/scanConfigs/{scanConfigsId}", - "path": "v1alpha/{+name}", - "id": "websecurityscanner.projects.scanConfigs.delete", - "description": "Deletes an existing ScanConfig and its child resources.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "name" - ], - "httpMethod": "DELETE", - "parameters": { - "name": { - "description": "Required.\nThe resource name of the ScanConfig to be deleted. The name follows the\nformat of 'projects/{projectId}/scanConfigs/{scanConfigId}'.", - "required": true, - "type": "string", - "pattern": "^projects/[^/]+/scanConfigs/[^/]+$", - "location": "path" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - }, "resources": { "scanRuns": { "methods": { "get": { - "flatPath": "v1alpha/projects/{projectsId}/scanConfigs/{scanConfigsId}/scanRuns/{scanRunsId}", - "path": "v1alpha/{+name}", - "id": "websecurityscanner.projects.scanConfigs.scanRuns.get", - "description": "Gets a ScanRun.", "response": { "$ref": "ScanRun" }, @@ -213,16 +32,20 @@ "type": "string", "pattern": "^projects/[^/]+/scanConfigs/[^/]+/scanRuns/[^/]+$" } - } + }, + "flatPath": "v1alpha/projects/{projectsId}/scanConfigs/{scanConfigsId}/scanRuns/{scanRunsId}", + "path": "v1alpha/{+name}", + "id": "websecurityscanner.projects.scanConfigs.scanRuns.get", + "description": "Gets a ScanRun." }, "list": { - "httpMethod": "GET", - "parameterOrder": [ - "parent" - ], "response": { "$ref": "ListScanRunsResponse" }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", "parameters": { "pageToken": { "location": "query", @@ -236,19 +59,19 @@ "type": "integer" }, "parent": { + "location": "path", "description": "Required.\nThe parent resource name, which should be a scan resource name in the\nformat 'projects/{projectId}/scanConfigs/{scanConfigId}'.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/scanConfigs/[^/]+$", - "location": "path" + "pattern": "^projects/[^/]+/scanConfigs/[^/]+$" } }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ], "flatPath": "v1alpha/projects/{projectsId}/scanConfigs/{scanConfigsId}/scanRuns", - "id": "websecurityscanner.projects.scanConfigs.scanRuns.list", "path": "v1alpha/{+parent}/scanRuns", + "id": "websecurityscanner.projects.scanConfigs.scanRuns.list", "description": "Lists ScanRuns under a given ScanConfig, in descending order of ScanRun\nstop time." }, "stop": { @@ -295,35 +118,31 @@ "parent" ], "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { "parent": { - "location": "path", "description": "Required.\nThe parent resource name, which should be a scan run resource name in the\nformat\n'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}'.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/scanConfigs/[^/]+/scanRuns/[^/]+$" + "pattern": "^projects/[^/]+/scanConfigs/[^/]+/scanRuns/[^/]+$", + "location": "path" } - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } } }, "findings": { "methods": { "get": { - "flatPath": "v1alpha/projects/{projectsId}/scanConfigs/{scanConfigsId}/scanRuns/{scanRunsId}/findings/{findingsId}", - "path": "v1alpha/{+name}", - "id": "websecurityscanner.projects.scanConfigs.scanRuns.findings.get", - "description": "Gets a Finding.", - "response": { - "$ref": "Finding" - }, + "httpMethod": "GET", "parameterOrder": [ "name" ], - "httpMethod": "GET", + "response": { + "$ref": "Finding" + }, "parameters": { "name": { "description": "Required.\nThe resource name of the Finding to be returned. The name follows the\nformat of\n'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}/findings/{findingId}'.", @@ -335,24 +154,32 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" - ] + ], + "flatPath": "v1alpha/projects/{projectsId}/scanConfigs/{scanConfigsId}/scanRuns/{scanRunsId}/findings/{findingsId}", + "id": "websecurityscanner.projects.scanConfigs.scanRuns.findings.get", + "path": "v1alpha/{+name}", + "description": "Gets a Finding." }, "list": { - "flatPath": "v1alpha/projects/{projectsId}/scanConfigs/{scanConfigsId}/scanRuns/{scanRunsId}/findings", - "path": "v1alpha/{+parent}/findings", - "id": "websecurityscanner.projects.scanConfigs.scanRuns.findings.list", "description": "List Findings under a given ScanRun.", - "response": { - "$ref": "ListFindingsResponse" - }, + "httpMethod": "GET", "parameterOrder": [ "parent" ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], + "response": { + "$ref": "ListFindingsResponse" + }, "parameters": { + "filter": { + "location": "query", + "description": "The filter expression. The expression must be in the format: \u003cfield\u003e\n\u003coperator\u003e \u003cvalue\u003e.\nSupported field: 'finding_type'.\nSupported operator: '='.", + "type": "string" + }, + "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 List request.\nIf unspecified, the first page of results is returned.", + "type": "string", + "location": "query" + }, "pageSize": { "location": "query", "description": "The maximum number of Findings to return, can be limited by server.\nIf not specified or not positive, the implementation will select a\nreasonable value.", @@ -360,32 +187,25 @@ "type": "integer" }, "parent": { + "location": "path", "description": "Required.\nThe parent resource name, which should be a scan run resource name in the\nformat\n'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}'.", "required": true, "type": "string", - "pattern": "^projects/[^/]+/scanConfigs/[^/]+/scanRuns/[^/]+$", - "location": "path" - }, - "filter": { - "location": "query", - "description": "The filter expression. The expression must be in the format: \u003cfield\u003e\n\u003coperator\u003e \u003cvalue\u003e.\nSupported field: 'finding_type'.\nSupported operator: '='.", - "type": "string" - }, - "pageToken": { - "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 List request.\nIf unspecified, the first page of results is returned.", - "type": "string" + "pattern": "^projects/[^/]+/scanConfigs/[^/]+/scanRuns/[^/]+$" } - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1alpha/projects/{projectsId}/scanConfigs/{scanConfigsId}/scanRuns/{scanRunsId}/findings", + "id": "websecurityscanner.projects.scanConfigs.scanRuns.findings.list", + "path": "v1alpha/{+parent}/findings" } } }, "crawledUrls": { "methods": { "list": { - "flatPath": "v1alpha/projects/{projectsId}/scanConfigs/{scanConfigsId}/scanRuns/{scanRunsId}/crawledUrls", - "path": "v1alpha/{+parent}/crawledUrls", - "id": "websecurityscanner.projects.scanConfigs.scanRuns.crawledUrls.list", "description": "List CrawledUrls under a given ScanRun.", "response": { "$ref": "ListCrawledUrlsResponse" @@ -394,16 +214,7 @@ "parent" ], "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ], "parameters": { - "pageSize": { - "description": "The maximum number of CrawledUrls to return, can be limited by server.\nIf not specified or not positive, the implementation will select a\nreasonable value.", - "format": "int32", - "type": "integer", - "location": "query" - }, "parent": { "description": "Required.\nThe parent resource name, which should be a scan run resource name in the\nformat\n'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}'.", "required": true, @@ -415,13 +226,203 @@ "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 List request.\nIf unspecified, the first page of results is returned.", "type": "string" + }, + "pageSize": { + "description": "The maximum number of CrawledUrls to return, can be limited by server.\nIf not specified or not positive, the implementation will select a\nreasonable value.", + "format": "int32", + "type": "integer", + "location": "query" } - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1alpha/projects/{projectsId}/scanConfigs/{scanConfigsId}/scanRuns/{scanRunsId}/crawledUrls", + "path": "v1alpha/{+parent}/crawledUrls", + "id": "websecurityscanner.projects.scanConfigs.scanRuns.crawledUrls.list" } } } } } + }, + "methods": { + "start": { + "request": { + "$ref": "StartScanRunRequest" + }, + "description": "Start a ScanRun according to the given ScanConfig.", + "response": { + "$ref": "ScanRun" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "description": "Required.\nThe resource name of the ScanConfig to be used. The name follows the\nformat of 'projects/{projectId}/scanConfigs/{scanConfigId}'.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/scanConfigs/[^/]+$", + "location": "path" + } + }, + "flatPath": "v1alpha/projects/{projectsId}/scanConfigs/{scanConfigsId}:start", + "path": "v1alpha/{+name}:start", + "id": "websecurityscanner.projects.scanConfigs.start" + }, + "delete": { + "flatPath": "v1alpha/projects/{projectsId}/scanConfigs/{scanConfigsId}", + "path": "v1alpha/{+name}", + "id": "websecurityscanner.projects.scanConfigs.delete", + "description": "Deletes an existing ScanConfig and its child resources.", + "response": { + "$ref": "Empty" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "pattern": "^projects/[^/]+/scanConfigs/[^/]+$", + "location": "path", + "description": "Required.\nThe resource name of the ScanConfig to be deleted. The name follows the\nformat of 'projects/{projectId}/scanConfigs/{scanConfigId}'.", + "required": true, + "type": "string" + } + } + }, + "list": { + "response": { + "$ref": "ListScanConfigsResponse" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "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 List request.\nIf unspecified, the first page of results is returned.", + "type": "string", + "location": "query" + }, + "pageSize": { + "description": "The maximum number of ScanConfigs to return, can be limited by server.\nIf not specified or not positive, the implementation will select a\nreasonable value.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "parent": { + "location": "path", + "description": "Required.\nThe parent resource name, which should be a project resource name in the\nformat 'projects/{projectId}'.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$" + } + }, + "flatPath": "v1alpha/projects/{projectsId}/scanConfigs", + "path": "v1alpha/{+parent}/scanConfigs", + "id": "websecurityscanner.projects.scanConfigs.list", + "description": "Lists ScanConfigs under a given project." + }, + "create": { + "response": { + "$ref": "ScanConfig" + }, + "parameterOrder": [ + "parent" + ], + "httpMethod": "POST", + "parameters": { + "parent": { + "description": "Required.\nThe parent resource name where the scan is created, which should be a\nproject resource name in the format 'projects/{projectId}'.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+$", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1alpha/projects/{projectsId}/scanConfigs", + "path": "v1alpha/{+parent}/scanConfigs", + "id": "websecurityscanner.projects.scanConfigs.create", + "description": "Creates a new ScanConfig.", + "request": { + "$ref": "ScanConfig" + } + }, + "get": { + "response": { + "$ref": "ScanConfig" + }, + "parameterOrder": [ + "name" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "parameters": { + "name": { + "pattern": "^projects/[^/]+/scanConfigs/[^/]+$", + "location": "path", + "description": "Required.\nThe resource name of the ScanConfig to be returned. The name follows the\nformat of 'projects/{projectId}/scanConfigs/{scanConfigId}'.", + "required": true, + "type": "string" + } + }, + "flatPath": "v1alpha/projects/{projectsId}/scanConfigs/{scanConfigsId}", + "path": "v1alpha/{+name}", + "id": "websecurityscanner.projects.scanConfigs.get", + "description": "Gets a ScanConfig." + }, + "patch": { + "httpMethod": "PATCH", + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "ScanConfig" + }, + "parameters": { + "updateMask": { + "description": "Required.\nThe update mask applies to the resource. For the `FieldMask` definition,\nsee\nhttps://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask", + "format": "google-fieldmask", + "type": "string", + "location": "query" + }, + "name": { + "location": "path", + "description": "The resource name of the ScanConfig. The name follows the format of\n'projects/{projectId}/scanConfigs/{scanConfigId}'. The ScanConfig IDs are\ngenerated by the system.", + "required": true, + "type": "string", + "pattern": "^projects/[^/]+/scanConfigs/[^/]+$" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "flatPath": "v1alpha/projects/{projectsId}/scanConfigs/{scanConfigsId}", + "id": "websecurityscanner.projects.scanConfigs.patch", + "path": "v1alpha/{+name}", + "description": "Updates a ScanConfig. This method support partial update of a ScanConfig.", + "request": { + "$ref": "ScanConfig" + } + } } } } @@ -434,10 +435,10 @@ "location": "query" }, "prettyPrint": { - "location": "query", "description": "Returns response with indentations and line breaks.", "type": "boolean", - "default": "true" + "default": "true", + "location": "query" }, "fields": { "description": "Selector specifying which fields to include in a partial response.", @@ -450,8 +451,6 @@ "type": "string" }, "$.xgafv": { - "description": "V1 error format.", - "type": "string", "enumDescriptions": [ "v1 error format", "v2 error format" @@ -460,14 +459,22 @@ "enum": [ "1", "2" - ] + ], + "description": "V1 error format.", + "type": "string" }, "callback": { - "location": "query", "description": "JSONP", - "type": "string" + "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": [ @@ -475,23 +482,17 @@ "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" + "type": "string" }, "access_token": { + "location": "query", "description": "OAuth access token.", - "type": "string", - "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" + "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", @@ -499,15 +500,15 @@ "type": "string" }, "pp": { + "location": "query", "description": "Pretty-print response.", "type": "boolean", - "default": "true", - "location": "query" + "default": "true" }, "oauth_token": { - "location": "query", "description": "OAuth 2.0 token for the current user.", - "type": "string" + "type": "string", + "location": "query" }, "bearer_token": { "location": "query", @@ -517,20 +518,85 @@ }, "version": "v1alpha", "baseUrl": "https://websecurityscanner.googleapis.com/", + "servicePath": "", "kind": "discovery#restDescription", "description": "Web Security Scanner API (under development).", - "servicePath": "", "basePath": "", - "revision": "20180507", - "documentationLink": "https://cloud.google.com/security-scanner/", "id": "websecurityscanner:v1alpha", + "documentationLink": "https://cloud.google.com/security-scanner/", + "revision": "20180508", "discoveryVersion": "v1", "version_module": true, "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 `{}`.", + "type": "object", + "properties": {}, + "id": "Empty" + }, + "CustomAccount": { + "description": "Describes authentication configuration that uses a custom account.", + "type": "object", + "properties": { + "loginUrl": { + "description": "Required.\nThe login form URL of the website.", + "type": "string" + }, + "password": { + "description": "Input only.\nRequired.\nThe password of the custom account. The credential is stored encrypted\nand not returned in any response.", + "type": "string" + }, + "username": { + "description": "Required.\nThe user name of the custom account.", + "type": "string" + } + }, + "id": "CustomAccount" + }, + "StartScanRunRequest": { + "description": "Request for the `StartScanRun` method.", + "type": "object", + "properties": {}, + "id": "StartScanRunRequest" + }, "Finding": { "description": "A Finding resource represents a vulnerability instance identified during a\nScanRun.", "type": "object", "properties": { + "outdatedLibrary": { + "$ref": "OutdatedLibrary", + "description": "Output only.\nAn addon containing information about outdated libraries." + }, + "findingType": { + "description": "Output only.\nThe type of the Finding.", + "type": "string", + "enumDescriptions": [ + "The invalid finding type.", + "A page that was served over HTTPS also resources over HTTP. A\nman-in-the-middle attacker could tamper with the HTTP resource and gain\nfull access to the website that loads the resource or to monitor the\nactions taken by the user.", + "The version of an included library is known to contain a security issue.\nThe scanner checks the version of library in use against a known list of\nvulnerable libraries. False positives are possible if the version\ndetection fails or if the library has been manually patched.", + "This type of vulnerability occurs when the value of a request parameter\nis reflected at the beginning of the response, for example, in requests\nusing JSONP. Under certain circumstances, an attacker may be able to\nsupply an alphanumeric-only Flash file in the vulnerable parameter\ncausing the browser to execute the Flash file as if it originated on the\nvulnerable server.", + "A cross-site scripting (XSS) bug is found via JavaScript callback. For\ndetailed explanations on XSS, see\nhttps://www.google.com/about/appsecurity/learning/xss/.", + "A potential cross-site scripting (XSS) bug due to JavaScript breakage.\nIn some circumstances, the application under test might modify the test\nstring before it is parsed by the browser. When the browser attempts to\nruns this modified test string, it will likely break and throw a\nJavaScript execution error, thus an injection issue is occurring.\nHowever, it may not be exploitable. Manual verification is needed to see\nif the test string modifications can be evaded and confirm that the issue\nis in fact an XSS vulnerability. For detailed explanations on XSS, see\nhttps://www.google.com/about/appsecurity/learning/xss/.", + "An application appears to be transmitting a password field in clear text.\nAn attacker can eavesdrop network traffic and sniff the password field." + ], + "enum": [ + "FINDING_TYPE_UNSPECIFIED", + "MIXED_CONTENT", + "OUTDATED_LIBRARY", + "ROSETTA_FLASH", + "XSS_CALLBACK", + "XSS_ERROR", + "CLEAR_TEXT_PASSWORD" + ] + }, + "violatingResource": { + "description": "Output only.\nAn addon containing detailed information regarding any resource causing the\nvulnerability such as JavaScript sources, image, audio files, etc.", + "$ref": "ViolatingResource" + }, + "xss": { + "$ref": "Xss", + "description": "Output only.\nAn addon containing information reported for an XSS, if any." + }, "finalUrl": { "description": "Output only.\nThe URL where the browser lands when the vulnerability is detected.", "type": "string" @@ -559,51 +625,17 @@ "description": "Output only.\nThe tracking ID uniquely identifies a vulnerability instance across\nmultiple ScanRuns.", "type": "string" }, + "vulnerableParameters": { + "description": "Output only.\nAn addon containing information about request parameters which were found\nto be vulnerable.", + "$ref": "VulnerableParameters" + }, "httpMethod": { "description": "Output only.\nThe http method of the request that triggered the vulnerability, in\nuppercase.", "type": "string" }, - "vulnerableParameters": { - "$ref": "VulnerableParameters", - "description": "Output only.\nAn addon containing information about request parameters which were found\nto be vulnerable." - }, "name": { "description": "Output only.\nThe resource name of the Finding. The name follows the format of\n'projects/{projectId}/scanConfigs/{scanConfigId}/scanruns/{scanRunId}/findings/{findingId}'.\nThe finding IDs are generated by the system.", "type": "string" - }, - "findingType": { - "description": "Output only.\nThe type of the Finding.", - "type": "string", - "enumDescriptions": [ - "The invalid finding type.", - "A page that was served over HTTPS also resources over HTTP. A\nman-in-the-middle attacker could tamper with the HTTP resource and gain\nfull access to the website that loads the resource or to monitor the\nactions taken by the user.", - "The version of an included library is known to contain a security issue.\nThe scanner checks the version of library in use against a known list of\nvulnerable libraries. False positives are possible if the version\ndetection fails or if the library has been manually patched.", - "This type of vulnerability occurs when the value of a request parameter\nis reflected at the beginning of the response, for example, in requests\nusing JSONP. Under certain circumstances, an attacker may be able to\nsupply an alphanumeric-only Flash file in the vulnerable parameter\ncausing the browser to execute the Flash file as if it originated on the\nvulnerable server.", - "A cross-site scripting (XSS) bug is found via JavaScript callback. For\ndetailed explanations on XSS, see\nhttps://www.google.com/about/appsecurity/learning/xss/.", - "A potential cross-site scripting (XSS) bug due to JavaScript breakage.\nIn some circumstances, the application under test might modify the test\nstring before it is parsed by the browser. When the browser attempts to\nruns this modified test string, it will likely break and throw a\nJavaScript execution error, thus an injection issue is occurring.\nHowever, it may not be exploitable. Manual verification is needed to see\nif the test string modifications can be evaded and confirm that the issue\nis in fact an XSS vulnerability. For detailed explanations on XSS, see\nhttps://www.google.com/about/appsecurity/learning/xss/.", - "An application appears to be transmitting a password field in clear text.\nAn attacker can eavesdrop network traffic and sniff the password field." - ], - "enum": [ - "FINDING_TYPE_UNSPECIFIED", - "MIXED_CONTENT", - "OUTDATED_LIBRARY", - "ROSETTA_FLASH", - "XSS_CALLBACK", - "XSS_ERROR", - "CLEAR_TEXT_PASSWORD" - ] - }, - "outdatedLibrary": { - "$ref": "OutdatedLibrary", - "description": "Output only.\nAn addon containing information about outdated libraries." - }, - "violatingResource": { - "$ref": "ViolatingResource", - "description": "Output only.\nAn addon containing detailed information regarding any resource causing the\nvulnerability such as JavaScript sources, image, audio files, etc." - }, - "xss": { - "$ref": "Xss", - "description": "Output only.\nAn addon containing information reported for an XSS, if any." } }, "id": "Finding" @@ -627,8 +659,6 @@ "id": "ListScanRunsResponse" }, "ViolatingResource": { - "description": "Information regarding any resource causing the vulnerability such\nas JavaScript sources, image, audio files, etc.", - "type": "object", "properties": { "resourceUrl": { "description": "URL of this violating resource.", @@ -639,20 +669,49 @@ "type": "string" } }, - "id": "ViolatingResource" + "id": "ViolatingResource", + "description": "Information regarding any resource causing the vulnerability such\nas JavaScript sources, image, audio files, etc.", + "type": "object" }, "ScanRun": { "description": "A ScanRun is a output-only resource representing an actual run of the scan.", "type": "object", "properties": { + "hasVulnerabilities": { + "description": "Output only.\nWhether the scan run has found any vulnerabilities.", + "type": "boolean" + }, + "urlsTestedCount": { + "description": "Output only.\nThe number of URLs tested during this ScanRun. If the scan is in progress,\nthe value represents the number of URLs tested up to now. The number of\nURLs tested is usually larger than the number URLS crawled because\ntypically a crawled URL is tested with multiple test payloads.", + "format": "int64", + "type": "string" + }, + "resultState": { + "description": "Output only.\nThe result state of the ScanRun. This field is only available after the\nexecution state reaches \"FINISHED\".", + "type": "string", + "enumDescriptions": [ + "Default value. This value is returned when the ScanRun is not yet\nfinished.", + "The scan finished without errors.", + "The scan finished with errors.", + "The scan was terminated by user." + ], + "enum": [ + "RESULT_STATE_UNSPECIFIED", + "SUCCESS", + "ERROR", + "KILLED" + ] + }, + "name": { + "description": "Output only.\nThe resource name of the ScanRun. The name follows the format of\n'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}'.\nThe ScanRun IDs are generated by the system.", + "type": "string" + }, "progressPercent": { "description": "Output only.\nThe percentage of total completion ranging from 0 to 100.\nIf the scan is in queue, the value is 0.\nIf the scan is running, the value ranges from 0 to 100.\nIf the scan is finished, the value is 100.", "format": "int32", "type": "integer" }, "executionState": { - "description": "Output only.\nThe execution state of the ScanRun.", - "type": "string", "enumDescriptions": [ "Represents an invalid state caused by internal server error. This value\nshould never be returned.", "The scan is waiting in the queue.", @@ -664,7 +723,9 @@ "QUEUED", "SCANNING", "FINISHED" - ] + ], + "description": "Output only.\nThe execution state of the ScanRun.", + "type": "string" }, "endTime": { "description": "Output only.\nThe time at which the ScanRun reached termination state - that the ScanRun\nis either finished or stopped by user.", @@ -680,35 +741,6 @@ "description": "Output only.\nThe number of URLs crawled during this ScanRun. If the scan is in progress,\nthe value represents the number of URLs crawled up to now.", "format": "int64", "type": "string" - }, - "hasVulnerabilities": { - "description": "Output only.\nWhether the scan run has found any vulnerabilities.", - "type": "boolean" - }, - "urlsTestedCount": { - "description": "Output only.\nThe number of URLs tested during this ScanRun. If the scan is in progress,\nthe value represents the number of URLs tested up to now. The number of\nURLs tested is usually larger than the number URLS crawled because\ntypically a crawled URL is tested with multiple test payloads.", - "format": "int64", - "type": "string" - }, - "resultState": { - "description": "Output only.\nThe result state of the ScanRun. This field is only available after the\nexecution state reaches \"FINISHED\".", - "type": "string", - "enumDescriptions": [ - "Default value. This value is returned when the ScanRun is not yet\nfinished.", - "The scan finished without errors.", - "The scan finished with errors.", - "The scan was terminated by user." - ], - "enum": [ - "RESULT_STATE_UNSPECIFIED", - "SUCCESS", - "ERROR", - "KILLED" - ] - }, - "name": { - "description": "Output only.\nThe resource name of the ScanRun. The name follows the format of\n'projects/{projectId}/scanConfigs/{scanConfigId}/scanRuns/{scanRunId}'.\nThe ScanRun IDs are generated by the system.", - "type": "string" } }, "id": "ScanRun" @@ -722,6 +754,12 @@ "type": "string" }, "userAgent": { + "enum": [ + "USER_AGENT_UNSPECIFIED", + "CHROME_LINUX", + "CHROME_ANDROID", + "SAFARI_IPHONE" + ], "description": "The user agent used during scanning.", "type": "string", "enumDescriptions": [ @@ -729,12 +767,6 @@ "Chrome on Linux. This is the service default if unspecified.", "Chrome on Android.", "Safari on IPhone." - ], - "enum": [ - "USER_AGENT_UNSPECIFIED", - "CHROME_LINUX", - "CHROME_ANDROID", - "SAFARI_IPHONE" ] }, "startingUrls": { @@ -748,12 +780,12 @@ "description": "Set of Cloud Platforms targeted by the scan. If empty, APP_ENGINE will be\nused as a default.", "type": "array", "items": { - "type": "string", "enum": [ "TARGET_PLATFORM_UNSPECIFIED", "APP_ENGINE", "COMPUTE" - ] + ], + "type": "string" }, "enumDescriptions": [ "The target platform is unknown. Requests with this enum value will be\nrejected with INVALID_ARGUMENT error.", @@ -789,8 +821,6 @@ "id": "ScanConfig" }, "CrawledUrl": { - "description": "A CrawledUrl resource represents a URL that was crawled during a ScanRun. Web\nSecurity Scanner Service crawls the web applications, following all links\nwithin the scope of sites, to find the URLs to test against.", - "type": "object", "properties": { "httpMethod": { "description": "Output only.\nThe http method of the request that was used to visit the URL, in\nuppercase.", @@ -805,31 +835,33 @@ "type": "string" } }, - "id": "CrawledUrl" + "id": "CrawledUrl", + "description": "A CrawledUrl resource represents a URL that was crawled during a ScanRun. Web\nSecurity Scanner Service crawls the web applications, following all links\nwithin the scope of sites, to find the URLs to test against.", + "type": "object" }, "StopScanRunRequest": { - "description": "Request for the `StopScanRun` method.", - "type": "object", "properties": {}, - "id": "StopScanRunRequest" + "id": "StopScanRunRequest", + "description": "Request for the `StopScanRun` method.", + "type": "object" }, "ListScanConfigsResponse": { - "description": "Response for the `ListScanConfigs` method.", - "type": "object", "properties": { - "nextPageToken": { - "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.", - "type": "string" - }, "scanConfigs": { "description": "The list of ScanConfigs returned.", "type": "array", "items": { "$ref": "ScanConfig" } + }, + "nextPageToken": { + "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.", + "type": "string" } }, - "id": "ListScanConfigsResponse" + "id": "ListScanConfigsResponse", + "description": "Response for the `ListScanConfigs` method.", + "type": "object" }, "FindingTypeStats": { "description": "A FindingTypeStats resource represents stats regarding a specific FindingType\nof Findings under a given ScanRun.", @@ -930,8 +962,6 @@ "id": "Authentication" }, "VulnerableParameters": { - "description": "Information about vulnerable request parameters.", - "type": "object", "properties": { "parameterNames": { "description": "The vulnerable parameter names.", @@ -941,7 +971,9 @@ } } }, - "id": "VulnerableParameters" + "id": "VulnerableParameters", + "description": "Information about vulnerable request parameters.", + "type": "object" }, "GoogleAccount": { "description": "Describes authentication configuration that uses a Google account.", @@ -977,8 +1009,6 @@ "id": "ListFindingsResponse" }, "ListCrawledUrlsResponse": { - "description": "Response for the `ListCrawledUrls` method.", - "type": "object", "properties": { "nextPageToken": { "description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.", @@ -992,16 +1022,14 @@ } } }, - "id": "ListCrawledUrlsResponse" + "id": "ListCrawledUrlsResponse", + "description": "Response for the `ListCrawledUrls` method.", + "type": "object" }, "OutdatedLibrary": { "description": "Information reported for an outdated library.", "type": "object", "properties": { - "libraryName": { - "description": "The name of the outdated library.", - "type": "string" - }, "learnMoreUrls": { "description": "URLs to learn more information about the vulnerabilities in the library.", "type": "array", @@ -1012,47 +1040,20 @@ "version": { "description": "The version number.", "type": "string" - } - }, - "id": "OutdatedLibrary" - }, - "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" - }, - "CustomAccount": { - "description": "Describes authentication configuration that uses a custom account.", - "type": "object", - "properties": { - "loginUrl": { - "description": "Required.\nThe login form URL of the website.", - "type": "string" - }, - "password": { - "description": "Input only.\nRequired.\nThe password of the custom account. The credential is stored encrypted\nand not returned in any response.", - "type": "string" }, - "username": { - "description": "Required.\nThe user name of the custom account.", + "libraryName": { + "description": "The name of the outdated library.", "type": "string" } }, - "id": "CustomAccount" - }, - "StartScanRunRequest": { - "description": "Request for the `StartScanRun` method.", - "type": "object", - "properties": {}, - "id": "StartScanRunRequest" + "id": "OutdatedLibrary" } }, - "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" + "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": "WebSecurityScanner", "auth": { "oauth2": { @@ -1062,6 +1063,5 @@ } } } - }, - "rootUrl": "https://websecurityscanner.googleapis.com/" + } } diff --git a/DiscoveryJson/youtubeAnalytics_v2.json b/DiscoveryJson/youtubeAnalytics_v2.json index 5dfca0a143..a22d7a2ec0 100644 --- a/DiscoveryJson/youtubeAnalytics_v2.json +++ b/DiscoveryJson/youtubeAnalytics_v2.json @@ -1,4 +1,29 @@ { + "canonicalName": "YouTube Analytics", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/youtube.readonly": { + "description": "View your YouTube account" + }, + "https://www.googleapis.com/auth/yt-analytics.readonly": { + "description": "View YouTube Analytics reports for your YouTube content" + }, + "https://www.googleapis.com/auth/youtube": { + "description": "Manage your YouTube account" + }, + "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/youtubepartner": { + "description": "View and manage your assets and associated content on YouTube" + } + } + } + }, + "rootUrl": "https://youtubeanalytics.googleapis.com/", + "ownerDomain": "google.com", + "name": "youtubeAnalytics", "batchPath": "batch", "fullyEncodeReservedExpansion": true, "title": "YouTube Analytics API", @@ -6,36 +31,6 @@ "resources": { "groupItems": { "methods": { - "delete": { - "response": { - "$ref": "EmptyResponse" - }, - "parameterOrder": [], - "httpMethod": "DELETE", - "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-monetary.readonly", - "https://www.googleapis.com/auth/yt-analytics.readonly" - ], - "parameters": { - "onBehalfOfContentOwner": { - "location": "query", - "description": "This parameter can only be used in a properly authorized request. **Note:**\nThis parameter is intended exclusively for YouTube content partners that\nown and manage many different YouTube channels.\n\nThe `onBehalfOfContentOwner` parameter indicates that the request's\nauthorization credentials identify a YouTube user who is acting on behalf\nof the content owner specified in the parameter value. It allows content\nowners to authenticate once and get access to all their video and channel\ndata, without having to provide authentication credentials for each\nindividual channel. The account that the user authenticates with must be\nlinked to the specified YouTube content owner.", - "type": "string" - }, - "id": { - "description": "The `id` parameter specifies the YouTube group item ID of the group item\nthat is being deleted.", - "type": "string", - "location": "query" - } - }, - "flatPath": "v2/groupItems", - "path": "v2/groupItems", - "id": "youtubeAnalytics.groupItems.delete", - "description": "Removes an item from a group." - }, "insert": { "description": "Creates a group item.", "request": { @@ -48,9 +43,9 @@ "httpMethod": "POST", "parameters": { "onBehalfOfContentOwner": { + "location": "query", "description": "This parameter can only be used in a properly authorized request. **Note:**\nThis parameter is intended exclusively for YouTube content partners that\nown and manage many different YouTube channels.\n\nThe `onBehalfOfContentOwner` parameter indicates that the request's\nauthorization credentials identify a YouTube user who is acting on behalf\nof the content owner specified in the parameter value. It allows content\nowners to authenticate once and get access to all their video and channel\ndata, without having to provide authentication credentials for each\nindividual channel. The account that the user authenticates with must be\nlinked to the specified YouTube content owner.", - "type": "string", - "location": "query" + "type": "string" } }, "scopes": [ @@ -79,33 +74,56 @@ ], "parameters": { "onBehalfOfContentOwner": { - "location": "query", "description": "This parameter can only be used in a properly authorized request. **Note:**\nThis parameter is intended exclusively for YouTube content partners that\nown and manage many different YouTube channels.\n\nThe `onBehalfOfContentOwner` parameter indicates that the request's\nauthorization credentials identify a YouTube user who is acting on behalf\nof the content owner specified in the parameter value. It allows content\nowners to authenticate once and get access to all their video and channel\ndata, without having to provide authentication credentials for each\nindividual channel. The account that the user authenticates with must be\nlinked to the specified YouTube content owner.", - "type": "string" + "type": "string", + "location": "query" }, "groupId": { - "location": "query", "description": "The `groupId` parameter specifies the unique ID of the group for which you\nwant to retrieve group items.", - "type": "string" + "type": "string", + "location": "query" } }, "flatPath": "v2/groupItems", "path": "v2/groupItems", "id": "youtubeAnalytics.groupItems.list", "description": "Returns a collection of group items that match the API request parameters." + }, + "delete": { + "description": "Removes an item from a group.", + "httpMethod": "DELETE", + "response": { + "$ref": "EmptyResponse" + }, + "parameterOrder": [], + "parameters": { + "onBehalfOfContentOwner": { + "description": "This parameter can only be used in a properly authorized request. **Note:**\nThis parameter is intended exclusively for YouTube content partners that\nown and manage many different YouTube channels.\n\nThe `onBehalfOfContentOwner` parameter indicates that the request's\nauthorization credentials identify a YouTube user who is acting on behalf\nof the content owner specified in the parameter value. It allows content\nowners to authenticate once and get access to all their video and channel\ndata, without having to provide authentication credentials for each\nindividual channel. The account that the user authenticates with must be\nlinked to the specified YouTube content owner.", + "type": "string", + "location": "query" + }, + "id": { + "description": "The `id` parameter specifies the YouTube group item ID of the group item\nthat is being deleted.", + "type": "string", + "location": "query" + } + }, + "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-monetary.readonly", + "https://www.googleapis.com/auth/yt-analytics.readonly" + ], + "flatPath": "v2/groupItems", + "id": "youtubeAnalytics.groupItems.delete", + "path": "v2/groupItems" } } }, "groups": { "methods": { "update": { - "flatPath": "v2/groups", - "path": "v2/groups", - "id": "youtubeAnalytics.groups.update", - "description": "Modifies a group. For example, you could change a group's title.", - "request": { - "$ref": "Group" - }, "response": { "$ref": "Group" }, @@ -124,15 +142,29 @@ "https://www.googleapis.com/auth/youtubepartner", "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", "https://www.googleapis.com/auth/yt-analytics.readonly" - ] + ], + "flatPath": "v2/groups", + "path": "v2/groups", + "id": "youtubeAnalytics.groups.update", + "description": "Modifies a group. For example, you could change a group's title.", + "request": { + "$ref": "Group" + } }, "delete": { "description": "Deletes a group.", - "httpMethod": "DELETE", - "parameterOrder": [], "response": { "$ref": "EmptyResponse" }, + "parameterOrder": [], + "httpMethod": "DELETE", + "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-monetary.readonly", + "https://www.googleapis.com/auth/yt-analytics.readonly" + ], "parameters": { "onBehalfOfContentOwner": { "location": "query", @@ -140,35 +172,28 @@ "type": "string" }, "id": { - "location": "query", "description": "The `id` parameter specifies the YouTube group ID of the group that is\nbeing deleted.", - "type": "string" + "type": "string", + "location": "query" } }, - "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-monetary.readonly", - "https://www.googleapis.com/auth/yt-analytics.readonly" - ], "flatPath": "v2/groups", - "id": "youtubeAnalytics.groups.delete", - "path": "v2/groups" + "path": "v2/groups", + "id": "youtubeAnalytics.groups.delete" }, "insert": { - "flatPath": "v2/groups", - "path": "v2/groups", - "id": "youtubeAnalytics.groups.insert", - "request": { - "$ref": "Group" - }, - "description": "Creates a group.", + "httpMethod": "POST", + "parameterOrder": [], "response": { "$ref": "Group" }, - "parameterOrder": [], - "httpMethod": "POST", + "parameters": { + "onBehalfOfContentOwner": { + "description": "This parameter can only be used in a properly authorized request. **Note:**\nThis parameter is intended exclusively for YouTube content partners that\nown and manage many different YouTube channels.\n\nThe `onBehalfOfContentOwner` parameter indicates that the request's\nauthorization credentials identify a YouTube user who is acting on behalf\nof the content owner specified in the parameter value. It allows content\nowners to authenticate once and get access to all their video and channel\ndata, without having to provide authentication credentials for each\nindividual channel. The account that the user authenticates with must be\nlinked to the specified YouTube content owner.", + "type": "string", + "location": "query" + } + }, "scopes": [ "https://www.googleapis.com/auth/youtube", "https://www.googleapis.com/auth/youtube.readonly", @@ -176,12 +201,12 @@ "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", "https://www.googleapis.com/auth/yt-analytics.readonly" ], - "parameters": { - "onBehalfOfContentOwner": { - "description": "This parameter can only be used in a properly authorized request. **Note:**\nThis parameter is intended exclusively for YouTube content partners that\nown and manage many different YouTube channels.\n\nThe `onBehalfOfContentOwner` parameter indicates that the request's\nauthorization credentials identify a YouTube user who is acting on behalf\nof the content owner specified in the parameter value. It allows content\nowners to authenticate once and get access to all their video and channel\ndata, without having to provide authentication credentials for each\nindividual channel. The account that the user authenticates with must be\nlinked to the specified YouTube content owner.", - "type": "string", - "location": "query" - } + "flatPath": "v2/groups", + "id": "youtubeAnalytics.groups.insert", + "path": "v2/groups", + "description": "Creates a group.", + "request": { + "$ref": "Group" } }, "list": { @@ -198,11 +223,6 @@ "https://www.googleapis.com/auth/yt-analytics.readonly" ], "parameters": { - "pageToken": { - "location": "query", - "description": "The `pageToken` parameter identifies a specific page in the result set that\nshould be returned. In an API response, the `nextPageToken` property\nidentifies the next page that can be retrieved.", - "type": "string" - }, "onBehalfOfContentOwner": { "description": "This parameter can only be used in a properly authorized request. **Note:**\nThis parameter is intended exclusively for YouTube content partners that\nown and manage many different YouTube channels.\n\nThe `onBehalfOfContentOwner` parameter indicates that the request's\nauthorization credentials identify a YouTube user who is acting on behalf\nof the content owner specified in the parameter value. It allows content\nowners to authenticate once and get access to all their video and channel\ndata, without having to provide authentication credentials for each\nindividual channel. The account that the user authenticates with must be\nlinked to the specified YouTube content owner.", "type": "string", @@ -217,6 +237,11 @@ "description": "This parameter can only be used in a properly authorized request. Set this\nparameter's value to true to retrieve all groups owned by the authenticated\nuser.", "type": "boolean", "location": "query" + }, + "pageToken": { + "location": "query", + "description": "The `pageToken` parameter identifies a specific page in the result set that\nshould be returned. In an API response, the `nextPageToken` property\nidentifies the next page that can be retrieved.", + "type": "string" } }, "flatPath": "v2/groups", @@ -229,25 +254,56 @@ "reports": { "methods": { "query": { - "id": "youtubeAnalytics.reports.query", - "path": "v2/reports", "description": "Retrieve your YouTube Analytics reports.", - "httpMethod": "GET", - "parameterOrder": [], "response": { "$ref": "QueryResponse" }, + "parameterOrder": [], + "httpMethod": "GET", + "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-monetary.readonly", + "https://www.googleapis.com/auth/yt-analytics.readonly" + ], "parameters": { + "includeHistoricalChannelData": { + "location": "query", + "description": "If set to true historical data (i.e. channel data from before the linking\nof the channel to the content owner) will be retrieved.\",", + "type": "boolean" + }, + "ids": { + "location": "query", + "description": "Identifies the YouTube channel or content owner for which you are\nretrieving YouTube Analytics data.\n\n- To request data for a YouTube user, set the `ids` parameter value to\n `channel==CHANNEL_ID`, where `CHANNEL_ID` specifies the unique YouTube\n channel ID.\n- To request data for a YouTube CMS content owner, set the `ids` parameter\n value to `contentOwner==OWNER_NAME`, where `OWNER_NAME` is the CMS name\n of the content owner.\nrequired: true, pattern: [a-zA-Z]+==[a-zA-Z0-9_+-]+", + "type": "string" + }, + "currency": { + "description": "The currency to which financial metrics should be converted. The default is\nUS Dollar (USD). If the result contains no financial metrics, this flag\nwill be ignored. Responds with an error if the specified currency is not\nrecognized.\",\npattern: [A-Z]{3}", + "type": "string", + "location": "query" + }, + "startIndex": { + "description": "An index of the first entity to retrieve. Use this parameter as a\npagination mechanism along with the max-results parameter (one-based,\ninclusive).\",\nminValue: 1", + "format": "int32", + "type": "integer", + "location": "query" + }, + "dimensions": { + "description": "A comma-separated list of YouTube Analytics dimensions, such as `views` or\n`ageGroup,gender`. See the [Available\nReports](/youtube/analytics/v2/available_reports) document for a list of\nthe reports that you can retrieve and the dimensions used for those\nreports. Also see the [Dimensions](/youtube/analytics/v2/dimsmets/dims)\ndocument for definitions of those dimensions.\"\npattern: [0-9a-zA-Z,]+", + "type": "string", + "location": "query" + }, "endDate": { "description": "The end date for fetching YouTube Analytics data. The value should be in\n`YYYY-MM-DD` format.\nrequired: true, pattern: [0-9]{4}-[0-9]{2}-[0-9]{2}", "type": "string", "location": "query" }, "maxResults": { - "location": "query", "description": "The maximum number of rows to include in the response.\",\nminValue: 1", "format": "int32", - "type": "integer" + "type": "integer", + "location": "query" }, "filters": { "description": "A list of filters that should be applied when retrieving YouTube Analytics\ndata. The [Available Reports](/youtube/analytics/v2/available_reports)\ndocument identifies the dimensions that can be used to filter each report,\nand the [Dimensions](/youtube/analytics/v2/dimsmets/dims) document defines\nthose dimensions. If a request uses multiple filters, join them together\nwith a semicolon (`;`), and the returned result table will satisfy both\nfilters. For example, a filters parameter value of\n`video==dMH0bHeiRNg;country==IT` restricts the result set to include data\nfor the given video in Italy.\",", @@ -260,50 +316,19 @@ "type": "string" }, "startDate": { + "location": "query", "description": "The start date for fetching YouTube Analytics data. The value should be in\n`YYYY-MM-DD` format.\nrequired: true, pattern: \"[0-9]{4}-[0-9]{2}-[0-9]{2}", - "type": "string", - "location": "query" + "type": "string" }, "metrics": { "location": "query", "description": "A comma-separated list of YouTube Analytics metrics, such as `views` or\n`likes,dislikes`. See the\n[Available Reports](/youtube/analytics/v2/available_reports) document for\na list of the reports that you can retrieve and the metrics\navailable in each report, and see the\n[Metrics](/youtube/analytics/v2/dimsmets/mets) document for definitions of\nthose metrics.\nrequired: true, pattern: [0-9a-zA-Z,]+", "type": "string" - }, - "ids": { - "location": "query", - "description": "Identifies the YouTube channel or content owner for which you are\nretrieving YouTube Analytics data.\n\n- To request data for a YouTube user, set the `ids` parameter value to\n `channel==CHANNEL_ID`, where `CHANNEL_ID` specifies the unique YouTube\n channel ID.\n- To request data for a YouTube CMS content owner, set the `ids` parameter\n value to `contentOwner==OWNER_NAME`, where `OWNER_NAME` is the CMS name\n of the content owner.\nrequired: true, pattern: [a-zA-Z]+==[a-zA-Z0-9_+-]+", - "type": "string" - }, - "includeHistoricalChannelData": { - "location": "query", - "description": "If set to true historical data (i.e. channel data from before the linking\nof the channel to the content owner) will be retrieved.\",", - "type": "boolean" - }, - "currency": { - "description": "The currency to which financial metrics should be converted. The default is\nUS Dollar (USD). If the result contains no financial metrics, this flag\nwill be ignored. Responds with an error if the specified currency is not\nrecognized.\",\npattern: [A-Z]{3}", - "type": "string", - "location": "query" - }, - "startIndex": { - "description": "An index of the first entity to retrieve. Use this parameter as a\npagination mechanism along with the max-results parameter (one-based,\ninclusive).\",\nminValue: 1", - "format": "int32", - "type": "integer", - "location": "query" - }, - "dimensions": { - "description": "A comma-separated list of YouTube Analytics dimensions, such as `views` or\n`ageGroup,gender`. See the [Available\nReports](/youtube/analytics/v2/available_reports) document for a list of\nthe reports that you can retrieve and the dimensions used for those\nreports. Also see the [Dimensions](/youtube/analytics/v2/dimsmets/dims)\ndocument for definitions of those dimensions.\"\npattern: [0-9a-zA-Z,]+", - "type": "string", - "location": "query" } }, - "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-monetary.readonly", - "https://www.googleapis.com/auth/yt-analytics.readonly" - ], - "flatPath": "v2/reports" + "flatPath": "v2/reports", + "path": "v2/reports", + "id": "youtubeAnalytics.reports.query" } } } @@ -321,14 +346,14 @@ "default": "true" }, "uploadType": { + "location": "query", "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", - "type": "string", - "location": "query" + "type": "string" }, "fields": { + "location": "query", "description": "Selector specifying which fields to include in a partial response.", - "type": "string", - "location": "query" + "type": "string" }, "callback": { "location": "query", @@ -336,25 +361,19 @@ "type": "string" }, "$.xgafv": { + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", "enum": [ "1", "2" ], "description": "V1 error format.", - "type": "string", - "enumDescriptions": [ - "v1 error format", - "v2 error format" - ], - "location": "query" + "type": "string" }, "alt": { - "enum": [ - "json", - "media", - "proto" - ], - "type": "string", "enumDescriptions": [ "Responses with Content-Type of application/json", "Media download with context-dependent Content-Type", @@ -362,7 +381,13 @@ ], "location": "query", "description": "Data format for response.", - "default": "json" + "default": "json", + "enum": [ + "json", + "media", + "proto" + ], + "type": "string" }, "key": { "location": "query", @@ -375,9 +400,9 @@ "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": "string", + "location": "query" }, "pp": { "description": "Pretty-print response.", @@ -408,26 +433,111 @@ "discoveryVersion": "v1", "version_module": true, "schemas": { - "GroupItem": { - "description": "A group item.", + "GroupSnippet": { + "description": "A group snippet.", + "type": "object", + "properties": { + "publishedAt": { + "description": "The date and time that the group was created. The value is specified in\nISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", + "format": "google-datetime", + "type": "string" + }, + "title": { + "description": "The group name. The value must be a non-empty string.", + "type": "string" + } + }, + "id": "GroupSnippet" + }, + "ResultTableColumnHeader": { + "description": "The description of a column of the result table.", + "type": "object", + "properties": { + "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" + }, + "columnType": { + "description": "The type of the column (`DIMENSION` or `METRIC`).", + "type": "string" + } + }, + "id": "ResultTableColumnHeader" + }, + "ListGroupItemsResponse": { + "description": "Response message for GroupsService.ListGroupItems.", "type": "object", "properties": { "etag": { "description": "The Etag of this resource.", "type": "string" }, - "resource": { - "$ref": "GroupItemResource", - "description": "The `resource` object contains information that identifies the item being\nadded to the group." + "errors": { + "description": "Apiary error details", + "$ref": "Errors" }, - "groupId": { - "description": "The ID that YouTube uses to uniquely identify the group that contains the\nitem.", + "kind": { + "description": "Identifies the API resource's type. The value will be\n`youtube#groupItemListResponse`.", "type": "string" }, - "id": { - "description": "The ID that YouTube uses to uniquely identify the `channel`, `video`,\n`playlist`, or `asset` resource that is included in the group. Note that\nthis ID refers specifically to the inclusion of that resource in a\nparticular group and is different than the channel ID, video ID,\nplaylist ID, or asset ID that uniquely identifies the resource itself.\nThe `resource.id` property's value specifies the unique channel, video,\nplaylist, or asset ID.", + "items": { + "description": "A list of groups that match the API request parameters. Each item in the\nlist represents a `groupItem` resource.", + "type": "array", + "items": { + "$ref": "GroupItem" + } + } + }, + "id": "ListGroupItemsResponse" + }, + "Errors": { + "description": "Request Error information.\n\nThe presence of an error field signals that the operation\nhas failed.", + "type": "object", + "properties": { + "requestId": { + "description": "Request identifier generated by the service, which can be\nused to identify the error in the logs", "type": "string" }, + "error": { + "description": "Specific error description and codes", + "type": "array", + "items": { + "$ref": "ErrorProto" + } + }, + "code": { + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "enum": [ + "BAD_REQUEST", + "FORBIDDEN", + "NOT_FOUND", + "CONFLICT", + "GONE", + "PRECONDITION_FAILED", + "INTERNAL_ERROR", + "SERVICE_UNAVAILABLE" + ], + "description": "Global error code. Deprecated and ignored.\nSet custom error codes in ErrorProto.domain and ErrorProto.code\ninstead.", + "type": "string" + } + }, + "id": "Errors" + }, + "GroupItem": { + "properties": { "errors": { "$ref": "Errors", "description": "Apiary error details" @@ -435,9 +545,27 @@ "kind": { "description": "Identifies the API resource's type. The value will be `youtube#groupItem`.", "type": "string" + }, + "etag": { + "description": "The Etag of this resource.", + "type": "string" + }, + "resource": { + "description": "The `resource` object contains information that identifies the item being\nadded to the group.", + "$ref": "GroupItemResource" + }, + "id": { + "description": "The ID that YouTube uses to uniquely identify the `channel`, `video`,\n`playlist`, or `asset` resource that is included in the group. Note that\nthis ID refers specifically to the inclusion of that resource in a\nparticular group and is different than the channel ID, video ID,\nplaylist ID, or asset ID that uniquely identifies the resource itself.\nThe `resource.id` property's value specifies the unique channel, video,\nplaylist, or asset ID.", + "type": "string" + }, + "groupId": { + "description": "The ID that YouTube uses to uniquely identify the group that contains the\nitem.", + "type": "string" } }, - "id": "GroupItem" + "id": "GroupItem", + "description": "A group item.", + "type": "object" }, "ListGroupsResponse": { "description": "Response message for GroupsService.ListGroups.", @@ -470,6 +598,8 @@ "id": "ListGroupsResponse" }, "GroupContentDetails": { + "description": "A group's content details.", + "type": "object", "properties": { "itemCount": { "description": "The number of items in the group.", @@ -481,21 +611,10 @@ "type": "string" } }, - "id": "GroupContentDetails", - "description": "A group's content details.", - "type": "object" + "id": "GroupContentDetails" }, "QueryResponse": { - "description": "Response message for TargetedQueriesService.Query.", - "type": "object", "properties": { - "columnHeaders": { - "description": "This value specifies information about the data returned in the `rows`\nfields. Each item in the `columnHeaders` list identifies a field returned\nin the `rows` value, which contains a list of comma-delimited data. The\n`columnHeaders` list will begin with the dimensions specified in the API\nrequest, which will be followed by the metrics specified in the API\nrequest. The order of both dimensions and metrics will match the ordering\nin the API request. For example, if the API request contains the parameters\n`dimensions=ageGroup,gender&metrics=viewerPercentage`, the API response\nwill return columns in this order: `ageGroup`, `gender`,\n`viewerPercentage`.", - "type": "array", - "items": { - "$ref": "ResultTableColumnHeader" - } - }, "rows": { "description": "The list contains all rows of the result table. Each item in the list is\nan array that contains comma-delimited data corresponding to a single row\nof data. The order of the comma-delimited data fields will match the\norder of the columns listed in the `columnHeaders` field.\n\nIf no data is available for the given query, the `rows` element will be\nomitted from the response.\n\nThe response for a query with the `day` dimension will not contain rows for\nthe most recent days.", "type": "array", @@ -507,23 +626,44 @@ } }, "errors": { - "description": "When set, indicates that the operation failed.", - "$ref": "Errors" + "$ref": "Errors", + "description": "When set, indicates that the operation failed." }, "kind": { "description": "This value specifies the type of data included in the API response.\nFor the query method, the kind property value will be\n`youtubeAnalytics#resultTable`.", "type": "string" + }, + "columnHeaders": { + "description": "This value specifies information about the data returned in the `rows`\nfields. Each item in the `columnHeaders` list identifies a field returned\nin the `rows` value, which contains a list of comma-delimited data. The\n`columnHeaders` list will begin with the dimensions specified in the API\nrequest, which will be followed by the metrics specified in the API\nrequest. The order of both dimensions and metrics will match the ordering\nin the API request. For example, if the API request contains the parameters\n`dimensions=ageGroup,gender&metrics=viewerPercentage`, the API response\nwill return columns in this order: `ageGroup`, `gender`,\n`viewerPercentage`.", + "type": "array", + "items": { + "$ref": "ResultTableColumnHeader" + } } }, - "id": "QueryResponse" + "id": "QueryResponse", + "description": "Response message for TargetedQueriesService.Query.", + "type": "object" }, "Group": { "description": "A group.", "type": "object", "properties": { + "id": { + "description": "The ID that YouTube uses to uniquely identify the group.", + "type": "string" + }, + "snippet": { + "description": "The `snippet` object contains basic information about the group, including\nits creation date and name.", + "$ref": "GroupSnippet" + }, + "contentDetails": { + "description": "The `contentDetails` object contains additional information about the\ngroup, such as the number and type of items that it contains.", + "$ref": "GroupContentDetails" + }, "errors": { - "$ref": "Errors", - "description": "Apiary error details" + "description": "Apiary error details", + "$ref": "Errors" }, "kind": { "description": "Identifies the API resource's type. The value will be `youtube#group`.", @@ -532,31 +672,19 @@ "etag": { "description": "The Etag of this resource.", "type": "string" - }, - "contentDetails": { - "$ref": "GroupContentDetails", - "description": "The `contentDetails` object contains additional information about the\ngroup, such as the number and type of items that it contains." - }, - "id": { - "description": "The ID that YouTube uses to uniquely identify the group.", - "type": "string" - }, - "snippet": { - "description": "The `snippet` object contains basic information about the group, including\nits creation date and name.", - "$ref": "GroupSnippet" } }, "id": "Group" }, "GroupItemResource": { "properties": { - "id": { - "description": "The channel, video, playlist, or asset ID that YouTube uses to uniquely\nidentify the item that is being added to the group.", - "type": "string" - }, "kind": { "description": "Identifies the type of resource being added to the group.\n\nValid values for this property are:\n * `youtube#channel`\n * `youtube#playlist`\n * `youtube#video`\n * `youtubePartner#asset`", "type": "string" + }, + "id": { + "description": "The channel, video, playlist, or asset ID that YouTube uses to uniquely\nidentify the item that is being added to the group.", + "type": "string" } }, "id": "GroupItemResource", @@ -567,8 +695,8 @@ "type": "object", "properties": { "errors": { - "$ref": "Errors", - "description": "Apiary error details" + "description": "Apiary error details", + "$ref": "Errors" } }, "id": "EmptyResponse" @@ -577,6 +705,18 @@ "description": "Describes one specific error.", "type": "object", "properties": { + "location": { + "description": "Location of the error, as specified by the location type.\n\nIf location_type is PATH, this should be a path to a field that's\nrelative to the request, using FieldPath notation\n(net/proto2/util/public/field_path.h).\n\nExamples:\n authenticated_user.gaia_id\n resource.address[2].country", + "type": "string" + }, + "debugInfo": { + "description": "Debugging information, which should not be\nshared externally.", + "type": "string" + }, + "code": { + "description": "Error code in the error domain. This should correspond to\na value of the enum type whose name is in domain. See\nthe core error domain in error_domain.proto.", + "type": "string" + }, "locationType": { "type": "string", "enumDescriptions": [ @@ -588,10 +728,6 @@ "OTHER" ] }, - "code": { - "description": "Error code in the error domain. This should correspond to\na value of the enum type whose name is in domain. See\nthe core error domain in error_domain.proto.", - "type": "string" - }, "argument": { "description": "Error arguments, to be used when building user-friendly error messages\ngiven the error domain and code. Different error codes require different\narguments.", "type": "array", @@ -606,150 +742,14 @@ "domain": { "description": "Error domain. RoSy services can define their own\ndomain and error codes. This should normally be\nthe name of an enum type, such as: gdata.CoreErrorDomain", "type": "string" - }, - "location": { - "description": "Location of the error, as specified by the location type.\n\nIf location_type is PATH, this should be a path to a field that's\nrelative to the request, using FieldPath notation\n(net/proto2/util/public/field_path.h).\n\nExamples:\n authenticated_user.gaia_id\n resource.address[2].country", - "type": "string" - }, - "debugInfo": { - "description": "Debugging information, which should not be\nshared externally.", - "type": "string" } }, "id": "ErrorProto" - }, - "GroupSnippet": { - "description": "A group snippet.", - "type": "object", - "properties": { - "publishedAt": { - "description": "The date and time that the group was created. The value is specified in\nISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "google-datetime", - "type": "string" - }, - "title": { - "description": "The group name. The value must be a non-empty string.", - "type": "string" - } - }, - "id": "GroupSnippet" - }, - "ResultTableColumnHeader": { - "description": "The description of a column of the result table.", - "type": "object", - "properties": { - "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" - }, - "columnType": { - "description": "The type of the column (`DIMENSION` or `METRIC`).", - "type": "string" - } - }, - "id": "ResultTableColumnHeader" - }, - "Errors": { - "properties": { - "requestId": { - "description": "Request identifier generated by the service, which can be\nused to identify the error in the logs", - "type": "string" - }, - "error": { - "description": "Specific error description and codes", - "type": "array", - "items": { - "$ref": "ErrorProto" - } - }, - "code": { - "enumDescriptions": [ - "", - "", - "", - "", - "", - "", - "", - "" - ], - "enum": [ - "BAD_REQUEST", - "FORBIDDEN", - "NOT_FOUND", - "CONFLICT", - "GONE", - "PRECONDITION_FAILED", - "INTERNAL_ERROR", - "SERVICE_UNAVAILABLE" - ], - "description": "Global error code. Deprecated and ignored.\nSet custom error codes in ErrorProto.domain and ErrorProto.code\ninstead.", - "type": "string" - } - }, - "id": "Errors", - "description": "Request Error information.\n\nThe presence of an error field signals that the operation\nhas failed.", - "type": "object" - }, - "ListGroupItemsResponse": { - "description": "Response message for GroupsService.ListGroupItems.", - "type": "object", - "properties": { - "etag": { - "description": "The Etag of this resource.", - "type": "string" - }, - "errors": { - "description": "Apiary error details", - "$ref": "Errors" - }, - "kind": { - "description": "Identifies the API resource's type. The value will be\n`youtube#groupItemListResponse`.", - "type": "string" - }, - "items": { - "description": "A list of groups that match the API request parameters. Each item in the\nlist represents a `groupItem` resource.", - "type": "array", - "items": { - "$ref": "GroupItem" - } - } - }, - "id": "ListGroupItemsResponse" } }, "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": "YouTube Analytics", - "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/youtube": { - "description": "Manage your YouTube account" - }, - "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/youtubepartner": { - "description": "View and manage your assets and associated content on YouTube" - }, - "https://www.googleapis.com/auth/youtube.readonly": { - "description": "View your YouTube account" - } - } - } - }, - "rootUrl": "https://youtubeanalytics.googleapis.com/", - "ownerDomain": "google.com", - "name": "youtubeAnalytics" + "x32": "http://www.google.com/images/icons/product/search-32.gif", + "x16": "http://www.google.com/images/icons/product/search-16.gif" + } } diff --git a/DiscoveryJson/youtubereporting_v1.json b/DiscoveryJson/youtubereporting_v1.json index 7ca1efb380..3f6f9553d3 100644 --- a/DiscoveryJson/youtubereporting_v1.json +++ b/DiscoveryJson/youtubereporting_v1.json @@ -1,119 +1,399 @@ { - "schemas": { - "ListJobsResponse": { - "description": "Response message for ReportingService.ListJobs.", - "type": "object", - "properties": { - "jobs": { - "description": "The list of jobs.", - "type": "array", - "items": { + "resources": { + "jobs": { + "methods": { + "delete": { + "httpMethod": "DELETE", + "parameterOrder": [ + "jobId" + ], + "response": { + "$ref": "Empty" + }, + "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" + }, + "jobId": { + "location": "path", + "description": "The ID of the job to delete.", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", + "https://www.googleapis.com/auth/yt-analytics.readonly" + ], + "flatPath": "v1/jobs/{jobId}", + "id": "youtubereporting.jobs.delete", + "path": "v1/jobs/{jobId}", + "description": "Deletes a job." + }, + "list": { + "response": { + "$ref": "ListJobsResponse" + }, + "parameterOrder": [], + "httpMethod": "GET", + "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": { + "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", + "location": "query" + }, + "pageSize": { + "location": "query", + "description": "Requested page size. Server may return fewer jobs 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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", + "https://www.googleapis.com/auth/yt-analytics.readonly" + ], + "flatPath": "v1/jobs", + "path": "v1/jobs", + "id": "youtubereporting.jobs.list", + "description": "Lists jobs." + }, + "get": { + "response": { "$ref": "Job" - } + }, + "parameterOrder": [ + "jobId" + ], + "httpMethod": "GET", + "parameters": { + "jobId": { + "location": "path", + "description": "The ID of the job to retrieve.", + "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).", + "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}", + "path": "v1/jobs/{jobId}", + "id": "youtubereporting.jobs.get", + "description": "Gets a job." }, - "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" + "create": { + "flatPath": "v1/jobs", + "path": "v1/jobs", + "id": "youtubereporting.jobs.create", + "description": "Creates a job and returns it.", + "request": { + "$ref": "Job" + }, + "response": { + "$ref": "Job" + }, + "parameterOrder": [], + "httpMethod": "POST", + "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" + ] } }, - "id": "ListJobsResponse" + "resources": { + "reports": { + "methods": { + "list": { + "flatPath": "v1/jobs/{jobId}/reports", + "path": "v1/jobs/{jobId}/reports", + "id": "youtubereporting.jobs.reports.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": { + "jobId": { + "description": "The ID of the job.", + "required": true, + "type": "string", + "location": "path" + }, + "createdAfter": { + "description": "If set, only reports created after the specified date/time are returned.", + "format": "google-datetime", + "type": "string", + "location": "query" + }, + "startTimeAtOrAfter": { + "location": "query", + "description": "If set, only reports whose start time is greater than or equal the\nspecified date/time are returned.", + "format": "google-datetime", + "type": "string" + }, + "pageToken": { + "location": "query", + "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" + }, + "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" + }, + "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" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", + "https://www.googleapis.com/auth/yt-analytics.readonly" + ] + }, + "get": { + "description": "Gets the metadata of a specific report.", + "response": { + "$ref": "Report" + }, + "parameterOrder": [ + "jobId", + "reportId" + ], + "httpMethod": "GET", + "parameters": { + "jobId": { + "location": "path", + "description": "The ID of the job.", + "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).", + "type": "string", + "location": "query" + }, + "reportId": { + "location": "path", + "description": "The ID of the report to retrieve.", + "required": true, + "type": "string" + } + }, + "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" + } + } + } + } }, - "GdataCompositeMedia": { - "description": "gdata", - "type": "object", - "properties": { - "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" + "reportTypes": { + "methods": { + "list": { + "response": { + "$ref": "ListReportTypesResponse" + }, + "parameterOrder": [], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", + "https://www.googleapis.com/auth/yt-analytics.readonly" ], - "description": "gdata", - "type": "string", - "enumDescriptions": [ - "gdata", - "gdata", - "gdata", - "gdata", - "gdata" - ] - }, - "md5Hash": { - "description": "gdata", - "format": "byte", - "type": "string" - }, - "inline": { - "description": "gdata", - "format": "byte", - "type": "string" - }, - "blobstore2Info": { - "description": "gdata", - "$ref": "GdataBlobstore2Info" + "parameters": { + "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": { + "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", + "location": "query" + }, + "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" + } + }, + "flatPath": "v1/reportTypes", + "path": "v1/reportTypes", + "id": "youtubereporting.reportTypes.list", + "description": "Lists report types." + } + } + }, + "media": { + "methods": { + "download": { + "description": "Method for media download. Download is supported\non the URI `/v1/media/{+name}?alt=media`.", + "supportsMediaDownload": true, + "httpMethod": "GET", + "parameterOrder": [ + "resourceName" + ], + "response": { + "$ref": "GdataMedia" + }, + "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}", + "id": "youtubereporting.media.download", + "path": "v1/media/{+resourceName}" } - }, - "id": "GdataCompositeMedia" + } + } + }, + "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" }, - "ListReportsResponse": { - "properties": { - "reports": { - "description": "The list of report types.", - "type": "array", - "items": { - "$ref": "Report" - } - }, - "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.", - "type": "string" - } - }, - "id": "ListReportsResponse", - "description": "Response message for ReportingService.ListReports.", - "type": "object" + "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": { + "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": { + "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": { + "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": { + "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" + ] + } + }, + "schemas": { "GdataContentTypeInfo": { "properties": { - "fromBytes": { - "description": "gdata", - "type": "string" - }, "fromFileName": { "description": "gdata", "type": "string" @@ -129,6 +409,10 @@ "fromHeader": { "description": "gdata", "type": "string" + }, + "fromBytes": { + "description": "gdata", + "type": "string" } }, "id": "GdataContentTypeInfo", @@ -136,6 +420,8 @@ "type": "object" }, "GdataDiffUploadResponse": { + "description": "gdata", + "type": "object", "properties": { "objectVersion": { "description": "gdata", @@ -146,38 +432,7 @@ "description": "gdata" } }, - "id": "GdataDiffUploadResponse", - "description": "gdata", - "type": "object" - }, - "GdataDiffChecksumsResponse": { - "description": "gdata", - "type": "object", - "properties": { - "checksumsLocation": { - "$ref": "GdataCompositeMedia", - "description": "gdata" - }, - "objectSizeBytes": { - "description": "gdata", - "format": "int64", - "type": "string" - }, - "objectLocation": { - "description": "gdata", - "$ref": "GdataCompositeMedia" - }, - "objectVersion": { - "description": "gdata", - "type": "string" - }, - "chunkSizeBytes": { - "description": "gdata", - "format": "int64", - "type": "string" - } - }, - "id": "GdataDiffChecksumsResponse" + "id": "GdataDiffUploadResponse" }, "Report": { "description": "A report's metadata including the URL from which the report itself can be\ndownloaded.", @@ -218,6 +473,35 @@ }, "id": "Report" }, + "GdataDiffChecksumsResponse": { + "description": "gdata", + "type": "object", + "properties": { + "objectSizeBytes": { + "description": "gdata", + "format": "int64", + "type": "string" + }, + "objectLocation": { + "$ref": "GdataCompositeMedia", + "description": "gdata" + }, + "objectVersion": { + "description": "gdata", + "type": "string" + }, + "chunkSizeBytes": { + "description": "gdata", + "format": "int64", + "type": "string" + }, + "checksumsLocation": { + "description": "gdata", + "$ref": "GdataCompositeMedia" + } + }, + "id": "GdataDiffChecksumsResponse" + }, "GdataDownloadParameters": { "description": "gdata", "type": "object", @@ -234,9 +518,19 @@ "id": "GdataDownloadParameters" }, "Job": { - "description": "A job creating reports of a specific type.", - "type": "object", "properties": { + "name": { + "description": "The name of the job (max. 100 characters).", + "type": "string" + }, + "id": { + "description": "The server-generated ID of the job (max. 40 characters).", + "type": "string" + }, + "systemManaged": { + "description": "True if this a system-managed job that cannot be modified by the user;\notherwise false.", + "type": "boolean" + }, "createTime": { "description": "The creation date/time of the job.", "format": "google-datetime", @@ -250,46 +544,81 @@ "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" + }, + "GdataObjectId": { + "description": "gdata", + "type": "object", + "properties": { + "generation": { + "description": "gdata", + "format": "int64", + "type": "string" }, - "name": { - "description": "The name of the job (max. 100 characters).", + "objectName": { + "description": "gdata", + "type": "string" + }, + "bucketName": { + "description": "gdata", + "type": "string" + } + }, + "id": "GdataObjectId" + }, + "GdataMedia": { + "description": "gdata", + "type": "object", + "properties": { + "inline": { + "description": "gdata", + "format": "byte", "type": "string" }, - "id": { - "description": "The server-generated ID of the job (max. 40 characters).", + "diffUploadRequest": { + "$ref": "GdataDiffUploadRequest", + "description": "gdata" + }, + "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" }, - "systemManaged": { - "description": "True if this a system-managed job that cannot be modified by the user;\notherwise false.", - "type": "boolean" - } - }, - "id": "Job" - }, - "GdataObjectId": { - "properties": { - "bucketName": { + "contentTypeInfo": { "description": "gdata", - "type": "string" + "$ref": "GdataContentTypeInfo" }, - "generation": { + "contentType": { "description": "gdata", - "format": "int64", "type": "string" }, - "objectName": { + "downloadParameters": { + "description": "gdata", + "$ref": "GdataDownloadParameters" + }, + "mediaId": { "description": "gdata", + "format": "byte", "type": "string" - } - }, - "id": "GdataObjectId", - "description": "gdata", - "type": "object" - }, - "GdataMedia": { - "description": "gdata", - "type": "object", - "properties": { + }, "compositeMedia": { "description": "gdata", "type": "array", @@ -297,18 +626,18 @@ "$ref": "GdataCompositeMedia" } }, + "diffUploadResponse": { + "$ref": "GdataDiffUploadResponse", + "description": "gdata" + }, "blobRef": { "description": "gdata", "format": "byte", "type": "string" }, - "diffUploadResponse": { - "description": "gdata", - "$ref": "GdataDiffUploadResponse" - }, "diffVersionResponse": { - "$ref": "GdataDiffVersionResponse", - "description": "gdata" + "description": "gdata", + "$ref": "GdataDiffVersionResponse" }, "timestamp": { "description": "gdata", @@ -353,13 +682,13 @@ "format": "byte", "type": "string" }, - "algorithm": { + "sha256Hash": { "description": "gdata", + "format": "byte", "type": "string" }, - "sha256Hash": { + "algorithm": { "description": "gdata", - "format": "byte", "type": "string" }, "objectId": { @@ -376,6 +705,8 @@ "type": "string" }, "referenceType": { + "description": "gdata", + "type": "string", "enumDescriptions": [ "gdata", "gdata", @@ -405,54 +736,7 @@ "DIFF_UPLOAD_RESPONSE", "COSMO_BINARY_REFERENCE", "ARBITRARY_BYTES" - ], - "description": "gdata", - "type": "string" - }, - "inline": { - "description": "gdata", - "format": "byte", - "type": "string" - }, - "diffUploadRequest": { - "$ref": "GdataDiffUploadRequest", - "description": "gdata" - }, - "diffChecksumsResponse": { - "description": "gdata", - "$ref": "GdataDiffChecksumsResponse" - }, - "sha1Hash": { - "description": "gdata", - "format": "byte", - "type": "string" - }, - "crc32cHash": { - "description": "gdata", - "format": "uint32", - "type": "integer" - }, - "length": { - "description": "gdata", - "format": "int64", - "type": "string" - }, - "contentTypeInfo": { - "description": "gdata", - "$ref": "GdataContentTypeInfo" - }, - "contentType": { - "description": "gdata", - "type": "string" - }, - "downloadParameters": { - "description": "gdata", - "$ref": "GdataDownloadParameters" - }, - "mediaId": { - "description": "gdata", - "format": "byte", - "type": "string" + ] } }, "id": "GdataMedia" @@ -478,8 +762,8 @@ "type": "object", "properties": { "objectLocation": { - "description": "gdata", - "$ref": "GdataCompositeMedia" + "$ref": "GdataCompositeMedia", + "description": "gdata" } }, "id": "GdataDiffDownloadResponse" @@ -493,12 +777,12 @@ "type": "string" }, "objectInfo": { - "description": "gdata", - "$ref": "GdataCompositeMedia" - }, - "checksumsInfo": { "$ref": "GdataCompositeMedia", "description": "gdata" + }, + "checksumsInfo": { + "description": "gdata", + "$ref": "GdataCompositeMedia" } }, "id": "GdataDiffUploadRequest" @@ -507,505 +791,221 @@ "description": "gdata", "type": "object", "properties": { - "blobId": { - "description": "gdata", - "type": "string" - }, - "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" - } - }, - "id": "GdataBlobstore2Info" - }, - "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" - }, - "ReportType": { - "description": "A report type.", - "type": "object", - "properties": { - "deprecateTime": { - "description": "The date/time when this report type was/will be deprecated.", - "format": "google-datetime", - "type": "string" - }, - "name": { - "description": "The name of the report type (max. 100 characters).", - "type": "string" - }, - "id": { - "description": "The ID of the report type (max. 100 characters).", - "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.", - "type": "boolean" - } - }, - "id": "ReportType" - }, - "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": { - "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://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", - "id": "youtubereporting:v1", - "documentationLink": "https://developers.google.com/youtube/reporting/v1/reports/", - "revision": "20180507", - "title": "YouTube Reporting API", - "ownerName": "Google", - "discoveryVersion": "v1", - "resources": { - "reportTypes": { - "methods": { - "list": { - "description": "Lists report types.", - "httpMethod": "GET", - "parameterOrder": [], - "response": { - "$ref": "ListReportTypesResponse" - }, - "parameters": { - "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": { - "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", - "location": "query" - }, - "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" - }, - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", - "https://www.googleapis.com/auth/yt-analytics.readonly" - ], - "flatPath": "v1/reportTypes", - "id": "youtubereporting.reportTypes.list", - "path": "v1/reportTypes" + "description": "gdata", + "format": "byte", + "type": "string" + }, + "blobGeneration": { + "description": "gdata", + "format": "int64", + "type": "string" + }, + "blobId": { + "description": "gdata", + "type": "string" + }, + "downloadReadHandle": { + "description": "gdata", + "format": "byte", + "type": "string" + }, + "readToken": { + "description": "gdata", + "type": "string" } - } + }, + "id": "GdataBlobstore2Info" }, - "media": { - "methods": { - "download": { - "flatPath": "v1/media/{mediaId}", - "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" - ] + "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" }, - "jobs": { - "methods": { - "create": { - "response": { - "$ref": "Job" - }, - "parameterOrder": [], - "httpMethod": "POST", - "scopes": [ - "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", - "https://www.googleapis.com/auth/yt-analytics.readonly" - ], - "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" - } - }, - "flatPath": "v1/jobs", - "path": "v1/jobs", - "id": "youtubereporting.jobs.create", - "request": { - "$ref": "Job" - }, - "description": "Creates a job and returns it." + "ReportType": { + "description": "A report type.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the report type (max. 100 characters).", + "type": "string" }, - "delete": { - "description": "Deletes a job.", - "response": { - "$ref": "Empty" - }, - "parameterOrder": [ - "jobId" - ], - "httpMethod": "DELETE", - "parameters": { - "jobId": { - "location": "path", - "description": "The ID of the job to delete.", - "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).", - "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}", - "path": "v1/jobs/{jobId}", - "id": "youtubereporting.jobs.delete" + "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.", + "type": "boolean" }, - "list": { - "path": "v1/jobs", - "id": "youtubereporting.jobs.list", - "description": "Lists jobs.", - "response": { - "$ref": "ListJobsResponse" - }, - "parameterOrder": [], - "httpMethod": "GET", - "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" - } - }, - "scopes": [ - "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", - "https://www.googleapis.com/auth/yt-analytics.readonly" - ], - "flatPath": "v1/jobs" + "deprecateTime": { + "description": "The date/time when this report type was/will be deprecated.", + "format": "google-datetime", + "type": "string" }, - "get": { - "description": "Gets a job.", - "response": { + "name": { + "description": "The name of the report type (max. 100 characters).", + "type": "string" + } + }, + "id": "ReportType" + }, + "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" + }, + "ListJobsResponse": { + "properties": { + "jobs": { + "description": "The list of jobs.", + "type": "array", + "items": { "$ref": "Job" - }, - "parameterOrder": [ - "jobId" + } + }, + "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", + "description": "Response message for ReportingService.ListJobs.", + "type": "object" + }, + "GdataCompositeMedia": { + "properties": { + "crc32cHash": { + "description": "gdata", + "format": "uint32", + "type": "integer" + }, + "sha1Hash": { + "description": "gdata", + "format": "byte", + "type": "string" + }, + "path": { + "description": "gdata", + "type": "string" + }, + "length": { + "description": "gdata", + "format": "int64", + "type": "string" + }, + "cosmoBinaryReference": { + "description": "gdata", + "format": "byte", + "type": "string" + }, + "referenceType": { + "enumDescriptions": [ + "gdata", + "gdata", + "gdata", + "gdata", + "gdata" ], - "httpMethod": "GET", - "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" - }, - "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" + "enum": [ + "PATH", + "BLOB_REF", + "INLINE", + "BIGSTORE_REF", + "COSMO_BINARY_REFERENCE" ], - "flatPath": "v1/jobs/{jobId}", - "path": "v1/jobs/{jobId}", - "id": "youtubereporting.jobs.get" + "description": "gdata", + "type": "string" + }, + "md5Hash": { + "description": "gdata", + "format": "byte", + "type": "string" + }, + "inline": { + "description": "gdata", + "format": "byte", + "type": "string" + }, + "blobstore2Info": { + "$ref": "GdataBlobstore2Info", + "description": "gdata" + }, + "blobRef": { + "description": "gdata", + "format": "byte", + "type": "string" + }, + "objectId": { + "description": "gdata", + "$ref": "GdataObjectId" } }, - "resources": { + "id": "GdataCompositeMedia", + "description": "gdata", + "type": "object" + }, + "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.", + "type": "string" + }, "reports": { - "methods": { - "list": { - "response": { - "$ref": "ListReportsResponse" - }, - "parameterOrder": [ - "jobId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", - "https://www.googleapis.com/auth/yt-analytics.readonly" - ], - "parameters": { - "startTimeBefore": { - "location": "query", - "description": "If set, only reports whose start time is smaller than the specified\ndate/time are returned.", - "format": "google-datetime", - "type": "string" - }, - "jobId": { - "description": "The ID of the job.", - "required": true, - "type": "string", - "location": "path" - }, - "createdAfter": { - "location": "query", - "description": "If set, only reports created after the specified date/time are returned.", - "format": "google-datetime", - "type": "string" - }, - "pageToken": { - "location": "query", - "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" - }, - "startTimeAtOrAfter": { - "location": "query", - "description": "If set, only reports whose start time is greater than or equal the\nspecified date/time are returned.", - "format": "google-datetime", - "type": "string" - }, - "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": { - "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" - } - }, - "flatPath": "v1/jobs/{jobId}/reports", - "path": "v1/jobs/{jobId}/reports", - "id": "youtubereporting.jobs.reports.list", - "description": "Lists reports created by a specific job.\nReturns NOT_FOUND if the job does not exist." - }, - "get": { - "description": "Gets the metadata of a specific report.", - "response": { - "$ref": "Report" - }, - "parameterOrder": [ - "jobId", - "reportId" - ], - "httpMethod": "GET", - "scopes": [ - "https://www.googleapis.com/auth/yt-analytics-monetary.readonly", - "https://www.googleapis.com/auth/yt-analytics.readonly" - ], - "parameters": { - "jobId": { - "description": "The ID of the job.", - "required": true, - "type": "string", - "location": "path" - }, - "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": { - "location": "path", - "description": "The ID of the report to retrieve.", - "required": true, - "type": "string" - } - }, - "flatPath": "v1/jobs/{jobId}/reports/{reportId}", - "path": "v1/jobs/{jobId}/reports/{reportId}", - "id": "youtubereporting.jobs.reports.get" - } + "description": "The list of report types.", + "type": "array", + "items": { + "$ref": "Report" } } - } + }, + "id": "ListReportsResponse", + "description": "Response message for ReportingService.ListReports.", + "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" - }, - "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": { - "location": "query", - "description": "Returns response with indentations and line breaks.", - "type": "boolean", - "default": "true" + "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://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" + } + } } - } + }, + "servicePath": "", + "description": "Schedules reporting jobs containing your YouTube Analytics data and downloads the resulting bulk data reports in the form of CSV files.", + "kind": "discovery#restDescription", + "rootUrl": "https://youtubereporting.googleapis.com/", + "basePath": "", + "ownerDomain": "google.com", + "name": "youtubereporting", + "batchPath": "batch", + "revision": "20180507", + "documentationLink": "https://developers.google.com/youtube/reporting/v1/reports/", + "id": "youtubereporting:v1", + "title": "YouTube Reporting API", + "discoveryVersion": "v1", + "ownerName": "Google" } diff --git a/Src/Generated/Google.Apis.AbusiveExperienceReport.v1/Google.Apis.AbusiveExperienceReport.v1.cs b/Src/Generated/Google.Apis.AbusiveExperienceReport.v1/Google.Apis.AbusiveExperienceReport.v1.cs index ba12c6d502..20dcd96c5c 100644 --- a/Src/Generated/Google.Apis.AbusiveExperienceReport.v1/Google.Apis.AbusiveExperienceReport.v1.cs +++ b/Src/Generated/Google.Apis.AbusiveExperienceReport.v1/Google.Apis.AbusiveExperienceReport.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.AbusiveExperienceReport.v1/Google.Apis.AbusiveExperienceReport.v1.csproj b/Src/Generated/Google.Apis.AbusiveExperienceReport.v1/Google.Apis.AbusiveExperienceReport.v1.csproj index 7e6ad9249c..99785879f7 100644 --- a/Src/Generated/Google.Apis.AbusiveExperienceReport.v1/Google.Apis.AbusiveExperienceReport.v1.csproj +++ b/Src/Generated/Google.Apis.AbusiveExperienceReport.v1/Google.Apis.AbusiveExperienceReport.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.AbusiveExperienceReport.v1 Client Library - 1.33.0.1215 + 1.33.1.1215 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/abusiveexperiencereport/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Acceleratedmobilepageurl.v1/Google.Apis.Acceleratedmobilepageurl.v1.cs b/Src/Generated/Google.Apis.Acceleratedmobilepageurl.v1/Google.Apis.Acceleratedmobilepageurl.v1.cs index 7f0de54303..0bf826a421 100644 --- a/Src/Generated/Google.Apis.Acceleratedmobilepageurl.v1/Google.Apis.Acceleratedmobilepageurl.v1.cs +++ b/Src/Generated/Google.Apis.Acceleratedmobilepageurl.v1/Google.Apis.Acceleratedmobilepageurl.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Acceleratedmobilepageurl.v1/Google.Apis.Acceleratedmobilepageurl.v1.csproj b/Src/Generated/Google.Apis.Acceleratedmobilepageurl.v1/Google.Apis.Acceleratedmobilepageurl.v1.csproj index 9e98b89c60..1629e5f0bf 100644 --- a/Src/Generated/Google.Apis.Acceleratedmobilepageurl.v1/Google.Apis.Acceleratedmobilepageurl.v1.csproj +++ b/Src/Generated/Google.Apis.Acceleratedmobilepageurl.v1/Google.Apis.Acceleratedmobilepageurl.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Acceleratedmobilepageurl.v1 Client Library - 1.33.0.1190 + 1.33.1.1190 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/acceleratedmobilepageurl/v1 @@ -57,7 +58,7 @@ - + @@ -71,7 +72,7 @@ - + diff --git a/Src/Generated/Google.Apis.AdExchangeBuyer.v1_2/Google.Apis.AdExchangeBuyer.v1_2.cs b/Src/Generated/Google.Apis.AdExchangeBuyer.v1_2/Google.Apis.AdExchangeBuyer.v1_2.cs index cd343f2997..91bf25d9fa 100644 --- a/Src/Generated/Google.Apis.AdExchangeBuyer.v1_2/Google.Apis.AdExchangeBuyer.v1_2.cs +++ b/Src/Generated/Google.Apis.AdExchangeBuyer.v1_2/Google.Apis.AdExchangeBuyer.v1_2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.AdExchangeBuyer.v1_2/Google.Apis.AdExchangeBuyer.v1_2.csproj b/Src/Generated/Google.Apis.AdExchangeBuyer.v1_2/Google.Apis.AdExchangeBuyer.v1_2.csproj index c3a0bf77b2..dd4825c0d5 100644 --- a/Src/Generated/Google.Apis.AdExchangeBuyer.v1_2/Google.Apis.AdExchangeBuyer.v1_2.csproj +++ b/Src/Generated/Google.Apis.AdExchangeBuyer.v1_2/Google.Apis.AdExchangeBuyer.v1_2.csproj @@ -3,7 +3,7 @@ Google.Apis.AdExchangeBuyer.v1_2 Client Library - 1.33.0.1148 + 1.33.1.1148 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/adexchangebuyer/v1.2 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.AdExchangeBuyer.v1_3/Google.Apis.AdExchangeBuyer.v1_3.cs b/Src/Generated/Google.Apis.AdExchangeBuyer.v1_3/Google.Apis.AdExchangeBuyer.v1_3.cs index af7ced2156..b28a0ff192 100644 --- a/Src/Generated/Google.Apis.AdExchangeBuyer.v1_3/Google.Apis.AdExchangeBuyer.v1_3.cs +++ b/Src/Generated/Google.Apis.AdExchangeBuyer.v1_3/Google.Apis.AdExchangeBuyer.v1_3.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.AdExchangeBuyer.v1_3/Google.Apis.AdExchangeBuyer.v1_3.csproj b/Src/Generated/Google.Apis.AdExchangeBuyer.v1_3/Google.Apis.AdExchangeBuyer.v1_3.csproj index 3598d42609..ef3dc8a675 100644 --- a/Src/Generated/Google.Apis.AdExchangeBuyer.v1_3/Google.Apis.AdExchangeBuyer.v1_3.csproj +++ b/Src/Generated/Google.Apis.AdExchangeBuyer.v1_3/Google.Apis.AdExchangeBuyer.v1_3.csproj @@ -3,7 +3,7 @@ Google.Apis.AdExchangeBuyer.v1_3 Client Library - 1.33.0.1148 + 1.33.1.1148 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/adexchangebuyer/v1.3 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.AdExchangeBuyer.v1_4/Google.Apis.AdExchangeBuyer.v1_4.cs b/Src/Generated/Google.Apis.AdExchangeBuyer.v1_4/Google.Apis.AdExchangeBuyer.v1_4.cs index 44ba01729b..aaadce6080 100644 --- a/Src/Generated/Google.Apis.AdExchangeBuyer.v1_4/Google.Apis.AdExchangeBuyer.v1_4.cs +++ b/Src/Generated/Google.Apis.AdExchangeBuyer.v1_4/Google.Apis.AdExchangeBuyer.v1_4.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.AdExchangeBuyer.v1_4/Google.Apis.AdExchangeBuyer.v1_4.csproj b/Src/Generated/Google.Apis.AdExchangeBuyer.v1_4/Google.Apis.AdExchangeBuyer.v1_4.csproj index cf79abe7da..669b760e5a 100644 --- a/Src/Generated/Google.Apis.AdExchangeBuyer.v1_4/Google.Apis.AdExchangeBuyer.v1_4.csproj +++ b/Src/Generated/Google.Apis.AdExchangeBuyer.v1_4/Google.Apis.AdExchangeBuyer.v1_4.csproj @@ -3,7 +3,7 @@ Google.Apis.AdExchangeBuyer.v1_4 Client Library - 1.33.0.1148 + 1.33.1.1148 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/adexchangebuyer/v1.4 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.AdExchangeBuyerII.v2beta1/Google.Apis.AdExchangeBuyerII.v2beta1.cs b/Src/Generated/Google.Apis.AdExchangeBuyerII.v2beta1/Google.Apis.AdExchangeBuyerII.v2beta1.cs index 1d80075237..c4d28ae14c 100644 --- a/Src/Generated/Google.Apis.AdExchangeBuyerII.v2beta1/Google.Apis.AdExchangeBuyerII.v2beta1.cs +++ b/Src/Generated/Google.Apis.AdExchangeBuyerII.v2beta1/Google.Apis.AdExchangeBuyerII.v2beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Ad Exchange Buyer API II * API Versionv2beta1 - * API Rev20180507 (1222) + * API Rev20180508 (1223) * API Docs * * https://developers.google.com/ad-exchange/buyer-rest/reference/rest/ @@ -1537,17 +1537,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string accountId [Google.Apis.Util.RequestParameterAttribute("creativeId", Google.Apis.Util.RequestParameterType.Path)] public virtual string CreativeId { get; private set; } - /// An optional query string to filter deal associations. If no filter is specified, all - /// associations will be returned. Supported queries are: - /// - /// accountId=account_id_string creativeId=creative_id_string dealsId=deals_id_string - /// dealsStatus:{approved, conditionally_approved, disapproved, not_checked} - /// openAuctionStatus:{approved, conditionally_approved, disapproved, not_checked} - /// - /// Example: 'dealsId=12345 AND dealsStatus:disapproved' - [Google.Apis.Util.RequestParameterAttribute("query", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Query { get; set; } - /// A token identifying a page of results the server should return. Typically, this is the /// value of ListDealAssociationsResponse.next_page_token returned from the previous call to /// 'ListDealAssociations' method. @@ -1559,6 +1548,17 @@ public ListRequest(Google.Apis.Services.IClientService service, string accountId [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// An optional query string to filter deal associations. If no filter is specified, all + /// associations will be returned. Supported queries are: + /// + /// accountId=account_id_string creativeId=creative_id_string dealsId=deals_id_string + /// dealsStatus:{approved, conditionally_approved, disapproved, not_checked} + /// openAuctionStatus:{approved, conditionally_approved, disapproved, not_checked} + /// + /// Example: 'dealsId=12345 AND dealsStatus:disapproved' + [Google.Apis.Util.RequestParameterAttribute("query", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Query { get; set; } + ///Gets the method name. public override string MethodName @@ -1602,27 +1602,27 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "query", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "query", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "query", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "query", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1912,6 +1912,18 @@ public ListRequest(Google.Apis.Services.IClientService service, string accountId [Google.Apis.Util.RequestParameterAttribute("accountId", Google.Apis.Util.RequestParameterType.Path)] public virtual string AccountId { get; private set; } + /// A token identifying a page of results the server should return. Typically, this is the + /// value of ListCreativesResponse.next_page_token returned from the previous call to 'ListCreatives' + /// method. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// Requested page size. The server may return fewer creatives than requested (due to timeout + /// constraint) even if more are available via another call. If unspecified, server will pick an + /// appropriate default. Acceptable values are 1 to 1000, inclusive. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + /// An optional query string to filter creatives. If no filter is specified, all active /// creatives will be returned. Supported queries are: /// @@ -1925,18 +1937,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string accountId [Google.Apis.Util.RequestParameterAttribute("query", Google.Apis.Util.RequestParameterType.Query)] public virtual string Query { get; set; } - /// A token identifying a page of results the server should return. Typically, this is the - /// value of ListCreativesResponse.next_page_token returned from the previous call to 'ListCreatives' - /// method. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - - /// Requested page size. The server may return fewer creatives than requested (due to timeout - /// constraint) even if more are available via another call. If unspecified, server will pick an - /// appropriate default. Acceptable values are 1 to 1000, inclusive. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - ///Gets the method name. public override string MethodName @@ -1971,27 +1971,27 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "query", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "query", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "query", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "query", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.AdExchangeBuyerII.v2beta1/Google.Apis.AdExchangeBuyerII.v2beta1.csproj b/Src/Generated/Google.Apis.AdExchangeBuyerII.v2beta1/Google.Apis.AdExchangeBuyerII.v2beta1.csproj index 464744dea1..9fdc2517bf 100644 --- a/Src/Generated/Google.Apis.AdExchangeBuyerII.v2beta1/Google.Apis.AdExchangeBuyerII.v2beta1.csproj +++ b/Src/Generated/Google.Apis.AdExchangeBuyerII.v2beta1/Google.Apis.AdExchangeBuyerII.v2beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.AdExchangeBuyerII.v2beta1 Client Library - 1.33.0.1222 + 1.33.1.1223 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/adexchangebuyer2/v2beta1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.AdExchangeSeller.v1/Google.Apis.AdExchangeSeller.v1.cs b/Src/Generated/Google.Apis.AdExchangeSeller.v1/Google.Apis.AdExchangeSeller.v1.cs index 9c8d2f1a34..b9147409cb 100644 --- a/Src/Generated/Google.Apis.AdExchangeSeller.v1/Google.Apis.AdExchangeSeller.v1.cs +++ b/Src/Generated/Google.Apis.AdExchangeSeller.v1/Google.Apis.AdExchangeSeller.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.AdExchangeSeller.v1/Google.Apis.AdExchangeSeller.v1.csproj b/Src/Generated/Google.Apis.AdExchangeSeller.v1/Google.Apis.AdExchangeSeller.v1.csproj index 839f07f17d..6d5958f17a 100644 --- a/Src/Generated/Google.Apis.AdExchangeSeller.v1/Google.Apis.AdExchangeSeller.v1.csproj +++ b/Src/Generated/Google.Apis.AdExchangeSeller.v1/Google.Apis.AdExchangeSeller.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.AdExchangeSeller.v1 Client Library - 1.33.0.1035 + 1.33.1.1035 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/adexchangeseller/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.AdExchangeSeller.v1_1/Google.Apis.AdExchangeSeller.v1_1.cs b/Src/Generated/Google.Apis.AdExchangeSeller.v1_1/Google.Apis.AdExchangeSeller.v1_1.cs index c1ee7dfc03..b58d894eb6 100644 --- a/Src/Generated/Google.Apis.AdExchangeSeller.v1_1/Google.Apis.AdExchangeSeller.v1_1.cs +++ b/Src/Generated/Google.Apis.AdExchangeSeller.v1_1/Google.Apis.AdExchangeSeller.v1_1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.AdExchangeSeller.v1_1/Google.Apis.AdExchangeSeller.v1_1.csproj b/Src/Generated/Google.Apis.AdExchangeSeller.v1_1/Google.Apis.AdExchangeSeller.v1_1.csproj index 81688c81eb..13b8bf65be 100644 --- a/Src/Generated/Google.Apis.AdExchangeSeller.v1_1/Google.Apis.AdExchangeSeller.v1_1.csproj +++ b/Src/Generated/Google.Apis.AdExchangeSeller.v1_1/Google.Apis.AdExchangeSeller.v1_1.csproj @@ -3,7 +3,7 @@ Google.Apis.AdExchangeSeller.v1_1 Client Library - 1.33.0.1035 + 1.33.1.1035 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/adexchangeseller/v1.1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.AdExchangeSeller.v2_0/Google.Apis.AdExchangeSeller.v2_0.cs b/Src/Generated/Google.Apis.AdExchangeSeller.v2_0/Google.Apis.AdExchangeSeller.v2_0.cs index fd4c3e43a1..6c6e4f0ae1 100644 --- a/Src/Generated/Google.Apis.AdExchangeSeller.v2_0/Google.Apis.AdExchangeSeller.v2_0.cs +++ b/Src/Generated/Google.Apis.AdExchangeSeller.v2_0/Google.Apis.AdExchangeSeller.v2_0.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.AdExchangeSeller.v2_0/Google.Apis.AdExchangeSeller.v2_0.csproj b/Src/Generated/Google.Apis.AdExchangeSeller.v2_0/Google.Apis.AdExchangeSeller.v2_0.csproj index df79afc252..6628526d67 100644 --- a/Src/Generated/Google.Apis.AdExchangeSeller.v2_0/Google.Apis.AdExchangeSeller.v2_0.csproj +++ b/Src/Generated/Google.Apis.AdExchangeSeller.v2_0/Google.Apis.AdExchangeSeller.v2_0.csproj @@ -3,7 +3,7 @@ Google.Apis.AdExchangeSeller.v2_0 Client Library - 1.33.0.1035 + 1.33.1.1035 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/adexchangeseller/v2.0 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.AdExperienceReport.v1/Google.Apis.AdExperienceReport.v1.cs b/Src/Generated/Google.Apis.AdExperienceReport.v1/Google.Apis.AdExperienceReport.v1.cs index ef214acb6f..3daea48746 100644 --- a/Src/Generated/Google.Apis.AdExperienceReport.v1/Google.Apis.AdExperienceReport.v1.cs +++ b/Src/Generated/Google.Apis.AdExperienceReport.v1/Google.Apis.AdExperienceReport.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.AdExperienceReport.v1/Google.Apis.AdExperienceReport.v1.csproj b/Src/Generated/Google.Apis.AdExperienceReport.v1/Google.Apis.AdExperienceReport.v1.csproj index 28fba4220a..4acdcc0865 100644 --- a/Src/Generated/Google.Apis.AdExperienceReport.v1/Google.Apis.AdExperienceReport.v1.csproj +++ b/Src/Generated/Google.Apis.AdExperienceReport.v1/Google.Apis.AdExperienceReport.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.AdExperienceReport.v1 Client Library - 1.33.0.1215 + 1.33.1.1215 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/adexperiencereport/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.AdSense.v1_4/Google.Apis.AdSense.v1_4.cs b/Src/Generated/Google.Apis.AdSense.v1_4/Google.Apis.AdSense.v1_4.cs index 098552ab3a..566d7991fc 100644 --- a/Src/Generated/Google.Apis.AdSense.v1_4/Google.Apis.AdSense.v1_4.cs +++ b/Src/Generated/Google.Apis.AdSense.v1_4/Google.Apis.AdSense.v1_4.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * AdSense Management API * API Versionv1.4 - * API Rev20180507 (1222) + * API Rev20180508 (1223) * API Docs * * https://developers.google.com/adsense/management/ diff --git a/Src/Generated/Google.Apis.AdSense.v1_4/Google.Apis.AdSense.v1_4.csproj b/Src/Generated/Google.Apis.AdSense.v1_4/Google.Apis.AdSense.v1_4.csproj index 7c1c3b2e38..c7b5d07170 100644 --- a/Src/Generated/Google.Apis.AdSense.v1_4/Google.Apis.AdSense.v1_4.csproj +++ b/Src/Generated/Google.Apis.AdSense.v1_4/Google.Apis.AdSense.v1_4.csproj @@ -3,7 +3,7 @@ Google.Apis.AdSense.v1_4 Client Library - 1.33.0.1222 + 1.33.1.1223 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/adsense/v1.4 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.AdSenseHost.v4_1/Google.Apis.AdSenseHost.v4_1.cs b/Src/Generated/Google.Apis.AdSenseHost.v4_1/Google.Apis.AdSenseHost.v4_1.cs index bf50ad7cc1..3fdc7165fc 100644 --- a/Src/Generated/Google.Apis.AdSenseHost.v4_1/Google.Apis.AdSenseHost.v4_1.cs +++ b/Src/Generated/Google.Apis.AdSenseHost.v4_1/Google.Apis.AdSenseHost.v4_1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * AdSense Host API * API Versionv4.1 - * API Rev20180507 (1222) + * API Rev20180508 (1223) * API Docs * * https://developers.google.com/adsense/host/ diff --git a/Src/Generated/Google.Apis.AdSenseHost.v4_1/Google.Apis.AdSenseHost.v4_1.csproj b/Src/Generated/Google.Apis.AdSenseHost.v4_1/Google.Apis.AdSenseHost.v4_1.csproj index c039eae02c..df4a1fbf81 100644 --- a/Src/Generated/Google.Apis.AdSenseHost.v4_1/Google.Apis.AdSenseHost.v4_1.csproj +++ b/Src/Generated/Google.Apis.AdSenseHost.v4_1/Google.Apis.AdSenseHost.v4_1.csproj @@ -3,7 +3,7 @@ Google.Apis.AdSenseHost.v4_1 Client Library - 1.33.0.1222 + 1.33.1.1223 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/adsensehost/v4.1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Admin.DataTransfer.datatransfer_v1/Google.Apis.Admin.DataTransfer.datatransfer_v1.cs b/Src/Generated/Google.Apis.Admin.DataTransfer.datatransfer_v1/Google.Apis.Admin.DataTransfer.datatransfer_v1.cs index 671d56c498..d4caae873c 100644 --- a/Src/Generated/Google.Apis.Admin.DataTransfer.datatransfer_v1/Google.Apis.Admin.DataTransfer.datatransfer_v1.cs +++ b/Src/Generated/Google.Apis.Admin.DataTransfer.datatransfer_v1/Google.Apis.Admin.DataTransfer.datatransfer_v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Admin.DataTransfer.datatransfer_v1/Google.Apis.Admin.DataTransfer.datatransfer_v1.csproj b/Src/Generated/Google.Apis.Admin.DataTransfer.datatransfer_v1/Google.Apis.Admin.DataTransfer.datatransfer_v1.csproj index 30f5970b19..addd64d330 100644 --- a/Src/Generated/Google.Apis.Admin.DataTransfer.datatransfer_v1/Google.Apis.Admin.DataTransfer.datatransfer_v1.csproj +++ b/Src/Generated/Google.Apis.Admin.DataTransfer.datatransfer_v1/Google.Apis.Admin.DataTransfer.datatransfer_v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Admin.DataTransfer.datatransfer_v1 Client Library - 1.33.0.418 + 1.33.1.418 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/admin/datatransfer_v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Admin.Directory.directory_v1/Google.Apis.Admin.Directory.directory_v1.cs b/Src/Generated/Google.Apis.Admin.Directory.directory_v1/Google.Apis.Admin.Directory.directory_v1.cs index 42b47dc696..9d20f9f8fd 100644 --- a/Src/Generated/Google.Apis.Admin.Directory.directory_v1/Google.Apis.Admin.Directory.directory_v1.cs +++ b/Src/Generated/Google.Apis.Admin.Directory.directory_v1/Google.Apis.Admin.Directory.directory_v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Admin.Directory.directory_v1/Google.Apis.Admin.Directory.directory_v1.csproj b/Src/Generated/Google.Apis.Admin.Directory.directory_v1/Google.Apis.Admin.Directory.directory_v1.csproj index b047bb7838..09ff880e16 100644 --- a/Src/Generated/Google.Apis.Admin.Directory.directory_v1/Google.Apis.Admin.Directory.directory_v1.csproj +++ b/Src/Generated/Google.Apis.Admin.Directory.directory_v1/Google.Apis.Admin.Directory.directory_v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Admin.Directory.directory_v1 Client Library - 1.33.0.1208 + 1.33.1.1208 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/admin/directory_v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Admin.Reports.reports_v1/Google.Apis.Admin.Reports.reports_v1.cs b/Src/Generated/Google.Apis.Admin.Reports.reports_v1/Google.Apis.Admin.Reports.reports_v1.cs index 84d9dd53a1..7e5de4f0f7 100644 --- a/Src/Generated/Google.Apis.Admin.Reports.reports_v1/Google.Apis.Admin.Reports.reports_v1.cs +++ b/Src/Generated/Google.Apis.Admin.Reports.reports_v1/Google.Apis.Admin.Reports.reports_v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Admin.Reports.reports_v1/Google.Apis.Admin.Reports.reports_v1.csproj b/Src/Generated/Google.Apis.Admin.Reports.reports_v1/Google.Apis.Admin.Reports.reports_v1.csproj index c63fd22767..bc976ca8e1 100644 --- a/Src/Generated/Google.Apis.Admin.Reports.reports_v1/Google.Apis.Admin.Reports.reports_v1.csproj +++ b/Src/Generated/Google.Apis.Admin.Reports.reports_v1/Google.Apis.Admin.Reports.reports_v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Admin.Reports.reports_v1 Client Library - 1.33.0.1215 + 1.33.1.1215 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/admin/reports_v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Analytics.v2_4/Google.Apis.Analytics.v2_4.cs b/Src/Generated/Google.Apis.Analytics.v2_4/Google.Apis.Analytics.v2_4.cs index 43bfb6a435..81a9a85b54 100644 --- a/Src/Generated/Google.Apis.Analytics.v2_4/Google.Apis.Analytics.v2_4.cs +++ b/Src/Generated/Google.Apis.Analytics.v2_4/Google.Apis.Analytics.v2_4.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Analytics.v2_4/Google.Apis.Analytics.v2_4.csproj b/Src/Generated/Google.Apis.Analytics.v2_4/Google.Apis.Analytics.v2_4.csproj index d7760a7bfd..d35899c301 100644 --- a/Src/Generated/Google.Apis.Analytics.v2_4/Google.Apis.Analytics.v2_4.csproj +++ b/Src/Generated/Google.Apis.Analytics.v2_4/Google.Apis.Analytics.v2_4.csproj @@ -3,7 +3,7 @@ Google.Apis.Analytics.v2_4 Client Library - 1.33.0.1204 + 1.33.1.1204 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/analytics/v2.4 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Analytics.v3/Google.Apis.Analytics.v3.cs b/Src/Generated/Google.Apis.Analytics.v3/Google.Apis.Analytics.v3.cs index b53111b436..b5959fc45e 100644 --- a/Src/Generated/Google.Apis.Analytics.v3/Google.Apis.Analytics.v3.cs +++ b/Src/Generated/Google.Apis.Analytics.v3/Google.Apis.Analytics.v3.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Analytics.v3/Google.Apis.Analytics.v3.csproj b/Src/Generated/Google.Apis.Analytics.v3/Google.Apis.Analytics.v3.csproj index 5ac0af5e1c..d3e9af6bb7 100644 --- a/Src/Generated/Google.Apis.Analytics.v3/Google.Apis.Analytics.v3.csproj +++ b/Src/Generated/Google.Apis.Analytics.v3/Google.Apis.Analytics.v3.csproj @@ -3,7 +3,7 @@ Google.Apis.Analytics.v3 Client Library - 1.33.0.1204 + 1.33.1.1204 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/analytics/v3 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.AnalyticsReporting.v4/Google.Apis.AnalyticsReporting.v4.cs b/Src/Generated/Google.Apis.AnalyticsReporting.v4/Google.Apis.AnalyticsReporting.v4.cs index 60843a28d3..844a507d55 100644 --- a/Src/Generated/Google.Apis.AnalyticsReporting.v4/Google.Apis.AnalyticsReporting.v4.cs +++ b/Src/Generated/Google.Apis.AnalyticsReporting.v4/Google.Apis.AnalyticsReporting.v4.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.AnalyticsReporting.v4/Google.Apis.AnalyticsReporting.v4.csproj b/Src/Generated/Google.Apis.AnalyticsReporting.v4/Google.Apis.AnalyticsReporting.v4.csproj index 6541815048..c137bdf729 100644 --- a/Src/Generated/Google.Apis.AnalyticsReporting.v4/Google.Apis.AnalyticsReporting.v4.csproj +++ b/Src/Generated/Google.Apis.AnalyticsReporting.v4/Google.Apis.AnalyticsReporting.v4.csproj @@ -3,7 +3,7 @@ Google.Apis.AnalyticsReporting.v4 Client Library - 1.33.0.1169 + 1.33.1.1169 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/analyticsreporting/v4 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.AndroidEnterprise.v1/Google.Apis.AndroidEnterprise.v1.cs b/Src/Generated/Google.Apis.AndroidEnterprise.v1/Google.Apis.AndroidEnterprise.v1.cs index b4f894771c..46debbeb21 100644 --- a/Src/Generated/Google.Apis.AndroidEnterprise.v1/Google.Apis.AndroidEnterprise.v1.cs +++ b/Src/Generated/Google.Apis.AndroidEnterprise.v1/Google.Apis.AndroidEnterprise.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.AndroidEnterprise.v1/Google.Apis.AndroidEnterprise.v1.csproj b/Src/Generated/Google.Apis.AndroidEnterprise.v1/Google.Apis.AndroidEnterprise.v1.csproj index 9f9c47cda7..d399dfa066 100644 --- a/Src/Generated/Google.Apis.AndroidEnterprise.v1/Google.Apis.AndroidEnterprise.v1.csproj +++ b/Src/Generated/Google.Apis.AndroidEnterprise.v1/Google.Apis.AndroidEnterprise.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.AndroidEnterprise.v1 Client Library - 1.33.0.1217 + 1.33.1.1217 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/androidenterprise/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.AndroidManagement.v1/Google.Apis.AndroidManagement.v1.cs b/Src/Generated/Google.Apis.AndroidManagement.v1/Google.Apis.AndroidManagement.v1.cs index 050beafa0c..1300b714a6 100644 --- a/Src/Generated/Google.Apis.AndroidManagement.v1/Google.Apis.AndroidManagement.v1.cs +++ b/Src/Generated/Google.Apis.AndroidManagement.v1/Google.Apis.AndroidManagement.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -750,10 +750,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } - /// The standard list filter. - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - /// The standard list page token. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } @@ -762,6 +758,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// The standard list filter. + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + ///Gets the method name. public override string MethodName @@ -796,27 +796,27 @@ protected override void InitParameters() Pattern = @"^enterprises/[^/]+/devices/[^/]+/operations$", }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1772,10 +1772,6 @@ public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.An } - /// The ID of the Google Cloud Platform project which will own the enterprise. - [Google.Apis.Util.RequestParameterAttribute("projectId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string ProjectId { get; set; } - /// The enterprise token appended to the callback URL. [Google.Apis.Util.RequestParameterAttribute("enterpriseToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string EnterpriseToken { get; set; } @@ -1784,6 +1780,10 @@ public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.An [Google.Apis.Util.RequestParameterAttribute("signupUrlName", Google.Apis.Util.RequestParameterType.Query)] public virtual string SignupUrlName { get; set; } + /// The ID of the Google Cloud Platform project which will own the enterprise. + [Google.Apis.Util.RequestParameterAttribute("projectId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string ProjectId { get; set; } + /// Gets or sets the body of this request. Google.Apis.AndroidManagement.v1.Data.Enterprise Body { get; set; } @@ -1815,27 +1815,27 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "projectId", new Google.Apis.Discovery.Parameter + "enterpriseToken", new Google.Apis.Discovery.Parameter { - Name = "projectId", + Name = "enterpriseToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "enterpriseToken", new Google.Apis.Discovery.Parameter + "signupUrlName", new Google.Apis.Discovery.Parameter { - Name = "enterpriseToken", + Name = "signupUrlName", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "signupUrlName", new Google.Apis.Discovery.Parameter + "projectId", new Google.Apis.Discovery.Parameter { - Name = "signupUrlName", + Name = "projectId", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.AndroidManagement.v1/Google.Apis.AndroidManagement.v1.csproj b/Src/Generated/Google.Apis.AndroidManagement.v1/Google.Apis.AndroidManagement.v1.csproj index 4c72d3a3e0..2ee80cb28c 100644 --- a/Src/Generated/Google.Apis.AndroidManagement.v1/Google.Apis.AndroidManagement.v1.csproj +++ b/Src/Generated/Google.Apis.AndroidManagement.v1/Google.Apis.AndroidManagement.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.AndroidManagement.v1 Client Library - 1.33.0.1215 + 1.33.1.1215 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/androidmanagement/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.AndroidProvisioningPartner.v1/Google.Apis.AndroidProvisioningPartner.v1.cs b/Src/Generated/Google.Apis.AndroidProvisioningPartner.v1/Google.Apis.AndroidProvisioningPartner.v1.cs index 4159503803..7f72623f2d 100644 --- a/Src/Generated/Google.Apis.AndroidProvisioningPartner.v1/Google.Apis.AndroidProvisioningPartner.v1.cs +++ b/Src/Generated/Google.Apis.AndroidProvisioningPartner.v1/Google.Apis.AndroidProvisioningPartner.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.AndroidProvisioningPartner.v1/Google.Apis.AndroidProvisioningPartner.v1.csproj b/Src/Generated/Google.Apis.AndroidProvisioningPartner.v1/Google.Apis.AndroidProvisioningPartner.v1.csproj index 4244b7ec63..bba266bff8 100644 --- a/Src/Generated/Google.Apis.AndroidProvisioningPartner.v1/Google.Apis.AndroidProvisioningPartner.v1.csproj +++ b/Src/Generated/Google.Apis.AndroidProvisioningPartner.v1/Google.Apis.AndroidProvisioningPartner.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.AndroidProvisioningPartner.v1 Client Library - 1.33.0.1221 + 1.33.1.1221 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/androiddeviceprovisioning/v1 @@ -57,7 +58,7 @@ - + @@ -71,7 +72,7 @@ - + diff --git a/Src/Generated/Google.Apis.AndroidPublisher.v1/Google.Apis.AndroidPublisher.v1.cs b/Src/Generated/Google.Apis.AndroidPublisher.v1/Google.Apis.AndroidPublisher.v1.cs index d66a76e8d0..b5273a0972 100644 --- a/Src/Generated/Google.Apis.AndroidPublisher.v1/Google.Apis.AndroidPublisher.v1.cs +++ b/Src/Generated/Google.Apis.AndroidPublisher.v1/Google.Apis.AndroidPublisher.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Google Play Developer API * API Versionv1 - * API Rev20180502 (1217) + * API Rev20180504 (1219) * API Docs * * https://developers.google.com/android-publisher diff --git a/Src/Generated/Google.Apis.AndroidPublisher.v1/Google.Apis.AndroidPublisher.v1.csproj b/Src/Generated/Google.Apis.AndroidPublisher.v1/Google.Apis.AndroidPublisher.v1.csproj index ae2799fbbc..cbb94b0aa3 100644 --- a/Src/Generated/Google.Apis.AndroidPublisher.v1/Google.Apis.AndroidPublisher.v1.csproj +++ b/Src/Generated/Google.Apis.AndroidPublisher.v1/Google.Apis.AndroidPublisher.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.AndroidPublisher.v1 Client Library - 1.33.0.1217 + 1.33.1.1219 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/androidpublisher/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.AndroidPublisher.v1_1/Google.Apis.AndroidPublisher.v1_1.cs b/Src/Generated/Google.Apis.AndroidPublisher.v1_1/Google.Apis.AndroidPublisher.v1_1.cs index ec4af35128..345af97c71 100644 --- a/Src/Generated/Google.Apis.AndroidPublisher.v1_1/Google.Apis.AndroidPublisher.v1_1.cs +++ b/Src/Generated/Google.Apis.AndroidPublisher.v1_1/Google.Apis.AndroidPublisher.v1_1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Google Play Developer API * API Versionv1.1 - * API Rev20180502 (1217) + * API Rev20180504 (1219) * API Docs * * https://developers.google.com/android-publisher diff --git a/Src/Generated/Google.Apis.AndroidPublisher.v1_1/Google.Apis.AndroidPublisher.v1_1.csproj b/Src/Generated/Google.Apis.AndroidPublisher.v1_1/Google.Apis.AndroidPublisher.v1_1.csproj index 78032500a3..88e03bc0c3 100644 --- a/Src/Generated/Google.Apis.AndroidPublisher.v1_1/Google.Apis.AndroidPublisher.v1_1.csproj +++ b/Src/Generated/Google.Apis.AndroidPublisher.v1_1/Google.Apis.AndroidPublisher.v1_1.csproj @@ -3,7 +3,7 @@ Google.Apis.AndroidPublisher.v1_1 Client Library - 1.33.0.1217 + 1.33.1.1219 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/androidpublisher/v1.1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.AndroidPublisher.v2/Google.Apis.AndroidPublisher.v2.cs b/Src/Generated/Google.Apis.AndroidPublisher.v2/Google.Apis.AndroidPublisher.v2.cs index a21f9829d5..38e373d48f 100644 --- a/Src/Generated/Google.Apis.AndroidPublisher.v2/Google.Apis.AndroidPublisher.v2.cs +++ b/Src/Generated/Google.Apis.AndroidPublisher.v2/Google.Apis.AndroidPublisher.v2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Google Play Developer API * API Versionv2 - * API Rev20180502 (1217) + * API Rev20180504 (1219) * API Docs * * https://developers.google.com/android-publisher @@ -285,6 +285,7 @@ public EditsResource(Google.Apis.Services.IClientService service) this.service = service; apklistings = new ApklistingsResource(service); apks = new ApksResource(service); + bundles = new BundlesResource(service); deobfuscationfiles = new DeobfuscationfilesResource(service); details = new DetailsResource(service); expansionfiles = new ExpansionfilesResource(service); @@ -1313,6 +1314,261 @@ public UploadMediaUpload(Google.Apis.Services.IClientService service, string } } } + private readonly BundlesResource bundles; + + /// Gets the Bundles resource. + public virtual BundlesResource Bundles + { + get { return bundles; } + } + + /// The "bundles" collection of methods. + public class BundlesResource + { + private const string Resource = "bundles"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public BundlesResource(Google.Apis.Services.IClientService service) + { + this.service = service; + + } + + + + /// Unique identifier for the Android app that is being updated; for example, + /// "com.spiffygame". + /// Unique identifier for this edit. + public virtual ListRequest List(string packageName, string editId) + { + return new ListRequest(service, packageName, editId); + } + + + public class ListRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string packageName, string editId) + : base(service) + { + PackageName = packageName; + EditId = editId; + InitParameters(); + } + + + /// Unique identifier for the Android app that is being updated; for example, + /// "com.spiffygame". + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// Unique identifier for this edit. + [Google.Apis.Util.RequestParameterAttribute("editId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string EditId { get; private set; } + + + ///Gets the method name. + public override string MethodName + { + get { return "list"; } + } + + ///Gets the HTTP method. + public override string HttpMethod + { + get { return "GET"; } + } + + ///Gets the REST path. + public override string RestPath + { + get { return "{packageName}/edits/{editId}/bundles"; } + } + + /// Initializes List parameter list. + protected override void InitParameters() + { + base.InitParameters(); + + RequestParameters.Add( + "packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add( + "editId", new Google.Apis.Discovery.Parameter + { + Name = "editId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + + } + + + /// Unique identifier for the Android app that is being updated; for example, + /// "com.spiffygame". + /// Unique identifier for this edit. + public virtual UploadRequest Upload(string packageName, string editId) + { + return new UploadRequest(service, packageName, editId); + } + + + public class UploadRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new Upload request. + public UploadRequest(Google.Apis.Services.IClientService service, string packageName, string editId) + : base(service) + { + PackageName = packageName; + EditId = editId; + InitParameters(); + } + + + /// Unique identifier for the Android app that is being updated; for example, + /// "com.spiffygame". + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// Unique identifier for this edit. + [Google.Apis.Util.RequestParameterAttribute("editId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string EditId { get; private set; } + + + ///Gets the method name. + public override string MethodName + { + get { return "upload"; } + } + + ///Gets the HTTP method. + public override string HttpMethod + { + get { return "POST"; } + } + + ///Gets the REST path. + public override string RestPath + { + get { return "{packageName}/edits/{editId}/bundles"; } + } + + /// Initializes Upload parameter list. + protected override void InitParameters() + { + base.InitParameters(); + + RequestParameters.Add( + "packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add( + "editId", new Google.Apis.Discovery.Parameter + { + Name = "editId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + + } + + + + /// Unique identifier for the Android app that is being updated; for example, + /// "com.spiffygame". + /// Unique identifier for this edit. + /// The stream to upload. + /// The content type of the stream to upload. + public virtual UploadMediaUpload Upload(string packageName, string editId, System.IO.Stream stream, string contentType) + { + return new UploadMediaUpload(service, packageName, editId, stream, contentType); + } + + /// Upload media upload which supports resumable upload. + public class UploadMediaUpload : Google.Apis.Upload.ResumableUpload + { + + /// Data format for the response. + /// [default: json] + [Google.Apis.Util.RequestParameterAttribute("alt", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable Alt { get; set; } + + /// Data format for the response. + public enum AltEnum + { + /// Responses with Content-Type of application/json + [Google.Apis.Util.StringValueAttribute("json")] + Json, + } + + /// Selector specifying which fields to include in a partial response. + [Google.Apis.Util.RequestParameterAttribute("fields", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Fields { get; set; } + + /// API key. Your API key identifies your project and provides you with API access, quota, and + /// reports. Required unless you provide an OAuth 2.0 token. + [Google.Apis.Util.RequestParameterAttribute("key", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Key { get; set; } + + /// OAuth 2.0 token for the current user. + [Google.Apis.Util.RequestParameterAttribute("oauth_token", Google.Apis.Util.RequestParameterType.Query)] + public virtual string OauthToken { get; set; } + + /// Returns response with indentations and line breaks. + /// [default: true] + [Google.Apis.Util.RequestParameterAttribute("prettyPrint", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PrettyPrint { get; set; } + + /// An opaque string that represents a user for quota purposes. Must not exceed 40 + /// characters. + [Google.Apis.Util.RequestParameterAttribute("quotaUser", Google.Apis.Util.RequestParameterType.Query)] + public virtual string QuotaUser { get; set; } + + /// Deprecated. Please use quotaUser instead. + [Google.Apis.Util.RequestParameterAttribute("userIp", Google.Apis.Util.RequestParameterType.Query)] + public virtual string UserIp { get; set; } + + + /// Unique identifier for the Android app that is being updated; for example, + /// "com.spiffygame". + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// Unique identifier for this edit. + [Google.Apis.Util.RequestParameterAttribute("editId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string EditId { get; private set; } + + /// Constructs a new Upload media upload instance. + public UploadMediaUpload(Google.Apis.Services.IClientService service, string + packageName, string + editId, System.IO.Stream stream, string contentType) + : base(service, string.Format("/{0}/{1}{2}", "upload", service.BasePath, "{packageName}/edits/{editId}/bundles"), "POST", stream, contentType) + { + PackageName = packageName; + EditId = editId; + } + } + } private readonly DeobfuscationfilesResource deobfuscationfiles; /// Gets the Deobfuscationfiles resource. @@ -6640,6 +6896,41 @@ public class AppEdit : Google.Apis.Requests.IDirectResponseSchema public virtual string ETag { get; set; } } + public class Bundle : Google.Apis.Requests.IDirectResponseSchema + { + /// A sha1 hash of the upload payload, encoded as a hex string and matching the output of the sha1sum + /// command. + [Newtonsoft.Json.JsonPropertyAttribute("sha1")] + public virtual string Sha1 { get; set; } + + /// A sha256 hash of the upload payload, encoded as a hex string and matching the output of the + /// sha256sum command. + [Newtonsoft.Json.JsonPropertyAttribute("sha256")] + public virtual string Sha256 { get; set; } + + /// The version code of the Android App Bundle. As specified in the Android App Bundle's base module + /// APK manifest file. + [Newtonsoft.Json.JsonPropertyAttribute("versionCode")] + public virtual System.Nullable VersionCode { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + public class BundlesListResponse : Google.Apis.Requests.IDirectResponseSchema + { + [Newtonsoft.Json.JsonPropertyAttribute("bundles")] + public virtual System.Collections.Generic.IList Bundles { get; set; } + + /// Identifies what kind of resource this is. Value: the fixed string + /// "androidpublisher#bundlesListResponse". + [Newtonsoft.Json.JsonPropertyAttribute("kind")] + public virtual string Kind { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + public class Comment : Google.Apis.Requests.IDirectResponseSchema { /// A comment from a developer. @@ -7417,6 +7708,8 @@ public class Track : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("userFraction")] public virtual System.Nullable UserFraction { get; set; } + /// Version codes to make active on this track. Note that this list should contain all versions you + /// wish to be active, including those you wish to retain from previous releases. [Newtonsoft.Json.JsonPropertyAttribute("versionCodes")] public virtual System.Collections.Generic.IList> VersionCodes { get; set; } diff --git a/Src/Generated/Google.Apis.AndroidPublisher.v2/Google.Apis.AndroidPublisher.v2.csproj b/Src/Generated/Google.Apis.AndroidPublisher.v2/Google.Apis.AndroidPublisher.v2.csproj index 756291eb5f..4211924f81 100644 --- a/Src/Generated/Google.Apis.AndroidPublisher.v2/Google.Apis.AndroidPublisher.v2.csproj +++ b/Src/Generated/Google.Apis.AndroidPublisher.v2/Google.Apis.AndroidPublisher.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.AndroidPublisher.v2 Client Library - 1.33.0.1217 + 1.33.1.1219 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/androidpublisher/v2 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.AndroidPublisher.v3/Google.Apis.AndroidPublisher.v3.cs b/Src/Generated/Google.Apis.AndroidPublisher.v3/Google.Apis.AndroidPublisher.v3.cs index a26721060d..0c32790782 100644 --- a/Src/Generated/Google.Apis.AndroidPublisher.v3/Google.Apis.AndroidPublisher.v3.cs +++ b/Src/Generated/Google.Apis.AndroidPublisher.v3/Google.Apis.AndroidPublisher.v3.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Google Play Developer API * API Versionv3 - * API Rev20180502 (1217) + * API Rev20180504 (1219) * API Docs * * https://developers.google.com/android-publisher @@ -284,6 +284,7 @@ public EditsResource(Google.Apis.Services.IClientService service) { this.service = service; apks = new ApksResource(service); + bundles = new BundlesResource(service); deobfuscationfiles = new DeobfuscationfilesResource(service); details = new DetailsResource(service); expansionfiles = new ExpansionfilesResource(service); @@ -638,6 +639,261 @@ public UploadMediaUpload(Google.Apis.Services.IClientService service, string } } } + private readonly BundlesResource bundles; + + /// Gets the Bundles resource. + public virtual BundlesResource Bundles + { + get { return bundles; } + } + + /// The "bundles" collection of methods. + public class BundlesResource + { + private const string Resource = "bundles"; + + /// The service which this resource belongs to. + private readonly Google.Apis.Services.IClientService service; + + /// Constructs a new resource. + public BundlesResource(Google.Apis.Services.IClientService service) + { + this.service = service; + + } + + + + /// Unique identifier for the Android app that is being updated; for example, + /// "com.spiffygame". + /// Unique identifier for this edit. + public virtual ListRequest List(string packageName, string editId) + { + return new ListRequest(service, packageName, editId); + } + + + public class ListRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string packageName, string editId) + : base(service) + { + PackageName = packageName; + EditId = editId; + InitParameters(); + } + + + /// Unique identifier for the Android app that is being updated; for example, + /// "com.spiffygame". + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// Unique identifier for this edit. + [Google.Apis.Util.RequestParameterAttribute("editId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string EditId { get; private set; } + + + ///Gets the method name. + public override string MethodName + { + get { return "list"; } + } + + ///Gets the HTTP method. + public override string HttpMethod + { + get { return "GET"; } + } + + ///Gets the REST path. + public override string RestPath + { + get { return "{packageName}/edits/{editId}/bundles"; } + } + + /// Initializes List parameter list. + protected override void InitParameters() + { + base.InitParameters(); + + RequestParameters.Add( + "packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add( + "editId", new Google.Apis.Discovery.Parameter + { + Name = "editId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + + } + + + /// Unique identifier for the Android app that is being updated; for example, + /// "com.spiffygame". + /// Unique identifier for this edit. + public virtual UploadRequest Upload(string packageName, string editId) + { + return new UploadRequest(service, packageName, editId); + } + + + public class UploadRequest : AndroidPublisherBaseServiceRequest + { + /// Constructs a new Upload request. + public UploadRequest(Google.Apis.Services.IClientService service, string packageName, string editId) + : base(service) + { + PackageName = packageName; + EditId = editId; + InitParameters(); + } + + + /// Unique identifier for the Android app that is being updated; for example, + /// "com.spiffygame". + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// Unique identifier for this edit. + [Google.Apis.Util.RequestParameterAttribute("editId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string EditId { get; private set; } + + + ///Gets the method name. + public override string MethodName + { + get { return "upload"; } + } + + ///Gets the HTTP method. + public override string HttpMethod + { + get { return "POST"; } + } + + ///Gets the REST path. + public override string RestPath + { + get { return "{packageName}/edits/{editId}/bundles"; } + } + + /// Initializes Upload parameter list. + protected override void InitParameters() + { + base.InitParameters(); + + RequestParameters.Add( + "packageName", new Google.Apis.Discovery.Parameter + { + Name = "packageName", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + RequestParameters.Add( + "editId", new Google.Apis.Discovery.Parameter + { + Name = "editId", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = null, + }); + } + + } + + + + /// Unique identifier for the Android app that is being updated; for example, + /// "com.spiffygame". + /// Unique identifier for this edit. + /// The stream to upload. + /// The content type of the stream to upload. + public virtual UploadMediaUpload Upload(string packageName, string editId, System.IO.Stream stream, string contentType) + { + return new UploadMediaUpload(service, packageName, editId, stream, contentType); + } + + /// Upload media upload which supports resumable upload. + public class UploadMediaUpload : Google.Apis.Upload.ResumableUpload + { + + /// Data format for the response. + /// [default: json] + [Google.Apis.Util.RequestParameterAttribute("alt", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable Alt { get; set; } + + /// Data format for the response. + public enum AltEnum + { + /// Responses with Content-Type of application/json + [Google.Apis.Util.StringValueAttribute("json")] + Json, + } + + /// Selector specifying which fields to include in a partial response. + [Google.Apis.Util.RequestParameterAttribute("fields", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Fields { get; set; } + + /// API key. Your API key identifies your project and provides you with API access, quota, and + /// reports. Required unless you provide an OAuth 2.0 token. + [Google.Apis.Util.RequestParameterAttribute("key", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Key { get; set; } + + /// OAuth 2.0 token for the current user. + [Google.Apis.Util.RequestParameterAttribute("oauth_token", Google.Apis.Util.RequestParameterType.Query)] + public virtual string OauthToken { get; set; } + + /// Returns response with indentations and line breaks. + /// [default: true] + [Google.Apis.Util.RequestParameterAttribute("prettyPrint", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PrettyPrint { get; set; } + + /// An opaque string that represents a user for quota purposes. Must not exceed 40 + /// characters. + [Google.Apis.Util.RequestParameterAttribute("quotaUser", Google.Apis.Util.RequestParameterType.Query)] + public virtual string QuotaUser { get; set; } + + /// Deprecated. Please use quotaUser instead. + [Google.Apis.Util.RequestParameterAttribute("userIp", Google.Apis.Util.RequestParameterType.Query)] + public virtual string UserIp { get; set; } + + + /// Unique identifier for the Android app that is being updated; for example, + /// "com.spiffygame". + [Google.Apis.Util.RequestParameterAttribute("packageName", Google.Apis.Util.RequestParameterType.Path)] + public virtual string PackageName { get; private set; } + + /// Unique identifier for this edit. + [Google.Apis.Util.RequestParameterAttribute("editId", Google.Apis.Util.RequestParameterType.Path)] + public virtual string EditId { get; private set; } + + /// Constructs a new Upload media upload instance. + public UploadMediaUpload(Google.Apis.Services.IClientService service, string + packageName, string + editId, System.IO.Stream stream, string contentType) + : base(service, string.Format("/{0}/{1}{2}", "upload", service.BasePath, "{packageName}/edits/{editId}/bundles"), "POST", stream, contentType) + { + PackageName = packageName; + EditId = editId; + } + } + } private readonly DeobfuscationfilesResource deobfuscationfiles; /// Gets the Deobfuscationfiles resource. @@ -5937,6 +6193,41 @@ public class AppEdit : Google.Apis.Requests.IDirectResponseSchema public virtual string ETag { get; set; } } + public class Bundle : Google.Apis.Requests.IDirectResponseSchema + { + /// A sha1 hash of the upload payload, encoded as a hex string and matching the output of the sha1sum + /// command. + [Newtonsoft.Json.JsonPropertyAttribute("sha1")] + public virtual string Sha1 { get; set; } + + /// A sha256 hash of the upload payload, encoded as a hex string and matching the output of the + /// sha256sum command. + [Newtonsoft.Json.JsonPropertyAttribute("sha256")] + public virtual string Sha256 { get; set; } + + /// The version code of the Android App Bundle. As specified in the Android App Bundle's base module + /// APK manifest file. + [Newtonsoft.Json.JsonPropertyAttribute("versionCode")] + public virtual System.Nullable VersionCode { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + + public class BundlesListResponse : Google.Apis.Requests.IDirectResponseSchema + { + [Newtonsoft.Json.JsonPropertyAttribute("bundles")] + public virtual System.Collections.Generic.IList Bundles { get; set; } + + /// Identifies what kind of resource this is. Value: the fixed string + /// "androidpublisher#bundlesListResponse". + [Newtonsoft.Json.JsonPropertyAttribute("kind")] + public virtual string Kind { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + public class Comment : Google.Apis.Requests.IDirectResponseSchema { /// A comment from a developer. @@ -6750,12 +7041,13 @@ public class TrackRelease : Google.Apis.Requests.IDirectResponseSchema public virtual string Status { get; set; } /// Fraction of users who are eligible to receive the release. 0 <= fraction < 1. To be set, release - /// status must be IN_PROGRESS or HALTED. + /// status must be "inProgress" or "halted". [Newtonsoft.Json.JsonPropertyAttribute("userFraction")] public virtual System.Nullable UserFraction { get; set; } - /// A list of version codes of APKs that will be exposed to the users of this track when this release - /// is rolled out. + /// A list of all version codes of APKs that will be exposed to the users of this track when this + /// release is rolled out. Note that this list should contain all versions you wish to be active, including + /// those you wish to retain from previous releases. [Newtonsoft.Json.JsonPropertyAttribute("versionCodes")] public virtual System.Collections.Generic.IList> VersionCodes { get; set; } diff --git a/Src/Generated/Google.Apis.AndroidPublisher.v3/Google.Apis.AndroidPublisher.v3.csproj b/Src/Generated/Google.Apis.AndroidPublisher.v3/Google.Apis.AndroidPublisher.v3.csproj index 7656a4f8bc..72fb8b60fd 100644 --- a/Src/Generated/Google.Apis.AndroidPublisher.v3/Google.Apis.AndroidPublisher.v3.csproj +++ b/Src/Generated/Google.Apis.AndroidPublisher.v3/Google.Apis.AndroidPublisher.v3.csproj @@ -3,7 +3,7 @@ Google.Apis.AndroidPublisher.v3 Client Library - 1.33.0.1217 + 1.33.1.1219 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/androidpublisher/v3 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.AppState.v1/Google.Apis.AppState.v1.cs b/Src/Generated/Google.Apis.AppState.v1/Google.Apis.AppState.v1.cs index b69e56c4cd..c660e68d85 100644 --- a/Src/Generated/Google.Apis.AppState.v1/Google.Apis.AppState.v1.cs +++ b/Src/Generated/Google.Apis.AppState.v1/Google.Apis.AppState.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.AppState.v1/Google.Apis.AppState.v1.csproj b/Src/Generated/Google.Apis.AppState.v1/Google.Apis.AppState.v1.csproj index da9f3580a4..7e774259d7 100644 --- a/Src/Generated/Google.Apis.AppState.v1/Google.Apis.AppState.v1.csproj +++ b/Src/Generated/Google.Apis.AppState.v1/Google.Apis.AppState.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.AppState.v1 Client Library - 1.33.0.1219 + 1.33.1.1219 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/appstate/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Appengine.v1/Google.Apis.Appengine.v1.cs b/Src/Generated/Google.Apis.Appengine.v1/Google.Apis.Appengine.v1.cs index 7c622faef1..662396f2b2 100644 --- a/Src/Generated/Google.Apis.Appengine.v1/Google.Apis.Appengine.v1.cs +++ b/Src/Generated/Google.Apis.Appengine.v1/Google.Apis.Appengine.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -661,6 +661,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string appsId) [Google.Apis.Util.RequestParameterAttribute("appsId", Google.Apis.Util.RequestParameterType.Path)] public virtual string AppsId { get; private set; } + /// Continuation token for fetching the next page of results. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + /// Maximum results to return per page. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } @@ -678,10 +682,6 @@ public enum ViewEnum FULLCERTIFICATE, } - /// Continuation token for fetching the next page of results. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - ///Gets the method name. public override string MethodName @@ -716,27 +716,27 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "view", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "view", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "view", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "view", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1263,14 +1263,14 @@ public ListRequest(Google.Apis.Services.IClientService service, string appsId) [Google.Apis.Util.RequestParameterAttribute("appsId", Google.Apis.Util.RequestParameterType.Path)] public virtual string AppsId { get; private set; } - /// Continuation token for fetching the next page of results. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// Maximum results to return per page. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// Continuation token for fetching the next page of results. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + ///Gets the method name. public override string MethodName @@ -1305,18 +1305,18 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1804,10 +1804,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string appsId) [Google.Apis.Util.RequestParameterAttribute("appsId", Google.Apis.Util.RequestParameterType.Path)] public virtual string AppsId { get; private set; } - /// Continuation token for fetching the next page of results. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// Maximum results to return per page. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } @@ -1817,6 +1813,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string appsId) [Google.Apis.Util.RequestParameterAttribute("matchingAddress", Google.Apis.Util.RequestParameterType.Query)] public virtual string MatchingAddress { get; set; } + /// Continuation token for fetching the next page of results. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + ///Gets the method name. public override string MethodName @@ -1851,27 +1851,27 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "matchingAddress", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "matchingAddress", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "matchingAddress", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "matchingAddress", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2104,10 +2104,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string appsId) [Google.Apis.Util.RequestParameterAttribute("appsId", Google.Apis.Util.RequestParameterType.Path)] public virtual string AppsId { get; private set; } - /// The standard list filter. - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - /// The standard list page token. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } @@ -2116,6 +2112,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string appsId) [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// The standard list filter. + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + ///Gets the method name. public override string MethodName @@ -2150,27 +2150,27 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Appengine.v1/Google.Apis.Appengine.v1.csproj b/Src/Generated/Google.Apis.Appengine.v1/Google.Apis.Appengine.v1.csproj index 4449a2531f..2fc0422a71 100644 --- a/Src/Generated/Google.Apis.Appengine.v1/Google.Apis.Appengine.v1.csproj +++ b/Src/Generated/Google.Apis.Appengine.v1/Google.Apis.Appengine.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Appengine.v1 Client Library - 1.33.0.1217 + 1.33.1.1217 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/appengine/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Appengine.v1alpha/Google.Apis.Appengine.v1alpha.cs b/Src/Generated/Google.Apis.Appengine.v1alpha/Google.Apis.Appengine.v1alpha.cs index d43478d3e1..73d2dc2270 100644 --- a/Src/Generated/Google.Apis.Appengine.v1alpha/Google.Apis.Appengine.v1alpha.cs +++ b/Src/Generated/Google.Apis.Appengine.v1alpha/Google.Apis.Appengine.v1alpha.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -659,6 +659,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string appsId) [Google.Apis.Util.RequestParameterAttribute("appsId", Google.Apis.Util.RequestParameterType.Path)] public virtual string AppsId { get; private set; } + /// Continuation token for fetching the next page of results. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + /// Maximum results to return per page. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } @@ -676,10 +680,6 @@ public enum ViewEnum FULLCERTIFICATE, } - /// Continuation token for fetching the next page of results. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - ///Gets the method name. public override string MethodName @@ -714,27 +714,27 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "view", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "view", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "view", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "view", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1277,14 +1277,14 @@ public ListRequest(Google.Apis.Services.IClientService service, string appsId) [Google.Apis.Util.RequestParameterAttribute("appsId", Google.Apis.Util.RequestParameterType.Path)] public virtual string AppsId { get; private set; } - /// Maximum results to return per page. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - /// Continuation token for fetching the next page of results. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } + /// Maximum results to return per page. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + ///Gets the method name. public override string MethodName @@ -1319,18 +1319,18 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1582,6 +1582,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string appsId) [Google.Apis.Util.RequestParameterAttribute("appsId", Google.Apis.Util.RequestParameterType.Path)] public virtual string AppsId { get; private set; } + /// The standard list page token. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + /// The standard list page size. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } @@ -1590,10 +1594,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string appsId) [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] public virtual string Filter { get; set; } - /// The standard list page token. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - ///Gets the method name. public override string MethodName @@ -1628,27 +1628,27 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1793,6 +1793,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string appsId) [Google.Apis.Util.RequestParameterAttribute("appsId", Google.Apis.Util.RequestParameterType.Path)] public virtual string AppsId { get; private set; } + /// The standard list page token. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + /// The standard list page size. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } @@ -1801,10 +1805,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string appsId) [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] public virtual string Filter { get; set; } - /// The standard list page token. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - ///Gets the method name. public override string MethodName @@ -1839,27 +1839,27 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Appengine.v1alpha/Google.Apis.Appengine.v1alpha.csproj b/Src/Generated/Google.Apis.Appengine.v1alpha/Google.Apis.Appengine.v1alpha.csproj index 7d6a112051..5151f0a46d 100644 --- a/Src/Generated/Google.Apis.Appengine.v1alpha/Google.Apis.Appengine.v1alpha.csproj +++ b/Src/Generated/Google.Apis.Appengine.v1alpha/Google.Apis.Appengine.v1alpha.csproj @@ -3,7 +3,7 @@ Google.Apis.Appengine.v1alpha Client Library - 1.33.0.1217 + 1.33.1.1217 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/appengine/v1alpha @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Appengine.v1beta/Google.Apis.Appengine.v1beta.cs b/Src/Generated/Google.Apis.Appengine.v1beta/Google.Apis.Appengine.v1beta.cs index aff988cda2..9f1b1043c5 100644 --- a/Src/Generated/Google.Apis.Appengine.v1beta/Google.Apis.Appengine.v1beta.cs +++ b/Src/Generated/Google.Apis.Appengine.v1beta/Google.Apis.Appengine.v1beta.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -661,10 +661,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string appsId) [Google.Apis.Util.RequestParameterAttribute("appsId", Google.Apis.Util.RequestParameterType.Path)] public virtual string AppsId { get; private set; } - /// Continuation token for fetching the next page of results. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// Maximum results to return per page. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } @@ -682,6 +678,10 @@ public enum ViewEnum FULLCERTIFICATE, } + /// Continuation token for fetching the next page of results. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + ///Gets the method name. public override string MethodName @@ -716,27 +716,27 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "view", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "view", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "view", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "view", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -897,14 +897,14 @@ public ListRequest(Google.Apis.Services.IClientService service, string appsId) [Google.Apis.Util.RequestParameterAttribute("appsId", Google.Apis.Util.RequestParameterType.Path)] public virtual string AppsId { get; private set; } - /// Continuation token for fetching the next page of results. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// Maximum results to return per page. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// Continuation token for fetching the next page of results. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + ///Gets the method name. public override string MethodName @@ -939,18 +939,18 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1804,10 +1804,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string appsId) [Google.Apis.Util.RequestParameterAttribute("appsId", Google.Apis.Util.RequestParameterType.Path)] public virtual string AppsId { get; private set; } - /// Continuation token for fetching the next page of results. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// Maximum results to return per page. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } @@ -1817,6 +1813,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string appsId) [Google.Apis.Util.RequestParameterAttribute("matchingAddress", Google.Apis.Util.RequestParameterType.Query)] public virtual string MatchingAddress { get; set; } + /// Continuation token for fetching the next page of results. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + ///Gets the method name. public override string MethodName @@ -1851,27 +1851,27 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "matchingAddress", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "matchingAddress", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "matchingAddress", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "matchingAddress", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2315,6 +2315,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string appsId) [Google.Apis.Util.RequestParameterAttribute("appsId", Google.Apis.Util.RequestParameterType.Path)] public virtual string AppsId { get; private set; } + /// The standard list page size. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + /// The standard list filter. [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] public virtual string Filter { get; set; } @@ -2323,10 +2327,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string appsId) [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } - /// The standard list page size. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - ///Gets the method name. public override string MethodName @@ -2361,27 +2361,27 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -3794,6 +3794,10 @@ public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.App [Google.Apis.Util.RequestParameterAttribute("servicesId", Google.Apis.Util.RequestParameterType.Path)] public virtual string ServicesId { get; private set; } + /// Standard field mask for the set of fields to be updated. + [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] + public virtual object UpdateMask { get; set; } + /// 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 @@ -3808,10 +3812,6 @@ public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.App [Google.Apis.Util.RequestParameterAttribute("migrateTraffic", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable MigrateTraffic { get; set; } - /// Standard field mask for the set of fields to be updated. - [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] - public virtual object UpdateMask { get; set; } - /// Gets or sets the body of this request. Google.Apis.Appengine.v1beta.Data.Service Body { get; set; } @@ -3861,18 +3861,18 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "migrateTraffic", new Google.Apis.Discovery.Parameter + "updateMask", new Google.Apis.Discovery.Parameter { - Name = "migrateTraffic", + Name = "updateMask", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "updateMask", new Google.Apis.Discovery.Parameter + "migrateTraffic", new Google.Apis.Discovery.Parameter { - Name = "updateMask", + Name = "migrateTraffic", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Appengine.v1beta/Google.Apis.Appengine.v1beta.csproj b/Src/Generated/Google.Apis.Appengine.v1beta/Google.Apis.Appengine.v1beta.csproj index a8d8766749..3416771940 100644 --- a/Src/Generated/Google.Apis.Appengine.v1beta/Google.Apis.Appengine.v1beta.csproj +++ b/Src/Generated/Google.Apis.Appengine.v1beta/Google.Apis.Appengine.v1beta.csproj @@ -3,7 +3,7 @@ Google.Apis.Appengine.v1beta Client Library - 1.33.0.1217 + 1.33.1.1217 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/appengine/v1beta @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Appengine.v1beta4/Google.Apis.Appengine.v1beta4.cs b/Src/Generated/Google.Apis.Appengine.v1beta4/Google.Apis.Appengine.v1beta4.cs index 26f02ef28a..e3d2152146 100644 --- a/Src/Generated/Google.Apis.Appengine.v1beta4/Google.Apis.Appengine.v1beta4.cs +++ b/Src/Generated/Google.Apis.Appengine.v1beta4/Google.Apis.Appengine.v1beta4.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -487,6 +487,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string appsId) [Google.Apis.Util.RequestParameterAttribute("appsId", Google.Apis.Util.RequestParameterType.Path)] public virtual string AppsId { get; private set; } + /// The standard list filter. + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + /// The standard list page token. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } @@ -495,10 +499,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string appsId) [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } - /// The standard list filter. - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - ///Gets the method name. public override string MethodName @@ -533,27 +533,27 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1020,14 +1020,14 @@ public ListRequest(Google.Apis.Services.IClientService service, string appsId, s [Google.Apis.Util.RequestParameterAttribute("versionsId", Google.Apis.Util.RequestParameterType.Path)] public virtual string VersionsId { get; private set; } - /// Continuation token for fetching the next page of results. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// Maximum results to return per page. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// Continuation token for fetching the next page of results. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + ///Gets the method name. public override string MethodName @@ -1080,18 +1080,18 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Appengine.v1beta4/Google.Apis.Appengine.v1beta4.csproj b/Src/Generated/Google.Apis.Appengine.v1beta4/Google.Apis.Appengine.v1beta4.csproj index 5e8316ad28..3c82a765b8 100644 --- a/Src/Generated/Google.Apis.Appengine.v1beta4/Google.Apis.Appengine.v1beta4.csproj +++ b/Src/Generated/Google.Apis.Appengine.v1beta4/Google.Apis.Appengine.v1beta4.csproj @@ -3,7 +3,7 @@ Google.Apis.Appengine.v1beta4 Client Library - 1.33.0.1217 + 1.33.1.1217 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/appengine/v1beta4 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Appengine.v1beta5/Google.Apis.Appengine.v1beta5.cs b/Src/Generated/Google.Apis.Appengine.v1beta5/Google.Apis.Appengine.v1beta5.cs index 922825ffa2..90b2c445d0 100644 --- a/Src/Generated/Google.Apis.Appengine.v1beta5/Google.Apis.Appengine.v1beta5.cs +++ b/Src/Generated/Google.Apis.Appengine.v1beta5/Google.Apis.Appengine.v1beta5.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Appengine.v1beta5/Google.Apis.Appengine.v1beta5.csproj b/Src/Generated/Google.Apis.Appengine.v1beta5/Google.Apis.Appengine.v1beta5.csproj index 95051e731e..8f88288844 100644 --- a/Src/Generated/Google.Apis.Appengine.v1beta5/Google.Apis.Appengine.v1beta5.csproj +++ b/Src/Generated/Google.Apis.Appengine.v1beta5/Google.Apis.Appengine.v1beta5.csproj @@ -3,7 +3,7 @@ Google.Apis.Appengine.v1beta5 Client Library - 1.33.0.1217 + 1.33.1.1217 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/appengine/v1beta5 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Appsactivity.v1/Google.Apis.Appsactivity.v1.cs b/Src/Generated/Google.Apis.Appsactivity.v1/Google.Apis.Appsactivity.v1.cs index 09b8e8004d..ba3427ccfb 100644 --- a/Src/Generated/Google.Apis.Appsactivity.v1/Google.Apis.Appsactivity.v1.cs +++ b/Src/Generated/Google.Apis.Appsactivity.v1/Google.Apis.Appsactivity.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * G Suite Activity API * API Versionv1 - * API Rev20180507 (1222) + * API Rev20180508 (1223) * API Docs * * https://developers.google.com/google-apps/activity/ diff --git a/Src/Generated/Google.Apis.Appsactivity.v1/Google.Apis.Appsactivity.v1.csproj b/Src/Generated/Google.Apis.Appsactivity.v1/Google.Apis.Appsactivity.v1.csproj index beb632a85f..5a9d8b65df 100644 --- a/Src/Generated/Google.Apis.Appsactivity.v1/Google.Apis.Appsactivity.v1.csproj +++ b/Src/Generated/Google.Apis.Appsactivity.v1/Google.Apis.Appsactivity.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Appsactivity.v1 Client Library - 1.33.0.1222 + 1.33.1.1223 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/appsactivity/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.BIGQUERYDATATRANSFER.v1/Google.Apis.BIGQUERYDATATRANSFER.v1.cs b/Src/Generated/Google.Apis.BIGQUERYDATATRANSFER.v1/Google.Apis.BIGQUERYDATATRANSFER.v1.cs index 1e87da3e2c..af01cd7959 100644 --- a/Src/Generated/Google.Apis.BIGQUERYDATATRANSFER.v1/Google.Apis.BIGQUERYDATATRANSFER.v1.cs +++ b/Src/Generated/Google.Apis.BIGQUERYDATATRANSFER.v1/Google.Apis.BIGQUERYDATATRANSFER.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * BigQuery Data Transfer API * API Versionv1 - * API Rev20180429 (1214) + * API Rev20180508 (1223) * API Docs * * https://cloud.google.com/bigquery/ @@ -1242,6 +1242,26 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } + /// Indicates how run attempts are to be pulled. + [Google.Apis.Util.RequestParameterAttribute("runAttempt", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable RunAttempt { get; set; } + + /// Indicates how run attempts are to be pulled. + public enum RunAttemptEnum + { + [Google.Apis.Util.StringValueAttribute("RUN_ATTEMPT_UNSPECIFIED")] + RUNATTEMPTUNSPECIFIED, + [Google.Apis.Util.StringValueAttribute("LATEST")] + LATEST, + } + + /// Pagination token, which can be used to request a specific page of + /// `ListTransferRunsRequest` list results. For multiple-page results, + /// `ListTransferRunsResponse` outputs a `next_page` token, which can be used as the + /// `page_token` value to request the next page of list results. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + /// When specified, only transfer runs with requested states are returned. [Google.Apis.Util.RequestParameterAttribute("states", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable States { get; set; } @@ -1267,26 +1287,6 @@ public enum StatesEnum [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } - /// Indicates how run attempts are to be pulled. - [Google.Apis.Util.RequestParameterAttribute("runAttempt", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable RunAttempt { get; set; } - - /// Indicates how run attempts are to be pulled. - public enum RunAttemptEnum - { - [Google.Apis.Util.StringValueAttribute("RUN_ATTEMPT_UNSPECIFIED")] - RUNATTEMPTUNSPECIFIED, - [Google.Apis.Util.StringValueAttribute("LATEST")] - LATEST, - } - - /// Pagination token, which can be used to request a specific page of - /// `ListTransferRunsRequest` list results. For multiple-page results, - /// `ListTransferRunsResponse` outputs a `next_page` token, which can be used as the - /// `page_token` value to request the next page of list results. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - ///Gets the method name. public override string MethodName @@ -1321,36 +1321,36 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+$", }); RequestParameters.Add( - "states", new Google.Apis.Discovery.Parameter + "runAttempt", new Google.Apis.Discovery.Parameter { - Name = "states", + Name = "runAttempt", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "runAttempt", new Google.Apis.Discovery.Parameter + "states", new Google.Apis.Discovery.Parameter { - Name = "runAttempt", + Name = "states", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1608,10 +1608,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } - /// When specified, only configurations of requested data sources are returned. - [Google.Apis.Util.RequestParameterAttribute("dataSourceIds", Google.Apis.Util.RequestParameterType.Query)] - public virtual Google.Apis.Util.Repeatable DataSourceIds { get; set; } - /// Pagination token, which can be used to request a specific page of /// `ListTransfersRequest` list results. For multiple-page results, `ListTransfersResponse` outputs /// a `next_page` token, which can be used as the `page_token` value to request the next page of @@ -1623,6 +1619,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// When specified, only configurations of requested data sources are returned. + [Google.Apis.Util.RequestParameterAttribute("dataSourceIds", Google.Apis.Util.RequestParameterType.Query)] + public virtual Google.Apis.Util.Repeatable DataSourceIds { get; set; } + ///Gets the method name. public override string MethodName @@ -1657,27 +1657,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/locations/[^/]+$", }); RequestParameters.Add( - "dataSourceIds", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "dataSourceIds", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "dataSourceIds", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "dataSourceIds", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1719,10 +1719,6 @@ public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Big [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } - /// Required list of fields to be updated in this request. - [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] - public virtual object UpdateMask { get; set; } - /// Optional OAuth2 authorization code to use with this transfer configuration. If it is /// provided, the transfer configuration will be associated with the authorizing user. In order to /// obtain authorization_code, please make a request to @@ -1738,6 +1734,10 @@ public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Big [Google.Apis.Util.RequestParameterAttribute("authorizationCode", Google.Apis.Util.RequestParameterType.Query)] public virtual string AuthorizationCode { get; set; } + /// Required list of fields to be updated in this request. + [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] + public virtual object UpdateMask { get; set; } + /// Gets or sets the body of this request. Google.Apis.BigQueryDataTransfer.v1.Data.TransferConfig Body { get; set; } @@ -1778,18 +1778,18 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/locations/[^/]+/transferConfigs/[^/]+$", }); RequestParameters.Add( - "updateMask", new Google.Apis.Discovery.Parameter + "authorizationCode", new Google.Apis.Discovery.Parameter { - Name = "updateMask", + Name = "authorizationCode", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "authorizationCode", new Google.Apis.Discovery.Parameter + "updateMask", new Google.Apis.Discovery.Parameter { - Name = "authorizationCode", + Name = "updateMask", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1957,10 +1957,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } - /// The standard list filter. - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - /// The standard list page token. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } @@ -1969,6 +1965,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// The standard list filter. + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + ///Gets the method name. public override string MethodName @@ -2003,27 +2003,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+$", }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2375,6 +2375,19 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } + /// Indicates how run attempts are to be pulled. + [Google.Apis.Util.RequestParameterAttribute("runAttempt", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable RunAttempt { get; set; } + + /// Indicates how run attempts are to be pulled. + public enum RunAttemptEnum + { + [Google.Apis.Util.StringValueAttribute("RUN_ATTEMPT_UNSPECIFIED")] + RUNATTEMPTUNSPECIFIED, + [Google.Apis.Util.StringValueAttribute("LATEST")] + LATEST, + } + /// Pagination token, which can be used to request a specific page of /// `ListTransferRunsRequest` list results. For multiple-page results, `ListTransferRunsResponse` /// outputs a `next_page` token, which can be used as the `page_token` value to request the next @@ -2407,19 +2420,6 @@ public enum StatesEnum [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } - /// Indicates how run attempts are to be pulled. - [Google.Apis.Util.RequestParameterAttribute("runAttempt", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable RunAttempt { get; set; } - - /// Indicates how run attempts are to be pulled. - public enum RunAttemptEnum - { - [Google.Apis.Util.StringValueAttribute("RUN_ATTEMPT_UNSPECIFIED")] - RUNATTEMPTUNSPECIFIED, - [Google.Apis.Util.StringValueAttribute("LATEST")] - LATEST, - } - ///Gets the method name. public override string MethodName @@ -2454,36 +2454,36 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/transferConfigs/[^/]+$", }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "runAttempt", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "runAttempt", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "states", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "states", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "states", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "states", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "runAttempt", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "runAttempt", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.BIGQUERYDATATRANSFER.v1/Google.Apis.BIGQUERYDATATRANSFER.v1.csproj b/Src/Generated/Google.Apis.BIGQUERYDATATRANSFER.v1/Google.Apis.BIGQUERYDATATRANSFER.v1.csproj index cb2681ca7d..cd8c492634 100644 --- a/Src/Generated/Google.Apis.BIGQUERYDATATRANSFER.v1/Google.Apis.BIGQUERYDATATRANSFER.v1.csproj +++ b/Src/Generated/Google.Apis.BIGQUERYDATATRANSFER.v1/Google.Apis.BIGQUERYDATATRANSFER.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.BigQueryDataTransfer.v1 Client Library - 1.33.0.1214 + 1.33.1.1223 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/bigquerydatatransfer/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Bigquery.v2/Google.Apis.Bigquery.v2.cs b/Src/Generated/Google.Apis.Bigquery.v2/Google.Apis.Bigquery.v2.cs index 388b5f7499..7b47a58fca 100644 --- a/Src/Generated/Google.Apis.Bigquery.v2/Google.Apis.Bigquery.v2.cs +++ b/Src/Generated/Google.Apis.Bigquery.v2/Google.Apis.Bigquery.v2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Bigquery.v2/Google.Apis.Bigquery.v2.csproj b/Src/Generated/Google.Apis.Bigquery.v2/Google.Apis.Bigquery.v2.csproj index 44644c58bc..a799756a4a 100644 --- a/Src/Generated/Google.Apis.Bigquery.v2/Google.Apis.Bigquery.v2.csproj +++ b/Src/Generated/Google.Apis.Bigquery.v2/Google.Apis.Bigquery.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.Bigquery.v2 Client Library - 1.33.0.1214 + 1.33.1.1214 Google Inc. Copyright 2017 Google Inc. Google @@ -13,7 +13,8 @@ https://github.com/google/google-api-dotnet-client https://www.gstatic.com/images/branding/product/1x/google_developers_64dp.png - Google APIs Client Library for working with Bigquery v2. + This is not the recommended package for working with Bigquery, please use the Google.Cloud.BigQuery.V2 package. + This Google APIs Client Library for working with Bigquery v2 uses older code generation, and is harder to use. Supported Platforms: - .NET Framework 4.5+ @@ -24,11 +25,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/bigquery/v2 @@ -57,8 +59,8 @@ - - + + @@ -73,8 +75,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Blogger.v2/Google.Apis.Blogger.v2.cs b/Src/Generated/Google.Apis.Blogger.v2/Google.Apis.Blogger.v2.cs index d99a4afc83..648f59bf7f 100644 --- a/Src/Generated/Google.Apis.Blogger.v2/Google.Apis.Blogger.v2.cs +++ b/Src/Generated/Google.Apis.Blogger.v2/Google.Apis.Blogger.v2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Blogger.v2/Google.Apis.Blogger.v2.csproj b/Src/Generated/Google.Apis.Blogger.v2/Google.Apis.Blogger.v2.csproj index f03b249a0c..3ac1f11cb3 100644 --- a/Src/Generated/Google.Apis.Blogger.v2/Google.Apis.Blogger.v2.csproj +++ b/Src/Generated/Google.Apis.Blogger.v2/Google.Apis.Blogger.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.Blogger.v2 Client Library - 1.33.0.111 + 1.33.1.111 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/blogger/v2 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Blogger.v3/Google.Apis.Blogger.v3.cs b/Src/Generated/Google.Apis.Blogger.v3/Google.Apis.Blogger.v3.cs index a346568468..7f4dc08b41 100644 --- a/Src/Generated/Google.Apis.Blogger.v3/Google.Apis.Blogger.v3.cs +++ b/Src/Generated/Google.Apis.Blogger.v3/Google.Apis.Blogger.v3.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Blogger.v3/Google.Apis.Blogger.v3.csproj b/Src/Generated/Google.Apis.Blogger.v3/Google.Apis.Blogger.v3.csproj index 10f57603db..9c6b1fbbcd 100644 --- a/Src/Generated/Google.Apis.Blogger.v3/Google.Apis.Blogger.v3.csproj +++ b/Src/Generated/Google.Apis.Blogger.v3/Google.Apis.Blogger.v3.csproj @@ -3,7 +3,7 @@ Google.Apis.Blogger.v3 Client Library - 1.33.0.111 + 1.33.1.111 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/blogger/v3 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Books.v1/Google.Apis.Books.v1.cs b/Src/Generated/Google.Apis.Books.v1/Google.Apis.Books.v1.cs index 59320e5183..2e0db9d125 100644 --- a/Src/Generated/Google.Apis.Books.v1/Google.Apis.Books.v1.cs +++ b/Src/Generated/Google.Apis.Books.v1/Google.Apis.Books.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Books.v1/Google.Apis.Books.v1.csproj b/Src/Generated/Google.Apis.Books.v1/Google.Apis.Books.v1.csproj index 40d05975df..81eeb733d8 100644 --- a/Src/Generated/Google.Apis.Books.v1/Google.Apis.Books.v1.csproj +++ b/Src/Generated/Google.Apis.Books.v1/Google.Apis.Books.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Books.v1 Client Library - 1.33.0.1208 + 1.33.1.1208 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/books/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Calendar.v3/Google.Apis.Calendar.v3.cs b/Src/Generated/Google.Apis.Calendar.v3/Google.Apis.Calendar.v3.cs index a62e542971..b116955880 100644 --- a/Src/Generated/Google.Apis.Calendar.v3/Google.Apis.Calendar.v3.cs +++ b/Src/Generated/Google.Apis.Calendar.v3/Google.Apis.Calendar.v3.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Calendar API * API Versionv3 - * API Rev20180501 (1216) + * API Rev20180506 (1221) * API Docs * * https://developers.google.com/google-apps/calendar/firstapp diff --git a/Src/Generated/Google.Apis.Calendar.v3/Google.Apis.Calendar.v3.csproj b/Src/Generated/Google.Apis.Calendar.v3/Google.Apis.Calendar.v3.csproj index 8a6387396e..5f1ffe82c0 100644 --- a/Src/Generated/Google.Apis.Calendar.v3/Google.Apis.Calendar.v3.csproj +++ b/Src/Generated/Google.Apis.Calendar.v3/Google.Apis.Calendar.v3.csproj @@ -3,7 +3,7 @@ Google.Apis.Calendar.v3 Client Library - 1.33.0.1216 + 1.33.1.1221 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/calendar/v3 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CivicInfo.v2/Google.Apis.CivicInfo.v2.cs b/Src/Generated/Google.Apis.CivicInfo.v2/Google.Apis.CivicInfo.v2.cs index 1c25dc6d79..a64a0e9e66 100644 --- a/Src/Generated/Google.Apis.CivicInfo.v2/Google.Apis.CivicInfo.v2.cs +++ b/Src/Generated/Google.Apis.CivicInfo.v2/Google.Apis.CivicInfo.v2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.CivicInfo.v2/Google.Apis.CivicInfo.v2.csproj b/Src/Generated/Google.Apis.CivicInfo.v2/Google.Apis.CivicInfo.v2.csproj index 7fa0743823..4c48074adb 100644 --- a/Src/Generated/Google.Apis.CivicInfo.v2/Google.Apis.CivicInfo.v2.csproj +++ b/Src/Generated/Google.Apis.CivicInfo.v2/Google.Apis.CivicInfo.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.CivicInfo.v2 Client Library - 1.33.0.671 + 1.33.1.671 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/civicinfo/v2 @@ -57,7 +58,7 @@ - + @@ -71,7 +72,7 @@ - + diff --git a/Src/Generated/Google.Apis.Classroom.v1/Google.Apis.Classroom.v1.cs b/Src/Generated/Google.Apis.Classroom.v1/Google.Apis.Classroom.v1.cs index 91899cfaa4..c8dcf936b3 100644 --- a/Src/Generated/Google.Apis.Classroom.v1/Google.Apis.Classroom.v1.cs +++ b/Src/Generated/Google.Apis.Classroom.v1/Google.Apis.Classroom.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Google Classroom API * API Versionv1 - * API Rev20180504 (1219) + * API Rev20180507 (1222) * API Docs * * https://developers.google.com/classroom/ @@ -676,13 +676,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string courseId) [Google.Apis.Util.RequestParameterAttribute("courseId", Google.Apis.Util.RequestParameterType.Path)] public virtual string CourseId { get; private set; } - /// nextPageToken value returned from a previous list call, indicating that the subsequent page - /// of results should be returned. - /// - /// The list request must be otherwise identical to the one that resulted in this token. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// Maximum number of items to return. Zero or unspecified indicates that the server may assign /// a maximum. /// @@ -690,6 +683,13 @@ public ListRequest(Google.Apis.Services.IClientService service, string courseId) [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// nextPageToken value returned from a previous list call, indicating that the subsequent page + /// of results should be returned. + /// + /// The list request must be otherwise identical to the one that resulted in this token. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + ///Gets the method name. public override string MethodName @@ -724,18 +724,18 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1648,13 +1648,6 @@ public enum LateEnum [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } - /// Maximum number of items to return. Zero or unspecified indicates that the server may - /// assign a maximum. - /// - /// The server may return fewer than the specified number of results. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - /// Requested submission states. If specified, returned student submissions match one of /// the specified submission states. [Google.Apis.Util.RequestParameterAttribute("states", Google.Apis.Util.RequestParameterType.Query)] @@ -1678,6 +1671,13 @@ public enum StatesEnum RECLAIMEDBYSTUDENT, } + /// Maximum number of items to return. Zero or unspecified indicates that the server may + /// assign a maximum. + /// + /// The server may return fewer than the specified number of results. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + /// Optional argument to restrict returned student work to those owned by the student with /// the specified identifier. The identifier can be one of the following: /// @@ -1747,18 +1747,18 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "states", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "states", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "states", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "states", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2784,6 +2784,20 @@ public ListRequest(Google.Apis.Services.IClientService service, string courseId) [Google.Apis.Util.RequestParameterAttribute("courseId", Google.Apis.Util.RequestParameterType.Path)] public virtual string CourseId { get; private set; } + /// Optional sort ordering for results. A comma-separated list of fields with an optional sort + /// direction keyword. Supported fields are `updateTime` and `dueDate`. Supported direction keywords are + /// `asc` and `desc`. If not specified, `updateTime desc` is the default behavior. Examples: `dueDate + /// asc,updateTime desc`, `updateTime,dueDate desc` + [Google.Apis.Util.RequestParameterAttribute("orderBy", Google.Apis.Util.RequestParameterType.Query)] + public virtual string OrderBy { get; set; } + + /// nextPageToken value returned from a previous list call, indicating that the subsequent page + /// of results should be returned. + /// + /// The list request must be otherwise identical to the one that resulted in this token. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + /// Maximum number of items to return. Zero or unspecified indicates that the server may assign /// a maximum. /// @@ -2810,20 +2824,6 @@ public enum CourseWorkStatesEnum DELETED, } - /// Optional sort ordering for results. A comma-separated list of fields with an optional sort - /// direction keyword. Supported fields are `updateTime` and `dueDate`. Supported direction keywords are - /// `asc` and `desc`. If not specified, `updateTime desc` is the default behavior. Examples: `dueDate - /// asc,updateTime desc`, `updateTime,dueDate desc` - [Google.Apis.Util.RequestParameterAttribute("orderBy", Google.Apis.Util.RequestParameterType.Query)] - public virtual string OrderBy { get; set; } - - /// nextPageToken value returned from a previous list call, indicating that the subsequent page - /// of results should be returned. - /// - /// The list request must be otherwise identical to the one that resulted in this token. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - ///Gets the method name. public override string MethodName @@ -2858,36 +2858,36 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "orderBy", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "orderBy", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "courseWorkStates", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "courseWorkStates", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "orderBy", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "orderBy", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "courseWorkStates", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "courseWorkStates", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -3481,6 +3481,12 @@ public ListRequest(Google.Apis.Services.IClientService service, string courseId) [Google.Apis.Util.RequestParameterAttribute("courseId", Google.Apis.Util.RequestParameterType.Path)] public virtual string CourseId { get; private set; } + /// Maximum number of items to return. Zero means no maximum. + /// + /// The server may return fewer than the specified number of results. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + /// nextPageToken value returned from a previous list call, indicating that the subsequent page /// of results should be returned. /// @@ -3488,12 +3494,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string courseId) [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } - /// Maximum number of items to return. Zero means no maximum. - /// - /// The server may return fewer than the specified number of results. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - ///Gets the method name. public override string MethodName @@ -3528,18 +3528,18 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -3886,12 +3886,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string courseId) [Google.Apis.Util.RequestParameterAttribute("courseId", Google.Apis.Util.RequestParameterType.Path)] public virtual string CourseId { get; private set; } - /// Maximum number of items to return. Zero means no maximum. - /// - /// The server may return fewer than the specified number of results. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - /// nextPageToken value returned from a previous list call, indicating that the subsequent page /// of results should be returned. /// @@ -3899,6 +3893,12 @@ public ListRequest(Google.Apis.Services.IClientService service, string courseId) [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } + /// Maximum number of items to return. Zero means no maximum. + /// + /// The server may return fewer than the specified number of results. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + ///Gets the method name. public override string MethodName @@ -3933,18 +3933,18 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -4201,6 +4201,13 @@ public ListRequest(Google.Apis.Services.IClientService service) } + /// nextPageToken value returned from a previous list call, indicating that the subsequent page of + /// results should be returned. + /// + /// The list request must be otherwise identical to the one that resulted in this token. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + /// Maximum number of items to return. Zero or unspecified indicates that the server may assign a /// maximum. /// @@ -4247,13 +4254,6 @@ public enum CourseStatesEnum [Google.Apis.Util.RequestParameterAttribute("studentId", Google.Apis.Util.RequestParameterType.Query)] public virtual string StudentId { get; set; } - /// nextPageToken value returned from a previous list call, indicating that the subsequent page of - /// results should be returned. - /// - /// The list request must be otherwise identical to the one that resulted in this token. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - ///Gets the method name. public override string MethodName @@ -4278,6 +4278,15 @@ protected override void InitParameters() { base.InitParameters(); + RequestParameters.Add( + "pageToken", new Google.Apis.Discovery.Parameter + { + Name = "pageToken", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); RequestParameters.Add( "pageSize", new Google.Apis.Discovery.Parameter { @@ -4314,15 +4323,6 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter - { - Name = "pageToken", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); } } diff --git a/Src/Generated/Google.Apis.Classroom.v1/Google.Apis.Classroom.v1.csproj b/Src/Generated/Google.Apis.Classroom.v1/Google.Apis.Classroom.v1.csproj index d4984b11bc..d7ea0e949a 100644 --- a/Src/Generated/Google.Apis.Classroom.v1/Google.Apis.Classroom.v1.csproj +++ b/Src/Generated/Google.Apis.Classroom.v1/Google.Apis.Classroom.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Classroom.v1 Client Library - 1.33.0.1219 + 1.33.1.1222 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/classroom/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudBuild.v1/Google.Apis.CloudBuild.v1.cs b/Src/Generated/Google.Apis.CloudBuild.v1/Google.Apis.CloudBuild.v1.cs index eb97894323..379450aae9 100644 --- a/Src/Generated/Google.Apis.CloudBuild.v1/Google.Apis.CloudBuild.v1.cs +++ b/Src/Generated/Google.Apis.CloudBuild.v1/Google.Apis.CloudBuild.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Cloud Container Builder API * API Versionv1 - * API Rev20180508 (1223) + * API Rev20180509 (1224) * API Docs * * https://cloud.google.com/container-builder/docs/ @@ -927,10 +927,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string projectId [Google.Apis.Util.RequestParameterAttribute("projectId", Google.Apis.Util.RequestParameterType.Path)] public virtual string ProjectId { get; private set; } - /// The raw filter text to constrain the results. - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - /// Token to provide to skip to a particular spot in the list. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } @@ -939,6 +935,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string projectId [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// The raw filter text to constrain the results. + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + ///Gets the method name. public override string MethodName @@ -973,27 +973,27 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.CloudBuild.v1/Google.Apis.CloudBuild.v1.csproj b/Src/Generated/Google.Apis.CloudBuild.v1/Google.Apis.CloudBuild.v1.csproj index 45765a1b7e..de9e6eb7cd 100644 --- a/Src/Generated/Google.Apis.CloudBuild.v1/Google.Apis.CloudBuild.v1.csproj +++ b/Src/Generated/Google.Apis.CloudBuild.v1/Google.Apis.CloudBuild.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudBuild.v1 Client Library - 1.33.0.1223 + 1.33.1.1224 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/cloudbuild/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudComposer.v1beta1/Google.Apis.CloudComposer.v1beta1.cs b/Src/Generated/Google.Apis.CloudComposer.v1beta1/Google.Apis.CloudComposer.v1beta1.cs index 8a8024f41a..5fd29abb08 100644 --- a/Src/Generated/Google.Apis.CloudComposer.v1beta1/Google.Apis.CloudComposer.v1beta1.cs +++ b/Src/Generated/Google.Apis.CloudComposer.v1beta1/Google.Apis.CloudComposer.v1beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.CloudComposer.v1beta1/Google.Apis.CloudComposer.v1beta1.csproj b/Src/Generated/Google.Apis.CloudComposer.v1beta1/Google.Apis.CloudComposer.v1beta1.csproj index b7067a5fcf..4a9b72c537 100644 --- a/Src/Generated/Google.Apis.CloudComposer.v1beta1/Google.Apis.CloudComposer.v1beta1.csproj +++ b/Src/Generated/Google.Apis.CloudComposer.v1beta1/Google.Apis.CloudComposer.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudComposer.v1beta1 Client Library - 1.33.0.1215 + 1.33.1.1215 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/composer/v1beta1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudDebugger.v2/Google.Apis.CloudDebugger.v2.cs b/Src/Generated/Google.Apis.CloudDebugger.v2/Google.Apis.CloudDebugger.v2.cs index 0a150b5bd4..78d829b23a 100644 --- a/Src/Generated/Google.Apis.CloudDebugger.v2/Google.Apis.CloudDebugger.v2.cs +++ b/Src/Generated/Google.Apis.CloudDebugger.v2/Google.Apis.CloudDebugger.v2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -459,6 +459,13 @@ public ListRequest(Google.Apis.Services.IClientService service, string debuggeeI [Google.Apis.Util.RequestParameterAttribute("debuggeeId", Google.Apis.Util.RequestParameterType.Path)] public virtual string DebuggeeId { get; private set; } + /// A token that, if specified, blocks the method call until the list of active breakpoints + /// has changed, or a server-selected timeout has expired. The value should be set from the + /// `next_wait_token` field in the last response. The initial value should be set to + /// `"init"`. + [Google.Apis.Util.RequestParameterAttribute("waitToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string WaitToken { get; set; } + /// If set to `true` (recommended), returns `google.rpc.Code.OK` status and sets the /// `wait_expired` response field to `true` when the server-selected timeout has expired. /// @@ -467,13 +474,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string debuggeeI [Google.Apis.Util.RequestParameterAttribute("successOnTimeout", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable SuccessOnTimeout { get; set; } - /// A token that, if specified, blocks the method call until the list of active breakpoints - /// has changed, or a server-selected timeout has expired. The value should be set from the - /// `next_wait_token` field in the last response. The initial value should be set to - /// `"init"`. - [Google.Apis.Util.RequestParameterAttribute("waitToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string WaitToken { get; set; } - ///Gets the method name. public override string MethodName @@ -508,18 +508,18 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "successOnTimeout", new Google.Apis.Discovery.Parameter + "waitToken", new Google.Apis.Discovery.Parameter { - Name = "successOnTimeout", + Name = "waitToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "waitToken", new Google.Apis.Discovery.Parameter + "successOnTimeout", new Google.Apis.Discovery.Parameter { - Name = "waitToken", + Name = "successOnTimeout", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -962,6 +962,11 @@ public ListRequest(Google.Apis.Services.IClientService service, string debuggeeI [Google.Apis.Util.RequestParameterAttribute("debuggeeId", Google.Apis.Util.RequestParameterType.Path)] public virtual string DebuggeeId { get; private set; } + /// This field is deprecated. The following fields are always stripped out of the result: + /// `stack_frames`, `evaluated_expressions` and `variable_table`. + [Google.Apis.Util.RequestParameterAttribute("stripResults", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable StripResults { get; set; } + /// A wait token that, if specified, blocks the call until the breakpoints list has /// changed, or a server selected timeout has expired. The value should be set from the last /// response. The error code `google.rpc.Code.ABORTED` (RPC) is returned on wait timeout, which @@ -987,20 +992,15 @@ public enum ActionValueEnum LOG, } - /// When set to `true`, the response includes the list of breakpoints set by any user. - /// Otherwise, it includes only breakpoints set by the caller. - [Google.Apis.Util.RequestParameterAttribute("includeAllUsers", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable IncludeAllUsers { get; set; } - /// When set to `true`, the response includes active and inactive breakpoints. Otherwise, /// it includes only active breakpoints. [Google.Apis.Util.RequestParameterAttribute("includeInactive", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable IncludeInactive { get; set; } - /// This field is deprecated. The following fields are always stripped out of the result: - /// `stack_frames`, `evaluated_expressions` and `variable_table`. - [Google.Apis.Util.RequestParameterAttribute("stripResults", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable StripResults { get; set; } + /// When set to `true`, the response includes the list of breakpoints set by any user. + /// Otherwise, it includes only breakpoints set by the caller. + [Google.Apis.Util.RequestParameterAttribute("includeAllUsers", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable IncludeAllUsers { get; set; } ///Gets the method name. @@ -1036,36 +1036,36 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "waitToken", new Google.Apis.Discovery.Parameter + "stripResults", new Google.Apis.Discovery.Parameter { - Name = "waitToken", + Name = "stripResults", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "clientVersion", new Google.Apis.Discovery.Parameter + "waitToken", new Google.Apis.Discovery.Parameter { - Name = "clientVersion", + Name = "waitToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "action.value", new Google.Apis.Discovery.Parameter + "clientVersion", new Google.Apis.Discovery.Parameter { - Name = "action.value", + Name = "clientVersion", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "includeAllUsers", new Google.Apis.Discovery.Parameter + "action.value", new Google.Apis.Discovery.Parameter { - Name = "includeAllUsers", + Name = "action.value", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1081,9 +1081,9 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "stripResults", new Google.Apis.Discovery.Parameter + "includeAllUsers", new Google.Apis.Discovery.Parameter { - Name = "stripResults", + Name = "includeAllUsers", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1193,6 +1193,10 @@ public ListRequest(Google.Apis.Services.IClientService service) } + /// Project number of a Google Cloud project whose debuggees to list. + [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Project { get; set; } + /// The client version making the call. Schema: `domain/type/version` (e.g., /// `google.com/intellij/v1`). [Google.Apis.Util.RequestParameterAttribute("clientVersion", Google.Apis.Util.RequestParameterType.Query)] @@ -1203,10 +1207,6 @@ public ListRequest(Google.Apis.Services.IClientService service) [Google.Apis.Util.RequestParameterAttribute("includeInactive", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable IncludeInactive { get; set; } - /// Project number of a Google Cloud project whose debuggees to list. - [Google.Apis.Util.RequestParameterAttribute("project", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Project { get; set; } - ///Gets the method name. public override string MethodName @@ -1232,27 +1232,27 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "clientVersion", new Google.Apis.Discovery.Parameter + "project", new Google.Apis.Discovery.Parameter { - Name = "clientVersion", + Name = "project", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "includeInactive", new Google.Apis.Discovery.Parameter + "clientVersion", new Google.Apis.Discovery.Parameter { - Name = "includeInactive", + Name = "clientVersion", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "project", new Google.Apis.Discovery.Parameter + "includeInactive", new Google.Apis.Discovery.Parameter { - Name = "project", + Name = "includeInactive", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.CloudDebugger.v2/Google.Apis.CloudDebugger.v2.csproj b/Src/Generated/Google.Apis.CloudDebugger.v2/Google.Apis.CloudDebugger.v2.csproj index 2787d5397c..b8aa67c4fb 100644 --- a/Src/Generated/Google.Apis.CloudDebugger.v2/Google.Apis.CloudDebugger.v2.csproj +++ b/Src/Generated/Google.Apis.CloudDebugger.v2/Google.Apis.CloudDebugger.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudDebugger.v2 Client Library - 1.33.0.1222 + 1.33.1.1222 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/clouddebugger/v2 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudFunctions.v1/Google.Apis.CloudFunctions.v1.cs b/Src/Generated/Google.Apis.CloudFunctions.v1/Google.Apis.CloudFunctions.v1.cs index 007af3c911..e970149905 100644 --- a/Src/Generated/Google.Apis.CloudFunctions.v1/Google.Apis.CloudFunctions.v1.cs +++ b/Src/Generated/Google.Apis.CloudFunctions.v1/Google.Apis.CloudFunctions.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -458,14 +458,6 @@ public ListRequest(Google.Apis.Services.IClientService service) } - /// The name of the operation's parent resource. - [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Name { get; set; } - - /// The standard list page token. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// The standard list page size. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } @@ -474,6 +466,14 @@ public ListRequest(Google.Apis.Services.IClientService service) [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] public virtual string Filter { get; set; } + /// The name of the operation's parent resource. + [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Name { get; set; } + + /// The standard list page token. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + ///Gets the method name. public override string MethodName @@ -499,36 +499,36 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "name", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "name", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "name", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "name", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1059,16 +1059,16 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } + /// Maximum number of functions to return per call. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + /// The value returned by the last `ListFunctionsResponse`; indicates that this is a /// continuation of a prior `ListFunctions` call, and that the system should return the next page of /// data. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } - /// Maximum number of functions to return per call. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - ///Gets the method name. public override string MethodName @@ -1103,18 +1103,18 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/locations/[^/]+$", }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.CloudFunctions.v1/Google.Apis.CloudFunctions.v1.csproj b/Src/Generated/Google.Apis.CloudFunctions.v1/Google.Apis.CloudFunctions.v1.csproj index 4d9b936c42..ae4e8659c7 100644 --- a/Src/Generated/Google.Apis.CloudFunctions.v1/Google.Apis.CloudFunctions.v1.csproj +++ b/Src/Generated/Google.Apis.CloudFunctions.v1/Google.Apis.CloudFunctions.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudFunctions.v1 Client Library - 1.33.0.1201 + 1.33.1.1201 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/cloudfunctions/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudFunctions.v1beta2/Google.Apis.CloudFunctions.v1beta2.cs b/Src/Generated/Google.Apis.CloudFunctions.v1beta2/Google.Apis.CloudFunctions.v1beta2.cs index 9eb1d49772..53c5916b8e 100644 --- a/Src/Generated/Google.Apis.CloudFunctions.v1beta2/Google.Apis.CloudFunctions.v1beta2.cs +++ b/Src/Generated/Google.Apis.CloudFunctions.v1beta2/Google.Apis.CloudFunctions.v1beta2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.CloudFunctions.v1beta2/Google.Apis.CloudFunctions.v1beta2.csproj b/Src/Generated/Google.Apis.CloudFunctions.v1beta2/Google.Apis.CloudFunctions.v1beta2.csproj index 18a8a5621a..e0b28fd226 100644 --- a/Src/Generated/Google.Apis.CloudFunctions.v1beta2/Google.Apis.CloudFunctions.v1beta2.csproj +++ b/Src/Generated/Google.Apis.CloudFunctions.v1beta2/Google.Apis.CloudFunctions.v1beta2.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudFunctions.v1beta2 Client Library - 1.33.0.1201 + 1.33.1.1201 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/cloudfunctions/v1beta2 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudIot.v1/Google.Apis.CloudIot.v1.cs b/Src/Generated/Google.Apis.CloudIot.v1/Google.Apis.CloudIot.v1.cs index d45402791a..33e7851f22 100644 --- a/Src/Generated/Google.Apis.CloudIot.v1/Google.Apis.CloudIot.v1.cs +++ b/Src/Generated/Google.Apis.CloudIot.v1/Google.Apis.CloudIot.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -457,11 +457,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } - /// A list of device numerical ids. If empty, it will ignore this field. This field - /// cannot hold more than 10,000 entries. - [Google.Apis.Util.RequestParameterAttribute("deviceNumIds", Google.Apis.Util.RequestParameterType.Query)] - public virtual Google.Apis.Util.Repeatable DeviceNumIds { get; set; } - /// The value returned by the last `ListDevicesResponse`; indicates that this is a /// continuation of a prior `ListDevices` call, and that the system should return the next page /// of data. @@ -505,6 +500,11 @@ public enum GatewayTypeEnum [Google.Apis.Util.RequestParameterAttribute("deviceIds", Google.Apis.Util.RequestParameterType.Query)] public virtual Google.Apis.Util.Repeatable DeviceIds { get; set; } + /// A list of device numerical ids. If empty, it will ignore this field. This field + /// cannot hold more than 10,000 entries. + [Google.Apis.Util.RequestParameterAttribute("deviceNumIds", Google.Apis.Util.RequestParameterType.Query)] + public virtual Google.Apis.Util.Repeatable DeviceNumIds { get; set; } + ///Gets the method name. public override string MethodName @@ -538,15 +538,6 @@ protected override void InitParameters() DefaultValue = null, Pattern = @"^projects/[^/]+/locations/[^/]+/groups/[^/]+$", }); - RequestParameters.Add( - "deviceNumIds", new Google.Apis.Discovery.Parameter - { - Name = "deviceNumIds", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); RequestParameters.Add( "pageToken", new Google.Apis.Discovery.Parameter { @@ -592,6 +583,15 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); + RequestParameters.Add( + "deviceNumIds", new Google.Apis.Discovery.Parameter + { + Name = "deviceNumIds", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); } } @@ -1107,12 +1107,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("fieldMask", Google.Apis.Util.RequestParameterType.Query)] public virtual object FieldMask { get; set; } - /// The maximum number of devices to return in the response. If this value is zero, the - /// service will select a default size. A call may return fewer objects than requested, but if - /// there is a non-empty `page_token`, it indicates that more entries are available. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - /// If `GATEWAY` is specified, only gateways are returned. If `NON_GATEWAY` specified, /// only non-gateway devices are returned. If `GATEWAY_TYPE_UNSPECIFIED` specified, all devices /// are returned. @@ -1132,6 +1126,12 @@ public enum GatewayTypeEnum NONGATEWAY, } + /// The maximum number of devices to return in the response. If this value is zero, the + /// service will select a default size. A call may return fewer objects than requested, but if + /// there is a non-empty `page_token`, it indicates that more entries are available. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + /// A list of device string identifiers. If empty, it will ignore this field. For /// example, `['device0', 'device12']`. This field cannot hold more than 10,000 /// entries. @@ -1195,18 +1195,18 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "gatewayType", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "gatewayType", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "gatewayType", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "gatewayType", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.CloudIot.v1/Google.Apis.CloudIot.v1.csproj b/Src/Generated/Google.Apis.CloudIot.v1/Google.Apis.CloudIot.v1.csproj index c5c35431be..17bcb9ea2c 100644 --- a/Src/Generated/Google.Apis.CloudIot.v1/Google.Apis.CloudIot.v1.csproj +++ b/Src/Generated/Google.Apis.CloudIot.v1/Google.Apis.CloudIot.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudIot.v1 Client Library - 1.33.0.1216 + 1.33.1.1216 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/cloudiot/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudKMS.v1/Google.Apis.CloudKMS.v1.cs b/Src/Generated/Google.Apis.CloudKMS.v1/Google.Apis.CloudKMS.v1.cs index db5b69a23a..dc5b187401 100644 --- a/Src/Generated/Google.Apis.CloudKMS.v1/Google.Apis.CloudKMS.v1.cs +++ b/Src/Generated/Google.Apis.CloudKMS.v1/Google.Apis.CloudKMS.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -2207,10 +2207,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } - /// The standard list filter. - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - /// The standard list page token. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } @@ -2219,6 +2215,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// The standard list filter. + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + ///Gets the method name. public override string MethodName @@ -2253,27 +2253,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+$", }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.CloudKMS.v1/Google.Apis.CloudKMS.v1.csproj b/Src/Generated/Google.Apis.CloudKMS.v1/Google.Apis.CloudKMS.v1.csproj index d82ddc8cb7..a1721c1b19 100644 --- a/Src/Generated/Google.Apis.CloudKMS.v1/Google.Apis.CloudKMS.v1.csproj +++ b/Src/Generated/Google.Apis.CloudKMS.v1/Google.Apis.CloudKMS.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudKMS.v1 Client Library - 1.33.0.1219 + 1.33.1.1219 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/cloudkms/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudMachineLearningEngine.v1/Google.Apis.CloudMachineLearningEngine.v1.cs b/Src/Generated/Google.Apis.CloudMachineLearningEngine.v1/Google.Apis.CloudMachineLearningEngine.v1.cs index b75cb4f54e..e9cefb93d1 100644 --- a/Src/Generated/Google.Apis.CloudMachineLearningEngine.v1/Google.Apis.CloudMachineLearningEngine.v1.cs +++ b/Src/Generated/Google.Apis.CloudMachineLearningEngine.v1/Google.Apis.CloudMachineLearningEngine.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -672,14 +672,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } - /// Optional. Specifies the subset of jobs to retrieve. You can filter on the value of one or - /// more attributes of the job object. For example, retrieve jobs with a job identifier that starts with - /// 'census': gcloud ml-engine jobs list --filter='jobId:census*' List all failed jobs with names that - /// start with 'rnn': gcloud ml-engine jobs list --filter='jobId:rnn* AND state:FAILED' For more - /// examples, see the guide to monitoring jobs. - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - /// Optional. A page token to request the next page of results. /// /// You get the token from the `next_page_token` field of the response from the previous call. @@ -694,6 +686,14 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// Optional. Specifies the subset of jobs to retrieve. You can filter on the value of one or + /// more attributes of the job object. For example, retrieve jobs with a job identifier that starts with + /// 'census': gcloud ml-engine jobs list --filter='jobId:census*' List all failed jobs with names that + /// start with 'rnn': gcloud ml-engine jobs list --filter='jobId:rnn* AND state:FAILED' For more + /// examples, see the guide to monitoring jobs. + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + ///Gets the method name. public override string MethodName @@ -728,27 +728,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+$", }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.CloudMachineLearningEngine.v1/Google.Apis.CloudMachineLearningEngine.v1.csproj b/Src/Generated/Google.Apis.CloudMachineLearningEngine.v1/Google.Apis.CloudMachineLearningEngine.v1.csproj index dc94efe66a..97c6519b1f 100644 --- a/Src/Generated/Google.Apis.CloudMachineLearningEngine.v1/Google.Apis.CloudMachineLearningEngine.v1.csproj +++ b/Src/Generated/Google.Apis.CloudMachineLearningEngine.v1/Google.Apis.CloudMachineLearningEngine.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudMachineLearningEngine.v1 Client Library - 1.33.0.1205 + 1.33.1.1205 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/ml/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudNaturalLanguage.v1/Google.Apis.CloudNaturalLanguage.v1.cs b/Src/Generated/Google.Apis.CloudNaturalLanguage.v1/Google.Apis.CloudNaturalLanguage.v1.cs index 9c7c2c5b99..5799ca3f23 100644 --- a/Src/Generated/Google.Apis.CloudNaturalLanguage.v1/Google.Apis.CloudNaturalLanguage.v1.cs +++ b/Src/Generated/Google.Apis.CloudNaturalLanguage.v1/Google.Apis.CloudNaturalLanguage.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Cloud Natural Language API * API Versionv1 - * API Rev20180428 (1213) + * API Rev20180507 (1222) * API Docs * * https://cloud.google.com/natural-language/ diff --git a/Src/Generated/Google.Apis.CloudNaturalLanguage.v1/Google.Apis.CloudNaturalLanguage.v1.csproj b/Src/Generated/Google.Apis.CloudNaturalLanguage.v1/Google.Apis.CloudNaturalLanguage.v1.csproj index 03ed93e0a7..7c91e47eaa 100644 --- a/Src/Generated/Google.Apis.CloudNaturalLanguage.v1/Google.Apis.CloudNaturalLanguage.v1.csproj +++ b/Src/Generated/Google.Apis.CloudNaturalLanguage.v1/Google.Apis.CloudNaturalLanguage.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudNaturalLanguage.v1 Client Library - 1.33.0.1213 + 1.33.1.1222 Google Inc. Copyright 2017 Google Inc. Google @@ -13,7 +13,8 @@ https://github.com/google/google-api-dotnet-client https://www.gstatic.com/images/branding/product/1x/google_developers_64dp.png - Google APIs Client Library for working with Language v1. + This is not the recommended package for working with Language, please use the Google.Cloud.Language.V1 package. + This Google APIs Client Library for working with Language v1 uses older code generation, and is harder to use. Supported Platforms: - .NET Framework 4.5+ @@ -24,11 +25,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/language/v1 @@ -57,8 +59,8 @@ - - + + @@ -73,8 +75,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudNaturalLanguage.v1beta1/Google.Apis.CloudNaturalLanguage.v1beta1.cs b/Src/Generated/Google.Apis.CloudNaturalLanguage.v1beta1/Google.Apis.CloudNaturalLanguage.v1beta1.cs index 9d56a7f219..963b43f08c 100644 --- a/Src/Generated/Google.Apis.CloudNaturalLanguage.v1beta1/Google.Apis.CloudNaturalLanguage.v1beta1.cs +++ b/Src/Generated/Google.Apis.CloudNaturalLanguage.v1beta1/Google.Apis.CloudNaturalLanguage.v1beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.CloudNaturalLanguage.v1beta1/Google.Apis.CloudNaturalLanguage.v1beta1.csproj b/Src/Generated/Google.Apis.CloudNaturalLanguage.v1beta1/Google.Apis.CloudNaturalLanguage.v1beta1.csproj index c412d3c85a..9426b69d09 100644 --- a/Src/Generated/Google.Apis.CloudNaturalLanguage.v1beta1/Google.Apis.CloudNaturalLanguage.v1beta1.csproj +++ b/Src/Generated/Google.Apis.CloudNaturalLanguage.v1beta1/Google.Apis.CloudNaturalLanguage.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudNaturalLanguage.v1beta1 Client Library - 1.33.0.1222 + 1.33.1.1222 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/language/v1beta1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudNaturalLanguage.v1beta2/Google.Apis.CloudNaturalLanguage.v1beta2.cs b/Src/Generated/Google.Apis.CloudNaturalLanguage.v1beta2/Google.Apis.CloudNaturalLanguage.v1beta2.cs index 3f081c3cf2..6acfbaf986 100644 --- a/Src/Generated/Google.Apis.CloudNaturalLanguage.v1beta2/Google.Apis.CloudNaturalLanguage.v1beta2.cs +++ b/Src/Generated/Google.Apis.CloudNaturalLanguage.v1beta2/Google.Apis.CloudNaturalLanguage.v1beta2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.CloudNaturalLanguage.v1beta2/Google.Apis.CloudNaturalLanguage.v1beta2.csproj b/Src/Generated/Google.Apis.CloudNaturalLanguage.v1beta2/Google.Apis.CloudNaturalLanguage.v1beta2.csproj index f3d2650150..294a21a7df 100644 --- a/Src/Generated/Google.Apis.CloudNaturalLanguage.v1beta2/Google.Apis.CloudNaturalLanguage.v1beta2.csproj +++ b/Src/Generated/Google.Apis.CloudNaturalLanguage.v1beta2/Google.Apis.CloudNaturalLanguage.v1beta2.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudNaturalLanguage.v1beta2 Client Library - 1.33.0.1222 + 1.33.1.1222 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/language/v1beta2 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudOSLogin.v1/Google.Apis.CloudOSLogin.v1.cs b/Src/Generated/Google.Apis.CloudOSLogin.v1/Google.Apis.CloudOSLogin.v1.cs index c69b10d6ac..cd02ef0647 100644 --- a/Src/Generated/Google.Apis.CloudOSLogin.v1/Google.Apis.CloudOSLogin.v1.cs +++ b/Src/Generated/Google.Apis.CloudOSLogin.v1/Google.Apis.CloudOSLogin.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.CloudOSLogin.v1/Google.Apis.CloudOSLogin.v1.csproj b/Src/Generated/Google.Apis.CloudOSLogin.v1/Google.Apis.CloudOSLogin.v1.csproj index 58db26206d..7d8afc8298 100644 --- a/Src/Generated/Google.Apis.CloudOSLogin.v1/Google.Apis.CloudOSLogin.v1.csproj +++ b/Src/Generated/Google.Apis.CloudOSLogin.v1/Google.Apis.CloudOSLogin.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudOSLogin.v1 Client Library - 1.33.0.1215 + 1.33.1.1215 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/oslogin/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudOSLogin.v1alpha/Google.Apis.CloudOSLogin.v1alpha.cs b/Src/Generated/Google.Apis.CloudOSLogin.v1alpha/Google.Apis.CloudOSLogin.v1alpha.cs index 0ec84faf72..ab001fcef3 100644 --- a/Src/Generated/Google.Apis.CloudOSLogin.v1alpha/Google.Apis.CloudOSLogin.v1alpha.cs +++ b/Src/Generated/Google.Apis.CloudOSLogin.v1alpha/Google.Apis.CloudOSLogin.v1alpha.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.CloudOSLogin.v1alpha/Google.Apis.CloudOSLogin.v1alpha.csproj b/Src/Generated/Google.Apis.CloudOSLogin.v1alpha/Google.Apis.CloudOSLogin.v1alpha.csproj index 541daa799e..268bbcd35d 100644 --- a/Src/Generated/Google.Apis.CloudOSLogin.v1alpha/Google.Apis.CloudOSLogin.v1alpha.csproj +++ b/Src/Generated/Google.Apis.CloudOSLogin.v1alpha/Google.Apis.CloudOSLogin.v1alpha.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudOSLogin.v1alpha Client Library - 1.33.0.1215 + 1.33.1.1215 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/oslogin/v1alpha @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudOSLogin.v1beta/Google.Apis.CloudOSLogin.v1beta.cs b/Src/Generated/Google.Apis.CloudOSLogin.v1beta/Google.Apis.CloudOSLogin.v1beta.cs index dc7abc9c06..1a73a1d6af 100644 --- a/Src/Generated/Google.Apis.CloudOSLogin.v1beta/Google.Apis.CloudOSLogin.v1beta.cs +++ b/Src/Generated/Google.Apis.CloudOSLogin.v1beta/Google.Apis.CloudOSLogin.v1beta.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.CloudOSLogin.v1beta/Google.Apis.CloudOSLogin.v1beta.csproj b/Src/Generated/Google.Apis.CloudOSLogin.v1beta/Google.Apis.CloudOSLogin.v1beta.csproj index 90f8722306..634092a945 100644 --- a/Src/Generated/Google.Apis.CloudOSLogin.v1beta/Google.Apis.CloudOSLogin.v1beta.csproj +++ b/Src/Generated/Google.Apis.CloudOSLogin.v1beta/Google.Apis.CloudOSLogin.v1beta.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudOSLogin.v1beta Client Library - 1.33.0.1215 + 1.33.1.1215 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/oslogin/v1beta @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudRedis.v1beta1/Google.Apis.CloudRedis.v1beta1.cs b/Src/Generated/Google.Apis.CloudRedis.v1beta1/Google.Apis.CloudRedis.v1beta1.cs index 613abed1c8..5d54c55d2b 100644 --- a/Src/Generated/Google.Apis.CloudRedis.v1beta1/Google.Apis.CloudRedis.v1beta1.cs +++ b/Src/Generated/Google.Apis.CloudRedis.v1beta1/Google.Apis.CloudRedis.v1beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -680,10 +680,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } - /// The next_page_token value returned from a previous List request, if any. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// The maximum number of items to return. /// /// If not specified, a default value of 1000 will be used by the service. Regardless of the @@ -693,6 +689,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// The next_page_token value returned from a previous List request, if any. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + ///Gets the method name. public override string MethodName @@ -727,18 +727,18 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/locations/[^/]+$", }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -973,6 +973,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } + /// The standard list filter. + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + /// The standard list page token. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } @@ -981,10 +985,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } - /// The standard list filter. - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - ///Gets the method name. public override string MethodName @@ -1019,27 +1019,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/locations/[^/]+$", }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1133,10 +1133,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } - /// The standard list filter. - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - /// The standard list page token. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } @@ -1145,6 +1141,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// The standard list filter. + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + ///Gets the method name. public override string MethodName @@ -1179,27 +1179,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+$", }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.CloudRedis.v1beta1/Google.Apis.CloudRedis.v1beta1.csproj b/Src/Generated/Google.Apis.CloudRedis.v1beta1/Google.Apis.CloudRedis.v1beta1.csproj index 3d255658fa..2ab24873bb 100644 --- a/Src/Generated/Google.Apis.CloudRedis.v1beta1/Google.Apis.CloudRedis.v1beta1.csproj +++ b/Src/Generated/Google.Apis.CloudRedis.v1beta1/Google.Apis.CloudRedis.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudRedis.v1beta1 Client Library - 1.33.0.1208 + 1.33.1.1208 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/redis/v1beta1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudResourceManager.v1/Google.Apis.CloudResourceManager.v1.cs b/Src/Generated/Google.Apis.CloudResourceManager.v1/Google.Apis.CloudResourceManager.v1.cs index 93fc9cb084..a2f1cf48e2 100644 --- a/Src/Generated/Google.Apis.CloudResourceManager.v1/Google.Apis.CloudResourceManager.v1.cs +++ b/Src/Generated/Google.Apis.CloudResourceManager.v1/Google.Apis.CloudResourceManager.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -990,10 +990,6 @@ public ListRequest(Google.Apis.Services.IClientService service) } - /// The name of the resource to list all attached Liens. For example, `projects/1234`. - [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Parent { get; set; } - /// The `next_page_token` value returned from a previous List request, if any. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } @@ -1002,6 +998,10 @@ public ListRequest(Google.Apis.Services.IClientService service) [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// The name of the resource to list all attached Liens. For example, `projects/1234`. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Parent { get; set; } + ///Gets the method name. public override string MethodName @@ -1027,27 +1027,27 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "parent", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "parent", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "parent", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "parent", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.CloudResourceManager.v1/Google.Apis.CloudResourceManager.v1.csproj b/Src/Generated/Google.Apis.CloudResourceManager.v1/Google.Apis.CloudResourceManager.v1.csproj index 3a8a28e5c6..1afae1aaf6 100644 --- a/Src/Generated/Google.Apis.CloudResourceManager.v1/Google.Apis.CloudResourceManager.v1.csproj +++ b/Src/Generated/Google.Apis.CloudResourceManager.v1/Google.Apis.CloudResourceManager.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudResourceManager.v1 Client Library - 1.33.0.1217 + 1.33.1.1217 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/cloudresourcemanager/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudResourceManager.v1beta1/Google.Apis.CloudResourceManager.v1beta1.cs b/Src/Generated/Google.Apis.CloudResourceManager.v1beta1/Google.Apis.CloudResourceManager.v1beta1.cs index 03abe4d979..f95f10eef9 100644 --- a/Src/Generated/Google.Apis.CloudResourceManager.v1beta1/Google.Apis.CloudResourceManager.v1beta1.cs +++ b/Src/Generated/Google.Apis.CloudResourceManager.v1beta1/Google.Apis.CloudResourceManager.v1beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -1260,13 +1260,6 @@ public ListRequest(Google.Apis.Services.IClientService service) } - /// A pagination token returned from a previous call to ListProjects that indicates from where - /// listing should continue. - /// - /// Optional. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// The maximum number of Projects to return in the response. The server can return fewer Projects /// than requested. If unspecified, server picks an appropriate default. /// @@ -1298,6 +1291,13 @@ public ListRequest(Google.Apis.Services.IClientService service) [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] public virtual string Filter { get; set; } + /// A pagination token returned from a previous call to ListProjects that indicates from where + /// listing should continue. + /// + /// Optional. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + ///Gets the method name. public override string MethodName @@ -1323,27 +1323,27 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.CloudResourceManager.v1beta1/Google.Apis.CloudResourceManager.v1beta1.csproj b/Src/Generated/Google.Apis.CloudResourceManager.v1beta1/Google.Apis.CloudResourceManager.v1beta1.csproj index 912ba88625..9fb890cd7b 100644 --- a/Src/Generated/Google.Apis.CloudResourceManager.v1beta1/Google.Apis.CloudResourceManager.v1beta1.csproj +++ b/Src/Generated/Google.Apis.CloudResourceManager.v1beta1/Google.Apis.CloudResourceManager.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudResourceManager.v1beta1 Client Library - 1.33.0.1217 + 1.33.1.1217 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/cloudresourcemanager/v1beta1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudResourceManager.v2/Google.Apis.CloudResourceManager.v2.cs b/Src/Generated/Google.Apis.CloudResourceManager.v2/Google.Apis.CloudResourceManager.v2.cs index ed6344f061..0a92ba9da3 100644 --- a/Src/Generated/Google.Apis.CloudResourceManager.v2/Google.Apis.CloudResourceManager.v2.cs +++ b/Src/Generated/Google.Apis.CloudResourceManager.v2/Google.Apis.CloudResourceManager.v2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.CloudResourceManager.v2/Google.Apis.CloudResourceManager.v2.csproj b/Src/Generated/Google.Apis.CloudResourceManager.v2/Google.Apis.CloudResourceManager.v2.csproj index 2e65a6efb4..c7abb66843 100644 --- a/Src/Generated/Google.Apis.CloudResourceManager.v2/Google.Apis.CloudResourceManager.v2.csproj +++ b/Src/Generated/Google.Apis.CloudResourceManager.v2/Google.Apis.CloudResourceManager.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudResourceManager.v2 Client Library - 1.33.0.1217 + 1.33.1.1217 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/cloudresourcemanager/v2 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudResourceManager.v2beta1/Google.Apis.CloudResourceManager.v2beta1.cs b/Src/Generated/Google.Apis.CloudResourceManager.v2beta1/Google.Apis.CloudResourceManager.v2beta1.cs index bc54365327..9a722d4add 100644 --- a/Src/Generated/Google.Apis.CloudResourceManager.v2beta1/Google.Apis.CloudResourceManager.v2beta1.cs +++ b/Src/Generated/Google.Apis.CloudResourceManager.v2beta1/Google.Apis.CloudResourceManager.v2beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -693,6 +693,15 @@ public ListRequest(Google.Apis.Services.IClientService service) } + /// A pagination token returned from a previous call to `ListFolders` that indicates where this + /// listing should continue from. This field is optional. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// The maximum number of Folders to return in the response. This field is optional. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + /// 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`. @@ -704,15 +713,6 @@ public ListRequest(Google.Apis.Services.IClientService service) [Google.Apis.Util.RequestParameterAttribute("showDeleted", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable ShowDeleted { get; set; } - /// A pagination token returned from a previous call to `ListFolders` that indicates where this - /// listing should continue from. This field is optional. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - - /// The maximum number of Folders to return in the response. This field is optional. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - ///Gets the method name. public override string MethodName @@ -738,36 +738,36 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "parent", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "parent", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "showDeleted", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "showDeleted", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "parent", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "parent", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "showDeleted", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "showDeleted", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.CloudResourceManager.v2beta1/Google.Apis.CloudResourceManager.v2beta1.csproj b/Src/Generated/Google.Apis.CloudResourceManager.v2beta1/Google.Apis.CloudResourceManager.v2beta1.csproj index c353dd28c0..ca824f501a 100644 --- a/Src/Generated/Google.Apis.CloudResourceManager.v2beta1/Google.Apis.CloudResourceManager.v2beta1.csproj +++ b/Src/Generated/Google.Apis.CloudResourceManager.v2beta1/Google.Apis.CloudResourceManager.v2beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudResourceManager.v2beta1 Client Library - 1.33.0.1217 + 1.33.1.1217 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/cloudresourcemanager/v2beta1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudRuntimeConfig.v1/Google.Apis.CloudRuntimeConfig.v1.cs b/Src/Generated/Google.Apis.CloudRuntimeConfig.v1/Google.Apis.CloudRuntimeConfig.v1.cs index 1c0de9fa9e..a96bb6a522 100644 --- a/Src/Generated/Google.Apis.CloudRuntimeConfig.v1/Google.Apis.CloudRuntimeConfig.v1.cs +++ b/Src/Generated/Google.Apis.CloudRuntimeConfig.v1/Google.Apis.CloudRuntimeConfig.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.CloudRuntimeConfig.v1/Google.Apis.CloudRuntimeConfig.v1.csproj b/Src/Generated/Google.Apis.CloudRuntimeConfig.v1/Google.Apis.CloudRuntimeConfig.v1.csproj index be79f65e82..5203aaf19a 100644 --- a/Src/Generated/Google.Apis.CloudRuntimeConfig.v1/Google.Apis.CloudRuntimeConfig.v1.csproj +++ b/Src/Generated/Google.Apis.CloudRuntimeConfig.v1/Google.Apis.CloudRuntimeConfig.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudRuntimeConfig.v1 Client Library - 1.33.0.1201 + 1.33.1.1201 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/runtimeconfig/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudRuntimeConfig.v1beta1/Google.Apis.CloudRuntimeConfig.v1beta1.cs b/Src/Generated/Google.Apis.CloudRuntimeConfig.v1beta1/Google.Apis.CloudRuntimeConfig.v1beta1.cs index 533628264f..5cfa7e2591 100644 --- a/Src/Generated/Google.Apis.CloudRuntimeConfig.v1beta1/Google.Apis.CloudRuntimeConfig.v1beta1.cs +++ b/Src/Generated/Google.Apis.CloudRuntimeConfig.v1beta1/Google.Apis.CloudRuntimeConfig.v1beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.CloudRuntimeConfig.v1beta1/Google.Apis.CloudRuntimeConfig.v1beta1.csproj b/Src/Generated/Google.Apis.CloudRuntimeConfig.v1beta1/Google.Apis.CloudRuntimeConfig.v1beta1.csproj index 7d683d3428..734cb693af 100644 --- a/Src/Generated/Google.Apis.CloudRuntimeConfig.v1beta1/Google.Apis.CloudRuntimeConfig.v1beta1.csproj +++ b/Src/Generated/Google.Apis.CloudRuntimeConfig.v1beta1/Google.Apis.CloudRuntimeConfig.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudRuntimeConfig.v1beta1 Client Library - 1.33.0.1201 + 1.33.1.1201 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/runtimeconfig/v1beta1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudShell.v1/Google.Apis.CloudShell.v1.cs b/Src/Generated/Google.Apis.CloudShell.v1/Google.Apis.CloudShell.v1.cs index 2e72321055..005364a31d 100644 --- a/Src/Generated/Google.Apis.CloudShell.v1/Google.Apis.CloudShell.v1.cs +++ b/Src/Generated/Google.Apis.CloudShell.v1/Google.Apis.CloudShell.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -597,10 +597,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } - /// The standard list filter. - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - /// The standard list page token. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } @@ -609,6 +605,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// The standard list filter. + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + ///Gets the method name. public override string MethodName @@ -643,27 +643,27 @@ protected override void InitParameters() Pattern = @"^operations$", }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.CloudShell.v1/Google.Apis.CloudShell.v1.csproj b/Src/Generated/Google.Apis.CloudShell.v1/Google.Apis.CloudShell.v1.csproj index 04307624eb..4457b6a7e2 100644 --- a/Src/Generated/Google.Apis.CloudShell.v1/Google.Apis.CloudShell.v1.csproj +++ b/Src/Generated/Google.Apis.CloudShell.v1/Google.Apis.CloudShell.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudShell.v1 Client Library - 1.33.0.1222 + 1.33.1.1222 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/cloudshell/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudShell.v1alpha1/Google.Apis.CloudShell.v1alpha1.cs b/Src/Generated/Google.Apis.CloudShell.v1alpha1/Google.Apis.CloudShell.v1alpha1.cs index 14b6361aa6..148f804a6f 100644 --- a/Src/Generated/Google.Apis.CloudShell.v1alpha1/Google.Apis.CloudShell.v1alpha1.cs +++ b/Src/Generated/Google.Apis.CloudShell.v1alpha1/Google.Apis.CloudShell.v1alpha1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.CloudShell.v1alpha1/Google.Apis.CloudShell.v1alpha1.csproj b/Src/Generated/Google.Apis.CloudShell.v1alpha1/Google.Apis.CloudShell.v1alpha1.csproj index 9843613215..c10aeb77b7 100644 --- a/Src/Generated/Google.Apis.CloudShell.v1alpha1/Google.Apis.CloudShell.v1alpha1.csproj +++ b/Src/Generated/Google.Apis.CloudShell.v1alpha1/Google.Apis.CloudShell.v1alpha1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudShell.v1alpha1 Client Library - 1.33.0.1222 + 1.33.1.1222 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/cloudshell/v1alpha1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudSourceRepositories.v1/Google.Apis.CloudSourceRepositories.v1.cs b/Src/Generated/Google.Apis.CloudSourceRepositories.v1/Google.Apis.CloudSourceRepositories.v1.cs index 4b76125697..feba734340 100644 --- a/Src/Generated/Google.Apis.CloudSourceRepositories.v1/Google.Apis.CloudSourceRepositories.v1.cs +++ b/Src/Generated/Google.Apis.CloudSourceRepositories.v1/Google.Apis.CloudSourceRepositories.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.CloudSourceRepositories.v1/Google.Apis.CloudSourceRepositories.v1.csproj b/Src/Generated/Google.Apis.CloudSourceRepositories.v1/Google.Apis.CloudSourceRepositories.v1.csproj index f3cd1f7b0d..26802a0d89 100644 --- a/Src/Generated/Google.Apis.CloudSourceRepositories.v1/Google.Apis.CloudSourceRepositories.v1.csproj +++ b/Src/Generated/Google.Apis.CloudSourceRepositories.v1/Google.Apis.CloudSourceRepositories.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudSourceRepositories.v1 Client Library - 1.33.0.1167 + 1.33.1.1167 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/sourcerepo/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudTasks.v2beta2/Google.Apis.CloudTasks.v2beta2.cs b/Src/Generated/Google.Apis.CloudTasks.v2beta2/Google.Apis.CloudTasks.v2beta2.cs index 5e0c290838..335947101b 100644 --- a/Src/Generated/Google.Apis.CloudTasks.v2beta2/Google.Apis.CloudTasks.v2beta2.cs +++ b/Src/Generated/Google.Apis.CloudTasks.v2beta2/Google.Apis.CloudTasks.v2beta2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -1664,18 +1664,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } - /// `filter` can be used to specify a subset of queues. Any Queue field can be used as a - /// filter and several operators as supported. For example: `<=, <, >=, >, !=, =, :`. The filter - /// syntax is the same as described in [Stackdriver's Advanced Logs - /// Filters](/logging/docs/view/advanced_filters). - /// - /// Sample filter "app_engine_http_target: *". - /// - /// Note that using filters might cause fewer queues than the requested_page size to be - /// returned. - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - /// A token identifying the page of results to return. /// /// To request the first page results, page_token must be empty. To request the next page of @@ -1693,6 +1681,18 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// `filter` can be used to specify a subset of queues. Any Queue field can be used as a + /// filter and several operators as supported. For example: `<=, <, >=, >, !=, =, :`. The filter + /// syntax is the same as described in [Stackdriver's Advanced Logs + /// Filters](/logging/docs/view/advanced_filters). + /// + /// Sample filter "app_engine_http_target: *". + /// + /// Note that using filters might cause fewer queues than the requested_page size to be + /// returned. + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + ///Gets the method name. public override string MethodName @@ -1727,27 +1727,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/locations/[^/]+$", }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2378,6 +2378,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } + /// The standard list page size. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + /// The standard list filter. [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] public virtual string Filter { get; set; } @@ -2386,10 +2390,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } - /// The standard list page size. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - ///Gets the method name. public override string MethodName @@ -2424,27 +2424,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+$", }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.CloudTasks.v2beta2/Google.Apis.CloudTasks.v2beta2.csproj b/Src/Generated/Google.Apis.CloudTasks.v2beta2/Google.Apis.CloudTasks.v2beta2.csproj index e43e84bf1b..4b392f86a1 100644 --- a/Src/Generated/Google.Apis.CloudTasks.v2beta2/Google.Apis.CloudTasks.v2beta2.csproj +++ b/Src/Generated/Google.Apis.CloudTasks.v2beta2/Google.Apis.CloudTasks.v2beta2.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudTasks.v2beta2 Client Library - 1.33.0.1218 + 1.33.1.1218 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/cloudtasks/v2beta2 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudTrace.v1/Google.Apis.CloudTrace.v1.cs b/Src/Generated/Google.Apis.CloudTrace.v1/Google.Apis.CloudTrace.v1.cs index 674506fde6..aa0a3370f4 100644 --- a/Src/Generated/Google.Apis.CloudTrace.v1/Google.Apis.CloudTrace.v1.cs +++ b/Src/Generated/Google.Apis.CloudTrace.v1/Google.Apis.CloudTrace.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.CloudTrace.v1/Google.Apis.CloudTrace.v1.csproj b/Src/Generated/Google.Apis.CloudTrace.v1/Google.Apis.CloudTrace.v1.csproj index daabe3ee91..d755b6a97b 100644 --- a/Src/Generated/Google.Apis.CloudTrace.v1/Google.Apis.CloudTrace.v1.csproj +++ b/Src/Generated/Google.Apis.CloudTrace.v1/Google.Apis.CloudTrace.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudTrace.v1 Client Library - 1.33.0.1215 + 1.33.1.1215 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/cloudtrace/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudTrace.v2/Google.Apis.CloudTrace.v2.cs b/Src/Generated/Google.Apis.CloudTrace.v2/Google.Apis.CloudTrace.v2.cs index cf1a284112..37f05bc0b8 100644 --- a/Src/Generated/Google.Apis.CloudTrace.v2/Google.Apis.CloudTrace.v2.cs +++ b/Src/Generated/Google.Apis.CloudTrace.v2/Google.Apis.CloudTrace.v2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.CloudTrace.v2/Google.Apis.CloudTrace.v2.csproj b/Src/Generated/Google.Apis.CloudTrace.v2/Google.Apis.CloudTrace.v2.csproj index 9c70949781..3111ab52a9 100644 --- a/Src/Generated/Google.Apis.CloudTrace.v2/Google.Apis.CloudTrace.v2.csproj +++ b/Src/Generated/Google.Apis.CloudTrace.v2/Google.Apis.CloudTrace.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudTrace.v2 Client Library - 1.33.0.1215 + 1.33.1.1215 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/cloudtrace/v2 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudVideoIntelligence.v1/Google.Apis.CloudVideoIntelligence.v1.cs b/Src/Generated/Google.Apis.CloudVideoIntelligence.v1/Google.Apis.CloudVideoIntelligence.v1.cs index 187fa685f4..b33f95a7af 100644 --- a/Src/Generated/Google.Apis.CloudVideoIntelligence.v1/Google.Apis.CloudVideoIntelligence.v1.cs +++ b/Src/Generated/Google.Apis.CloudVideoIntelligence.v1/Google.Apis.CloudVideoIntelligence.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.CloudVideoIntelligence.v1/Google.Apis.CloudVideoIntelligence.v1.csproj b/Src/Generated/Google.Apis.CloudVideoIntelligence.v1/Google.Apis.CloudVideoIntelligence.v1.csproj index ccaf5dcebe..75170316f4 100644 --- a/Src/Generated/Google.Apis.CloudVideoIntelligence.v1/Google.Apis.CloudVideoIntelligence.v1.csproj +++ b/Src/Generated/Google.Apis.CloudVideoIntelligence.v1/Google.Apis.CloudVideoIntelligence.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudVideoIntelligence.v1 Client Library - 1.33.0.1219 + 1.33.1.1219 Google Inc. Copyright 2017 Google Inc. Google @@ -13,7 +13,8 @@ https://github.com/google/google-api-dotnet-client https://www.gstatic.com/images/branding/product/1x/google_developers_64dp.png - Google APIs Client Library for working with Videointelligence v1. + This is not the recommended package for working with Videointelligence, please use the Google.Cloud.VideoIntelligence.V1 package. + This Google APIs Client Library for working with Videointelligence v1 uses older code generation, and is harder to use. Supported Platforms: - .NET Framework 4.5+ @@ -24,11 +25,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/videointelligence/v1 @@ -57,8 +59,8 @@ - - + + @@ -73,8 +75,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudVideoIntelligence.v1beta1/Google.Apis.CloudVideoIntelligence.v1beta1.cs b/Src/Generated/Google.Apis.CloudVideoIntelligence.v1beta1/Google.Apis.CloudVideoIntelligence.v1beta1.cs index 17a331794b..2a7c991c8e 100644 --- a/Src/Generated/Google.Apis.CloudVideoIntelligence.v1beta1/Google.Apis.CloudVideoIntelligence.v1beta1.cs +++ b/Src/Generated/Google.Apis.CloudVideoIntelligence.v1beta1/Google.Apis.CloudVideoIntelligence.v1beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.CloudVideoIntelligence.v1beta1/Google.Apis.CloudVideoIntelligence.v1beta1.csproj b/Src/Generated/Google.Apis.CloudVideoIntelligence.v1beta1/Google.Apis.CloudVideoIntelligence.v1beta1.csproj index 974eaac1da..f2cef6d0cb 100644 --- a/Src/Generated/Google.Apis.CloudVideoIntelligence.v1beta1/Google.Apis.CloudVideoIntelligence.v1beta1.csproj +++ b/Src/Generated/Google.Apis.CloudVideoIntelligence.v1beta1/Google.Apis.CloudVideoIntelligence.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudVideoIntelligence.v1beta1 Client Library - 1.33.0.1219 + 1.33.1.1219 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/videointelligence/v1beta1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.CloudVideoIntelligence.v1beta2/Google.Apis.CloudVideoIntelligence.v1beta2.cs b/Src/Generated/Google.Apis.CloudVideoIntelligence.v1beta2/Google.Apis.CloudVideoIntelligence.v1beta2.cs index 1d96922d0d..126f6317d2 100644 --- a/Src/Generated/Google.Apis.CloudVideoIntelligence.v1beta2/Google.Apis.CloudVideoIntelligence.v1beta2.cs +++ b/Src/Generated/Google.Apis.CloudVideoIntelligence.v1beta2/Google.Apis.CloudVideoIntelligence.v1beta2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.CloudVideoIntelligence.v1beta2/Google.Apis.CloudVideoIntelligence.v1beta2.csproj b/Src/Generated/Google.Apis.CloudVideoIntelligence.v1beta2/Google.Apis.CloudVideoIntelligence.v1beta2.csproj index bea173d225..61743cc336 100644 --- a/Src/Generated/Google.Apis.CloudVideoIntelligence.v1beta2/Google.Apis.CloudVideoIntelligence.v1beta2.csproj +++ b/Src/Generated/Google.Apis.CloudVideoIntelligence.v1beta2/Google.Apis.CloudVideoIntelligence.v1beta2.csproj @@ -3,7 +3,7 @@ Google.Apis.CloudVideoIntelligence.v1beta2 Client Library - 1.33.0.1219 + 1.33.1.1219 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/videointelligence/v1beta2 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Cloudbilling.v1/Google.Apis.Cloudbilling.v1.cs b/Src/Generated/Google.Apis.Cloudbilling.v1/Google.Apis.Cloudbilling.v1.cs index b90b7d8e15..cefe1ada36 100644 --- a/Src/Generated/Google.Apis.Cloudbilling.v1/Google.Apis.Cloudbilling.v1.cs +++ b/Src/Generated/Google.Apis.Cloudbilling.v1/Google.Apis.Cloudbilling.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -427,16 +427,16 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } - /// Requested page size. The maximum page size is 100; this is also the default. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - /// A token identifying a page of results to be returned. This should be a `next_page_token` /// value returned from a previous `ListProjectBillingInfo` call. If unspecified, the first page of /// results is returned. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } + /// Requested page size. The maximum page size is 100; this is also the default. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + ///Gets the method name. public override string MethodName @@ -471,18 +471,18 @@ protected override void InitParameters() Pattern = @"^billingAccounts/[^/]+$", }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -711,6 +711,10 @@ public ListRequest(Google.Apis.Services.IClientService service) } + /// Requested page size. The maximum page size is 100; this is also the default. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + /// 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"). Boolean algebra @@ -726,10 +730,6 @@ public ListRequest(Google.Apis.Services.IClientService service) [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } - /// Requested page size. The maximum page size is 100; this is also the default. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - ///Gets the method name. public override string MethodName @@ -755,27 +755,27 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1420,16 +1420,16 @@ public ListRequest(Google.Apis.Services.IClientService service) } - /// Requested page size. Defaults to 5000. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - /// A token identifying a page of results to return. This should be a `next_page_token` value /// returned from a previous `ListServices` call. If unspecified, the first page of results is /// returned. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } + /// Requested page size. Defaults to 5000. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + ///Gets the method name. public override string MethodName @@ -1455,18 +1455,18 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Cloudbilling.v1/Google.Apis.Cloudbilling.v1.csproj b/Src/Generated/Google.Apis.Cloudbilling.v1/Google.Apis.Cloudbilling.v1.csproj index 0ffdee3132..5e6918765c 100644 --- a/Src/Generated/Google.Apis.Cloudbilling.v1/Google.Apis.Cloudbilling.v1.csproj +++ b/Src/Generated/Google.Apis.Cloudbilling.v1/Google.Apis.Cloudbilling.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Cloudbilling.v1 Client Library - 1.33.0.1195 + 1.33.1.1195 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/cloudbilling/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Clouderrorreporting.v1beta1/Google.Apis.Clouderrorreporting.v1beta1.cs b/Src/Generated/Google.Apis.Clouderrorreporting.v1beta1/Google.Apis.Clouderrorreporting.v1beta1.cs index 0883cdb45a..a49e9fbda6 100644 --- a/Src/Generated/Google.Apis.Clouderrorreporting.v1beta1/Google.Apis.Clouderrorreporting.v1beta1.cs +++ b/Src/Generated/Google.Apis.Clouderrorreporting.v1beta1/Google.Apis.Clouderrorreporting.v1beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Stackdriver Error Reporting API * API Versionv1beta1 - * API Rev20180420 (1205) + * API Rev20180504 (1219) * API Docs * * https://cloud.google.com/error-reporting/ @@ -692,51 +692,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string projectNa [Google.Apis.Util.RequestParameterAttribute("projectName", Google.Apis.Util.RequestParameterType.Path)] public virtual string ProjectName { get; private set; } - /// [Optional] The exact value to match against [`ServiceContext.service`](/error- - /// reporting/reference/rest/v1beta1/ServiceContext#FIELDS.service). - [Google.Apis.Util.RequestParameterAttribute("serviceFilter.service", Google.Apis.Util.RequestParameterType.Query)] - public virtual string ServiceFilterService { get; set; } - - /// [Optional] The maximum number of results to return per response. Default is 20. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - - /// [Optional] The sort order in which the results are returned. Default is - /// `COUNT_DESC`. - [Google.Apis.Util.RequestParameterAttribute("order", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable Order { get; set; } - - /// [Optional] The sort order in which the results are returned. Default is - /// `COUNT_DESC`. - public enum OrderEnum - { - [Google.Apis.Util.StringValueAttribute("GROUP_ORDER_UNSPECIFIED")] - GROUPORDERUNSPECIFIED, - [Google.Apis.Util.StringValueAttribute("COUNT_DESC")] - COUNTDESC, - [Google.Apis.Util.StringValueAttribute("LAST_SEEN_DESC")] - LASTSEENDESC, - [Google.Apis.Util.StringValueAttribute("CREATED_DESC")] - CREATEDDESC, - [Google.Apis.Util.StringValueAttribute("AFFECTED_USERS_DESC")] - AFFECTEDUSERSDESC, - } - - /// [Optional] The exact value to match against [`ServiceContext.version`](/error- - /// reporting/reference/rest/v1beta1/ServiceContext#FIELDS.version). - [Google.Apis.Util.RequestParameterAttribute("serviceFilter.version", Google.Apis.Util.RequestParameterType.Query)] - public virtual string ServiceFilterVersion { get; set; } - - /// [Optional] Time where the timed counts shall be aligned if rounded alignment is chosen. - /// Default is 00:00 UTC. - [Google.Apis.Util.RequestParameterAttribute("alignmentTime", Google.Apis.Util.RequestParameterType.Query)] - public virtual object AlignmentTime { get; set; } - - /// [Optional] The exact value to match against [`ServiceContext.resource_type`](/error- - /// reporting/reference/rest/v1beta1/ServiceContext#FIELDS.resource_type). - [Google.Apis.Util.RequestParameterAttribute("serviceFilter.resourceType", Google.Apis.Util.RequestParameterType.Query)] - public virtual string ServiceFilterResourceType { get; set; } - /// [Optional] The preferred duration for a single returned `TimedCount`. If not set, no timed /// counts are returned. [Google.Apis.Util.RequestParameterAttribute("timedCountDuration", Google.Apis.Util.RequestParameterType.Query)] @@ -789,6 +744,51 @@ public enum AlignmentEnum [Google.Apis.Util.RequestParameterAttribute("groupId", Google.Apis.Util.RequestParameterType.Query)] public virtual Google.Apis.Util.Repeatable GroupId { get; set; } + /// [Optional] The exact value to match against [`ServiceContext.service`](/error- + /// reporting/reference/rest/v1beta1/ServiceContext#FIELDS.service). + [Google.Apis.Util.RequestParameterAttribute("serviceFilter.service", Google.Apis.Util.RequestParameterType.Query)] + public virtual string ServiceFilterService { get; set; } + + /// [Optional] The maximum number of results to return per response. Default is 20. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + + /// [Optional] The exact value to match against [`ServiceContext.version`](/error- + /// reporting/reference/rest/v1beta1/ServiceContext#FIELDS.version). + [Google.Apis.Util.RequestParameterAttribute("serviceFilter.version", Google.Apis.Util.RequestParameterType.Query)] + public virtual string ServiceFilterVersion { get; set; } + + /// [Optional] The sort order in which the results are returned. Default is + /// `COUNT_DESC`. + [Google.Apis.Util.RequestParameterAttribute("order", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable Order { get; set; } + + /// [Optional] The sort order in which the results are returned. Default is + /// `COUNT_DESC`. + public enum OrderEnum + { + [Google.Apis.Util.StringValueAttribute("GROUP_ORDER_UNSPECIFIED")] + GROUPORDERUNSPECIFIED, + [Google.Apis.Util.StringValueAttribute("COUNT_DESC")] + COUNTDESC, + [Google.Apis.Util.StringValueAttribute("LAST_SEEN_DESC")] + LASTSEENDESC, + [Google.Apis.Util.StringValueAttribute("CREATED_DESC")] + CREATEDDESC, + [Google.Apis.Util.StringValueAttribute("AFFECTED_USERS_DESC")] + AFFECTEDUSERSDESC, + } + + /// [Optional] Time where the timed counts shall be aligned if rounded alignment is chosen. + /// Default is 00:00 UTC. + [Google.Apis.Util.RequestParameterAttribute("alignmentTime", Google.Apis.Util.RequestParameterType.Query)] + public virtual object AlignmentTime { get; set; } + + /// [Optional] The exact value to match against [`ServiceContext.resource_type`](/error- + /// reporting/reference/rest/v1beta1/ServiceContext#FIELDS.resource_type). + [Google.Apis.Util.RequestParameterAttribute("serviceFilter.resourceType", Google.Apis.Util.RequestParameterType.Query)] + public virtual string ServiceFilterResourceType { get; set; } + ///Gets the method name. public override string MethodName @@ -823,99 +823,99 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+$", }); RequestParameters.Add( - "serviceFilter.service", new Google.Apis.Discovery.Parameter + "timedCountDuration", new Google.Apis.Discovery.Parameter { - Name = "serviceFilter.service", + Name = "timedCountDuration", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "order", new Google.Apis.Discovery.Parameter + "timeRange.period", new Google.Apis.Discovery.Parameter { - Name = "order", + Name = "timeRange.period", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "serviceFilter.version", new Google.Apis.Discovery.Parameter + "alignment", new Google.Apis.Discovery.Parameter { - Name = "serviceFilter.version", + Name = "alignment", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "alignmentTime", new Google.Apis.Discovery.Parameter + "groupId", new Google.Apis.Discovery.Parameter { - Name = "alignmentTime", + Name = "groupId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "serviceFilter.resourceType", new Google.Apis.Discovery.Parameter + "serviceFilter.service", new Google.Apis.Discovery.Parameter { - Name = "serviceFilter.resourceType", + Name = "serviceFilter.service", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "timedCountDuration", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "timedCountDuration", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "serviceFilter.version", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "serviceFilter.version", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "timeRange.period", new Google.Apis.Discovery.Parameter + "order", new Google.Apis.Discovery.Parameter { - Name = "timeRange.period", + Name = "order", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "alignment", new Google.Apis.Discovery.Parameter + "alignmentTime", new Google.Apis.Discovery.Parameter { - Name = "alignment", + Name = "alignmentTime", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "groupId", new Google.Apis.Discovery.Parameter + "serviceFilter.resourceType", new Google.Apis.Discovery.Parameter { - Name = "groupId", + Name = "serviceFilter.resourceType", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Clouderrorreporting.v1beta1/Google.Apis.Clouderrorreporting.v1beta1.csproj b/Src/Generated/Google.Apis.Clouderrorreporting.v1beta1/Google.Apis.Clouderrorreporting.v1beta1.csproj index f0d45fb11a..d3ffe64f27 100644 --- a/Src/Generated/Google.Apis.Clouderrorreporting.v1beta1/Google.Apis.Clouderrorreporting.v1beta1.csproj +++ b/Src/Generated/Google.Apis.Clouderrorreporting.v1beta1/Google.Apis.Clouderrorreporting.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.Clouderrorreporting.v1beta1 Client Library - 1.33.0.1205 + 1.33.1.1219 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/clouderrorreporting/v1beta1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Compute.alpha/Google.Apis.Compute.alpha.cs b/Src/Generated/Google.Apis.Compute.alpha/Google.Apis.Compute.alpha.cs index c32db693f9..22df687ddb 100644 --- a/Src/Generated/Google.Apis.Compute.alpha/Google.Apis.Compute.alpha.cs +++ b/Src/Generated/Google.Apis.Compute.alpha/Google.Apis.Compute.alpha.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Compute.alpha/Google.Apis.Compute.alpha.csproj b/Src/Generated/Google.Apis.Compute.alpha/Google.Apis.Compute.alpha.csproj index 8efde0e760..6d65b2ee58 100644 --- a/Src/Generated/Google.Apis.Compute.alpha/Google.Apis.Compute.alpha.csproj +++ b/Src/Generated/Google.Apis.Compute.alpha/Google.Apis.Compute.alpha.csproj @@ -3,7 +3,7 @@ Google.Apis.Compute.alpha Client Library - 1.33.0.1212 + 1.33.1.1212 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/compute/alpha @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Compute.beta/Google.Apis.Compute.beta.cs b/Src/Generated/Google.Apis.Compute.beta/Google.Apis.Compute.beta.cs index 43b86f10c4..e67cc6bd98 100644 --- a/Src/Generated/Google.Apis.Compute.beta/Google.Apis.Compute.beta.cs +++ b/Src/Generated/Google.Apis.Compute.beta/Google.Apis.Compute.beta.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Compute.beta/Google.Apis.Compute.beta.csproj b/Src/Generated/Google.Apis.Compute.beta/Google.Apis.Compute.beta.csproj index 6943c73dc9..beee8f781d 100644 --- a/Src/Generated/Google.Apis.Compute.beta/Google.Apis.Compute.beta.csproj +++ b/Src/Generated/Google.Apis.Compute.beta/Google.Apis.Compute.beta.csproj @@ -3,7 +3,7 @@ Google.Apis.Compute.beta Client Library - 1.33.0.1212 + 1.33.1.1212 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/compute/beta @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Compute.v1/Google.Apis.Compute.v1.cs b/Src/Generated/Google.Apis.Compute.v1/Google.Apis.Compute.v1.cs index dc2a6716f8..738b8faef5 100644 --- a/Src/Generated/Google.Apis.Compute.v1/Google.Apis.Compute.v1.cs +++ b/Src/Generated/Google.Apis.Compute.v1/Google.Apis.Compute.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Compute.v1/Google.Apis.Compute.v1.csproj b/Src/Generated/Google.Apis.Compute.v1/Google.Apis.Compute.v1.csproj index fc6e627178..928bb04e5d 100644 --- a/Src/Generated/Google.Apis.Compute.v1/Google.Apis.Compute.v1.csproj +++ b/Src/Generated/Google.Apis.Compute.v1/Google.Apis.Compute.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Compute.v1 Client Library - 1.33.0.1212 + 1.33.1.1212 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/compute/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Container.v1/Google.Apis.Container.v1.cs b/Src/Generated/Google.Apis.Container.v1/Google.Apis.Container.v1.cs index 8e83a3ffa0..e97a595d0d 100644 --- a/Src/Generated/Google.Apis.Container.v1/Google.Apis.Container.v1.cs +++ b/Src/Generated/Google.Apis.Container.v1/Google.Apis.Container.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -525,6 +525,11 @@ public DeleteRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } + /// Deprecated. The name of the cluster. This field has been deprecated and replaced by + /// the name field. + [Google.Apis.Util.RequestParameterAttribute("clusterId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string ClusterId { get; set; } + /// Deprecated. The name of the node pool to delete. This field has been deprecated and /// replaced by the name field. [Google.Apis.Util.RequestParameterAttribute("nodePoolId", Google.Apis.Util.RequestParameterType.Query)] @@ -542,11 +547,6 @@ public DeleteRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("zone", Google.Apis.Util.RequestParameterType.Query)] public virtual string Zone { get; set; } - /// Deprecated. The name of the cluster. This field has been deprecated and replaced by - /// the name field. - [Google.Apis.Util.RequestParameterAttribute("clusterId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string ClusterId { get; set; } - ///Gets the method name. public override string MethodName @@ -581,36 +581,36 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", }); RequestParameters.Add( - "nodePoolId", new Google.Apis.Discovery.Parameter + "clusterId", new Google.Apis.Discovery.Parameter { - Name = "nodePoolId", + Name = "clusterId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "projectId", new Google.Apis.Discovery.Parameter + "nodePoolId", new Google.Apis.Discovery.Parameter { - Name = "projectId", + Name = "nodePoolId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "zone", new Google.Apis.Discovery.Parameter + "projectId", new Google.Apis.Discovery.Parameter { - Name = "zone", + Name = "projectId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "clusterId", new Google.Apis.Discovery.Parameter + "zone", new Google.Apis.Discovery.Parameter { - Name = "clusterId", + Name = "zone", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -645,16 +645,6 @@ public GetRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } - /// Deprecated. The name of the cluster. This field has been deprecated and replaced by - /// the name field. - [Google.Apis.Util.RequestParameterAttribute("clusterId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string ClusterId { get; set; } - - /// Deprecated. The name of the node pool. This field has been deprecated and replaced - /// by the name field. - [Google.Apis.Util.RequestParameterAttribute("nodePoolId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string NodePoolId { get; set; } - /// Deprecated. The Google Developers Console [project ID or project /// number](https://developers.google.com/console/help/new/#projectnumber). This field has been /// deprecated and replaced by the name field. @@ -667,6 +657,16 @@ public GetRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("zone", Google.Apis.Util.RequestParameterType.Query)] public virtual string Zone { get; set; } + /// Deprecated. The name of the cluster. This field has been deprecated and replaced by + /// the name field. + [Google.Apis.Util.RequestParameterAttribute("clusterId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string ClusterId { get; set; } + + /// Deprecated. The name of the node pool. This field has been deprecated and replaced + /// by the name field. + [Google.Apis.Util.RequestParameterAttribute("nodePoolId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string NodePoolId { get; set; } + ///Gets the method name. public override string MethodName @@ -701,36 +701,36 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", }); RequestParameters.Add( - "clusterId", new Google.Apis.Discovery.Parameter + "projectId", new Google.Apis.Discovery.Parameter { - Name = "clusterId", + Name = "projectId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "nodePoolId", new Google.Apis.Discovery.Parameter + "zone", new Google.Apis.Discovery.Parameter { - Name = "nodePoolId", + Name = "zone", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "projectId", new Google.Apis.Discovery.Parameter + "clusterId", new Google.Apis.Discovery.Parameter { - Name = "projectId", + Name = "clusterId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "zone", new Google.Apis.Discovery.Parameter + "nodePoolId", new Google.Apis.Discovery.Parameter { - Name = "zone", + Name = "nodePoolId", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1501,12 +1501,6 @@ public GetRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } - /// 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. - [Google.Apis.Util.RequestParameterAttribute("projectId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string ProjectId { get; set; } - /// 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. @@ -1518,6 +1512,12 @@ public GetRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("clusterId", Google.Apis.Util.RequestParameterType.Query)] public virtual string ClusterId { get; set; } + /// 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. + [Google.Apis.Util.RequestParameterAttribute("projectId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string ProjectId { get; set; } + ///Gets the method name. public override string MethodName @@ -1552,27 +1552,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", }); RequestParameters.Add( - "projectId", new Google.Apis.Discovery.Parameter + "zone", new Google.Apis.Discovery.Parameter { - Name = "projectId", + Name = "zone", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "zone", new Google.Apis.Discovery.Parameter + "clusterId", new Google.Apis.Discovery.Parameter { - Name = "zone", + Name = "clusterId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "clusterId", new Google.Apis.Discovery.Parameter + "projectId", new Google.Apis.Discovery.Parameter { - Name = "clusterId", + Name = "projectId", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2637,6 +2637,12 @@ public GetRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } + /// 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. + [Google.Apis.Util.RequestParameterAttribute("zone", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Zone { get; set; } + /// Deprecated. The server-assigned `name` of the operation. This field has been deprecated /// and replaced by the name field. [Google.Apis.Util.RequestParameterAttribute("operationId", Google.Apis.Util.RequestParameterType.Query)] @@ -2648,12 +2654,6 @@ public GetRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("projectId", Google.Apis.Util.RequestParameterType.Query)] public virtual string ProjectId { get; set; } - /// 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. - [Google.Apis.Util.RequestParameterAttribute("zone", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Zone { get; set; } - ///Gets the method name. public override string MethodName @@ -2688,27 +2688,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/locations/[^/]+/operations/[^/]+$", }); RequestParameters.Add( - "operationId", new Google.Apis.Discovery.Parameter + "zone", new Google.Apis.Discovery.Parameter { - Name = "operationId", + Name = "zone", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "projectId", new Google.Apis.Discovery.Parameter + "operationId", new Google.Apis.Discovery.Parameter { - Name = "projectId", + Name = "operationId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "zone", new Google.Apis.Discovery.Parameter + "projectId", new Google.Apis.Discovery.Parameter { - Name = "zone", + Name = "projectId", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Container.v1/Google.Apis.Container.v1.csproj b/Src/Generated/Google.Apis.Container.v1/Google.Apis.Container.v1.csproj index edd25b8e14..f79709c364 100644 --- a/Src/Generated/Google.Apis.Container.v1/Google.Apis.Container.v1.csproj +++ b/Src/Generated/Google.Apis.Container.v1/Google.Apis.Container.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Container.v1 Client Library - 1.33.0.1205 + 1.33.1.1205 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/container/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Container.v1beta1/Google.Apis.Container.v1beta1.cs b/Src/Generated/Google.Apis.Container.v1beta1/Google.Apis.Container.v1beta1.cs index df2837eb50..2ea2bb19c1 100644 --- a/Src/Generated/Google.Apis.Container.v1beta1/Google.Apis.Container.v1beta1.cs +++ b/Src/Generated/Google.Apis.Container.v1beta1/Google.Apis.Container.v1beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Kubernetes Engine API * API Versionv1beta1 - * API Rev20180420 (1205) + * API Rev20180427 (1212) * API Docs * * https://cloud.google.com/container-engine/ @@ -431,11 +431,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } - /// Specifies a page token to use. Set this to the nextPageToken returned by previous list - /// requests to get the next page of results. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// The max number of results per page that should be returned. If the number of available /// results is larger than `page_size`, a `next_page_token` is returned which can be used to get the /// next page of results in subsequent requests. Acceptable values are 0 to 500, inclusive. @@ -449,6 +444,11 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] public virtual string Filter { get; set; } + /// Specifies a page token to use. Set this to the nextPageToken returned by previous list + /// requests to get the next page of results. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + ///Gets the method name. public override string MethodName @@ -483,27 +483,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+$", }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -802,6 +802,16 @@ public GetRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } + /// Deprecated. The name of the cluster. This field has been deprecated and replaced by + /// the name field. + [Google.Apis.Util.RequestParameterAttribute("clusterId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string ClusterId { get; set; } + + /// Deprecated. The name of the node pool. This field has been deprecated and replaced + /// by the name field. + [Google.Apis.Util.RequestParameterAttribute("nodePoolId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string NodePoolId { get; set; } + /// Deprecated. The Google Developers Console [project ID or project /// number](https://developers.google.com/console/help/new/#projectnumber). This field has been /// deprecated and replaced by the name field. @@ -814,16 +824,6 @@ public GetRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("zone", Google.Apis.Util.RequestParameterType.Query)] public virtual string Zone { get; set; } - /// Deprecated. The name of the cluster. This field has been deprecated and replaced by - /// the name field. - [Google.Apis.Util.RequestParameterAttribute("clusterId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string ClusterId { get; set; } - - /// Deprecated. The name of the node pool. This field has been deprecated and replaced - /// by the name field. - [Google.Apis.Util.RequestParameterAttribute("nodePoolId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string NodePoolId { get; set; } - ///Gets the method name. public override string MethodName @@ -858,36 +858,36 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/locations/[^/]+/clusters/[^/]+/nodePools/[^/]+$", }); RequestParameters.Add( - "projectId", new Google.Apis.Discovery.Parameter + "clusterId", new Google.Apis.Discovery.Parameter { - Name = "projectId", + Name = "clusterId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "zone", new Google.Apis.Discovery.Parameter + "nodePoolId", new Google.Apis.Discovery.Parameter { - Name = "zone", + Name = "nodePoolId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "clusterId", new Google.Apis.Discovery.Parameter + "projectId", new Google.Apis.Discovery.Parameter { - Name = "clusterId", + Name = "projectId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "nodePoolId", new Google.Apis.Discovery.Parameter + "zone", new Google.Apis.Discovery.Parameter { - Name = "nodePoolId", + Name = "zone", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -922,6 +922,11 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } + /// Deprecated. The name of the cluster. This field has been deprecated and replaced by + /// the parent field. + [Google.Apis.Util.RequestParameterAttribute("clusterId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string ClusterId { get; set; } + /// Deprecated. The Google Developers Console [project ID or project /// number](https://developers.google.com/console/help/new/#projectnumber). This field has been /// deprecated and replaced by the parent field. @@ -934,11 +939,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("zone", Google.Apis.Util.RequestParameterType.Query)] public virtual string Zone { get; set; } - /// Deprecated. The name of the cluster. This field has been deprecated and replaced by - /// the parent field. - [Google.Apis.Util.RequestParameterAttribute("clusterId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string ClusterId { get; set; } - ///Gets the method name. public override string MethodName @@ -973,27 +973,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", }); RequestParameters.Add( - "projectId", new Google.Apis.Discovery.Parameter + "clusterId", new Google.Apis.Discovery.Parameter { - Name = "projectId", + Name = "clusterId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "zone", new Google.Apis.Discovery.Parameter + "projectId", new Google.Apis.Discovery.Parameter { - Name = "zone", + Name = "projectId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "clusterId", new Google.Apis.Discovery.Parameter + "zone", new Google.Apis.Discovery.Parameter { - Name = "clusterId", + Name = "zone", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1658,6 +1658,12 @@ public GetRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } + /// 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. + [Google.Apis.Util.RequestParameterAttribute("projectId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string ProjectId { get; set; } + /// 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. @@ -1669,12 +1675,6 @@ public GetRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("clusterId", Google.Apis.Util.RequestParameterType.Query)] public virtual string ClusterId { get; set; } - /// 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. - [Google.Apis.Util.RequestParameterAttribute("projectId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string ProjectId { get; set; } - ///Gets the method name. public override string MethodName @@ -1709,27 +1709,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/locations/[^/]+/clusters/[^/]+$", }); RequestParameters.Add( - "zone", new Google.Apis.Discovery.Parameter + "projectId", new Google.Apis.Discovery.Parameter { - Name = "zone", + Name = "projectId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "clusterId", new Google.Apis.Discovery.Parameter + "zone", new Google.Apis.Discovery.Parameter { - Name = "clusterId", + Name = "zone", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "projectId", new Google.Apis.Discovery.Parameter + "clusterId", new Google.Apis.Discovery.Parameter { - Name = "projectId", + Name = "clusterId", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2794,11 +2794,6 @@ public GetRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } - /// Deprecated. The server-assigned `name` of the operation. This field has been deprecated - /// and replaced by the name field. - [Google.Apis.Util.RequestParameterAttribute("operationId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string OperationId { get; set; } - /// 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. @@ -2811,6 +2806,11 @@ public GetRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("zone", Google.Apis.Util.RequestParameterType.Query)] public virtual string Zone { get; set; } + /// Deprecated. The server-assigned `name` of the operation. This field has been deprecated + /// and replaced by the name field. + [Google.Apis.Util.RequestParameterAttribute("operationId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string OperationId { get; set; } + ///Gets the method name. public override string MethodName @@ -2845,27 +2845,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/locations/[^/]+/operations/[^/]+$", }); RequestParameters.Add( - "operationId", new Google.Apis.Discovery.Parameter + "projectId", new Google.Apis.Discovery.Parameter { - Name = "operationId", + Name = "projectId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "projectId", new Google.Apis.Discovery.Parameter + "zone", new Google.Apis.Discovery.Parameter { - Name = "projectId", + Name = "zone", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "zone", new Google.Apis.Discovery.Parameter + "operationId", new Google.Apis.Discovery.Parameter { - Name = "zone", + Name = "operationId", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -3058,6 +3058,68 @@ protected override void InitParameters() } } + + + /// Contains the name of the resource requested. Specific in the format + /// 'projects/locations'. + public virtual ListRequest List(string parent) + { + return new ListRequest(service, parent); + } + + + public class ListRequest : ContainerBaseServiceRequest + { + /// Constructs a new List request. + public ListRequest(Google.Apis.Services.IClientService service, string parent) + : base(service) + { + Parent = parent; + InitParameters(); + } + + + /// Contains the name of the resource requested. Specific in the format + /// 'projects/locations'. + [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] + public virtual string Parent { get; private set; } + + + ///Gets the method name. + public override string MethodName + { + get { return "list"; } + } + + ///Gets the HTTP method. + public override string HttpMethod + { + get { return "GET"; } + } + + ///Gets the REST path. + public override string RestPath + { + get { return "v1beta1/{+parent}/locations"; } + } + + /// Initializes List parameter list. + protected override void InitParameters() + { + base.InitParameters(); + + RequestParameters.Add( + "parent", new Google.Apis.Discovery.Parameter + { + Name = "parent", + IsRequired = true, + ParameterType = "path", + DefaultValue = null, + Pattern = @"^projects/[^/]+$", + }); + } + + } } private readonly ZonesResource zones; @@ -7238,6 +7300,23 @@ public class ListClustersResponse : Google.Apis.Requests.IDirectResponseSchema public virtual string ETag { get; set; } } + /// ListLocationsResponse returns the list of all GKE locations and their recommendation state. + public class ListLocationsResponse : Google.Apis.Requests.IDirectResponseSchema + { + /// A full list of GKE locations. + [Newtonsoft.Json.JsonPropertyAttribute("locations")] + public virtual System.Collections.Generic.IList Locations { get; set; } + + /// Only return ListLocationsResponse that occur after the page_token. This value should be populated + /// from the ListLocationsResponse.next_page_token if that response token was set (which happens when listing + /// more Locations than fit in a single ListLocationsResponse). + [Newtonsoft.Json.JsonPropertyAttribute("nextPageToken")] + public virtual string NextPageToken { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// ListNodePoolsResponse is the result of ListNodePoolsRequest. public class ListNodePoolsResponse : Google.Apis.Requests.IDirectResponseSchema { @@ -7282,6 +7361,28 @@ public class ListUsableSubnetworksResponse : Google.Apis.Requests.IDirectRespons public virtual string ETag { get; set; } } + /// Location returns the location name, and if the location is recommended for GKE cluster + /// scheduling. + public class Location : Google.Apis.Requests.IDirectResponseSchema + { + /// Contains the name of the resource requested. Specific in the format 'projects/locations'. + [Newtonsoft.Json.JsonPropertyAttribute("name")] + public virtual string Name { get; set; } + + /// Recommended is a bool combining the drain state of the location (ie- has the region been drained + /// manually?), and the stockout status of any zone according to Zone Advisor. This will be internal only for + /// use by pantheon. + [Newtonsoft.Json.JsonPropertyAttribute("recommended")] + public virtual System.Nullable Recommended { get; set; } + + /// Contains the type of location this Location is for. Regional or Zonal. + [Newtonsoft.Json.JsonPropertyAttribute("type")] + public virtual string Type { get; set; } + + /// The ETag of the item. + public virtual string ETag { get; set; } + } + /// MaintenancePolicy defines the maintenance policy to be used for the cluster. public class MaintenancePolicy : Google.Apis.Requests.IDirectResponseSchema { diff --git a/Src/Generated/Google.Apis.Container.v1beta1/Google.Apis.Container.v1beta1.csproj b/Src/Generated/Google.Apis.Container.v1beta1/Google.Apis.Container.v1beta1.csproj index f702212808..344832a486 100644 --- a/Src/Generated/Google.Apis.Container.v1beta1/Google.Apis.Container.v1beta1.csproj +++ b/Src/Generated/Google.Apis.Container.v1beta1/Google.Apis.Container.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.Container.v1beta1 Client Library - 1.33.0.1205 + 1.33.1.1212 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/container/v1beta1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Customsearch.v1/Google.Apis.Customsearch.v1.cs b/Src/Generated/Google.Apis.Customsearch.v1/Google.Apis.Customsearch.v1.cs index 55bf6d977c..2d5fd3db6a 100644 --- a/Src/Generated/Google.Apis.Customsearch.v1/Google.Apis.Customsearch.v1.cs +++ b/Src/Generated/Google.Apis.Customsearch.v1/Google.Apis.Customsearch.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Customsearch.v1/Google.Apis.Customsearch.v1.csproj b/Src/Generated/Google.Apis.Customsearch.v1/Google.Apis.Customsearch.v1.csproj index f87a03f58e..fc89aa8c9e 100644 --- a/Src/Generated/Google.Apis.Customsearch.v1/Google.Apis.Customsearch.v1.csproj +++ b/Src/Generated/Google.Apis.Customsearch.v1/Google.Apis.Customsearch.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Customsearch.v1 Client Library - 1.33.0.1216 + 1.33.1.1216 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/customsearch/v1 @@ -57,7 +58,7 @@ - + @@ -71,7 +72,7 @@ - + diff --git a/Src/Generated/Google.Apis.DLP.v2/Google.Apis.DLP.v2.cs b/Src/Generated/Google.Apis.DLP.v2/Google.Apis.DLP.v2.cs index 2ec2e5ca3b..da1f0eb94a 100644 --- a/Src/Generated/Google.Apis.DLP.v2/Google.Apis.DLP.v2.cs +++ b/Src/Generated/Google.Apis.DLP.v2/Google.Apis.DLP.v2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Cloud Data Loss Prevention (DLP) API * API Versionv2 - * API Rev20180501 (1216) + * API Rev20180507 (1222) * API Docs * * https://cloud.google.com/dlp/docs/ @@ -2188,10 +2188,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } - /// The standard list page token. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// The standard list page size. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } @@ -2232,6 +2228,10 @@ public enum TypeEnum [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] public virtual string Filter { get; set; } + /// The standard list page token. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + ///Gets the method name. public override string MethodName @@ -2266,36 +2266,36 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+$", }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "type", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "type", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "type", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "type", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -3513,7 +3513,7 @@ public class GooglePrivacyDlpV2CloudStorageOptions : Google.Apis.Requests.IDirec public virtual string ETag { get; set; } } - /// Message representing a path in Cloud Storage. + /// Message representing a single file or path in Cloud Storage. public class GooglePrivacyDlpV2CloudStoragePath : Google.Apis.Requests.IDirectResponseSchema { /// A url representing a file or path (no wildcards) in Cloud Storage. Example: diff --git a/Src/Generated/Google.Apis.DLP.v2/Google.Apis.DLP.v2.csproj b/Src/Generated/Google.Apis.DLP.v2/Google.Apis.DLP.v2.csproj index bf30956d7f..b7c1504fa4 100644 --- a/Src/Generated/Google.Apis.DLP.v2/Google.Apis.DLP.v2.csproj +++ b/Src/Generated/Google.Apis.DLP.v2/Google.Apis.DLP.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.DLP.v2 Client Library - 1.33.0.1216 + 1.33.1.1222 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/dlp/v2 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Dataflow.v1b3/Google.Apis.Dataflow.v1b3.cs b/Src/Generated/Google.Apis.Dataflow.v1b3/Google.Apis.Dataflow.v1b3.cs index 41619457e0..af9bae8647 100644 --- a/Src/Generated/Google.Apis.Dataflow.v1b3/Google.Apis.Dataflow.v1b3.cs +++ b/Src/Generated/Google.Apis.Dataflow.v1b3/Google.Apis.Dataflow.v1b3.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -674,15 +674,15 @@ public enum MinimumImportanceEnum JOBMESSAGEERROR, } + /// The location which contains the job specified by job_id. + [Google.Apis.Util.RequestParameterAttribute("location", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Location { get; set; } + /// Return only messages with timestamps < end_time. The default is now (i.e. return up to /// the latest messages available). [Google.Apis.Util.RequestParameterAttribute("endTime", Google.Apis.Util.RequestParameterType.Query)] public virtual object EndTime { get; set; } - /// The location which contains the job specified by job_id. - [Google.Apis.Util.RequestParameterAttribute("location", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Location { get; set; } - ///Gets the method name. public override string MethodName @@ -762,18 +762,18 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "endTime", new Google.Apis.Discovery.Parameter + "location", new Google.Apis.Discovery.Parameter { - Name = "endTime", + Name = "location", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "location", new Google.Apis.Discovery.Parameter + "endTime", new Google.Apis.Discovery.Parameter { - Name = "location", + Name = "endTime", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -999,27 +999,6 @@ public AggregatedRequest(Google.Apis.Services.IClientService service, string pro [Google.Apis.Util.RequestParameterAttribute("projectId", Google.Apis.Util.RequestParameterType.Path)] public virtual string ProjectId { get; private set; } - /// The kind of filter to use. - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable Filter { get; set; } - - /// The kind of filter to use. - public enum FilterEnum - { - [Google.Apis.Util.StringValueAttribute("UNKNOWN")] - UNKNOWN, - [Google.Apis.Util.StringValueAttribute("ALL")] - ALL, - [Google.Apis.Util.StringValueAttribute("TERMINATED")] - TERMINATED, - [Google.Apis.Util.StringValueAttribute("ACTIVE")] - ACTIVE, - } - - /// The location that contains this job. - [Google.Apis.Util.RequestParameterAttribute("location", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Location { get; set; } - /// Set this to the 'next_page_token' field of a previous response to request additional /// results in a long list. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] @@ -1047,6 +1026,27 @@ public enum ViewEnum JOBVIEWDESCRIPTION, } + /// The kind of filter to use. + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable Filter { get; set; } + + /// The kind of filter to use. + public enum FilterEnum + { + [Google.Apis.Util.StringValueAttribute("UNKNOWN")] + UNKNOWN, + [Google.Apis.Util.StringValueAttribute("ALL")] + ALL, + [Google.Apis.Util.StringValueAttribute("TERMINATED")] + TERMINATED, + [Google.Apis.Util.StringValueAttribute("ACTIVE")] + ACTIVE, + } + + /// The location that contains this job. + [Google.Apis.Util.RequestParameterAttribute("location", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Location { get; set; } + ///Gets the method name. public override string MethodName @@ -1081,45 +1081,45 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "location", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "location", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "view", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "view", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "view", new Google.Apis.Discovery.Parameter + "location", new Google.Apis.Discovery.Parameter { - Name = "view", + Name = "location", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1154,14 +1154,6 @@ public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Da [Google.Apis.Util.RequestParameterAttribute("projectId", Google.Apis.Util.RequestParameterType.Path)] public virtual string ProjectId { get; private set; } - /// The location that contains this job. - [Google.Apis.Util.RequestParameterAttribute("location", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Location { get; set; } - - /// Deprecated. This field is now in the Job message. - [Google.Apis.Util.RequestParameterAttribute("replaceJobId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string ReplaceJobId { get; set; } - /// The level of information requested in response. [Google.Apis.Util.RequestParameterAttribute("view", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable View { get; set; } @@ -1179,6 +1171,14 @@ public enum ViewEnum JOBVIEWDESCRIPTION, } + /// The location that contains this job. + [Google.Apis.Util.RequestParameterAttribute("location", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Location { get; set; } + + /// Deprecated. This field is now in the Job message. + [Google.Apis.Util.RequestParameterAttribute("replaceJobId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string ReplaceJobId { get; set; } + /// Gets or sets the body of this request. Google.Apis.Dataflow.v1b3.Data.Job Body { get; set; } @@ -1219,27 +1219,27 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "location", new Google.Apis.Discovery.Parameter + "view", new Google.Apis.Discovery.Parameter { - Name = "location", + Name = "view", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "replaceJobId", new Google.Apis.Discovery.Parameter + "location", new Google.Apis.Discovery.Parameter { - Name = "replaceJobId", + Name = "location", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "view", new Google.Apis.Discovery.Parameter + "replaceJobId", new Google.Apis.Discovery.Parameter { - Name = "view", + Name = "replaceJobId", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1279,10 +1279,6 @@ public GetRequest(Google.Apis.Services.IClientService service, string projectId, [Google.Apis.Util.RequestParameterAttribute("jobId", Google.Apis.Util.RequestParameterType.Path)] public virtual string JobId { get; private set; } - /// The location that contains this job. - [Google.Apis.Util.RequestParameterAttribute("location", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Location { get; set; } - /// The level of information requested in response. [Google.Apis.Util.RequestParameterAttribute("view", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable View { get; set; } @@ -1300,6 +1296,10 @@ public enum ViewEnum JOBVIEWDESCRIPTION, } + /// The location that contains this job. + [Google.Apis.Util.RequestParameterAttribute("location", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Location { get; set; } + ///Gets the method name. public override string MethodName @@ -1343,18 +1343,18 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "location", new Google.Apis.Discovery.Parameter + "view", new Google.Apis.Discovery.Parameter { - Name = "location", + Name = "view", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "view", new Google.Apis.Discovery.Parameter + "location", new Google.Apis.Discovery.Parameter { - Name = "view", + Name = "location", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1393,15 +1393,15 @@ public GetMetricsRequest(Google.Apis.Services.IClientService service, string pro [Google.Apis.Util.RequestParameterAttribute("jobId", Google.Apis.Util.RequestParameterType.Path)] public virtual string JobId { get; private set; } + /// The location which contains the job specified by job_id. + [Google.Apis.Util.RequestParameterAttribute("location", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Location { get; set; } + /// Return only metric data that has changed since this time. Default is to return all /// information about all metrics for the job. [Google.Apis.Util.RequestParameterAttribute("startTime", Google.Apis.Util.RequestParameterType.Query)] public virtual object StartTime { get; set; } - /// The location which contains the job specified by job_id. - [Google.Apis.Util.RequestParameterAttribute("location", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Location { get; set; } - ///Gets the method name. public override string MethodName @@ -1445,18 +1445,18 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "startTime", new Google.Apis.Discovery.Parameter + "location", new Google.Apis.Discovery.Parameter { - Name = "startTime", + Name = "location", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "location", new Google.Apis.Discovery.Parameter + "startTime", new Google.Apis.Discovery.Parameter { - Name = "location", + Name = "startTime", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2049,21 +2049,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string projectId [Google.Apis.Util.RequestParameterAttribute("jobId", Google.Apis.Util.RequestParameterType.Path)] public virtual string JobId { get; private set; } - /// Return only messages with timestamps < end_time. The default is now (i.e. return up - /// to the latest messages available). - [Google.Apis.Util.RequestParameterAttribute("endTime", Google.Apis.Util.RequestParameterType.Query)] - public virtual object EndTime { get; set; } - - /// If specified, return only messages with timestamps >= start_time. The default is - /// the job creation time (i.e. beginning of messages). - [Google.Apis.Util.RequestParameterAttribute("startTime", Google.Apis.Util.RequestParameterType.Query)] - public virtual object StartTime { get; set; } - - /// If supplied, this should be the value of next_page_token returned by an earlier - /// call. This will cause the next page of results to be returned. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// If specified, determines the maximum number of messages to return. If unspecified, /// the service may choose an appropriate default, or may return an arbitrarily large number of /// results. @@ -2091,6 +2076,21 @@ public enum MinimumImportanceEnum JOBMESSAGEERROR, } + /// Return only messages with timestamps < end_time. The default is now (i.e. return up + /// to the latest messages available). + [Google.Apis.Util.RequestParameterAttribute("endTime", Google.Apis.Util.RequestParameterType.Query)] + public virtual object EndTime { get; set; } + + /// If supplied, this should be the value of next_page_token returned by an earlier + /// call. This will cause the next page of results to be returned. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// If specified, return only messages with timestamps >= start_time. The default is + /// the job creation time (i.e. beginning of messages). + [Google.Apis.Util.RequestParameterAttribute("startTime", Google.Apis.Util.RequestParameterType.Query)] + public virtual object StartTime { get; set; } + ///Gets the method name. public override string MethodName @@ -2143,45 +2143,45 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "endTime", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "endTime", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "startTime", new Google.Apis.Discovery.Parameter + "minimumImportance", new Google.Apis.Discovery.Parameter { - Name = "startTime", + Name = "minimumImportance", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "endTime", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "endTime", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "minimumImportance", new Google.Apis.Discovery.Parameter + "startTime", new Google.Apis.Discovery.Parameter { - Name = "minimumImportance", + Name = "startTime", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2448,10 +2448,6 @@ public CreateRequest(Google.Apis.Services.IClientService service, Google.Apis.Da [Google.Apis.Util.RequestParameterAttribute("location", Google.Apis.Util.RequestParameterType.Path)] public virtual string Location { get; private set; } - /// Deprecated. This field is now in the Job message. - [Google.Apis.Util.RequestParameterAttribute("replaceJobId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string ReplaceJobId { get; set; } - /// The level of information requested in response. [Google.Apis.Util.RequestParameterAttribute("view", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable View { get; set; } @@ -2469,6 +2465,10 @@ public enum ViewEnum JOBVIEWDESCRIPTION, } + /// Deprecated. This field is now in the Job message. + [Google.Apis.Util.RequestParameterAttribute("replaceJobId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string ReplaceJobId { get; set; } + /// Gets or sets the body of this request. Google.Apis.Dataflow.v1b3.Data.Job Body { get; set; } @@ -2518,18 +2518,18 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "replaceJobId", new Google.Apis.Discovery.Parameter + "view", new Google.Apis.Discovery.Parameter { - Name = "replaceJobId", + Name = "view", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "view", new Google.Apis.Discovery.Parameter + "replaceJobId", new Google.Apis.Discovery.Parameter { - Name = "view", + Name = "replaceJobId", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -3154,6 +3154,11 @@ public GetRequest(Google.Apis.Services.IClientService service, string projectId, [Google.Apis.Util.RequestParameterAttribute("location", Google.Apis.Util.RequestParameterType.Path)] public virtual string Location { get; private set; } + /// Required. A Cloud Storage path to the template from which to create the job. Must be a + /// valid Cloud Storage URL, beginning with `gs://`. + [Google.Apis.Util.RequestParameterAttribute("gcsPath", Google.Apis.Util.RequestParameterType.Query)] + public virtual string GcsPath { get; set; } + /// The view to retrieve. Defaults to METADATA_ONLY. [Google.Apis.Util.RequestParameterAttribute("view", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable View { get; set; } @@ -3165,11 +3170,6 @@ public enum ViewEnum METADATAONLY, } - /// Required. A Cloud Storage path to the template from which to create the job. Must be a - /// valid Cloud Storage URL, beginning with `gs://`. - [Google.Apis.Util.RequestParameterAttribute("gcsPath", Google.Apis.Util.RequestParameterType.Query)] - public virtual string GcsPath { get; set; } - ///Gets the method name. public override string MethodName @@ -3213,18 +3213,18 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "view", new Google.Apis.Discovery.Parameter + "gcsPath", new Google.Apis.Discovery.Parameter { - Name = "view", + Name = "gcsPath", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "gcsPath", new Google.Apis.Discovery.Parameter + "view", new Google.Apis.Discovery.Parameter { - Name = "gcsPath", + Name = "view", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -3266,16 +3266,16 @@ public LaunchRequest(Google.Apis.Services.IClientService service, Google.Apis.Da [Google.Apis.Util.RequestParameterAttribute("location", Google.Apis.Util.RequestParameterType.Path)] public virtual string Location { get; private set; } - /// If true, the request is validated but not actually executed. Defaults to - /// false. - [Google.Apis.Util.RequestParameterAttribute("validateOnly", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable ValidateOnly { get; set; } - /// Required. A Cloud Storage path to the template from which to create the job. Must be /// valid Cloud Storage URL, beginning with 'gs://'. [Google.Apis.Util.RequestParameterAttribute("gcsPath", Google.Apis.Util.RequestParameterType.Query)] public virtual string GcsPath { get; set; } + /// If true, the request is validated but not actually executed. Defaults to + /// false. + [Google.Apis.Util.RequestParameterAttribute("validateOnly", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable ValidateOnly { get; set; } + /// Gets or sets the body of this request. Google.Apis.Dataflow.v1b3.Data.LaunchTemplateParameters Body { get; set; } @@ -3325,18 +3325,18 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "validateOnly", new Google.Apis.Discovery.Parameter + "gcsPath", new Google.Apis.Discovery.Parameter { - Name = "validateOnly", + Name = "gcsPath", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "gcsPath", new Google.Apis.Discovery.Parameter + "validateOnly", new Google.Apis.Discovery.Parameter { - Name = "gcsPath", + Name = "validateOnly", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -3546,6 +3546,10 @@ public GetRequest(Google.Apis.Services.IClientService service, string projectId) [Google.Apis.Util.RequestParameterAttribute("projectId", Google.Apis.Util.RequestParameterType.Path)] public virtual string ProjectId { get; private set; } + /// The location to which to direct the request. + [Google.Apis.Util.RequestParameterAttribute("location", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Location { get; set; } + /// The view to retrieve. Defaults to METADATA_ONLY. [Google.Apis.Util.RequestParameterAttribute("view", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable View { get; set; } @@ -3562,10 +3566,6 @@ public enum ViewEnum [Google.Apis.Util.RequestParameterAttribute("gcsPath", Google.Apis.Util.RequestParameterType.Query)] public virtual string GcsPath { get; set; } - /// The location to which to direct the request. - [Google.Apis.Util.RequestParameterAttribute("location", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Location { get; set; } - ///Gets the method name. public override string MethodName @@ -3600,27 +3600,27 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "view", new Google.Apis.Discovery.Parameter + "location", new Google.Apis.Discovery.Parameter { - Name = "view", + Name = "location", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "gcsPath", new Google.Apis.Discovery.Parameter + "view", new Google.Apis.Discovery.Parameter { - Name = "gcsPath", + Name = "view", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "location", new Google.Apis.Discovery.Parameter + "gcsPath", new Google.Apis.Discovery.Parameter { - Name = "location", + Name = "gcsPath", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Dataflow.v1b3/Google.Apis.Dataflow.v1b3.csproj b/Src/Generated/Google.Apis.Dataflow.v1b3/Google.Apis.Dataflow.v1b3.csproj index 8183f0bbce..21c5e69e4c 100644 --- a/Src/Generated/Google.Apis.Dataflow.v1b3/Google.Apis.Dataflow.v1b3.csproj +++ b/Src/Generated/Google.Apis.Dataflow.v1b3/Google.Apis.Dataflow.v1b3.csproj @@ -3,7 +3,7 @@ Google.Apis.Dataflow.v1b3 Client Library - 1.33.0.1216 + 1.33.1.1216 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/dataflow/v1b3 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Dataproc.v1/Google.Apis.Dataproc.v1.cs b/Src/Generated/Google.Apis.Dataproc.v1/Google.Apis.Dataproc.v1.cs index fc8f5c1869..6f65f3017b 100644 --- a/Src/Generated/Google.Apis.Dataproc.v1/Google.Apis.Dataproc.v1.cs +++ b/Src/Generated/Google.Apis.Dataproc.v1/Google.Apis.Dataproc.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -865,6 +865,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string projectId [Google.Apis.Util.RequestParameterAttribute("region", Google.Apis.Util.RequestParameterType.Path)] public virtual string Region { get; private set; } + /// Optional. The standard List page size. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + /// 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. @@ -881,10 +885,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string projectId [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } - /// Optional. The standard List page size. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - ///Gets the method name. public override string MethodName @@ -928,27 +928,27 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1463,6 +1463,20 @@ public ListRequest(Google.Apis.Services.IClientService service, string projectId [Google.Apis.Util.RequestParameterAttribute("region", Google.Apis.Util.RequestParameterType.Path)] public virtual string Region { get; private set; } + /// Optional. The page token, returned by a previous call, to request the next page of + /// results. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// Optional. The number of results to return in each response. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + + /// Optional. If set, the returned jobs list includes only jobs that were submitted to the + /// named cluster. + [Google.Apis.Util.RequestParameterAttribute("clusterName", Google.Apis.Util.RequestParameterType.Query)] + public virtual string ClusterName { get; set; } + /// 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 @@ -1489,20 +1503,6 @@ public enum JobStateMatcherEnum NONACTIVE, } - /// Optional. The page token, returned by a previous call, to request the next page of - /// results. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - - /// Optional. The number of results to return in each response. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - - /// Optional. If set, the returned jobs list includes only jobs that were submitted to the - /// named cluster. - [Google.Apis.Util.RequestParameterAttribute("clusterName", Google.Apis.Util.RequestParameterType.Query)] - public virtual string ClusterName { get; set; } - ///Gets the method name. public override string MethodName @@ -1546,45 +1546,45 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "jobStateMatcher", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "jobStateMatcher", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "clusterName", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "clusterName", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "clusterName", new Google.Apis.Discovery.Parameter + "jobStateMatcher", new Google.Apis.Discovery.Parameter { - Name = "clusterName", + Name = "jobStateMatcher", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Dataproc.v1/Google.Apis.Dataproc.v1.csproj b/Src/Generated/Google.Apis.Dataproc.v1/Google.Apis.Dataproc.v1.csproj index e5f7f3e216..27f244d588 100644 --- a/Src/Generated/Google.Apis.Dataproc.v1/Google.Apis.Dataproc.v1.csproj +++ b/Src/Generated/Google.Apis.Dataproc.v1/Google.Apis.Dataproc.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Dataproc.v1 Client Library - 1.33.0.1217 + 1.33.1.1217 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/dataproc/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Dataproc.v1beta2/Google.Apis.Dataproc.v1beta2.cs b/Src/Generated/Google.Apis.Dataproc.v1beta2/Google.Apis.Dataproc.v1beta2.cs index 8b1fed4f11..285baafd43 100644 --- a/Src/Generated/Google.Apis.Dataproc.v1beta2/Google.Apis.Dataproc.v1beta2.cs +++ b/Src/Generated/Google.Apis.Dataproc.v1beta2/Google.Apis.Dataproc.v1beta2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -1766,14 +1766,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string projectId [Google.Apis.Util.RequestParameterAttribute("region", Google.Apis.Util.RequestParameterType.Path)] public virtual string Region { get; private set; } - /// Optional. The standard List page token. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - - /// Optional. The standard List page size. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - /// 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. @@ -1786,6 +1778,14 @@ public ListRequest(Google.Apis.Services.IClientService service, string projectId [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] public virtual string Filter { get; set; } + /// Optional. The standard List page token. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// Optional. The standard List page size. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + ///Gets the method name. public override string MethodName @@ -1829,27 +1829,27 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2590,6 +2590,15 @@ public ListRequest(Google.Apis.Services.IClientService service, string projectId [Google.Apis.Util.RequestParameterAttribute("region", Google.Apis.Util.RequestParameterType.Path)] public virtual string Region { get; private set; } + /// Optional. The page token, returned by a previous call, to request the next page of + /// results. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// Optional. The number of results to return in each response. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + /// Optional. If set, the returned jobs list includes only jobs that were submitted to the /// named cluster. [Google.Apis.Util.RequestParameterAttribute("clusterName", Google.Apis.Util.RequestParameterType.Query)] @@ -2621,15 +2630,6 @@ public enum JobStateMatcherEnum NONACTIVE, } - /// Optional. The page token, returned by a previous call, to request the next page of - /// results. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - - /// Optional. The number of results to return in each response. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - ///Gets the method name. public override string MethodName @@ -2673,45 +2673,45 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "clusterName", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "clusterName", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "jobStateMatcher", new Google.Apis.Discovery.Parameter + "clusterName", new Google.Apis.Discovery.Parameter { - Name = "jobStateMatcher", + Name = "clusterName", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "jobStateMatcher", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "jobStateMatcher", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -3393,6 +3393,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } + /// The standard list filter. + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + /// The standard list page token. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } @@ -3401,10 +3405,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } - /// The standard list filter. - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - ///Gets the method name. public override string MethodName @@ -3439,27 +3439,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/regions/[^/]+/operations$", }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Dataproc.v1beta2/Google.Apis.Dataproc.v1beta2.csproj b/Src/Generated/Google.Apis.Dataproc.v1beta2/Google.Apis.Dataproc.v1beta2.csproj index 945f5ec55f..ef683f75e3 100644 --- a/Src/Generated/Google.Apis.Dataproc.v1beta2/Google.Apis.Dataproc.v1beta2.csproj +++ b/Src/Generated/Google.Apis.Dataproc.v1beta2/Google.Apis.Dataproc.v1beta2.csproj @@ -3,7 +3,7 @@ Google.Apis.Dataproc.v1beta2 Client Library - 1.33.0.1217 + 1.33.1.1217 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/dataproc/v1beta2 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Datastore.v1/Google.Apis.Datastore.v1.cs b/Src/Generated/Google.Apis.Datastore.v1/Google.Apis.Datastore.v1.cs index 37e363740a..71ff877d80 100644 --- a/Src/Generated/Google.Apis.Datastore.v1/Google.Apis.Datastore.v1.cs +++ b/Src/Generated/Google.Apis.Datastore.v1/Google.Apis.Datastore.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -616,10 +616,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } - /// The standard list filter. - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - /// The standard list page token. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } @@ -628,6 +624,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// The standard list filter. + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + ///Gets the method name. public override string MethodName @@ -662,27 +662,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+$", }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Datastore.v1/Google.Apis.Datastore.v1.csproj b/Src/Generated/Google.Apis.Datastore.v1/Google.Apis.Datastore.v1.csproj index 2cc42b6977..fe749a3920 100644 --- a/Src/Generated/Google.Apis.Datastore.v1/Google.Apis.Datastore.v1.csproj +++ b/Src/Generated/Google.Apis.Datastore.v1/Google.Apis.Datastore.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Datastore.v1 Client Library - 1.33.0.1216 + 1.33.1.1216 Google Inc. Copyright 2017 Google Inc. Google @@ -13,7 +13,8 @@ https://github.com/google/google-api-dotnet-client https://www.gstatic.com/images/branding/product/1x/google_developers_64dp.png - Google APIs Client Library for working with Datastore v1. + This is not the recommended package for working with Datastore, please use the Google.Cloud.Datastore.V1 package. + This Google APIs Client Library for working with Datastore v1 uses older code generation, and is harder to use. Supported Platforms: - .NET Framework 4.5+ @@ -24,11 +25,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/datastore/v1 @@ -57,8 +59,8 @@ - - + + @@ -73,8 +75,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Datastore.v1beta1/Google.Apis.Datastore.v1beta1.cs b/Src/Generated/Google.Apis.Datastore.v1beta1/Google.Apis.Datastore.v1beta1.cs index 8b32bd44c4..cbe52dfdcc 100644 --- a/Src/Generated/Google.Apis.Datastore.v1beta1/Google.Apis.Datastore.v1beta1.cs +++ b/Src/Generated/Google.Apis.Datastore.v1beta1/Google.Apis.Datastore.v1beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Datastore.v1beta1/Google.Apis.Datastore.v1beta1.csproj b/Src/Generated/Google.Apis.Datastore.v1beta1/Google.Apis.Datastore.v1beta1.csproj index 8f30903793..3cbc05b251 100644 --- a/Src/Generated/Google.Apis.Datastore.v1beta1/Google.Apis.Datastore.v1beta1.csproj +++ b/Src/Generated/Google.Apis.Datastore.v1beta1/Google.Apis.Datastore.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.Datastore.v1beta1 Client Library - 1.33.0.1216 + 1.33.1.1216 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/datastore/v1beta1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Datastore.v1beta3/Google.Apis.Datastore.v1beta3.cs b/Src/Generated/Google.Apis.Datastore.v1beta3/Google.Apis.Datastore.v1beta3.cs index baaa9f301f..66c7cde0dd 100644 --- a/Src/Generated/Google.Apis.Datastore.v1beta3/Google.Apis.Datastore.v1beta3.cs +++ b/Src/Generated/Google.Apis.Datastore.v1beta3/Google.Apis.Datastore.v1beta3.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Datastore.v1beta3/Google.Apis.Datastore.v1beta3.csproj b/Src/Generated/Google.Apis.Datastore.v1beta3/Google.Apis.Datastore.v1beta3.csproj index d2f223e43d..de032ad130 100644 --- a/Src/Generated/Google.Apis.Datastore.v1beta3/Google.Apis.Datastore.v1beta3.csproj +++ b/Src/Generated/Google.Apis.Datastore.v1beta3/Google.Apis.Datastore.v1beta3.csproj @@ -3,7 +3,7 @@ Google.Apis.Datastore.v1beta3 Client Library - 1.33.0.1216 + 1.33.1.1216 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/datastore/v1beta3 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.DeploymentManager.v2/Google.Apis.DeploymentManager.v2.cs b/Src/Generated/Google.Apis.DeploymentManager.v2/Google.Apis.DeploymentManager.v2.cs index 35ab5aa18b..af7c89f03f 100644 --- a/Src/Generated/Google.Apis.DeploymentManager.v2/Google.Apis.DeploymentManager.v2.cs +++ b/Src/Generated/Google.Apis.DeploymentManager.v2/Google.Apis.DeploymentManager.v2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.DeploymentManager.v2/Google.Apis.DeploymentManager.v2.csproj b/Src/Generated/Google.Apis.DeploymentManager.v2/Google.Apis.DeploymentManager.v2.csproj index 39b4a136a2..f36038e435 100644 --- a/Src/Generated/Google.Apis.DeploymentManager.v2/Google.Apis.DeploymentManager.v2.csproj +++ b/Src/Generated/Google.Apis.DeploymentManager.v2/Google.Apis.DeploymentManager.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.DeploymentManager.v2 Client Library - 1.33.0.1218 + 1.33.1.1218 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/deploymentmanager/v2 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.DeploymentManagerAlpha.alpha/Google.Apis.DeploymentManagerAlpha.alpha.cs b/Src/Generated/Google.Apis.DeploymentManagerAlpha.alpha/Google.Apis.DeploymentManagerAlpha.alpha.cs index 20f3427104..6957140ca5 100644 --- a/Src/Generated/Google.Apis.DeploymentManagerAlpha.alpha/Google.Apis.DeploymentManagerAlpha.alpha.cs +++ b/Src/Generated/Google.Apis.DeploymentManagerAlpha.alpha/Google.Apis.DeploymentManagerAlpha.alpha.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.DeploymentManagerAlpha.alpha/Google.Apis.DeploymentManagerAlpha.alpha.csproj b/Src/Generated/Google.Apis.DeploymentManagerAlpha.alpha/Google.Apis.DeploymentManagerAlpha.alpha.csproj index 1823f3ab24..1c568535a9 100644 --- a/Src/Generated/Google.Apis.DeploymentManagerAlpha.alpha/Google.Apis.DeploymentManagerAlpha.alpha.csproj +++ b/Src/Generated/Google.Apis.DeploymentManagerAlpha.alpha/Google.Apis.DeploymentManagerAlpha.alpha.csproj @@ -3,7 +3,7 @@ Google.Apis.DeploymentManagerAlpha.alpha Client Library - 1.33.0.1218 + 1.33.1.1218 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/deploymentmanager/alpha @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.DeploymentManagerV2Beta.v2beta/Google.Apis.DeploymentManagerV2Beta.v2beta.cs b/Src/Generated/Google.Apis.DeploymentManagerV2Beta.v2beta/Google.Apis.DeploymentManagerV2Beta.v2beta.cs index e25fdd0da7..575a218170 100644 --- a/Src/Generated/Google.Apis.DeploymentManagerV2Beta.v2beta/Google.Apis.DeploymentManagerV2Beta.v2beta.cs +++ b/Src/Generated/Google.Apis.DeploymentManagerV2Beta.v2beta/Google.Apis.DeploymentManagerV2Beta.v2beta.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.DeploymentManagerV2Beta.v2beta/Google.Apis.DeploymentManagerV2Beta.v2beta.csproj b/Src/Generated/Google.Apis.DeploymentManagerV2Beta.v2beta/Google.Apis.DeploymentManagerV2Beta.v2beta.csproj index b4550b22d9..150fc0b04e 100644 --- a/Src/Generated/Google.Apis.DeploymentManagerV2Beta.v2beta/Google.Apis.DeploymentManagerV2Beta.v2beta.csproj +++ b/Src/Generated/Google.Apis.DeploymentManagerV2Beta.v2beta/Google.Apis.DeploymentManagerV2Beta.v2beta.csproj @@ -3,7 +3,7 @@ Google.Apis.DeploymentManagerV2Beta.v2beta Client Library - 1.33.0.1218 + 1.33.1.1218 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/deploymentmanager/v2beta @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Dfareporting.v2_8/Google.Apis.Dfareporting.v2_8.cs b/Src/Generated/Google.Apis.Dfareporting.v2_8/Google.Apis.Dfareporting.v2_8.cs index 6a9c9ae09f..73ab10fe2d 100644 --- a/Src/Generated/Google.Apis.Dfareporting.v2_8/Google.Apis.Dfareporting.v2_8.cs +++ b/Src/Generated/Google.Apis.Dfareporting.v2_8/Google.Apis.Dfareporting.v2_8.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Dfareporting.v2_8/Google.Apis.Dfareporting.v2_8.csproj b/Src/Generated/Google.Apis.Dfareporting.v2_8/Google.Apis.Dfareporting.v2_8.csproj index acd5eb357d..8916e263cc 100644 --- a/Src/Generated/Google.Apis.Dfareporting.v2_8/Google.Apis.Dfareporting.v2_8.csproj +++ b/Src/Generated/Google.Apis.Dfareporting.v2_8/Google.Apis.Dfareporting.v2_8.csproj @@ -3,7 +3,7 @@ Google.Apis.Dfareporting.v2_8 Client Library - 1.33.0.1043 + 1.33.1.1043 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/dfareporting/v2.8 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Dfareporting.v3_0/Google.Apis.Dfareporting.v3_0.cs b/Src/Generated/Google.Apis.Dfareporting.v3_0/Google.Apis.Dfareporting.v3_0.cs index 2bf9da260c..6f7762a860 100644 --- a/Src/Generated/Google.Apis.Dfareporting.v3_0/Google.Apis.Dfareporting.v3_0.cs +++ b/Src/Generated/Google.Apis.Dfareporting.v3_0/Google.Apis.Dfareporting.v3_0.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Dfareporting.v3_0/Google.Apis.Dfareporting.v3_0.csproj b/Src/Generated/Google.Apis.Dfareporting.v3_0/Google.Apis.Dfareporting.v3_0.csproj index 0edae02764..0c246388a9 100644 --- a/Src/Generated/Google.Apis.Dfareporting.v3_0/Google.Apis.Dfareporting.v3_0.csproj +++ b/Src/Generated/Google.Apis.Dfareporting.v3_0/Google.Apis.Dfareporting.v3_0.csproj @@ -3,7 +3,7 @@ Google.Apis.Dfareporting.v3_0 Client Library - 1.33.0.1043 + 1.33.1.1043 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/dfareporting/v3.0 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Dialogflow.v2/Google.Apis.Dialogflow.v2.cs b/Src/Generated/Google.Apis.Dialogflow.v2/Google.Apis.Dialogflow.v2.cs index 06d894a021..dbb4f2e1f0 100644 --- a/Src/Generated/Google.Apis.Dialogflow.v2/Google.Apis.Dialogflow.v2.cs +++ b/Src/Generated/Google.Apis.Dialogflow.v2/Google.Apis.Dialogflow.v2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -1691,19 +1691,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } - /// Optional. The resource view to apply to the returned intent. - [Google.Apis.Util.RequestParameterAttribute("intentView", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable IntentView { get; set; } - - /// Optional. The resource view to apply to the returned intent. - public enum IntentViewEnum - { - [Google.Apis.Util.StringValueAttribute("INTENT_VIEW_UNSPECIFIED")] - INTENTVIEWUNSPECIFIED, - [Google.Apis.Util.StringValueAttribute("INTENT_VIEW_FULL")] - INTENTVIEWFULL, - } - /// Optional. 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 @@ -1720,6 +1707,19 @@ public enum IntentViewEnum [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// Optional. The resource view to apply to the returned intent. + [Google.Apis.Util.RequestParameterAttribute("intentView", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable IntentView { get; set; } + + /// Optional. The resource view to apply to the returned intent. + public enum IntentViewEnum + { + [Google.Apis.Util.StringValueAttribute("INTENT_VIEW_UNSPECIFIED")] + INTENTVIEWUNSPECIFIED, + [Google.Apis.Util.StringValueAttribute("INTENT_VIEW_FULL")] + INTENTVIEWFULL, + } + ///Gets the method name. public override string MethodName @@ -1754,36 +1754,36 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/agent$", }); RequestParameters.Add( - "intentView", new Google.Apis.Discovery.Parameter + "languageCode", new Google.Apis.Discovery.Parameter { - Name = "intentView", + Name = "languageCode", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "languageCode", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "languageCode", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "intentView", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "intentView", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1820,17 +1820,6 @@ public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Dia [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } - /// Optional. 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. - [Google.Apis.Util.RequestParameterAttribute("languageCode", Google.Apis.Util.RequestParameterType.Query)] - public virtual string LanguageCode { get; set; } - - /// Optional. The mask to control which fields get updated. - [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] - public virtual object UpdateMask { get; set; } - /// Optional. The resource view to apply to the returned intent. [Google.Apis.Util.RequestParameterAttribute("intentView", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable IntentView { get; set; } @@ -1844,6 +1833,17 @@ public enum IntentViewEnum INTENTVIEWFULL, } + /// Optional. 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. + [Google.Apis.Util.RequestParameterAttribute("languageCode", Google.Apis.Util.RequestParameterType.Query)] + public virtual string LanguageCode { get; set; } + + /// Optional. The mask to control which fields get updated. + [Google.Apis.Util.RequestParameterAttribute("updateMask", Google.Apis.Util.RequestParameterType.Query)] + public virtual object UpdateMask { get; set; } + /// Gets or sets the body of this request. Google.Apis.Dialogflow.v2.Data.GoogleCloudDialogflowV2Intent Body { get; set; } @@ -1884,27 +1884,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/agent/intents/[^/]+$", }); RequestParameters.Add( - "languageCode", new Google.Apis.Discovery.Parameter + "intentView", new Google.Apis.Discovery.Parameter { - Name = "languageCode", + Name = "intentView", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "updateMask", new Google.Apis.Discovery.Parameter + "languageCode", new Google.Apis.Discovery.Parameter { - Name = "updateMask", + Name = "languageCode", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "intentView", new Google.Apis.Discovery.Parameter + "updateMask", new Google.Apis.Discovery.Parameter { - Name = "intentView", + Name = "updateMask", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2572,16 +2572,16 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } - /// Optional. The next_page_token value returned from a previous list - /// request. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// Optional. The maximum number of items to return in a single page. By default 100 /// and at most 1000. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// Optional. The next_page_token value returned from a previous list + /// request. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + ///Gets the method name. public override string MethodName @@ -2616,18 +2616,18 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/agent/sessions/[^/]+$", }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Dialogflow.v2/Google.Apis.Dialogflow.v2.csproj b/Src/Generated/Google.Apis.Dialogflow.v2/Google.Apis.Dialogflow.v2.csproj index 7f5d6e9152..a6714dfafe 100644 --- a/Src/Generated/Google.Apis.Dialogflow.v2/Google.Apis.Dialogflow.v2.csproj +++ b/Src/Generated/Google.Apis.Dialogflow.v2/Google.Apis.Dialogflow.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.Dialogflow.v2 Client Library - 1.33.0.1219 + 1.33.1.1219 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/dialogflow/v2 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Dialogflow.v2beta1/Google.Apis.Dialogflow.v2beta1.cs b/Src/Generated/Google.Apis.Dialogflow.v2beta1/Google.Apis.Dialogflow.v2beta1.cs index 52e919d35e..e4560cc355 100644 --- a/Src/Generated/Google.Apis.Dialogflow.v2beta1/Google.Apis.Dialogflow.v2beta1.cs +++ b/Src/Generated/Google.Apis.Dialogflow.v2beta1/Google.Apis.Dialogflow.v2beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -1053,6 +1053,11 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } + /// Optional. The maximum number of items to return in a single page. By default 100 and at + /// most 1000. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + /// Optional. 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 @@ -1064,11 +1069,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } - /// Optional. The maximum number of items to return in a single page. By default 100 and at - /// most 1000. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - ///Gets the method name. public override string MethodName @@ -1103,27 +1103,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/agent$", }); RequestParameters.Add( - "languageCode", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "languageCode", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "languageCode", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "languageCode", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2659,6 +2659,13 @@ public GetRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } + /// Optional. 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. + [Google.Apis.Util.RequestParameterAttribute("languageCode", Google.Apis.Util.RequestParameterType.Query)] + public virtual string LanguageCode { get; set; } + /// Optional. The resource view to apply to the returned intent. [Google.Apis.Util.RequestParameterAttribute("intentView", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable IntentView { get; set; } @@ -2672,13 +2679,6 @@ public enum IntentViewEnum INTENTVIEWFULL, } - /// Optional. 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. - [Google.Apis.Util.RequestParameterAttribute("languageCode", Google.Apis.Util.RequestParameterType.Query)] - public virtual string LanguageCode { get; set; } - ///Gets the method name. public override string MethodName @@ -2713,18 +2713,18 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/agent/intents/[^/]+$", }); RequestParameters.Add( - "intentView", new Google.Apis.Discovery.Parameter + "languageCode", new Google.Apis.Discovery.Parameter { - Name = "intentView", + Name = "languageCode", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "languageCode", new Google.Apis.Discovery.Parameter + "intentView", new Google.Apis.Discovery.Parameter { - Name = "languageCode", + Name = "intentView", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2757,19 +2757,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } - /// Optional. The resource view to apply to the returned intent. - [Google.Apis.Util.RequestParameterAttribute("intentView", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable IntentView { get; set; } - - /// Optional. The resource view to apply to the returned intent. - public enum IntentViewEnum - { - [Google.Apis.Util.StringValueAttribute("INTENT_VIEW_UNSPECIFIED")] - INTENTVIEWUNSPECIFIED, - [Google.Apis.Util.StringValueAttribute("INTENT_VIEW_FULL")] - INTENTVIEWFULL, - } - /// Optional. 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 @@ -2786,6 +2773,19 @@ public enum IntentViewEnum [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// Optional. The resource view to apply to the returned intent. + [Google.Apis.Util.RequestParameterAttribute("intentView", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable IntentView { get; set; } + + /// Optional. The resource view to apply to the returned intent. + public enum IntentViewEnum + { + [Google.Apis.Util.StringValueAttribute("INTENT_VIEW_UNSPECIFIED")] + INTENTVIEWUNSPECIFIED, + [Google.Apis.Util.StringValueAttribute("INTENT_VIEW_FULL")] + INTENTVIEWFULL, + } + ///Gets the method name. public override string MethodName @@ -2820,36 +2820,36 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/agent$", }); RequestParameters.Add( - "intentView", new Google.Apis.Discovery.Parameter + "languageCode", new Google.Apis.Discovery.Parameter { - Name = "intentView", + Name = "languageCode", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "languageCode", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "languageCode", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "intentView", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "intentView", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Dialogflow.v2beta1/Google.Apis.Dialogflow.v2beta1.csproj b/Src/Generated/Google.Apis.Dialogflow.v2beta1/Google.Apis.Dialogflow.v2beta1.csproj index a2ae4cfc4b..2189cd876f 100644 --- a/Src/Generated/Google.Apis.Dialogflow.v2beta1/Google.Apis.Dialogflow.v2beta1.csproj +++ b/Src/Generated/Google.Apis.Dialogflow.v2beta1/Google.Apis.Dialogflow.v2beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.Dialogflow.v2beta1 Client Library - 1.33.0.1219 + 1.33.1.1219 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/dialogflow/v2beta1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Digitalassetlinks.v1/Google.Apis.Digitalassetlinks.v1.cs b/Src/Generated/Google.Apis.Digitalassetlinks.v1/Google.Apis.Digitalassetlinks.v1.cs index 8cf6e37f87..120be51c28 100644 --- a/Src/Generated/Google.Apis.Digitalassetlinks.v1/Google.Apis.Digitalassetlinks.v1.cs +++ b/Src/Generated/Google.Apis.Digitalassetlinks.v1/Google.Apis.Digitalassetlinks.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -684,6 +684,39 @@ public ListRequest(Google.Apis.Services.IClientService service) } + /// Web assets are identified by a URL that contains only the scheme, hostname and port parts. The + /// format is + /// + /// http[s]://[:] + /// + /// Hostnames must be fully qualified: they must end in a single period ("`.`"). + /// + /// Only the schemes "http" and "https" are currently allowed. + /// + /// Port numbers are given as a decimal number, and they must be omitted if the standard port numbers are + /// used: 80 for http and 443 for https. + /// + /// We call this limited URL the "site". All URLs that share the same scheme, hostname and port are + /// considered to be a part of the site and thus belong to the web asset. + /// + /// Example: the asset with the site `https://www.google.com` contains all these URLs: + /// + /// * `https://www.google.com/` * `https://www.google.com:443/` * `https://www.google.com/foo` * + /// `https://www.google.com/foo?bar` * `https://www.google.com/foo#bar` * + /// `https://user@password:www.google.com/` + /// + /// But it does not contain these URLs: + /// + /// * `http://www.google.com/` (wrong scheme) * `https://google.com/` (hostname does not + /// match) * `https://www.google.com:444/` (port does not match) REQUIRED + [Google.Apis.Util.RequestParameterAttribute("source.web.site", Google.Apis.Util.RequestParameterType.Query)] + public virtual string SourceWebSite { get; set; } + + /// Android App assets are naturally identified by their Java package name. For example, the Google + /// Maps app uses the package name `com.google.android.apps.maps`. REQUIRED + [Google.Apis.Util.RequestParameterAttribute("source.androidApp.packageName", Google.Apis.Util.RequestParameterType.Query)] + public virtual string SourceAndroidAppPackageName { get; set; } + /// The uppercase SHA-265 fingerprint of the certificate. From the PEM certificate, it can be /// acquired like this: /// @@ -719,39 +752,6 @@ public ListRequest(Google.Apis.Services.IClientService service) [Google.Apis.Util.RequestParameterAttribute("relation", Google.Apis.Util.RequestParameterType.Query)] public virtual string Relation { get; set; } - /// Web assets are identified by a URL that contains only the scheme, hostname and port parts. The - /// format is - /// - /// http[s]://[:] - /// - /// Hostnames must be fully qualified: they must end in a single period ("`.`"). - /// - /// Only the schemes "http" and "https" are currently allowed. - /// - /// Port numbers are given as a decimal number, and they must be omitted if the standard port numbers are - /// used: 80 for http and 443 for https. - /// - /// We call this limited URL the "site". All URLs that share the same scheme, hostname and port are - /// considered to be a part of the site and thus belong to the web asset. - /// - /// Example: the asset with the site `https://www.google.com` contains all these URLs: - /// - /// * `https://www.google.com/` * `https://www.google.com:443/` * `https://www.google.com/foo` * - /// `https://www.google.com/foo?bar` * `https://www.google.com/foo#bar` * - /// `https://user@password:www.google.com/` - /// - /// But it does not contain these URLs: - /// - /// * `http://www.google.com/` (wrong scheme) * `https://google.com/` (hostname does not - /// match) * `https://www.google.com:444/` (port does not match) REQUIRED - [Google.Apis.Util.RequestParameterAttribute("source.web.site", Google.Apis.Util.RequestParameterType.Query)] - public virtual string SourceWebSite { get; set; } - - /// Android App assets are naturally identified by their Java package name. For example, the Google - /// Maps app uses the package name `com.google.android.apps.maps`. REQUIRED - [Google.Apis.Util.RequestParameterAttribute("source.androidApp.packageName", Google.Apis.Util.RequestParameterType.Query)] - public virtual string SourceAndroidAppPackageName { get; set; } - ///Gets the method name. public override string MethodName @@ -777,36 +777,36 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "source.androidApp.certificate.sha256Fingerprint", new Google.Apis.Discovery.Parameter + "source.web.site", new Google.Apis.Discovery.Parameter { - Name = "source.androidApp.certificate.sha256Fingerprint", + Name = "source.web.site", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "relation", new Google.Apis.Discovery.Parameter + "source.androidApp.packageName", new Google.Apis.Discovery.Parameter { - Name = "relation", + Name = "source.androidApp.packageName", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "source.web.site", new Google.Apis.Discovery.Parameter + "source.androidApp.certificate.sha256Fingerprint", new Google.Apis.Discovery.Parameter { - Name = "source.web.site", + Name = "source.androidApp.certificate.sha256Fingerprint", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "source.androidApp.packageName", new Google.Apis.Discovery.Parameter + "relation", new Google.Apis.Discovery.Parameter { - Name = "source.androidApp.packageName", + Name = "relation", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Digitalassetlinks.v1/Google.Apis.Digitalassetlinks.v1.csproj b/Src/Generated/Google.Apis.Digitalassetlinks.v1/Google.Apis.Digitalassetlinks.v1.csproj index fce4dbcd92..b8aa33d94c 100644 --- a/Src/Generated/Google.Apis.Digitalassetlinks.v1/Google.Apis.Digitalassetlinks.v1.csproj +++ b/Src/Generated/Google.Apis.Digitalassetlinks.v1/Google.Apis.Digitalassetlinks.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Digitalassetlinks.v1 Client Library - 1.33.0.1222 + 1.33.1.1222 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/digitalassetlinks/v1 @@ -57,7 +58,7 @@ - + @@ -71,7 +72,7 @@ - + diff --git a/Src/Generated/Google.Apis.Discovery.v1/Google.Apis.Discovery.v1.cs b/Src/Generated/Google.Apis.Discovery.v1/Google.Apis.Discovery.v1.cs index 718f49169a..c23feb7840 100644 --- a/Src/Generated/Google.Apis.Discovery.v1/Google.Apis.Discovery.v1.cs +++ b/Src/Generated/Google.Apis.Discovery.v1/Google.Apis.Discovery.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Discovery.v1/Google.Apis.Discovery.v1.csproj b/Src/Generated/Google.Apis.Discovery.v1/Google.Apis.Discovery.v1.csproj index ae7f9e68b6..f1f0c01561 100644 --- a/Src/Generated/Google.Apis.Discovery.v1/Google.Apis.Discovery.v1.csproj +++ b/Src/Generated/Google.Apis.Discovery.v1/Google.Apis.Discovery.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Discovery.v1 Client Library - 1.33.0.0 + 1.33.1.0 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/discovery/v1 @@ -57,7 +58,7 @@ - + @@ -71,7 +72,7 @@ - + diff --git a/Src/Generated/Google.Apis.Dns.v1/Google.Apis.Dns.v1.cs b/Src/Generated/Google.Apis.Dns.v1/Google.Apis.Dns.v1.cs index c54f569f20..1a4e74760f 100644 --- a/Src/Generated/Google.Apis.Dns.v1/Google.Apis.Dns.v1.cs +++ b/Src/Generated/Google.Apis.Dns.v1/Google.Apis.Dns.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Dns.v1/Google.Apis.Dns.v1.csproj b/Src/Generated/Google.Apis.Dns.v1/Google.Apis.Dns.v1.csproj index a2725e5cec..0e1ed97cdf 100644 --- a/Src/Generated/Google.Apis.Dns.v1/Google.Apis.Dns.v1.csproj +++ b/Src/Generated/Google.Apis.Dns.v1/Google.Apis.Dns.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Dns.v1 Client Library - 1.33.0.1212 + 1.33.1.1212 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/dns/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Dns.v1beta2/Google.Apis.Dns.v1beta2.cs b/Src/Generated/Google.Apis.Dns.v1beta2/Google.Apis.Dns.v1beta2.cs index 1d4ffb861e..66a55fc13d 100644 --- a/Src/Generated/Google.Apis.Dns.v1beta2/Google.Apis.Dns.v1beta2.cs +++ b/Src/Generated/Google.Apis.Dns.v1beta2/Google.Apis.Dns.v1beta2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Dns.v1beta2/Google.Apis.Dns.v1beta2.csproj b/Src/Generated/Google.Apis.Dns.v1beta2/Google.Apis.Dns.v1beta2.csproj index 230196166b..fc407cb211 100644 --- a/Src/Generated/Google.Apis.Dns.v1beta2/Google.Apis.Dns.v1beta2.csproj +++ b/Src/Generated/Google.Apis.Dns.v1beta2/Google.Apis.Dns.v1beta2.csproj @@ -3,7 +3,7 @@ Google.Apis.Dns.v1beta2 Client Library - 1.33.0.1212 + 1.33.1.1212 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/dns/v1beta2 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Dns.v2beta1/Google.Apis.Dns.v2beta1.cs b/Src/Generated/Google.Apis.Dns.v2beta1/Google.Apis.Dns.v2beta1.cs index 90065950fe..c8d4bdbe7a 100644 --- a/Src/Generated/Google.Apis.Dns.v2beta1/Google.Apis.Dns.v2beta1.cs +++ b/Src/Generated/Google.Apis.Dns.v2beta1/Google.Apis.Dns.v2beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Dns.v2beta1/Google.Apis.Dns.v2beta1.csproj b/Src/Generated/Google.Apis.Dns.v2beta1/Google.Apis.Dns.v2beta1.csproj index 6ce66482a3..24d2ca7dc1 100644 --- a/Src/Generated/Google.Apis.Dns.v2beta1/Google.Apis.Dns.v2beta1.csproj +++ b/Src/Generated/Google.Apis.Dns.v2beta1/Google.Apis.Dns.v2beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.Dns.v2beta1 Client Library - 1.33.0.1212 + 1.33.1.1212 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/dns/v2beta1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.DoubleClickBidManager.v1/Google.Apis.DoubleClickBidManager.v1.cs b/Src/Generated/Google.Apis.DoubleClickBidManager.v1/Google.Apis.DoubleClickBidManager.v1.cs index b385291b8f..c03ef4adf9 100644 --- a/Src/Generated/Google.Apis.DoubleClickBidManager.v1/Google.Apis.DoubleClickBidManager.v1.cs +++ b/Src/Generated/Google.Apis.DoubleClickBidManager.v1/Google.Apis.DoubleClickBidManager.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.DoubleClickBidManager.v1/Google.Apis.DoubleClickBidManager.v1.csproj b/Src/Generated/Google.Apis.DoubleClickBidManager.v1/Google.Apis.DoubleClickBidManager.v1.csproj index df0f6125b6..24442e70f0 100644 --- a/Src/Generated/Google.Apis.DoubleClickBidManager.v1/Google.Apis.DoubleClickBidManager.v1.csproj +++ b/Src/Generated/Google.Apis.DoubleClickBidManager.v1/Google.Apis.DoubleClickBidManager.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.DoubleClickBidManager.v1 Client Library - 1.33.0.1141 + 1.33.1.1141 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/doubleclickbidmanager/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Doubleclicksearch.v2/Google.Apis.Doubleclicksearch.v2.cs b/Src/Generated/Google.Apis.Doubleclicksearch.v2/Google.Apis.Doubleclicksearch.v2.cs index bc482fea72..df4aef8f48 100644 --- a/Src/Generated/Google.Apis.Doubleclicksearch.v2/Google.Apis.Doubleclicksearch.v2.cs +++ b/Src/Generated/Google.Apis.Doubleclicksearch.v2/Google.Apis.Doubleclicksearch.v2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Doubleclicksearch.v2/Google.Apis.Doubleclicksearch.v2.csproj b/Src/Generated/Google.Apis.Doubleclicksearch.v2/Google.Apis.Doubleclicksearch.v2.csproj index 5d8b408a64..8a902bf781 100644 --- a/Src/Generated/Google.Apis.Doubleclicksearch.v2/Google.Apis.Doubleclicksearch.v2.csproj +++ b/Src/Generated/Google.Apis.Doubleclicksearch.v2/Google.Apis.Doubleclicksearch.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.Doubleclicksearch.v2 Client Library - 1.33.0.1217 + 1.33.1.1217 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/doubleclicksearch/v2 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Drive.v2/Google.Apis.Drive.v2.cs b/Src/Generated/Google.Apis.Drive.v2/Google.Apis.Drive.v2.cs index f085585990..ba42ee6dab 100644 --- a/Src/Generated/Google.Apis.Drive.v2/Google.Apis.Drive.v2.cs +++ b/Src/Generated/Google.Apis.Drive.v2/Google.Apis.Drive.v2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Drive API * API Versionv2 - * API Rev20180426 (1211) + * API Rev20180504 (1219) * API Docs * * https://developers.google.com/drive/ diff --git a/Src/Generated/Google.Apis.Drive.v2/Google.Apis.Drive.v2.csproj b/Src/Generated/Google.Apis.Drive.v2/Google.Apis.Drive.v2.csproj index e55c1ed276..a6b1556d4a 100644 --- a/Src/Generated/Google.Apis.Drive.v2/Google.Apis.Drive.v2.csproj +++ b/Src/Generated/Google.Apis.Drive.v2/Google.Apis.Drive.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.Drive.v2 Client Library - 1.33.0.1211 + 1.33.1.1219 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/drive/v2 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Drive.v3/Google.Apis.Drive.v3.cs b/Src/Generated/Google.Apis.Drive.v3/Google.Apis.Drive.v3.cs index 431c56b3a6..9f355db74d 100644 --- a/Src/Generated/Google.Apis.Drive.v3/Google.Apis.Drive.v3.cs +++ b/Src/Generated/Google.Apis.Drive.v3/Google.Apis.Drive.v3.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Drive API * API Versionv3 - * API Rev20180426 (1211) + * API Rev20180504 (1219) * API Docs * * https://developers.google.com/drive/ diff --git a/Src/Generated/Google.Apis.Drive.v3/Google.Apis.Drive.v3.csproj b/Src/Generated/Google.Apis.Drive.v3/Google.Apis.Drive.v3.csproj index 1a6ec22cf0..a52b1e66ad 100644 --- a/Src/Generated/Google.Apis.Drive.v3/Google.Apis.Drive.v3.csproj +++ b/Src/Generated/Google.Apis.Drive.v3/Google.Apis.Drive.v3.csproj @@ -3,7 +3,7 @@ Google.Apis.Drive.v3 Client Library - 1.33.0.1211 + 1.33.1.1219 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/drive/v3 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.FirebaseDynamicLinks.v1/Google.Apis.FirebaseDynamicLinks.v1.cs b/Src/Generated/Google.Apis.FirebaseDynamicLinks.v1/Google.Apis.FirebaseDynamicLinks.v1.cs index 4f9b6e2f18..2c591fa2a4 100644 --- a/Src/Generated/Google.Apis.FirebaseDynamicLinks.v1/Google.Apis.FirebaseDynamicLinks.v1.cs +++ b/Src/Generated/Google.Apis.FirebaseDynamicLinks.v1/Google.Apis.FirebaseDynamicLinks.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.FirebaseDynamicLinks.v1/Google.Apis.FirebaseDynamicLinks.v1.csproj b/Src/Generated/Google.Apis.FirebaseDynamicLinks.v1/Google.Apis.FirebaseDynamicLinks.v1.csproj index c3f02dde3e..985ffef816 100644 --- a/Src/Generated/Google.Apis.FirebaseDynamicLinks.v1/Google.Apis.FirebaseDynamicLinks.v1.csproj +++ b/Src/Generated/Google.Apis.FirebaseDynamicLinks.v1/Google.Apis.FirebaseDynamicLinks.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.FirebaseDynamicLinks.v1 Client Library - 1.33.0.1222 + 1.33.1.1222 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/firebasedynamiclinks/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.FirebaseRules.v1/Google.Apis.FirebaseRules.v1.cs b/Src/Generated/Google.Apis.FirebaseRules.v1/Google.Apis.FirebaseRules.v1.cs index 233b41b292..e5e99b003f 100644 --- a/Src/Generated/Google.Apis.FirebaseRules.v1/Google.Apis.FirebaseRules.v1.cs +++ b/Src/Generated/Google.Apis.FirebaseRules.v1/Google.Apis.FirebaseRules.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -1181,6 +1181,12 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } + /// Page size to load. Maximum of 100. Defaults to 10. Note: `page_size` is just a hint and the + /// service may choose to load less than `page_size` due to the size of the output. To traverse all of + /// the releases, caller should iterate until the `page_token` is empty. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + /// `Ruleset` filter. The list method supports filters with restrictions on `Ruleset.name`. /// /// Filters on `Ruleset.create_time` should use the `date` function which parses strings that conform to @@ -1194,12 +1200,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } - /// Page size to load. Maximum of 100. Defaults to 10. Note: `page_size` is just a hint and the - /// service may choose to load less than `page_size` due to the size of the output. To traverse all of - /// the releases, caller should iterate until the `page_token` is empty. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - ///Gets the method name. public override string MethodName @@ -1234,27 +1234,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+$", }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.FirebaseRules.v1/Google.Apis.FirebaseRules.v1.csproj b/Src/Generated/Google.Apis.FirebaseRules.v1/Google.Apis.FirebaseRules.v1.csproj index b5356ab6c3..8fda613c45 100644 --- a/Src/Generated/Google.Apis.FirebaseRules.v1/Google.Apis.FirebaseRules.v1.csproj +++ b/Src/Generated/Google.Apis.FirebaseRules.v1/Google.Apis.FirebaseRules.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.FirebaseRules.v1 Client Library - 1.33.0.1208 + 1.33.1.1208 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/firebaserules/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Firestore.v1beta1/Google.Apis.Firestore.v1beta1.cs b/Src/Generated/Google.Apis.Firestore.v1beta1/Google.Apis.Firestore.v1beta1.cs index 644242dc75..9862f8638f 100644 --- a/Src/Generated/Google.Apis.Firestore.v1beta1/Google.Apis.Firestore.v1beta1.cs +++ b/Src/Generated/Google.Apis.Firestore.v1beta1/Google.Apis.Firestore.v1beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -765,16 +765,16 @@ public DeleteRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } - /// When set to `true`, the target document must exist. When set to `false`, the target - /// document must not exist. - [Google.Apis.Util.RequestParameterAttribute("currentDocument.exists", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable CurrentDocumentExists { get; set; } - /// When set, the target document must exist and have been last updated at that /// time. [Google.Apis.Util.RequestParameterAttribute("currentDocument.updateTime", Google.Apis.Util.RequestParameterType.Query)] public virtual object CurrentDocumentUpdateTime { get; set; } + /// When set to `true`, the target document must exist. When set to `false`, the target + /// document must not exist. + [Google.Apis.Util.RequestParameterAttribute("currentDocument.exists", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable CurrentDocumentExists { get; set; } + ///Gets the method name. public override string MethodName @@ -809,18 +809,18 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/databases/[^/]+/documents/[^/]+/.+$", }); RequestParameters.Add( - "currentDocument.exists", new Google.Apis.Discovery.Parameter + "currentDocument.updateTime", new Google.Apis.Discovery.Parameter { - Name = "currentDocument.exists", + Name = "currentDocument.updateTime", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "currentDocument.updateTime", new Google.Apis.Discovery.Parameter + "currentDocument.exists", new Google.Apis.Discovery.Parameter { - Name = "currentDocument.updateTime", + Name = "currentDocument.exists", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -855,6 +855,10 @@ public GetRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } + /// Reads the document in a transaction. + [Google.Apis.Util.RequestParameterAttribute("transaction", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Transaction { get; set; } + /// The list of field paths in the mask. See Document.fields for a field path syntax /// reference. [Google.Apis.Util.RequestParameterAttribute("mask.fieldPaths", Google.Apis.Util.RequestParameterType.Query)] @@ -865,10 +869,6 @@ public GetRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("readTime", Google.Apis.Util.RequestParameterType.Query)] public virtual object ReadTime { get; set; } - /// Reads the document in a transaction. - [Google.Apis.Util.RequestParameterAttribute("transaction", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Transaction { get; set; } - ///Gets the method name. public override string MethodName @@ -903,27 +903,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/databases/[^/]+/documents/[^/]+/.+$", }); RequestParameters.Add( - "mask.fieldPaths", new Google.Apis.Discovery.Parameter + "transaction", new Google.Apis.Discovery.Parameter { - Name = "mask.fieldPaths", + Name = "transaction", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "readTime", new Google.Apis.Discovery.Parameter + "mask.fieldPaths", new Google.Apis.Discovery.Parameter { - Name = "readTime", + Name = "mask.fieldPaths", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "transaction", new Google.Apis.Discovery.Parameter + "readTime", new Google.Apis.Discovery.Parameter { - Name = "transaction", + Name = "readTime", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -972,6 +972,14 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent, s [Google.Apis.Util.RequestParameterAttribute("collectionId", Google.Apis.Util.RequestParameterType.Path)] public virtual string CollectionId { get; private set; } + /// The maximum number of documents to return. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + + /// Reads documents in a transaction. + [Google.Apis.Util.RequestParameterAttribute("transaction", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Transaction { get; set; } + /// The order to sort results by. For example: `priority desc, name`. [Google.Apis.Util.RequestParameterAttribute("orderBy", Google.Apis.Util.RequestParameterType.Query)] public virtual string OrderBy { get; set; } @@ -989,22 +997,14 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent, s [Google.Apis.Util.RequestParameterAttribute("showMissing", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable ShowMissing { get; set; } - /// The `next_page_token` value returned from a previous List request, if any. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// The list of field paths in the mask. See Document.fields for a field path syntax /// reference. [Google.Apis.Util.RequestParameterAttribute("mask.fieldPaths", Google.Apis.Util.RequestParameterType.Query)] public virtual Google.Apis.Util.Repeatable MaskFieldPaths { get; set; } - /// The maximum number of documents to return. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - - /// Reads documents in a transaction. - [Google.Apis.Util.RequestParameterAttribute("transaction", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Transaction { get; set; } + /// The `next_page_token` value returned from a previous List request, if any. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } ///Gets the method name. @@ -1049,63 +1049,63 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "orderBy", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "orderBy", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "readTime", new Google.Apis.Discovery.Parameter + "transaction", new Google.Apis.Discovery.Parameter { - Name = "readTime", + Name = "transaction", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "showMissing", new Google.Apis.Discovery.Parameter + "orderBy", new Google.Apis.Discovery.Parameter { - Name = "showMissing", + Name = "orderBy", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "readTime", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "readTime", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "mask.fieldPaths", new Google.Apis.Discovery.Parameter + "showMissing", new Google.Apis.Discovery.Parameter { - Name = "mask.fieldPaths", + Name = "showMissing", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "mask.fieldPaths", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "mask.fieldPaths", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "transaction", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "transaction", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1284,6 +1284,11 @@ public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Fir [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } + /// When set, the target document must exist and have been last updated at that + /// time. + [Google.Apis.Util.RequestParameterAttribute("currentDocument.updateTime", Google.Apis.Util.RequestParameterType.Query)] + public virtual object CurrentDocumentUpdateTime { get; set; } + /// When set to `true`, the target document must exist. When set to `false`, the target /// document must not exist. [Google.Apis.Util.RequestParameterAttribute("currentDocument.exists", Google.Apis.Util.RequestParameterType.Query)] @@ -1299,11 +1304,6 @@ public PatchRequest(Google.Apis.Services.IClientService service, Google.Apis.Fir [Google.Apis.Util.RequestParameterAttribute("mask.fieldPaths", Google.Apis.Util.RequestParameterType.Query)] public virtual Google.Apis.Util.Repeatable MaskFieldPaths { get; set; } - /// When set, the target document must exist and have been last updated at that - /// time. - [Google.Apis.Util.RequestParameterAttribute("currentDocument.updateTime", Google.Apis.Util.RequestParameterType.Query)] - public virtual object CurrentDocumentUpdateTime { get; set; } - /// Gets or sets the body of this request. Google.Apis.Firestore.v1beta1.Data.Document Body { get; set; } @@ -1344,36 +1344,36 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/databases/[^/]+/documents/[^/]+/.+$", }); RequestParameters.Add( - "currentDocument.exists", new Google.Apis.Discovery.Parameter + "currentDocument.updateTime", new Google.Apis.Discovery.Parameter { - Name = "currentDocument.exists", + Name = "currentDocument.updateTime", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "updateMask.fieldPaths", new Google.Apis.Discovery.Parameter + "currentDocument.exists", new Google.Apis.Discovery.Parameter { - Name = "updateMask.fieldPaths", + Name = "currentDocument.exists", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "mask.fieldPaths", new Google.Apis.Discovery.Parameter + "updateMask.fieldPaths", new Google.Apis.Discovery.Parameter { - Name = "mask.fieldPaths", + Name = "updateMask.fieldPaths", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "currentDocument.updateTime", new Google.Apis.Discovery.Parameter + "mask.fieldPaths", new Google.Apis.Discovery.Parameter { - Name = "currentDocument.updateTime", + Name = "mask.fieldPaths", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Firestore.v1beta1/Google.Apis.Firestore.v1beta1.csproj b/Src/Generated/Google.Apis.Firestore.v1beta1/Google.Apis.Firestore.v1beta1.csproj index 032595a0a8..fabb33e4bf 100644 --- a/Src/Generated/Google.Apis.Firestore.v1beta1/Google.Apis.Firestore.v1beta1.csproj +++ b/Src/Generated/Google.Apis.Firestore.v1beta1/Google.Apis.Firestore.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.Firestore.v1beta1 Client Library - 1.33.0.1216 + 1.33.1.1216 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/firestore/v1beta1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Fitness.v1/Google.Apis.Fitness.v1.cs b/Src/Generated/Google.Apis.Fitness.v1/Google.Apis.Fitness.v1.cs index 6b1352427e..9fac004da4 100644 --- a/Src/Generated/Google.Apis.Fitness.v1/Google.Apis.Fitness.v1.cs +++ b/Src/Generated/Google.Apis.Fitness.v1/Google.Apis.Fitness.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Fitness.v1/Google.Apis.Fitness.v1.csproj b/Src/Generated/Google.Apis.Fitness.v1/Google.Apis.Fitness.v1.csproj index c1e898b794..2016877d3e 100644 --- a/Src/Generated/Google.Apis.Fitness.v1/Google.Apis.Fitness.v1.csproj +++ b/Src/Generated/Google.Apis.Fitness.v1/Google.Apis.Fitness.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Fitness.v1 Client Library - 1.33.0.995 + 1.33.1.995 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/fitness/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Fusiontables.v1/Google.Apis.Fusiontables.v1.cs b/Src/Generated/Google.Apis.Fusiontables.v1/Google.Apis.Fusiontables.v1.cs index d9de70bb30..f16ecfac99 100644 --- a/Src/Generated/Google.Apis.Fusiontables.v1/Google.Apis.Fusiontables.v1.cs +++ b/Src/Generated/Google.Apis.Fusiontables.v1/Google.Apis.Fusiontables.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Fusiontables.v1/Google.Apis.Fusiontables.v1.csproj b/Src/Generated/Google.Apis.Fusiontables.v1/Google.Apis.Fusiontables.v1.csproj index 82ca9f0cd3..e8933b3c3c 100644 --- a/Src/Generated/Google.Apis.Fusiontables.v1/Google.Apis.Fusiontables.v1.csproj +++ b/Src/Generated/Google.Apis.Fusiontables.v1/Google.Apis.Fusiontables.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Fusiontables.v1 Client Library - 1.33.0.1051 + 1.33.1.1051 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/fusiontables/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Fusiontables.v2/Google.Apis.Fusiontables.v2.cs b/Src/Generated/Google.Apis.Fusiontables.v2/Google.Apis.Fusiontables.v2.cs index ba097ec37e..0fc0b5afec 100644 --- a/Src/Generated/Google.Apis.Fusiontables.v2/Google.Apis.Fusiontables.v2.cs +++ b/Src/Generated/Google.Apis.Fusiontables.v2/Google.Apis.Fusiontables.v2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Fusiontables.v2/Google.Apis.Fusiontables.v2.csproj b/Src/Generated/Google.Apis.Fusiontables.v2/Google.Apis.Fusiontables.v2.csproj index dddef7d409..a56f511be1 100644 --- a/Src/Generated/Google.Apis.Fusiontables.v2/Google.Apis.Fusiontables.v2.csproj +++ b/Src/Generated/Google.Apis.Fusiontables.v2/Google.Apis.Fusiontables.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.Fusiontables.v2 Client Library - 1.33.0.1051 + 1.33.1.1051 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/fusiontables/v2 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Games.v1/Google.Apis.Games.v1.cs b/Src/Generated/Google.Apis.Games.v1/Google.Apis.Games.v1.cs index 1f4fd09dd1..5ed0503ca2 100644 --- a/Src/Generated/Google.Apis.Games.v1/Google.Apis.Games.v1.cs +++ b/Src/Generated/Google.Apis.Games.v1/Google.Apis.Games.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Games.v1/Google.Apis.Games.v1.csproj b/Src/Generated/Google.Apis.Games.v1/Google.Apis.Games.v1.csproj index 4f5715968c..7f2d93b59d 100644 --- a/Src/Generated/Google.Apis.Games.v1/Google.Apis.Games.v1.csproj +++ b/Src/Generated/Google.Apis.Games.v1/Google.Apis.Games.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Games.v1 Client Library - 1.33.0.1219 + 1.33.1.1219 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/games/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.GamesConfiguration.v1configuration/Google.Apis.GamesConfiguration.v1configuration.cs b/Src/Generated/Google.Apis.GamesConfiguration.v1configuration/Google.Apis.GamesConfiguration.v1configuration.cs index 0c9ed481a8..6355e074c5 100644 --- a/Src/Generated/Google.Apis.GamesConfiguration.v1configuration/Google.Apis.GamesConfiguration.v1configuration.cs +++ b/Src/Generated/Google.Apis.GamesConfiguration.v1configuration/Google.Apis.GamesConfiguration.v1configuration.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.GamesConfiguration.v1configuration/Google.Apis.GamesConfiguration.v1configuration.csproj b/Src/Generated/Google.Apis.GamesConfiguration.v1configuration/Google.Apis.GamesConfiguration.v1configuration.csproj index ff6699a55d..7e613c391d 100644 --- a/Src/Generated/Google.Apis.GamesConfiguration.v1configuration/Google.Apis.GamesConfiguration.v1configuration.csproj +++ b/Src/Generated/Google.Apis.GamesConfiguration.v1configuration/Google.Apis.GamesConfiguration.v1configuration.csproj @@ -3,7 +3,7 @@ Google.Apis.GamesConfiguration.v1configuration Client Library - 1.33.0.1219 + 1.33.1.1219 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/gamesConfiguration/v1configuration @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.GamesManagement.v1management/Google.Apis.GamesManagement.v1management.cs b/Src/Generated/Google.Apis.GamesManagement.v1management/Google.Apis.GamesManagement.v1management.cs index 65fc6057d2..499de59a64 100644 --- a/Src/Generated/Google.Apis.GamesManagement.v1management/Google.Apis.GamesManagement.v1management.cs +++ b/Src/Generated/Google.Apis.GamesManagement.v1management/Google.Apis.GamesManagement.v1management.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.GamesManagement.v1management/Google.Apis.GamesManagement.v1management.csproj b/Src/Generated/Google.Apis.GamesManagement.v1management/Google.Apis.GamesManagement.v1management.csproj index 0fe8d4e595..21176deb90 100644 --- a/Src/Generated/Google.Apis.GamesManagement.v1management/Google.Apis.GamesManagement.v1management.csproj +++ b/Src/Generated/Google.Apis.GamesManagement.v1management/Google.Apis.GamesManagement.v1management.csproj @@ -3,7 +3,7 @@ Google.Apis.GamesManagement.v1management Client Library - 1.33.0.1219 + 1.33.1.1219 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/gamesManagement/v1management @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Genomics.v1/Google.Apis.Genomics.v1.cs b/Src/Generated/Google.Apis.Genomics.v1/Google.Apis.Genomics.v1.cs index 8d7a644ad2..96cfcdadcb 100644 --- a/Src/Generated/Google.Apis.Genomics.v1/Google.Apis.Genomics.v1.cs +++ b/Src/Generated/Google.Apis.Genomics.v1/Google.Apis.Genomics.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -1845,10 +1845,6 @@ public ListRequest(Google.Apis.Services.IClientService service) } - /// Required. The Google Cloud project ID to list datasets for. - [Google.Apis.Util.RequestParameterAttribute("projectId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string ProjectId { get; set; } - /// 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. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] @@ -1859,6 +1855,10 @@ public ListRequest(Google.Apis.Services.IClientService service) [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// Required. The Google Cloud project ID to list datasets for. + [Google.Apis.Util.RequestParameterAttribute("projectId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string ProjectId { get; set; } + ///Gets the method name. public override string MethodName @@ -1884,27 +1884,27 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "projectId", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "projectId", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "projectId", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "projectId", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2563,12 +2563,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string readGroup [Google.Apis.Util.RequestParameterAttribute("readGroupSetId", Google.Apis.Util.RequestParameterType.Path)] public virtual string ReadGroupSetId { get; private set; } - /// 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. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// The maximum number of results to return in a single page. If unspecified, defaults to 1024. /// The maximum value is 2048. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] @@ -2598,6 +2592,12 @@ public ListRequest(Google.Apis.Services.IClientService service, string readGroup [Google.Apis.Util.RequestParameterAttribute("end", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable End { get; set; } + /// 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. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + ///Gets the method name. public override string MethodName @@ -2631,15 +2631,6 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter - { - Name = "pageToken", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); RequestParameters.Add( "pageSize", new Google.Apis.Discovery.Parameter { @@ -2685,6 +2676,15 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); + RequestParameters.Add( + "pageToken", new Google.Apis.Discovery.Parameter + { + Name = "pageToken", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); } } diff --git a/Src/Generated/Google.Apis.Genomics.v1/Google.Apis.Genomics.v1.csproj b/Src/Generated/Google.Apis.Genomics.v1/Google.Apis.Genomics.v1.csproj index acf7352127..2082e6bedc 100644 --- a/Src/Generated/Google.Apis.Genomics.v1/Google.Apis.Genomics.v1.csproj +++ b/Src/Generated/Google.Apis.Genomics.v1/Google.Apis.Genomics.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Genomics.v1 Client Library - 1.33.0.1220 + 1.33.1.1220 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/genomics/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Genomics.v1alpha2/Google.Apis.Genomics.v1alpha2.cs b/Src/Generated/Google.Apis.Genomics.v1alpha2/Google.Apis.Genomics.v1alpha2.cs index 2aae691007..6ea12c3d6e 100644 --- a/Src/Generated/Google.Apis.Genomics.v1alpha2/Google.Apis.Genomics.v1alpha2.cs +++ b/Src/Generated/Google.Apis.Genomics.v1alpha2/Google.Apis.Genomics.v1alpha2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -530,6 +530,15 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } + /// The standard list page token. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// The maximum number of results to return. If unspecified, defaults to 256. The maximum value is + /// 2048. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + /// 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 @@ -552,15 +561,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] public virtual string Filter { get; set; } - /// The standard list page token. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - - /// The maximum number of results to return. If unspecified, defaults to 256. The maximum value is - /// 2048. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - ///Gets the method name. public override string MethodName @@ -595,27 +595,27 @@ protected override void InitParameters() Pattern = @"^operations$", }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Genomics.v1alpha2/Google.Apis.Genomics.v1alpha2.csproj b/Src/Generated/Google.Apis.Genomics.v1alpha2/Google.Apis.Genomics.v1alpha2.csproj index addccea758..9c02d70d87 100644 --- a/Src/Generated/Google.Apis.Genomics.v1alpha2/Google.Apis.Genomics.v1alpha2.csproj +++ b/Src/Generated/Google.Apis.Genomics.v1alpha2/Google.Apis.Genomics.v1alpha2.csproj @@ -3,7 +3,7 @@ Google.Apis.Genomics.v1alpha2 Client Library - 1.33.0.1220 + 1.33.1.1220 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/genomics/v1alpha2 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Genomics.v2alpha1/Google.Apis.Genomics.v2alpha1.cs b/Src/Generated/Google.Apis.Genomics.v2alpha1/Google.Apis.Genomics.v2alpha1.cs index cac305f781..1f5d8ecf68 100644 --- a/Src/Generated/Google.Apis.Genomics.v2alpha1/Google.Apis.Genomics.v2alpha1.cs +++ b/Src/Generated/Google.Apis.Genomics.v2alpha1/Google.Apis.Genomics.v2alpha1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Genomics.v2alpha1/Google.Apis.Genomics.v2alpha1.csproj b/Src/Generated/Google.Apis.Genomics.v2alpha1/Google.Apis.Genomics.v2alpha1.csproj index d1b83e5bfa..55f722deb8 100644 --- a/Src/Generated/Google.Apis.Genomics.v2alpha1/Google.Apis.Genomics.v2alpha1.csproj +++ b/Src/Generated/Google.Apis.Genomics.v2alpha1/Google.Apis.Genomics.v2alpha1.csproj @@ -3,7 +3,7 @@ Google.Apis.Genomics.v2alpha1 Client Library - 1.33.0.1220 + 1.33.1.1220 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/genomics/v2alpha1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Gmail.v1/Google.Apis.Gmail.v1.cs b/Src/Generated/Google.Apis.Gmail.v1/Google.Apis.Gmail.v1.cs index 328a959a7c..5ea2877d5b 100644 --- a/Src/Generated/Google.Apis.Gmail.v1/Google.Apis.Gmail.v1.cs +++ b/Src/Generated/Google.Apis.Gmail.v1/Google.Apis.Gmail.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Gmail.v1/Google.Apis.Gmail.v1.csproj b/Src/Generated/Google.Apis.Gmail.v1/Google.Apis.Gmail.v1.csproj index ba4b9b31b2..5f5638ab85 100644 --- a/Src/Generated/Google.Apis.Gmail.v1/Google.Apis.Gmail.v1.csproj +++ b/Src/Generated/Google.Apis.Gmail.v1/Google.Apis.Gmail.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Gmail.v1 Client Library - 1.33.0.1214 + 1.33.1.1214 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/gmail/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.GroupsMigration.v1/Google.Apis.GroupsMigration.v1.cs b/Src/Generated/Google.Apis.GroupsMigration.v1/Google.Apis.GroupsMigration.v1.cs index ddc09a1e4a..6d74539a37 100644 --- a/Src/Generated/Google.Apis.GroupsMigration.v1/Google.Apis.GroupsMigration.v1.cs +++ b/Src/Generated/Google.Apis.GroupsMigration.v1/Google.Apis.GroupsMigration.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.GroupsMigration.v1/Google.Apis.GroupsMigration.v1.csproj b/Src/Generated/Google.Apis.GroupsMigration.v1/Google.Apis.GroupsMigration.v1.csproj index 8ddcc64cc5..c8465e2ace 100644 --- a/Src/Generated/Google.Apis.GroupsMigration.v1/Google.Apis.GroupsMigration.v1.csproj +++ b/Src/Generated/Google.Apis.GroupsMigration.v1/Google.Apis.GroupsMigration.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.GroupsMigration.v1 Client Library - 1.33.0.888 + 1.33.1.888 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/groupsmigration/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Groupssettings.v1/Google.Apis.Groupssettings.v1.cs b/Src/Generated/Google.Apis.Groupssettings.v1/Google.Apis.Groupssettings.v1.cs index 8fe94a8717..fea0ec278a 100644 --- a/Src/Generated/Google.Apis.Groupssettings.v1/Google.Apis.Groupssettings.v1.cs +++ b/Src/Generated/Google.Apis.Groupssettings.v1/Google.Apis.Groupssettings.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Groupssettings.v1/Google.Apis.Groupssettings.v1.csproj b/Src/Generated/Google.Apis.Groupssettings.v1/Google.Apis.Groupssettings.v1.csproj index 1455512661..6f1baf452c 100644 --- a/Src/Generated/Google.Apis.Groupssettings.v1/Google.Apis.Groupssettings.v1.csproj +++ b/Src/Generated/Google.Apis.Groupssettings.v1/Google.Apis.Groupssettings.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Groupssettings.v1 Client Library - 1.33.0.1189 + 1.33.1.1189 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/groupssettings/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.HangoutsChat.v1/Google.Apis.HangoutsChat.v1.cs b/Src/Generated/Google.Apis.HangoutsChat.v1/Google.Apis.HangoutsChat.v1.cs index c38671f71b..3f510bc32f 100644 --- a/Src/Generated/Google.Apis.HangoutsChat.v1/Google.Apis.HangoutsChat.v1.cs +++ b/Src/Generated/Google.Apis.HangoutsChat.v1/Google.Apis.HangoutsChat.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.HangoutsChat.v1/Google.Apis.HangoutsChat.v1.csproj b/Src/Generated/Google.Apis.HangoutsChat.v1/Google.Apis.HangoutsChat.v1.csproj index d9df9f3650..5b1df3d528 100644 --- a/Src/Generated/Google.Apis.HangoutsChat.v1/Google.Apis.HangoutsChat.v1.csproj +++ b/Src/Generated/Google.Apis.HangoutsChat.v1/Google.Apis.HangoutsChat.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.HangoutsChat.v1 Client Library - 1.33.0.1217 + 1.33.1.1217 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/chat/v1 @@ -57,7 +58,7 @@ - + @@ -71,7 +72,7 @@ - + diff --git a/Src/Generated/Google.Apis.Iam.v1/Google.Apis.Iam.v1.cs b/Src/Generated/Google.Apis.Iam.v1/Google.Apis.Iam.v1.cs index d3571ef025..868acf4a64 100644 --- a/Src/Generated/Google.Apis.Iam.v1/Google.Apis.Iam.v1.cs +++ b/Src/Generated/Google.Apis.Iam.v1/Google.Apis.Iam.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -1340,6 +1340,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } + /// Include Roles that have been deleted. + [Google.Apis.Util.RequestParameterAttribute("showDeleted", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable ShowDeleted { get; set; } + /// Optional pagination token returned in an earlier ListRolesResponse. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } @@ -1361,10 +1365,6 @@ public enum ViewEnum FULL, } - /// Include Roles that have been deleted. - [Google.Apis.Util.RequestParameterAttribute("showDeleted", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable ShowDeleted { get; set; } - ///Gets the method name. public override string MethodName @@ -1399,36 +1399,36 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+$", }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "showDeleted", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "showDeleted", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "view", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "view", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "showDeleted", new Google.Apis.Discovery.Parameter + "view", new Google.Apis.Discovery.Parameter { - Name = "showDeleted", + Name = "view", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Iam.v1/Google.Apis.Iam.v1.csproj b/Src/Generated/Google.Apis.Iam.v1/Google.Apis.Iam.v1.csproj index 6bfdc3f199..893e86ad3f 100644 --- a/Src/Generated/Google.Apis.Iam.v1/Google.Apis.Iam.v1.csproj +++ b/Src/Generated/Google.Apis.Iam.v1/Google.Apis.Iam.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Iam.v1 Client Library - 1.33.0.1205 + 1.33.1.1205 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/iam/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Kgsearch.v1/Google.Apis.Kgsearch.v1.cs b/Src/Generated/Google.Apis.Kgsearch.v1/Google.Apis.Kgsearch.v1.cs index 004c73a7c8..aed27af0ac 100644 --- a/Src/Generated/Google.Apis.Kgsearch.v1/Google.Apis.Kgsearch.v1.cs +++ b/Src/Generated/Google.Apis.Kgsearch.v1/Google.Apis.Kgsearch.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Kgsearch.v1/Google.Apis.Kgsearch.v1.csproj b/Src/Generated/Google.Apis.Kgsearch.v1/Google.Apis.Kgsearch.v1.csproj index b25728df0a..60120544b7 100644 --- a/Src/Generated/Google.Apis.Kgsearch.v1/Google.Apis.Kgsearch.v1.csproj +++ b/Src/Generated/Google.Apis.Kgsearch.v1/Google.Apis.Kgsearch.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Kgsearch.v1 Client Library - 1.33.0.1099 + 1.33.1.1099 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/kgsearch/v1 @@ -57,7 +58,7 @@ - + @@ -71,7 +72,7 @@ - + diff --git a/Src/Generated/Google.Apis.Licensing.v1/Google.Apis.Licensing.v1.cs b/Src/Generated/Google.Apis.Licensing.v1/Google.Apis.Licensing.v1.cs index 151116fa10..69a4131c55 100644 --- a/Src/Generated/Google.Apis.Licensing.v1/Google.Apis.Licensing.v1.cs +++ b/Src/Generated/Google.Apis.Licensing.v1/Google.Apis.Licensing.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Licensing.v1/Google.Apis.Licensing.v1.csproj b/Src/Generated/Google.Apis.Licensing.v1/Google.Apis.Licensing.v1.csproj index fb0908e9c1..65177d0825 100644 --- a/Src/Generated/Google.Apis.Licensing.v1/Google.Apis.Licensing.v1.csproj +++ b/Src/Generated/Google.Apis.Licensing.v1/Google.Apis.Licensing.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Licensing.v1 Client Library - 1.33.0.774 + 1.33.1.774 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/licensing/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Logging.v2/Google.Apis.Logging.v2.cs b/Src/Generated/Google.Apis.Logging.v2/Google.Apis.Logging.v2.cs index abaf3b8b8c..38ece9870f 100644 --- a/Src/Generated/Google.Apis.Logging.v2/Google.Apis.Logging.v2.cs +++ b/Src/Generated/Google.Apis.Logging.v2/Google.Apis.Logging.v2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -702,18 +702,18 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } - /// Optional. If present, then retrieve the next batch of results from the preceding call to - /// this method. pageToken must be the value of nextPageToken from the previous response. The values of - /// other method parameters should be identical to those in the previous call. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// Optional. The maximum number of results to return from this request. Non-positive values /// are ignored. The presence of nextPageToken in the response indicates that more results might be /// available. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// Optional. If present, then retrieve the next batch of results from the preceding call to + /// this method. pageToken must be the value of nextPageToken from the previous response. The values of + /// other method parameters should be identical to those in the previous call. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + ///Gets the method name. public override string MethodName @@ -748,18 +748,18 @@ protected override void InitParameters() Pattern = @"^billingAccounts/[^/]+$", }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -984,18 +984,18 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } - /// Optional. If present, then retrieve the next batch of results from the preceding call to - /// this method. pageToken must be the value of nextPageToken from the previous response. The values of - /// other method parameters should be identical to those in the previous call. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// Optional. The maximum number of results to return from this request. Non-positive values /// are ignored. The presence of nextPageToken in the response indicates that more results might be /// available. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// Optional. If present, then retrieve the next batch of results from the preceding call to + /// this method. pageToken must be the value of nextPageToken from the previous response. The values of + /// other method parameters should be identical to those in the previous call. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + ///Gets the method name. public override string MethodName @@ -1030,18 +1030,18 @@ protected override void InitParameters() Pattern = @"^billingAccounts/[^/]+$", }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2014,18 +2014,18 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } - /// Optional. If present, then retrieve the next batch of results from the preceding call to this - /// method. pageToken must be the value of nextPageToken from the previous response. The values of other - /// method parameters should be identical to those in the previous call. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// Optional. The maximum number of results to return from this request. Non-positive values are /// ignored. The presence of nextPageToken in the response indicates that more results might be /// available. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// Optional. If present, then retrieve the next batch of results from the preceding call to this + /// method. pageToken must be the value of nextPageToken from the previous response. The values of other + /// method parameters should be identical to those in the previous call. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + ///Gets the method name. public override string MethodName @@ -2060,18 +2060,18 @@ protected override void InitParameters() Pattern = @"^[^/]+/[^/]+$", }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2452,18 +2452,18 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } - /// Optional. If present, then retrieve the next batch of results from the preceding call to - /// this method. pageToken must be the value of nextPageToken from the previous response. The values of - /// other method parameters should be identical to those in the previous call. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// Optional. The maximum number of results to return from this request. Non-positive values /// are ignored. The presence of nextPageToken in the response indicates that more results might be /// available. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// Optional. If present, then retrieve the next batch of results from the preceding call to + /// this method. pageToken must be the value of nextPageToken from the previous response. The values of + /// other method parameters should be identical to those in the previous call. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + ///Gets the method name. public override string MethodName @@ -2498,18 +2498,18 @@ protected override void InitParameters() Pattern = @"^folders/[^/]+$", }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -3495,18 +3495,18 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } - /// Optional. If present, then retrieve the next batch of results from the preceding call to this - /// method. pageToken must be the value of nextPageToken from the previous response. The values of other - /// method parameters should be identical to those in the previous call. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// Optional. The maximum number of results to return from this request. Non-positive values are /// ignored. The presence of nextPageToken in the response indicates that more results might be /// available. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// Optional. If present, then retrieve the next batch of results from the preceding call to this + /// method. pageToken must be the value of nextPageToken from the previous response. The values of other + /// method parameters should be identical to those in the previous call. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + ///Gets the method name. public override string MethodName @@ -3541,18 +3541,18 @@ protected override void InitParameters() Pattern = @"^[^/]+/[^/]+$", }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -3933,18 +3933,18 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } - /// Optional. If present, then retrieve the next batch of results from the preceding call to - /// this method. pageToken must be the value of nextPageToken from the previous response. The values of - /// other method parameters should be identical to those in the previous call. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// Optional. The maximum number of results to return from this request. Non-positive values /// are ignored. The presence of nextPageToken in the response indicates that more results might be /// available. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// Optional. If present, then retrieve the next batch of results from the preceding call to + /// this method. pageToken must be the value of nextPageToken from the previous response. The values of + /// other method parameters should be identical to those in the previous call. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + ///Gets the method name. public override string MethodName @@ -3979,18 +3979,18 @@ protected override void InitParameters() Pattern = @"^organizations/[^/]+$", }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -5423,18 +5423,18 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } - /// Optional. If present, then retrieve the next batch of results from the preceding call to - /// this method. pageToken must be the value of nextPageToken from the previous response. The values of - /// other method parameters should be identical to those in the previous call. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// Optional. The maximum number of results to return from this request. Non-positive values /// are ignored. The presence of nextPageToken in the response indicates that more results might be /// available. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// Optional. If present, then retrieve the next batch of results from the preceding call to + /// this method. pageToken must be the value of nextPageToken from the previous response. The values of + /// other method parameters should be identical to those in the previous call. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + ///Gets the method name. public override string MethodName @@ -5469,18 +5469,18 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+$", }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -5732,18 +5732,18 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } - /// Optional. The maximum number of results to return from this request. Non-positive values - /// are ignored. The presence of nextPageToken in the response indicates that more results might be - /// available. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - /// Optional. If present, then retrieve the next batch of results from the preceding call to /// this method. pageToken must be the value of nextPageToken from the previous response. The values of /// other method parameters should be identical to those in the previous call. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } + /// Optional. The maximum number of results to return from this request. Non-positive values + /// are ignored. The presence of nextPageToken in the response indicates that more results might be + /// available. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + ///Gets the method name. public override string MethodName @@ -5778,18 +5778,18 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+$", }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -6150,18 +6150,18 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } - /// Optional. The maximum number of results to return from this request. Non-positive values - /// are ignored. The presence of nextPageToken in the response indicates that more results might be - /// available. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - /// Optional. If present, then retrieve the next batch of results from the preceding call to /// this method. pageToken must be the value of nextPageToken from the previous response. The values of /// other method parameters should be identical to those in the previous call. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } + /// Optional. The maximum number of results to return from this request. Non-positive values + /// are ignored. The presence of nextPageToken in the response indicates that more results might be + /// available. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + ///Gets the method name. public override string MethodName @@ -6196,18 +6196,18 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+$", }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Logging.v2/Google.Apis.Logging.v2.csproj b/Src/Generated/Google.Apis.Logging.v2/Google.Apis.Logging.v2.csproj index ba9f074777..9498ae60de 100644 --- a/Src/Generated/Google.Apis.Logging.v2/Google.Apis.Logging.v2.csproj +++ b/Src/Generated/Google.Apis.Logging.v2/Google.Apis.Logging.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.Logging.v2 Client Library - 1.33.0.1215 + 1.33.1.1215 Google Inc. Copyright 2017 Google Inc. Google @@ -13,7 +13,8 @@ https://github.com/google/google-api-dotnet-client https://www.gstatic.com/images/branding/product/1x/google_developers_64dp.png - Google APIs Client Library for working with Logging v2. + This is not the recommended package for working with Logging, please use the Google.Cloud.Logging.V2 package. + This Google APIs Client Library for working with Logging v2 uses older code generation, and is harder to use. Supported Platforms: - .NET Framework 4.5+ @@ -24,11 +25,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/logging/v2 @@ -57,8 +59,8 @@ - - + + @@ -73,8 +75,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Logging.v2beta1/Google.Apis.Logging.v2beta1.cs b/Src/Generated/Google.Apis.Logging.v2beta1/Google.Apis.Logging.v2beta1.cs index b2514e24d3..c30be4fdfb 100644 --- a/Src/Generated/Google.Apis.Logging.v2beta1/Google.Apis.Logging.v2beta1.cs +++ b/Src/Generated/Google.Apis.Logging.v2beta1/Google.Apis.Logging.v2beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Logging.v2beta1/Google.Apis.Logging.v2beta1.csproj b/Src/Generated/Google.Apis.Logging.v2beta1/Google.Apis.Logging.v2beta1.csproj index 42460de233..cc1ecbbb2f 100644 --- a/Src/Generated/Google.Apis.Logging.v2beta1/Google.Apis.Logging.v2beta1.csproj +++ b/Src/Generated/Google.Apis.Logging.v2beta1/Google.Apis.Logging.v2beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.Logging.v2beta1 Client Library - 1.33.0.1215 + 1.33.1.1215 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/logging/v2beta1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.ManufacturerCenter.v1/Google.Apis.ManufacturerCenter.v1.cs b/Src/Generated/Google.Apis.ManufacturerCenter.v1/Google.Apis.ManufacturerCenter.v1.cs index 4144847f00..36720330c1 100644 --- a/Src/Generated/Google.Apis.ManufacturerCenter.v1/Google.Apis.ManufacturerCenter.v1.cs +++ b/Src/Generated/Google.Apis.ManufacturerCenter.v1/Google.Apis.ManufacturerCenter.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.ManufacturerCenter.v1/Google.Apis.ManufacturerCenter.v1.csproj b/Src/Generated/Google.Apis.ManufacturerCenter.v1/Google.Apis.ManufacturerCenter.v1.csproj index 5b3ab6fc31..7e5b8bcd23 100644 --- a/Src/Generated/Google.Apis.ManufacturerCenter.v1/Google.Apis.ManufacturerCenter.v1.csproj +++ b/Src/Generated/Google.Apis.ManufacturerCenter.v1/Google.Apis.ManufacturerCenter.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.ManufacturerCenter.v1 Client Library - 1.33.0.1204 + 1.33.1.1204 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/manufacturers/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Mirror.v1/Google.Apis.Mirror.v1.cs b/Src/Generated/Google.Apis.Mirror.v1/Google.Apis.Mirror.v1.cs index 9933b2d41f..807e0524e6 100644 --- a/Src/Generated/Google.Apis.Mirror.v1/Google.Apis.Mirror.v1.cs +++ b/Src/Generated/Google.Apis.Mirror.v1/Google.Apis.Mirror.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Mirror.v1/Google.Apis.Mirror.v1.csproj b/Src/Generated/Google.Apis.Mirror.v1/Google.Apis.Mirror.v1.csproj index 47fd9b0c89..7ff4cfedbc 100644 --- a/Src/Generated/Google.Apis.Mirror.v1/Google.Apis.Mirror.v1.csproj +++ b/Src/Generated/Google.Apis.Mirror.v1/Google.Apis.Mirror.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Mirror.v1 Client Library - 1.33.0.1169 + 1.33.1.1169 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/mirror/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Monitoring.v3/Google.Apis.Monitoring.v3.cs b/Src/Generated/Google.Apis.Monitoring.v3/Google.Apis.Monitoring.v3.cs index a4cc7b5e4e..3f981452bc 100644 --- a/Src/Generated/Google.Apis.Monitoring.v3/Google.Apis.Monitoring.v3.cs +++ b/Src/Generated/Google.Apis.Monitoring.v3/Google.Apis.Monitoring.v3.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Stackdriver Monitoring API * API Versionv3 - * API Rev20180429 (1214) + * API Rev20180504 (1219) * API Docs * * https://cloud.google.com/monitoring/api/ @@ -635,11 +635,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } - /// 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. - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - /// 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. @@ -656,6 +651,11 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// 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. + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + ///Gets the method name. public override string MethodName @@ -690,36 +690,36 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+$", }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "orderBy", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "orderBy", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "orderBy", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "orderBy", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1000,6 +1000,15 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } + /// 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. + [Google.Apis.Util.RequestParameterAttribute("interval.startTime", Google.Apis.Util.RequestParameterType.Query)] + public virtual object IntervalStartTime { get; set; } + + /// A positive number that is the maximum number of results to return. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + /// Required. The end of the time interval. [Google.Apis.Util.RequestParameterAttribute("interval.endTime", Google.Apis.Util.RequestParameterType.Query)] public virtual object IntervalEndTime { get; set; } @@ -1017,15 +1026,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } - /// 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. - [Google.Apis.Util.RequestParameterAttribute("interval.startTime", Google.Apis.Util.RequestParameterType.Query)] - public virtual object IntervalStartTime { get; set; } - - /// A positive number that is the maximum number of results to return. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - ///Gets the method name. public override string MethodName @@ -1060,45 +1060,45 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/groups/[^/]+$", }); RequestParameters.Add( - "interval.endTime", new Google.Apis.Discovery.Parameter + "interval.startTime", new Google.Apis.Discovery.Parameter { - Name = "interval.endTime", + Name = "interval.startTime", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "interval.endTime", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "interval.endTime", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "interval.startTime", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "interval.startTime", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1341,18 +1341,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } - /// 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. - [Google.Apis.Util.RequestParameterAttribute("childrenOfGroup", Google.Apis.Util.RequestParameterType.Query)] - public virtual string ChildrenOfGroup { get; set; } - - /// 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. - [Google.Apis.Util.RequestParameterAttribute("descendantsOfGroup", Google.Apis.Util.RequestParameterType.Query)] - public virtual string DescendantsOfGroup { get; set; } - /// 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. @@ -1370,6 +1358,18 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("ancestorsOfGroup", Google.Apis.Util.RequestParameterType.Query)] public virtual string AncestorsOfGroup { get; set; } + /// 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. + [Google.Apis.Util.RequestParameterAttribute("childrenOfGroup", Google.Apis.Util.RequestParameterType.Query)] + public virtual string ChildrenOfGroup { get; set; } + + /// 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. + [Google.Apis.Util.RequestParameterAttribute("descendantsOfGroup", Google.Apis.Util.RequestParameterType.Query)] + public virtual string DescendantsOfGroup { get; set; } + ///Gets the method name. public override string MethodName @@ -1404,45 +1404,45 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+$", }); RequestParameters.Add( - "childrenOfGroup", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "childrenOfGroup", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "descendantsOfGroup", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "descendantsOfGroup", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "ancestorsOfGroup", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "ancestorsOfGroup", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "childrenOfGroup", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "childrenOfGroup", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "ancestorsOfGroup", new Google.Apis.Discovery.Parameter + "descendantsOfGroup", new Google.Apis.Discovery.Parameter { - Name = "ancestorsOfGroup", + Name = "descendantsOfGroup", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1790,6 +1790,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } + /// A positive number that is the maximum number of results to return. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + /// 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: metric.type = starts_with("custom.googleapis.com/") @@ -1803,10 +1807,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } - /// A positive number that is the maximum number of results to return. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - ///Gets the method name. public override string MethodName @@ -1841,27 +1841,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+$", }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1988,13 +1988,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } - /// 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: resource.type = starts_with("gce_") AND resource.label:id - /// - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - /// 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. @@ -2005,6 +1998,13 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// 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: resource.type = starts_with("gce_") AND resource.label:id + /// + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + ///Gets the method name. public override string MethodName @@ -2039,27 +2039,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+$", }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2624,6 +2624,11 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } + /// 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. + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + /// 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. @@ -2640,11 +2645,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } - /// 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. - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - ///Gets the method name. public override string MethodName @@ -2679,36 +2679,36 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+$", }); RequestParameters.Add( - "orderBy", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "orderBy", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "orderBy", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "orderBy", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -3070,6 +3070,18 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } + /// 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. + [Google.Apis.Util.RequestParameterAttribute("aggregation.groupByFields", Google.Apis.Util.RequestParameterType.Query)] + public virtual Google.Apis.Util.Repeatable AggregationGroupByFields { get; set; } + /// Required. The end of the time interval. [Google.Apis.Util.RequestParameterAttribute("interval.endTime", Google.Apis.Util.RequestParameterType.Query)] public virtual object IntervalEndTime { get; set; } @@ -3228,18 +3240,6 @@ public enum ViewEnum HEADERS, } - /// 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. - [Google.Apis.Util.RequestParameterAttribute("aggregation.groupByFields", Google.Apis.Util.RequestParameterType.Query)] - public virtual Google.Apis.Util.Repeatable AggregationGroupByFields { get; set; } - ///Gets the method name. public override string MethodName @@ -3273,6 +3273,15 @@ protected override void InitParameters() DefaultValue = null, Pattern = @"^projects/[^/]+$", }); + RequestParameters.Add( + "aggregation.groupByFields", new Google.Apis.Discovery.Parameter + { + Name = "aggregation.groupByFields", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); RequestParameters.Add( "interval.endTime", new Google.Apis.Discovery.Parameter { @@ -3363,15 +3372,6 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add( - "aggregation.groupByFields", new Google.Apis.Discovery.Parameter - { - Name = "aggregation.groupByFields", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); } } @@ -3625,18 +3625,18 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } - /// 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 <=0, the - /// server will decide the number of results to be returned. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - /// 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. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } + /// 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 <=0, the + /// server will decide the number of results to be returned. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + ///Gets the method name. public override string MethodName @@ -3671,18 +3671,18 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+$", }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Monitoring.v3/Google.Apis.Monitoring.v3.csproj b/Src/Generated/Google.Apis.Monitoring.v3/Google.Apis.Monitoring.v3.csproj index 52f8af2da0..ea13dc21d9 100644 --- a/Src/Generated/Google.Apis.Monitoring.v3/Google.Apis.Monitoring.v3.csproj +++ b/Src/Generated/Google.Apis.Monitoring.v3/Google.Apis.Monitoring.v3.csproj @@ -3,7 +3,7 @@ Google.Apis.Monitoring.v3 Client Library - 1.33.0.1214 + 1.33.1.1219 Google Inc. Copyright 2017 Google Inc. Google @@ -13,7 +13,8 @@ https://github.com/google/google-api-dotnet-client https://www.gstatic.com/images/branding/product/1x/google_developers_64dp.png - Google APIs Client Library for working with Monitoring v3. + This is not the recommended package for working with Monitoring, please use the Google.Cloud.Monitoring.V3 package. + This Google APIs Client Library for working with Monitoring v3 uses older code generation, and is harder to use. Supported Platforms: - .NET Framework 4.5+ @@ -24,11 +25,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/monitoring/v3 @@ -57,8 +59,8 @@ - - + + @@ -73,8 +75,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Oauth2.v2/Google.Apis.Oauth2.v2.cs b/Src/Generated/Google.Apis.Oauth2.v2/Google.Apis.Oauth2.v2.cs index 5a98ec2320..a42c94671f 100644 --- a/Src/Generated/Google.Apis.Oauth2.v2/Google.Apis.Oauth2.v2.cs +++ b/Src/Generated/Google.Apis.Oauth2.v2/Google.Apis.Oauth2.v2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Oauth2.v2/Google.Apis.Oauth2.v2.csproj b/Src/Generated/Google.Apis.Oauth2.v2/Google.Apis.Oauth2.v2.csproj index d1dd29f37e..a8340fbec8 100644 --- a/Src/Generated/Google.Apis.Oauth2.v2/Google.Apis.Oauth2.v2.csproj +++ b/Src/Generated/Google.Apis.Oauth2.v2/Google.Apis.Oauth2.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.Oauth2.v2 Client Library - 1.33.0.1134 + 1.33.1.1134 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/oauth2/v2 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Pagespeedonline.v1/Google.Apis.Pagespeedonline.v1.cs b/Src/Generated/Google.Apis.Pagespeedonline.v1/Google.Apis.Pagespeedonline.v1.cs index 09f1736844..8fc7c3cf31 100644 --- a/Src/Generated/Google.Apis.Pagespeedonline.v1/Google.Apis.Pagespeedonline.v1.cs +++ b/Src/Generated/Google.Apis.Pagespeedonline.v1/Google.Apis.Pagespeedonline.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Pagespeedonline.v1/Google.Apis.Pagespeedonline.v1.csproj b/Src/Generated/Google.Apis.Pagespeedonline.v1/Google.Apis.Pagespeedonline.v1.csproj index 1f48f3d69d..f0e83ed5c2 100644 --- a/Src/Generated/Google.Apis.Pagespeedonline.v1/Google.Apis.Pagespeedonline.v1.csproj +++ b/Src/Generated/Google.Apis.Pagespeedonline.v1/Google.Apis.Pagespeedonline.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Pagespeedonline.v1 Client Library - 1.33.0.1169 + 1.33.1.1169 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/pagespeedonline/v1 @@ -57,7 +58,7 @@ - + @@ -71,7 +72,7 @@ - + diff --git a/Src/Generated/Google.Apis.Pagespeedonline.v2/Google.Apis.Pagespeedonline.v2.cs b/Src/Generated/Google.Apis.Pagespeedonline.v2/Google.Apis.Pagespeedonline.v2.cs index f65d7d9fc0..b18f82f5e7 100644 --- a/Src/Generated/Google.Apis.Pagespeedonline.v2/Google.Apis.Pagespeedonline.v2.cs +++ b/Src/Generated/Google.Apis.Pagespeedonline.v2/Google.Apis.Pagespeedonline.v2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Pagespeedonline.v2/Google.Apis.Pagespeedonline.v2.csproj b/Src/Generated/Google.Apis.Pagespeedonline.v2/Google.Apis.Pagespeedonline.v2.csproj index e3bc22bcf2..1914ecef55 100644 --- a/Src/Generated/Google.Apis.Pagespeedonline.v2/Google.Apis.Pagespeedonline.v2.csproj +++ b/Src/Generated/Google.Apis.Pagespeedonline.v2/Google.Apis.Pagespeedonline.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.Pagespeedonline.v2 Client Library - 1.33.0.1169 + 1.33.1.1169 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/pagespeedonline/v2 @@ -57,7 +58,7 @@ - + @@ -71,7 +72,7 @@ - + diff --git a/Src/Generated/Google.Apis.Pagespeedonline.v4/Google.Apis.Pagespeedonline.v4.cs b/Src/Generated/Google.Apis.Pagespeedonline.v4/Google.Apis.Pagespeedonline.v4.cs index b1487046dc..7b7d90cc91 100644 --- a/Src/Generated/Google.Apis.Pagespeedonline.v4/Google.Apis.Pagespeedonline.v4.cs +++ b/Src/Generated/Google.Apis.Pagespeedonline.v4/Google.Apis.Pagespeedonline.v4.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Pagespeedonline.v4/Google.Apis.Pagespeedonline.v4.csproj b/Src/Generated/Google.Apis.Pagespeedonline.v4/Google.Apis.Pagespeedonline.v4.csproj index 93a167d442..d644f4afe2 100644 --- a/Src/Generated/Google.Apis.Pagespeedonline.v4/Google.Apis.Pagespeedonline.v4.csproj +++ b/Src/Generated/Google.Apis.Pagespeedonline.v4/Google.Apis.Pagespeedonline.v4.csproj @@ -3,7 +3,7 @@ Google.Apis.Pagespeedonline.v4 Client Library - 1.33.0.1169 + 1.33.1.1169 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/pagespeedonline/v4 @@ -57,7 +58,7 @@ - + @@ -71,7 +72,7 @@ - + diff --git a/Src/Generated/Google.Apis.Partners.v2/Google.Apis.Partners.v2.cs b/Src/Generated/Google.Apis.Partners.v2/Google.Apis.Partners.v2.cs index 5fecfd53f7..20635f9cd0 100644 --- a/Src/Generated/Google.Apis.Partners.v2/Google.Apis.Partners.v2.cs +++ b/Src/Generated/Google.Apis.Partners.v2/Google.Apis.Partners.v2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -441,23 +441,6 @@ public ListRequest(Google.Apis.Services.IClientService service) } - /// Locale to use for the current request. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.locale", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataLocale { get; set; } - - /// IP address to use instead of the user's geo-located IP address. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.ipAddress", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataUserOverridesIpAddress { get; set; } - - /// Experiment IDs the current request belongs to. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.experimentIds", Google.Apis.Util.RequestParameterType.Query)] - public virtual Google.Apis.Util.Repeatable RequestMetadataExperimentIds { get; set; } - - /// 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. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.trafficSource.trafficSubId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataTrafficSourceTrafficSubId { get; set; } - /// Logged-in user ID to impersonate instead of the user's ID. [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.userId", Google.Apis.Util.RequestParameterType.Query)] public virtual string RequestMetadataUserOverridesUserId { get; set; } @@ -485,6 +468,23 @@ public ListRequest(Google.Apis.Services.IClientService service) [Google.Apis.Util.RequestParameterAttribute("requestMetadata.trafficSource.trafficSourceId", Google.Apis.Util.RequestParameterType.Query)] public virtual string RequestMetadataTrafficSourceTrafficSourceId { get; set; } + /// Locale to use for the current request. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.locale", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestMetadataLocale { get; set; } + + /// IP address to use instead of the user's geo-located IP address. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.ipAddress", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestMetadataUserOverridesIpAddress { get; set; } + + /// Experiment IDs the current request belongs to. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.experimentIds", Google.Apis.Util.RequestParameterType.Query)] + public virtual Google.Apis.Util.Repeatable RequestMetadataExperimentIds { get; set; } + + /// 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. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.trafficSource.trafficSubId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestMetadataTrafficSourceTrafficSubId { get; set; } + ///Gets the method name. public override string MethodName @@ -510,81 +510,81 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "requestMetadata.locale", new Google.Apis.Discovery.Parameter + "requestMetadata.userOverrides.userId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.locale", + Name = "requestMetadata.userOverrides.userId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.userOverrides.ipAddress", new Google.Apis.Discovery.Parameter + "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.userOverrides.ipAddress", + Name = "requestMetadata.partnersSessionId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.experimentIds", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.experimentIds", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.trafficSource.trafficSubId", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.trafficSource.trafficSubId", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.userOverrides.userId", new Google.Apis.Discovery.Parameter + "requestMetadata.trafficSource.trafficSourceId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.userOverrides.userId", + Name = "requestMetadata.trafficSource.trafficSourceId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter + "requestMetadata.locale", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.partnersSessionId", + Name = "requestMetadata.locale", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "requestMetadata.userOverrides.ipAddress", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "requestMetadata.userOverrides.ipAddress", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "requestMetadata.experimentIds", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "requestMetadata.experimentIds", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.trafficSource.trafficSourceId", new Google.Apis.Discovery.Parameter + "requestMetadata.trafficSource.trafficSubId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.trafficSource.trafficSourceId", + Name = "requestMetadata.trafficSource.trafficSubId", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -808,34 +808,34 @@ public GetRequest(Google.Apis.Services.IClientService service, string companyId) [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.ipAddress", Google.Apis.Util.RequestParameterType.Query)] public virtual string RequestMetadataUserOverridesIpAddress { get; set; } - /// Experiment IDs the current request belongs to. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.experimentIds", Google.Apis.Util.RequestParameterType.Query)] - public virtual Google.Apis.Util.Repeatable RequestMetadataExperimentIds { get; set; } - /// If the company's budget is in a different currency code than this one, then the converted /// budget is converted to this currency code. [Google.Apis.Util.RequestParameterAttribute("currencyCode", Google.Apis.Util.RequestParameterType.Query)] public virtual string CurrencyCode { get; set; } - /// How to order addresses within the returned company. Currently, only `address` and `address - /// desc` is supported which will sorted by closest to farthest in distance from given address and farthest - /// to closest distance from given address respectively. - [Google.Apis.Util.RequestParameterAttribute("orderBy", Google.Apis.Util.RequestParameterType.Query)] - public virtual string OrderBy { get; set; } + /// Experiment IDs the current request belongs to. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.experimentIds", Google.Apis.Util.RequestParameterType.Query)] + public virtual Google.Apis.Util.Repeatable RequestMetadataExperimentIds { get; set; } /// 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. [Google.Apis.Util.RequestParameterAttribute("requestMetadata.trafficSource.trafficSubId", Google.Apis.Util.RequestParameterType.Query)] public virtual string RequestMetadataTrafficSourceTrafficSubId { get; set; } - /// Logged-in user ID to impersonate instead of the user's ID. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.userId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataUserOverridesUserId { get; set; } + /// How to order addresses within the returned company. Currently, only `address` and `address + /// desc` is supported which will sorted by closest to farthest in distance from given address and farthest + /// to closest distance from given address respectively. + [Google.Apis.Util.RequestParameterAttribute("orderBy", Google.Apis.Util.RequestParameterType.Query)] + public virtual string OrderBy { get; set; } /// Google Partners session ID. [Google.Apis.Util.RequestParameterAttribute("requestMetadata.partnersSessionId", Google.Apis.Util.RequestParameterType.Query)] public virtual string RequestMetadataPartnersSessionId { get; set; } + /// Logged-in user ID to impersonate instead of the user's ID. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.userId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestMetadataUserOverridesUserId { get; set; } + /// The view of `Company` resource to be returned. This must not be /// `COMPANY_VIEW_UNSPECIFIED`. [Google.Apis.Util.RequestParameterAttribute("view", Google.Apis.Util.RequestParameterType.Query)] @@ -912,54 +912,54 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "requestMetadata.experimentIds", new Google.Apis.Discovery.Parameter + "currencyCode", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.experimentIds", + Name = "currencyCode", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "currencyCode", new Google.Apis.Discovery.Parameter + "requestMetadata.experimentIds", new Google.Apis.Discovery.Parameter { - Name = "currencyCode", + Name = "requestMetadata.experimentIds", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "orderBy", new Google.Apis.Discovery.Parameter + "requestMetadata.trafficSource.trafficSubId", new Google.Apis.Discovery.Parameter { - Name = "orderBy", + Name = "requestMetadata.trafficSource.trafficSubId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.trafficSource.trafficSubId", new Google.Apis.Discovery.Parameter + "orderBy", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.trafficSource.trafficSubId", + Name = "orderBy", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.userOverrides.userId", new Google.Apis.Discovery.Parameter + "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.userOverrides.userId", + Name = "requestMetadata.partnersSessionId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter + "requestMetadata.userOverrides.userId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.partnersSessionId", + Name = "requestMetadata.userOverrides.userId", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1013,107 +1013,6 @@ public ListRequest(Google.Apis.Services.IClientService service) } - /// 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. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.trafficSource.trafficSubId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataTrafficSourceTrafficSubId { get; set; } - - /// Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and - /// +999,999,999 inclusive. If `units` is positive, `nanos` must be positive or zero. If `units` is zero, - /// `nanos` can be positive, zero, or negative. If `units` is negative, `nanos` must be negative or zero. - /// For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000. - [Google.Apis.Util.RequestParameterAttribute("minMonthlyBudget.nanos", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable MinMonthlyBudgetNanos { get; set; } - - /// Google Partners session ID. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.partnersSessionId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataPartnersSessionId { get; set; } - - /// Company name to search for. - [Google.Apis.Util.RequestParameterAttribute("companyName", Google.Apis.Util.RequestParameterType.Query)] - public virtual string CompanyName { get; set; } - - /// A token identifying a page of results that the server returns. Typically, this is the value of - /// `ListCompaniesResponse.next_page_token` returned from the previous call to ListCompanies. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - - /// List of industries the company can help with. - [Google.Apis.Util.RequestParameterAttribute("industries", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable Industries { get; set; } - - /// List of industries the company can help with. - public enum IndustriesEnum - { - [Google.Apis.Util.StringValueAttribute("INDUSTRY_UNSPECIFIED")] - INDUSTRYUNSPECIFIED, - [Google.Apis.Util.StringValueAttribute("I_AUTOMOTIVE")] - IAUTOMOTIVE, - [Google.Apis.Util.StringValueAttribute("I_BUSINESS_TO_BUSINESS")] - IBUSINESSTOBUSINESS, - [Google.Apis.Util.StringValueAttribute("I_CONSUMER_PACKAGED_GOODS")] - ICONSUMERPACKAGEDGOODS, - [Google.Apis.Util.StringValueAttribute("I_EDUCATION")] - IEDUCATION, - [Google.Apis.Util.StringValueAttribute("I_FINANCE")] - IFINANCE, - [Google.Apis.Util.StringValueAttribute("I_HEALTHCARE")] - IHEALTHCARE, - [Google.Apis.Util.StringValueAttribute("I_MEDIA_AND_ENTERTAINMENT")] - IMEDIAANDENTERTAINMENT, - [Google.Apis.Util.StringValueAttribute("I_RETAIL")] - IRETAIL, - [Google.Apis.Util.StringValueAttribute("I_TECHNOLOGY")] - ITECHNOLOGY, - [Google.Apis.Util.StringValueAttribute("I_TRAVEL")] - ITRAVEL, - } - - /// Website URL that will help to find a better matched company. . - [Google.Apis.Util.RequestParameterAttribute("websiteUrl", Google.Apis.Util.RequestParameterType.Query)] - public virtual string WebsiteUrl { get; set; } - - /// List of reasons for using Google Partner Search to get companies. - [Google.Apis.Util.RequestParameterAttribute("gpsMotivations", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable GpsMotivations { get; set; } - - /// List of reasons for using Google Partner Search to get companies. - public enum GpsMotivationsEnum - { - [Google.Apis.Util.StringValueAttribute("GPS_MOTIVATION_UNSPECIFIED")] - GPSMOTIVATIONUNSPECIFIED, - [Google.Apis.Util.StringValueAttribute("GPSM_HELP_WITH_ADVERTISING")] - GPSMHELPWITHADVERTISING, - [Google.Apis.Util.StringValueAttribute("GPSM_HELP_WITH_WEBSITE")] - GPSMHELPWITHWEBSITE, - [Google.Apis.Util.StringValueAttribute("GPSM_NO_WEBSITE")] - GPSMNOWEBSITE, - } - - /// List of language codes that company can support. Only primary language subtags are accepted as - /// defined by BCP 47 (IETF BCP 47, "Tags for Identifying Languages"). - [Google.Apis.Util.RequestParameterAttribute("languageCodes", Google.Apis.Util.RequestParameterType.Query)] - public virtual Google.Apis.Util.Repeatable LanguageCodes { get; set; } - - /// Requested page size. Server may return fewer companies than requested. If unspecified, server - /// picks an appropriate default. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - - /// IP address to use instead of the user's geo-located IP address. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.ipAddress", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataUserOverridesIpAddress { get; set; } - - /// Experiment IDs the current request belongs to. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.experimentIds", Google.Apis.Util.RequestParameterType.Query)] - public virtual Google.Apis.Util.Repeatable RequestMetadataExperimentIds { get; set; } - - /// How to order addresses within the returned companies. Currently, only `address` and `address - /// desc` is supported which will sorted by closest to farthest in distance from given address and farthest - /// to closest distance from given address respectively. - [Google.Apis.Util.RequestParameterAttribute("orderBy", Google.Apis.Util.RequestParameterType.Query)] - public virtual string OrderBy { get; set; } - /// List of specializations that the returned agencies should provide. If this is not empty, any /// returned agency must have at least one of these specializations, or one of the services in the /// "services" field. @@ -1166,15 +1065,15 @@ public enum ViewEnum CVGOOGLEPARTNERSEARCH, } - /// Locale to use for the current request. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.locale", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataLocale { get; set; } - /// The address to use when searching for companies. If not given, the geo-located address of the /// request is used. [Google.Apis.Util.RequestParameterAttribute("address", Google.Apis.Util.RequestParameterType.Query)] public virtual string Address { get; set; } + /// Locale to use for the current request. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.locale", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestMetadataLocale { get; set; } + /// The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US /// dollar. [Google.Apis.Util.RequestParameterAttribute("minMonthlyBudget.units", Google.Apis.Util.RequestParameterType.Query)] @@ -1224,6 +1123,107 @@ public enum ServicesEnum [Google.Apis.Util.RequestParameterAttribute("maxMonthlyBudget.units", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable MaxMonthlyBudgetUnits { get; set; } + /// 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. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.trafficSource.trafficSubId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestMetadataTrafficSourceTrafficSubId { get; set; } + + /// Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and + /// +999,999,999 inclusive. If `units` is positive, `nanos` must be positive or zero. If `units` is zero, + /// `nanos` can be positive, zero, or negative. If `units` is negative, `nanos` must be negative or zero. + /// For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000. + [Google.Apis.Util.RequestParameterAttribute("minMonthlyBudget.nanos", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable MinMonthlyBudgetNanos { get; set; } + + /// Google Partners session ID. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.partnersSessionId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestMetadataPartnersSessionId { get; set; } + + /// Company name to search for. + [Google.Apis.Util.RequestParameterAttribute("companyName", Google.Apis.Util.RequestParameterType.Query)] + public virtual string CompanyName { get; set; } + + /// A token identifying a page of results that the server returns. Typically, this is the value of + /// `ListCompaniesResponse.next_page_token` returned from the previous call to ListCompanies. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// List of industries the company can help with. + [Google.Apis.Util.RequestParameterAttribute("industries", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable Industries { get; set; } + + /// List of industries the company can help with. + public enum IndustriesEnum + { + [Google.Apis.Util.StringValueAttribute("INDUSTRY_UNSPECIFIED")] + INDUSTRYUNSPECIFIED, + [Google.Apis.Util.StringValueAttribute("I_AUTOMOTIVE")] + IAUTOMOTIVE, + [Google.Apis.Util.StringValueAttribute("I_BUSINESS_TO_BUSINESS")] + IBUSINESSTOBUSINESS, + [Google.Apis.Util.StringValueAttribute("I_CONSUMER_PACKAGED_GOODS")] + ICONSUMERPACKAGEDGOODS, + [Google.Apis.Util.StringValueAttribute("I_EDUCATION")] + IEDUCATION, + [Google.Apis.Util.StringValueAttribute("I_FINANCE")] + IFINANCE, + [Google.Apis.Util.StringValueAttribute("I_HEALTHCARE")] + IHEALTHCARE, + [Google.Apis.Util.StringValueAttribute("I_MEDIA_AND_ENTERTAINMENT")] + IMEDIAANDENTERTAINMENT, + [Google.Apis.Util.StringValueAttribute("I_RETAIL")] + IRETAIL, + [Google.Apis.Util.StringValueAttribute("I_TECHNOLOGY")] + ITECHNOLOGY, + [Google.Apis.Util.StringValueAttribute("I_TRAVEL")] + ITRAVEL, + } + + /// Website URL that will help to find a better matched company. . + [Google.Apis.Util.RequestParameterAttribute("websiteUrl", Google.Apis.Util.RequestParameterType.Query)] + public virtual string WebsiteUrl { get; set; } + + /// List of reasons for using Google Partner Search to get companies. + [Google.Apis.Util.RequestParameterAttribute("gpsMotivations", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable GpsMotivations { get; set; } + + /// List of reasons for using Google Partner Search to get companies. + public enum GpsMotivationsEnum + { + [Google.Apis.Util.StringValueAttribute("GPS_MOTIVATION_UNSPECIFIED")] + GPSMOTIVATIONUNSPECIFIED, + [Google.Apis.Util.StringValueAttribute("GPSM_HELP_WITH_ADVERTISING")] + GPSMHELPWITHADVERTISING, + [Google.Apis.Util.StringValueAttribute("GPSM_HELP_WITH_WEBSITE")] + GPSMHELPWITHWEBSITE, + [Google.Apis.Util.StringValueAttribute("GPSM_NO_WEBSITE")] + GPSMNOWEBSITE, + } + + /// List of language codes that company can support. Only primary language subtags are accepted as + /// defined by BCP 47 (IETF BCP 47, "Tags for Identifying Languages"). + [Google.Apis.Util.RequestParameterAttribute("languageCodes", Google.Apis.Util.RequestParameterType.Query)] + public virtual Google.Apis.Util.Repeatable LanguageCodes { get; set; } + + /// Requested page size. Server may return fewer companies than requested. If unspecified, server + /// picks an appropriate default. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + + /// IP address to use instead of the user's geo-located IP address. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.ipAddress", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestMetadataUserOverridesIpAddress { get; set; } + + /// Experiment IDs the current request belongs to. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.experimentIds", Google.Apis.Util.RequestParameterType.Query)] + public virtual Google.Apis.Util.Repeatable RequestMetadataExperimentIds { get; set; } + + /// How to order addresses within the returned companies. Currently, only `address` and `address + /// desc` is supported which will sorted by closest to farthest in distance from given address and farthest + /// to closest distance from given address respectively. + [Google.Apis.Util.RequestParameterAttribute("orderBy", Google.Apis.Util.RequestParameterType.Query)] + public virtual string OrderBy { get; set; } + ///Gets the method name. public override string MethodName @@ -1249,225 +1249,225 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "requestMetadata.trafficSource.trafficSubId", new Google.Apis.Discovery.Parameter + "specializations", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.trafficSource.trafficSubId", + Name = "specializations", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "minMonthlyBudget.nanos", new Google.Apis.Discovery.Parameter + "maxMonthlyBudget.currencyCode", new Google.Apis.Discovery.Parameter { - Name = "minMonthlyBudget.nanos", + Name = "maxMonthlyBudget.currencyCode", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter + "minMonthlyBudget.currencyCode", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.partnersSessionId", + Name = "minMonthlyBudget.currencyCode", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "companyName", new Google.Apis.Discovery.Parameter + "requestMetadata.userOverrides.userId", new Google.Apis.Discovery.Parameter { - Name = "companyName", + Name = "requestMetadata.userOverrides.userId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "view", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "view", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "industries", new Google.Apis.Discovery.Parameter + "address", new Google.Apis.Discovery.Parameter { - Name = "industries", + Name = "address", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "websiteUrl", new Google.Apis.Discovery.Parameter + "requestMetadata.locale", new Google.Apis.Discovery.Parameter { - Name = "websiteUrl", + Name = "requestMetadata.locale", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "gpsMotivations", new Google.Apis.Discovery.Parameter + "minMonthlyBudget.units", new Google.Apis.Discovery.Parameter { - Name = "gpsMotivations", + Name = "minMonthlyBudget.units", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "languageCodes", new Google.Apis.Discovery.Parameter + "maxMonthlyBudget.nanos", new Google.Apis.Discovery.Parameter { - Name = "languageCodes", + Name = "maxMonthlyBudget.nanos", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "services", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "services", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.userOverrides.ipAddress", new Google.Apis.Discovery.Parameter + "requestMetadata.trafficSource.trafficSourceId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.userOverrides.ipAddress", + Name = "requestMetadata.trafficSource.trafficSourceId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.experimentIds", new Google.Apis.Discovery.Parameter + "maxMonthlyBudget.units", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.experimentIds", + Name = "maxMonthlyBudget.units", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "orderBy", new Google.Apis.Discovery.Parameter + "requestMetadata.trafficSource.trafficSubId", new Google.Apis.Discovery.Parameter { - Name = "orderBy", + Name = "requestMetadata.trafficSource.trafficSubId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "specializations", new Google.Apis.Discovery.Parameter + "minMonthlyBudget.nanos", new Google.Apis.Discovery.Parameter { - Name = "specializations", + Name = "minMonthlyBudget.nanos", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "maxMonthlyBudget.currencyCode", new Google.Apis.Discovery.Parameter + "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter { - Name = "maxMonthlyBudget.currencyCode", + Name = "requestMetadata.partnersSessionId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "minMonthlyBudget.currencyCode", new Google.Apis.Discovery.Parameter + "companyName", new Google.Apis.Discovery.Parameter { - Name = "minMonthlyBudget.currencyCode", + Name = "companyName", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.userOverrides.userId", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.userOverrides.userId", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "view", new Google.Apis.Discovery.Parameter + "industries", new Google.Apis.Discovery.Parameter { - Name = "view", + Name = "industries", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.locale", new Google.Apis.Discovery.Parameter + "websiteUrl", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.locale", + Name = "websiteUrl", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "address", new Google.Apis.Discovery.Parameter + "gpsMotivations", new Google.Apis.Discovery.Parameter { - Name = "address", + Name = "gpsMotivations", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "minMonthlyBudget.units", new Google.Apis.Discovery.Parameter + "languageCodes", new Google.Apis.Discovery.Parameter { - Name = "minMonthlyBudget.units", + Name = "languageCodes", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "maxMonthlyBudget.nanos", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "maxMonthlyBudget.nanos", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "services", new Google.Apis.Discovery.Parameter + "requestMetadata.userOverrides.ipAddress", new Google.Apis.Discovery.Parameter { - Name = "services", + Name = "requestMetadata.userOverrides.ipAddress", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.trafficSource.trafficSourceId", new Google.Apis.Discovery.Parameter + "requestMetadata.experimentIds", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.trafficSource.trafficSourceId", + Name = "requestMetadata.experimentIds", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "maxMonthlyBudget.units", new Google.Apis.Discovery.Parameter + "orderBy", new Google.Apis.Discovery.Parameter { - Name = "maxMonthlyBudget.units", + Name = "orderBy", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1513,14 +1513,28 @@ public ListRequest(Google.Apis.Services.IClientService service) } - /// Logged-in user ID to impersonate instead of the user's ID. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.userId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataUserOverridesUserId { get; set; } + /// Experiment IDs the current request belongs to. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.experimentIds", Google.Apis.Util.RequestParameterType.Query)] + public virtual Google.Apis.Util.Repeatable RequestMetadataExperimentIds { get; set; } + + /// 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. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.trafficSource.trafficSubId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestMetadataTrafficSourceTrafficSubId { get; set; } + + /// How to order Leads. Currently, only `create_time` and `create_time desc` are + /// supported + [Google.Apis.Util.RequestParameterAttribute("orderBy", Google.Apis.Util.RequestParameterType.Query)] + public virtual string OrderBy { get; set; } /// Google Partners session ID. [Google.Apis.Util.RequestParameterAttribute("requestMetadata.partnersSessionId", Google.Apis.Util.RequestParameterType.Query)] public virtual string RequestMetadataPartnersSessionId { get; set; } + /// Logged-in user ID to impersonate instead of the user's ID. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.userId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestMetadataUserOverridesUserId { get; set; } + /// A token identifying a page of results that the server returns. Typically, this is the value of /// `ListLeadsResponse.next_page_token` returned from the previous call to ListLeads. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] @@ -1544,20 +1558,6 @@ public ListRequest(Google.Apis.Services.IClientService service) [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.ipAddress", Google.Apis.Util.RequestParameterType.Query)] public virtual string RequestMetadataUserOverridesIpAddress { get; set; } - /// Experiment IDs the current request belongs to. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.experimentIds", Google.Apis.Util.RequestParameterType.Query)] - public virtual Google.Apis.Util.Repeatable RequestMetadataExperimentIds { get; set; } - - /// 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. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.trafficSource.trafficSubId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataTrafficSourceTrafficSubId { get; set; } - - /// How to order Leads. Currently, only `create_time` and `create_time desc` are - /// supported - [Google.Apis.Util.RequestParameterAttribute("orderBy", Google.Apis.Util.RequestParameterType.Query)] - public virtual string OrderBy { get; set; } - ///Gets the method name. public override string MethodName @@ -1583,90 +1583,90 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "requestMetadata.userOverrides.userId", new Google.Apis.Discovery.Parameter + "requestMetadata.experimentIds", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.userOverrides.userId", + Name = "requestMetadata.experimentIds", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter + "requestMetadata.trafficSource.trafficSubId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.partnersSessionId", + Name = "requestMetadata.trafficSource.trafficSubId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "orderBy", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "orderBy", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "requestMetadata.partnersSessionId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.trafficSource.trafficSourceId", new Google.Apis.Discovery.Parameter + "requestMetadata.userOverrides.userId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.trafficSource.trafficSourceId", + Name = "requestMetadata.userOverrides.userId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.locale", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.locale", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.userOverrides.ipAddress", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.userOverrides.ipAddress", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.experimentIds", new Google.Apis.Discovery.Parameter + "requestMetadata.trafficSource.trafficSourceId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.experimentIds", + Name = "requestMetadata.trafficSource.trafficSourceId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.trafficSource.trafficSubId", new Google.Apis.Discovery.Parameter + "requestMetadata.locale", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.trafficSource.trafficSubId", + Name = "requestMetadata.locale", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "orderBy", new Google.Apis.Discovery.Parameter + "requestMetadata.userOverrides.ipAddress", new Google.Apis.Discovery.Parameter { - Name = "orderBy", + Name = "requestMetadata.userOverrides.ipAddress", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1927,6 +1927,10 @@ public ListRequest(Google.Apis.Services.IClientService service) } + /// IP address to use instead of the user's geo-located IP address. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.ipAddress", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestMetadataUserOverridesIpAddress { get; set; } + /// Experiment IDs the current request belongs to. [Google.Apis.Util.RequestParameterAttribute("requestMetadata.experimentIds", Google.Apis.Util.RequestParameterType.Query)] public virtual Google.Apis.Util.Repeatable RequestMetadataExperimentIds { get; set; } @@ -1953,10 +1957,6 @@ public ListRequest(Google.Apis.Services.IClientService service) [Google.Apis.Util.RequestParameterAttribute("requestMetadata.locale", Google.Apis.Util.RequestParameterType.Query)] public virtual string RequestMetadataLocale { get; set; } - /// IP address to use instead of the user's geo-located IP address. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.ipAddress", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataUserOverridesIpAddress { get; set; } - ///Gets the method name. public override string MethodName @@ -1981,6 +1981,15 @@ protected override void InitParameters() { base.InitParameters(); + RequestParameters.Add( + "requestMetadata.userOverrides.ipAddress", new Google.Apis.Discovery.Parameter + { + Name = "requestMetadata.userOverrides.ipAddress", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); RequestParameters.Add( "requestMetadata.experimentIds", new Google.Apis.Discovery.Parameter { @@ -2035,15 +2044,6 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add( - "requestMetadata.userOverrides.ipAddress", new Google.Apis.Discovery.Parameter - { - Name = "requestMetadata.userOverrides.ipAddress", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); } } @@ -2152,6 +2152,10 @@ public ListRequest(Google.Apis.Services.IClientService service) } + /// IP address to use instead of the user's geo-located IP address. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.ipAddress", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestMetadataUserOverridesIpAddress { get; set; } + /// Experiment IDs the current request belongs to. [Google.Apis.Util.RequestParameterAttribute("requestMetadata.experimentIds", Google.Apis.Util.RequestParameterType.Query)] public virtual Google.Apis.Util.Repeatable RequestMetadataExperimentIds { get; set; } @@ -2161,14 +2165,14 @@ public ListRequest(Google.Apis.Services.IClientService service) [Google.Apis.Util.RequestParameterAttribute("requestMetadata.trafficSource.trafficSubId", Google.Apis.Util.RequestParameterType.Query)] public virtual string RequestMetadataTrafficSourceTrafficSubId { get; set; } - /// Google Partners session ID. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.partnersSessionId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataPartnersSessionId { get; set; } - /// Logged-in user ID to impersonate instead of the user's ID. [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.userId", Google.Apis.Util.RequestParameterType.Query)] public virtual string RequestMetadataUserOverridesUserId { get; set; } + /// Google Partners session ID. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.partnersSessionId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestMetadataPartnersSessionId { get; set; } + /// Identifier to indicate where the traffic comes from. An identifier has multiple letters created /// by a team which redirected the traffic to us. [Google.Apis.Util.RequestParameterAttribute("requestMetadata.trafficSource.trafficSourceId", Google.Apis.Util.RequestParameterType.Query)] @@ -2178,10 +2182,6 @@ public ListRequest(Google.Apis.Services.IClientService service) [Google.Apis.Util.RequestParameterAttribute("requestMetadata.locale", Google.Apis.Util.RequestParameterType.Query)] public virtual string RequestMetadataLocale { get; set; } - /// IP address to use instead of the user's geo-located IP address. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.ipAddress", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataUserOverridesIpAddress { get; set; } - ///Gets the method name. public override string MethodName @@ -2207,27 +2207,27 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "requestMetadata.experimentIds", new Google.Apis.Discovery.Parameter + "requestMetadata.userOverrides.ipAddress", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.experimentIds", + Name = "requestMetadata.userOverrides.ipAddress", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.trafficSource.trafficSubId", new Google.Apis.Discovery.Parameter + "requestMetadata.experimentIds", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.trafficSource.trafficSubId", + Name = "requestMetadata.experimentIds", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter + "requestMetadata.trafficSource.trafficSubId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.partnersSessionId", + Name = "requestMetadata.trafficSource.trafficSubId", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2243,27 +2243,27 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "requestMetadata.trafficSource.trafficSourceId", new Google.Apis.Discovery.Parameter + "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.trafficSource.trafficSourceId", + Name = "requestMetadata.partnersSessionId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.locale", new Google.Apis.Discovery.Parameter + "requestMetadata.trafficSource.trafficSourceId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.locale", + Name = "requestMetadata.trafficSource.trafficSourceId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.userOverrides.ipAddress", new Google.Apis.Discovery.Parameter + "requestMetadata.locale", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.userOverrides.ipAddress", + Name = "requestMetadata.locale", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2315,14 +2315,23 @@ public CreateCompanyRelationRequest(Google.Apis.Services.IClientService service, [Google.Apis.Util.RequestParameterAttribute("userId", Google.Apis.Util.RequestParameterType.Path)] public virtual string UserId { get; private set; } - /// Logged-in user ID to impersonate instead of the user's ID. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.userId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataUserOverridesUserId { get; set; } + /// Experiment IDs the current request belongs to. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.experimentIds", Google.Apis.Util.RequestParameterType.Query)] + public virtual Google.Apis.Util.Repeatable RequestMetadataExperimentIds { get; set; } + + /// 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. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.trafficSource.trafficSubId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestMetadataTrafficSourceTrafficSubId { get; set; } /// Google Partners session ID. [Google.Apis.Util.RequestParameterAttribute("requestMetadata.partnersSessionId", Google.Apis.Util.RequestParameterType.Query)] public virtual string RequestMetadataPartnersSessionId { get; set; } + /// Logged-in user ID to impersonate instead of the user's ID. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.userId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestMetadataUserOverridesUserId { get; set; } + /// Identifier to indicate where the traffic comes from. An identifier has multiple letters created /// by a team which redirected the traffic to us. [Google.Apis.Util.RequestParameterAttribute("requestMetadata.trafficSource.trafficSourceId", Google.Apis.Util.RequestParameterType.Query)] @@ -2330,20 +2339,11 @@ public CreateCompanyRelationRequest(Google.Apis.Services.IClientService service, /// Locale to use for the current request. [Google.Apis.Util.RequestParameterAttribute("requestMetadata.locale", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataLocale { get; set; } - - /// IP address to use instead of the user's geo-located IP address. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.ipAddress", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataUserOverridesIpAddress { get; set; } - - /// Experiment IDs the current request belongs to. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.experimentIds", Google.Apis.Util.RequestParameterType.Query)] - public virtual Google.Apis.Util.Repeatable RequestMetadataExperimentIds { get; set; } + public virtual string RequestMetadataLocale { get; set; } - /// 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. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.trafficSource.trafficSubId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataTrafficSourceTrafficSubId { get; set; } + /// IP address to use instead of the user's geo-located IP address. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.ipAddress", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestMetadataUserOverridesIpAddress { get; set; } /// Gets or sets the body of this request. @@ -2385,63 +2385,63 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "requestMetadata.userOverrides.userId", new Google.Apis.Discovery.Parameter + "requestMetadata.experimentIds", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.userOverrides.userId", + Name = "requestMetadata.experimentIds", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter + "requestMetadata.trafficSource.trafficSubId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.partnersSessionId", + Name = "requestMetadata.trafficSource.trafficSubId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.trafficSource.trafficSourceId", new Google.Apis.Discovery.Parameter + "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.trafficSource.trafficSourceId", + Name = "requestMetadata.partnersSessionId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.locale", new Google.Apis.Discovery.Parameter + "requestMetadata.userOverrides.userId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.locale", + Name = "requestMetadata.userOverrides.userId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.userOverrides.ipAddress", new Google.Apis.Discovery.Parameter + "requestMetadata.trafficSource.trafficSourceId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.userOverrides.ipAddress", + Name = "requestMetadata.trafficSource.trafficSourceId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.experimentIds", new Google.Apis.Discovery.Parameter + "requestMetadata.locale", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.experimentIds", + Name = "requestMetadata.locale", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.trafficSource.trafficSubId", new Google.Apis.Discovery.Parameter + "requestMetadata.userOverrides.ipAddress", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.trafficSource.trafficSubId", + Name = "requestMetadata.userOverrides.ipAddress", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2474,15 +2474,6 @@ public DeleteCompanyRelationRequest(Google.Apis.Services.IClientService service, [Google.Apis.Util.RequestParameterAttribute("userId", Google.Apis.Util.RequestParameterType.Path)] public virtual string UserId { get; private set; } - /// Identifier to indicate where the traffic comes from. An identifier has multiple letters created - /// by a team which redirected the traffic to us. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.trafficSource.trafficSourceId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataTrafficSourceTrafficSourceId { get; set; } - - /// Locale to use for the current request. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.locale", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataLocale { get; set; } - /// IP address to use instead of the user's geo-located IP address. [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.ipAddress", Google.Apis.Util.RequestParameterType.Query)] public virtual string RequestMetadataUserOverridesIpAddress { get; set; } @@ -2504,6 +2495,15 @@ public DeleteCompanyRelationRequest(Google.Apis.Services.IClientService service, [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.userId", Google.Apis.Util.RequestParameterType.Query)] public virtual string RequestMetadataUserOverridesUserId { get; set; } + /// Identifier to indicate where the traffic comes from. An identifier has multiple letters created + /// by a team which redirected the traffic to us. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.trafficSource.trafficSourceId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestMetadataTrafficSourceTrafficSourceId { get; set; } + + /// Locale to use for the current request. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.locale", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestMetadataLocale { get; set; } + ///Gets the method name. public override string MethodName @@ -2538,63 +2538,63 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "requestMetadata.trafficSource.trafficSourceId", new Google.Apis.Discovery.Parameter + "requestMetadata.userOverrides.ipAddress", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.trafficSource.trafficSourceId", + Name = "requestMetadata.userOverrides.ipAddress", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.locale", new Google.Apis.Discovery.Parameter + "requestMetadata.experimentIds", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.locale", + Name = "requestMetadata.experimentIds", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.userOverrides.ipAddress", new Google.Apis.Discovery.Parameter + "requestMetadata.trafficSource.trafficSubId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.userOverrides.ipAddress", + Name = "requestMetadata.trafficSource.trafficSubId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.experimentIds", new Google.Apis.Discovery.Parameter + "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.experimentIds", + Name = "requestMetadata.partnersSessionId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.trafficSource.trafficSubId", new Google.Apis.Discovery.Parameter + "requestMetadata.userOverrides.userId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.trafficSource.trafficSubId", + Name = "requestMetadata.userOverrides.userId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter + "requestMetadata.trafficSource.trafficSourceId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.partnersSessionId", + Name = "requestMetadata.trafficSource.trafficSourceId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.userOverrides.userId", new Google.Apis.Discovery.Parameter + "requestMetadata.locale", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.userOverrides.userId", + Name = "requestMetadata.locale", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2627,14 +2627,6 @@ public GetRequest(Google.Apis.Services.IClientService service, string userId) [Google.Apis.Util.RequestParameterAttribute("userId", Google.Apis.Util.RequestParameterType.Path)] public virtual string UserId { get; private set; } - /// Locale to use for the current request. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.locale", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataLocale { get; set; } - - /// IP address to use instead of the user's geo-located IP address. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.ipAddress", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataUserOverridesIpAddress { get; set; } - /// Experiment IDs the current request belongs to. [Google.Apis.Util.RequestParameterAttribute("requestMetadata.experimentIds", Google.Apis.Util.RequestParameterType.Query)] public virtual Google.Apis.Util.Repeatable RequestMetadataExperimentIds { get; set; } @@ -2672,6 +2664,14 @@ public enum UserViewEnum [Google.Apis.Util.RequestParameterAttribute("requestMetadata.trafficSource.trafficSourceId", Google.Apis.Util.RequestParameterType.Query)] public virtual string RequestMetadataTrafficSourceTrafficSourceId { get; set; } + /// Locale to use for the current request. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.locale", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestMetadataLocale { get; set; } + + /// IP address to use instead of the user's geo-located IP address. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.ipAddress", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestMetadataUserOverridesIpAddress { get; set; } + ///Gets the method name. public override string MethodName @@ -2706,72 +2706,72 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "requestMetadata.locale", new Google.Apis.Discovery.Parameter + "requestMetadata.experimentIds", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.locale", + Name = "requestMetadata.experimentIds", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.userOverrides.ipAddress", new Google.Apis.Discovery.Parameter + "requestMetadata.trafficSource.trafficSubId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.userOverrides.ipAddress", + Name = "requestMetadata.trafficSource.trafficSubId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.experimentIds", new Google.Apis.Discovery.Parameter + "requestMetadata.userOverrides.userId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.experimentIds", + Name = "requestMetadata.userOverrides.userId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.trafficSource.trafficSubId", new Google.Apis.Discovery.Parameter + "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.trafficSource.trafficSubId", + Name = "requestMetadata.partnersSessionId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.userOverrides.userId", new Google.Apis.Discovery.Parameter + "userView", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.userOverrides.userId", + Name = "userView", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter + "requestMetadata.trafficSource.trafficSourceId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.partnersSessionId", + Name = "requestMetadata.trafficSource.trafficSourceId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "userView", new Google.Apis.Discovery.Parameter + "requestMetadata.locale", new Google.Apis.Discovery.Parameter { - Name = "userView", + Name = "requestMetadata.locale", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.trafficSource.trafficSourceId", new Google.Apis.Discovery.Parameter + "requestMetadata.userOverrides.ipAddress", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.trafficSource.trafficSourceId", + Name = "requestMetadata.userOverrides.ipAddress", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2802,14 +2802,14 @@ public UpdateProfileRequest(Google.Apis.Services.IClientService service, Google. } - /// Logged-in user ID to impersonate instead of the user's ID. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.userId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataUserOverridesUserId { get; set; } - /// Google Partners session ID. [Google.Apis.Util.RequestParameterAttribute("requestMetadata.partnersSessionId", Google.Apis.Util.RequestParameterType.Query)] public virtual string RequestMetadataPartnersSessionId { get; set; } + /// Logged-in user ID to impersonate instead of the user's ID. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.userId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestMetadataUserOverridesUserId { get; set; } + /// Identifier to indicate where the traffic comes from. An identifier has multiple letters created /// by a team which redirected the traffic to us. [Google.Apis.Util.RequestParameterAttribute("requestMetadata.trafficSource.trafficSourceId", Google.Apis.Util.RequestParameterType.Query)] @@ -2863,18 +2863,18 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "requestMetadata.userOverrides.userId", new Google.Apis.Discovery.Parameter + "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.userOverrides.userId", + Name = "requestMetadata.partnersSessionId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter + "requestMetadata.userOverrides.userId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.partnersSessionId", + Name = "requestMetadata.userOverrides.userId", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2965,6 +2965,11 @@ public GetPartnersstatusRequest(Google.Apis.Services.IClientService service) } + /// 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. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.trafficSource.trafficSubId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestMetadataTrafficSourceTrafficSubId { get; set; } + /// Google Partners session ID. [Google.Apis.Util.RequestParameterAttribute("requestMetadata.partnersSessionId", Google.Apis.Util.RequestParameterType.Query)] public virtual string RequestMetadataPartnersSessionId { get; set; } @@ -2990,11 +2995,6 @@ public GetPartnersstatusRequest(Google.Apis.Services.IClientService service) [Google.Apis.Util.RequestParameterAttribute("requestMetadata.experimentIds", Google.Apis.Util.RequestParameterType.Query)] public virtual Google.Apis.Util.Repeatable RequestMetadataExperimentIds { get; set; } - /// 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. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.trafficSource.trafficSubId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataTrafficSourceTrafficSubId { get; set; } - ///Gets the method name. public override string MethodName @@ -3019,6 +3019,15 @@ protected override void InitParameters() { base.InitParameters(); + RequestParameters.Add( + "requestMetadata.trafficSource.trafficSubId", new Google.Apis.Discovery.Parameter + { + Name = "requestMetadata.trafficSource.trafficSubId", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); RequestParameters.Add( "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter { @@ -3073,15 +3082,6 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add( - "requestMetadata.trafficSource.trafficSubId", new Google.Apis.Discovery.Parameter - { - Name = "requestMetadata.trafficSource.trafficSubId", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); } } @@ -3105,6 +3105,23 @@ public UpdateCompaniesRequest(Google.Apis.Services.IClientService service, Googl } + /// Logged-in user ID to impersonate instead of the user's ID. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.userId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestMetadataUserOverridesUserId { get; set; } + + /// Google Partners session ID. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.partnersSessionId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestMetadataPartnersSessionId { get; set; } + + /// Identifier to indicate where the traffic comes from. An identifier has multiple letters created + /// by a team which redirected the traffic to us. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.trafficSource.trafficSourceId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestMetadataTrafficSourceTrafficSourceId { get; set; } + + /// Locale to use for the current request. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.locale", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestMetadataLocale { get; set; } + /// IP address to use instead of the user's geo-located IP address. [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.ipAddress", Google.Apis.Util.RequestParameterType.Query)] public virtual string RequestMetadataUserOverridesIpAddress { get; set; } @@ -3123,23 +3140,6 @@ public UpdateCompaniesRequest(Google.Apis.Services.IClientService service, Googl [Google.Apis.Util.RequestParameterAttribute("requestMetadata.trafficSource.trafficSubId", Google.Apis.Util.RequestParameterType.Query)] public virtual string RequestMetadataTrafficSourceTrafficSubId { get; set; } - /// Google Partners session ID. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.partnersSessionId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataPartnersSessionId { get; set; } - - /// Logged-in user ID to impersonate instead of the user's ID. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.userId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataUserOverridesUserId { get; set; } - - /// Identifier to indicate where the traffic comes from. An identifier has multiple letters created - /// by a team which redirected the traffic to us. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.trafficSource.trafficSourceId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataTrafficSourceTrafficSourceId { get; set; } - - /// Locale to use for the current request. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.locale", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataLocale { get; set; } - /// Gets or sets the body of this request. Google.Apis.Partners.v2.Data.Company Body { get; set; } @@ -3171,72 +3171,72 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "requestMetadata.userOverrides.ipAddress", new Google.Apis.Discovery.Parameter + "requestMetadata.userOverrides.userId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.userOverrides.ipAddress", + Name = "requestMetadata.userOverrides.userId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "updateMask", new Google.Apis.Discovery.Parameter + "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter { - Name = "updateMask", + Name = "requestMetadata.partnersSessionId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.experimentIds", new Google.Apis.Discovery.Parameter + "requestMetadata.trafficSource.trafficSourceId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.experimentIds", + Name = "requestMetadata.trafficSource.trafficSourceId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.trafficSource.trafficSubId", new Google.Apis.Discovery.Parameter + "requestMetadata.locale", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.trafficSource.trafficSubId", + Name = "requestMetadata.locale", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter + "requestMetadata.userOverrides.ipAddress", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.partnersSessionId", + Name = "requestMetadata.userOverrides.ipAddress", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.userOverrides.userId", new Google.Apis.Discovery.Parameter + "updateMask", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.userOverrides.userId", + Name = "updateMask", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.trafficSource.trafficSourceId", new Google.Apis.Discovery.Parameter + "requestMetadata.experimentIds", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.trafficSource.trafficSourceId", + Name = "requestMetadata.experimentIds", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.locale", new Google.Apis.Discovery.Parameter + "requestMetadata.trafficSource.trafficSubId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.locale", + Name = "requestMetadata.trafficSource.trafficSubId", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -3265,14 +3265,14 @@ public UpdateLeadsRequest(Google.Apis.Services.IClientService service, Google.Ap } - /// Logged-in user ID to impersonate instead of the user's ID. - [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.userId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string RequestMetadataUserOverridesUserId { get; set; } - /// Google Partners session ID. [Google.Apis.Util.RequestParameterAttribute("requestMetadata.partnersSessionId", Google.Apis.Util.RequestParameterType.Query)] public virtual string RequestMetadataPartnersSessionId { get; set; } + /// Logged-in user ID to impersonate instead of the user's ID. + [Google.Apis.Util.RequestParameterAttribute("requestMetadata.userOverrides.userId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string RequestMetadataUserOverridesUserId { get; set; } + /// Identifier to indicate where the traffic comes from. An identifier has multiple letters created /// by a team which redirected the traffic to us. [Google.Apis.Util.RequestParameterAttribute("requestMetadata.trafficSource.trafficSourceId", Google.Apis.Util.RequestParameterType.Query)] @@ -3331,18 +3331,18 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "requestMetadata.userOverrides.userId", new Google.Apis.Discovery.Parameter + "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.userOverrides.userId", + Name = "requestMetadata.partnersSessionId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestMetadata.partnersSessionId", new Google.Apis.Discovery.Parameter + "requestMetadata.userOverrides.userId", new Google.Apis.Discovery.Parameter { - Name = "requestMetadata.partnersSessionId", + Name = "requestMetadata.userOverrides.userId", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Partners.v2/Google.Apis.Partners.v2.csproj b/Src/Generated/Google.Apis.Partners.v2/Google.Apis.Partners.v2.csproj index 3d60d373f8..0f29559dc6 100644 --- a/Src/Generated/Google.Apis.Partners.v2/Google.Apis.Partners.v2.csproj +++ b/Src/Generated/Google.Apis.Partners.v2/Google.Apis.Partners.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.Partners.v2 Client Library - 1.33.0.1217 + 1.33.1.1217 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/partners/v2 @@ -57,7 +58,7 @@ - + @@ -71,7 +72,7 @@ - + diff --git a/Src/Generated/Google.Apis.PeopleService.v1/Google.Apis.PeopleService.v1.cs b/Src/Generated/Google.Apis.PeopleService.v1/Google.Apis.PeopleService.v1.cs index a6888abd31..7c69841729 100644 --- a/Src/Generated/Google.Apis.PeopleService.v1/Google.Apis.PeopleService.v1.cs +++ b/Src/Generated/Google.Apis.PeopleService.v1/Google.Apis.PeopleService.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * People API * API Versionv1 - * API Rev20180507 (1222) + * API Rev20180508 (1223) * API Docs * * https://developers.google.com/people/ @@ -501,14 +501,14 @@ public BatchGetRequest(Google.Apis.Services.IClientService service) } - /// The resource names of the contact groups to get. - [Google.Apis.Util.RequestParameterAttribute("resourceNames", Google.Apis.Util.RequestParameterType.Query)] - public virtual Google.Apis.Util.Repeatable ResourceNames { get; set; } - /// Specifies the maximum number of members to return for each group. [Google.Apis.Util.RequestParameterAttribute("maxMembers", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable MaxMembers { get; set; } + /// The resource names of the contact groups to get. + [Google.Apis.Util.RequestParameterAttribute("resourceNames", Google.Apis.Util.RequestParameterType.Query)] + public virtual Google.Apis.Util.Repeatable ResourceNames { get; set; } + ///Gets the method name. public override string MethodName @@ -534,18 +534,18 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "resourceNames", new Google.Apis.Discovery.Parameter + "maxMembers", new Google.Apis.Discovery.Parameter { - Name = "resourceNames", + Name = "maxMembers", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "maxMembers", new Google.Apis.Discovery.Parameter + "resourceNames", new Google.Apis.Discovery.Parameter { - Name = "maxMembers", + Name = "resourceNames", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -777,10 +777,6 @@ public ListRequest(Google.Apis.Services.IClientService service) } - /// The maximum number of resources to return. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - /// A sync token, returned by a previous call to `contactgroups.list`. Only resources changed since /// the sync token was created will be returned. [Google.Apis.Util.RequestParameterAttribute("syncToken", Google.Apis.Util.RequestParameterType.Query)] @@ -792,6 +788,10 @@ public ListRequest(Google.Apis.Services.IClientService service) [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } + /// The maximum number of resources to return. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + ///Gets the method name. public override string MethodName @@ -817,27 +817,27 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "syncToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "syncToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "syncToken", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "syncToken", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -985,32 +985,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string resourceN [Google.Apis.Util.RequestParameterAttribute("resourceName", Google.Apis.Util.RequestParameterType.Path)] public virtual string ResourceName { get; private set; } - /// **Required.** Comma-separated list of person fields to be included in the response. Each - /// path should start with `person.`: for example, `person.names` or `person.photos`. - [Google.Apis.Util.RequestParameterAttribute("requestMask.includeField", Google.Apis.Util.RequestParameterType.Query)] - public virtual object RequestMaskIncludeField { get; set; } - - /// The number of connections to include in the response. Valid values are between 1 and 2000, - /// inclusive. Defaults to 100. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - - /// A sync token returned by a previous call to `people.connections.list`. Only resources - /// changed since the sync token was created will be returned. Sync requests that specify `sync_token` - /// have an additional rate limit. - [Google.Apis.Util.RequestParameterAttribute("syncToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string SyncToken { get; set; } - - /// **Required.** A field mask to restrict which fields on each person are returned. Multiple - /// fields can be specified by separating them with commas. Valid values are: - /// - /// * addresses * ageRanges * biographies * birthdays * braggingRights * coverPhotos * emailAddresses * - /// events * genders * imClients * interests * locales * memberships * metadata * names * nicknames * - /// occupations * organizations * phoneNumbers * photos * relations * relationshipInterests * - /// relationshipStatuses * residences * skills * taglines * urls - [Google.Apis.Util.RequestParameterAttribute("personFields", Google.Apis.Util.RequestParameterType.Query)] - public virtual object PersonFields { get; set; } - /// The order in which the connections should be sorted. Defaults to /// `LAST_MODIFIED_ASCENDING`. [Google.Apis.Util.RequestParameterAttribute("sortOrder", Google.Apis.Util.RequestParameterType.Query)] @@ -1038,6 +1012,32 @@ public enum SortOrderEnum [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } + /// The number of connections to include in the response. Valid values are between 1 and 2000, + /// inclusive. Defaults to 100. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + + /// **Required.** Comma-separated list of person fields to be included in the response. Each + /// path should start with `person.`: for example, `person.names` or `person.photos`. + [Google.Apis.Util.RequestParameterAttribute("requestMask.includeField", Google.Apis.Util.RequestParameterType.Query)] + public virtual object RequestMaskIncludeField { get; set; } + + /// A sync token returned by a previous call to `people.connections.list`. Only resources + /// changed since the sync token was created will be returned. Sync requests that specify `sync_token` + /// have an additional rate limit. + [Google.Apis.Util.RequestParameterAttribute("syncToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string SyncToken { get; set; } + + /// **Required.** A field mask to restrict which fields on each person are returned. Multiple + /// fields can be specified by separating them with commas. Valid values are: + /// + /// * addresses * ageRanges * biographies * birthdays * braggingRights * coverPhotos * emailAddresses * + /// events * genders * imClients * interests * locales * memberships * metadata * names * nicknames * + /// occupations * organizations * phoneNumbers * photos * relations * relationshipInterests * + /// relationshipStatuses * residences * skills * taglines * urls + [Google.Apis.Util.RequestParameterAttribute("personFields", Google.Apis.Util.RequestParameterType.Query)] + public virtual object PersonFields { get; set; } + ///Gets the method name. public override string MethodName @@ -1072,63 +1072,63 @@ protected override void InitParameters() Pattern = @"^people/[^/]+$", }); RequestParameters.Add( - "requestMask.includeField", new Google.Apis.Discovery.Parameter + "sortOrder", new Google.Apis.Discovery.Parameter { - Name = "requestMask.includeField", + Name = "sortOrder", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "requestSyncToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "requestSyncToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "syncToken", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "syncToken", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "personFields", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "personFields", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "sortOrder", new Google.Apis.Discovery.Parameter + "requestMask.includeField", new Google.Apis.Discovery.Parameter { - Name = "sortOrder", + Name = "requestMask.includeField", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "requestSyncToken", new Google.Apis.Discovery.Parameter + "syncToken", new Google.Apis.Discovery.Parameter { - Name = "requestSyncToken", + Name = "syncToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "personFields", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "personFields", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1303,11 +1303,6 @@ public GetRequest(Google.Apis.Services.IClientService service, string resourceNa [Google.Apis.Util.RequestParameterAttribute("resourceName", Google.Apis.Util.RequestParameterType.Path)] public virtual string ResourceName { get; private set; } - /// **Required.** Comma-separated list of person fields to be included in the response. Each path - /// should start with `person.`: for example, `person.names` or `person.photos`. - [Google.Apis.Util.RequestParameterAttribute("requestMask.includeField", Google.Apis.Util.RequestParameterType.Query)] - public virtual object RequestMaskIncludeField { get; set; } - /// **Required.** A field mask to restrict which fields on the person are returned. Multiple fields /// can be specified by separating them with commas. Valid values are: /// @@ -1318,6 +1313,11 @@ public GetRequest(Google.Apis.Services.IClientService service, string resourceNa [Google.Apis.Util.RequestParameterAttribute("personFields", Google.Apis.Util.RequestParameterType.Query)] public virtual object PersonFields { get; set; } + /// **Required.** Comma-separated list of person fields to be included in the response. Each path + /// should start with `person.`: for example, `person.names` or `person.photos`. + [Google.Apis.Util.RequestParameterAttribute("requestMask.includeField", Google.Apis.Util.RequestParameterType.Query)] + public virtual object RequestMaskIncludeField { get; set; } + ///Gets the method name. public override string MethodName @@ -1352,18 +1352,18 @@ protected override void InitParameters() Pattern = @"^people/[^/]+$", }); RequestParameters.Add( - "requestMask.includeField", new Google.Apis.Discovery.Parameter + "personFields", new Google.Apis.Discovery.Parameter { - Name = "requestMask.includeField", + Name = "personFields", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "personFields", new Google.Apis.Discovery.Parameter + "requestMask.includeField", new Google.Apis.Discovery.Parameter { - Name = "personFields", + Name = "requestMask.includeField", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1396,6 +1396,16 @@ public GetBatchGetRequest(Google.Apis.Services.IClientService service) } + /// **Required.** A field mask to restrict which fields on each person are returned. Multiple + /// fields can be specified by separating them with commas. Valid values are: + /// + /// * addresses * ageRanges * biographies * birthdays * braggingRights * coverPhotos * emailAddresses * + /// events * genders * imClients * interests * locales * memberships * metadata * names * nicknames * + /// occupations * organizations * phoneNumbers * photos * relations * relationshipInterests * + /// relationshipStatuses * residences * skills * taglines * urls + [Google.Apis.Util.RequestParameterAttribute("personFields", Google.Apis.Util.RequestParameterType.Query)] + public virtual object PersonFields { get; set; } + /// **Required.** Comma-separated list of person fields to be included in the response. Each path /// should start with `person.`: for example, `person.names` or `person.photos`. [Google.Apis.Util.RequestParameterAttribute("requestMask.includeField", Google.Apis.Util.RequestParameterType.Query)] @@ -1412,16 +1422,6 @@ public GetBatchGetRequest(Google.Apis.Services.IClientService service) [Google.Apis.Util.RequestParameterAttribute("resourceNames", Google.Apis.Util.RequestParameterType.Query)] public virtual Google.Apis.Util.Repeatable ResourceNames { get; set; } - /// **Required.** A field mask to restrict which fields on each person are returned. Multiple - /// fields can be specified by separating them with commas. Valid values are: - /// - /// * addresses * ageRanges * biographies * birthdays * braggingRights * coverPhotos * emailAddresses * - /// events * genders * imClients * interests * locales * memberships * metadata * names * nicknames * - /// occupations * organizations * phoneNumbers * photos * relations * relationshipInterests * - /// relationshipStatuses * residences * skills * taglines * urls - [Google.Apis.Util.RequestParameterAttribute("personFields", Google.Apis.Util.RequestParameterType.Query)] - public virtual object PersonFields { get; set; } - ///Gets the method name. public override string MethodName @@ -1447,27 +1447,27 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "requestMask.includeField", new Google.Apis.Discovery.Parameter + "personFields", new Google.Apis.Discovery.Parameter { - Name = "requestMask.includeField", + Name = "personFields", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "resourceNames", new Google.Apis.Discovery.Parameter + "requestMask.includeField", new Google.Apis.Discovery.Parameter { - Name = "resourceNames", + Name = "requestMask.includeField", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "personFields", new Google.Apis.Discovery.Parameter + "resourceNames", new Google.Apis.Discovery.Parameter { - Name = "personFields", + Name = "resourceNames", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.PeopleService.v1/Google.Apis.PeopleService.v1.csproj b/Src/Generated/Google.Apis.PeopleService.v1/Google.Apis.PeopleService.v1.csproj index e6ec396a85..f71685bac4 100644 --- a/Src/Generated/Google.Apis.PeopleService.v1/Google.Apis.PeopleService.v1.csproj +++ b/Src/Generated/Google.Apis.PeopleService.v1/Google.Apis.PeopleService.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.PeopleService.v1 Client Library - 1.33.0.1222 + 1.33.1.1223 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/people/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.PhotosLibrary.v1/Google.Apis.PhotosLibrary.v1.cs b/Src/Generated/Google.Apis.PhotosLibrary.v1/Google.Apis.PhotosLibrary.v1.cs index b40522dda4..9482d7c51f 100644 --- a/Src/Generated/Google.Apis.PhotosLibrary.v1/Google.Apis.PhotosLibrary.v1.cs +++ b/Src/Generated/Google.Apis.PhotosLibrary.v1/Google.Apis.PhotosLibrary.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -587,17 +587,17 @@ public ListRequest(Google.Apis.Services.IClientService service) } + /// Maximum number of albums to return in the response. The default number of albums to return at a + /// time is 20. The maximum page size is 50. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + /// A continuation token to get the next page of the results. Adding this to the request will /// return the rows after the pageToken. The pageToken should be the value returned in the nextPageToken /// parameter in the response to the listAlbums request. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } - /// Maximum number of albums to return in the response. The default number of albums to return at a - /// time is 20. The maximum page size is 50. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - ///Gets the method name. public override string MethodName @@ -623,18 +623,18 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1014,17 +1014,17 @@ public ListRequest(Google.Apis.Services.IClientService service) } + /// Maximum number of albums to return in the response. The default number of albums to return at a + /// time is 20. The maximum page size is 50. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + /// A continuation token to get the next page of the results. Adding this to the request will /// return the rows after the pageToken. The pageToken should be the value returned in the nextPageToken /// parameter in the response to the listSharedAlbums request. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } - /// Maximum number of albums to return in the response. The default number of albums to return at a - /// time is 20. The maximum page size is 50. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - ///Gets the method name. public override string MethodName @@ -1050,18 +1050,18 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.PhotosLibrary.v1/Google.Apis.PhotosLibrary.v1.csproj b/Src/Generated/Google.Apis.PhotosLibrary.v1/Google.Apis.PhotosLibrary.v1.csproj index 92492e5151..3be5b8effe 100644 --- a/Src/Generated/Google.Apis.PhotosLibrary.v1/Google.Apis.PhotosLibrary.v1.csproj +++ b/Src/Generated/Google.Apis.PhotosLibrary.v1/Google.Apis.PhotosLibrary.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.PhotosLibrary.v1 Client Library - 1.33.0.1223 + 1.33.1.1223 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/photoslibrary/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Playcustomapp.v1/Google.Apis.Playcustomapp.v1.cs b/Src/Generated/Google.Apis.Playcustomapp.v1/Google.Apis.Playcustomapp.v1.cs index a82800b76e..0af7a95750 100644 --- a/Src/Generated/Google.Apis.Playcustomapp.v1/Google.Apis.Playcustomapp.v1.cs +++ b/Src/Generated/Google.Apis.Playcustomapp.v1/Google.Apis.Playcustomapp.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Playcustomapp.v1/Google.Apis.Playcustomapp.v1.csproj b/Src/Generated/Google.Apis.Playcustomapp.v1/Google.Apis.Playcustomapp.v1.csproj index f8dbb292f2..3c2b535a22 100644 --- a/Src/Generated/Google.Apis.Playcustomapp.v1/Google.Apis.Playcustomapp.v1.csproj +++ b/Src/Generated/Google.Apis.Playcustomapp.v1/Google.Apis.Playcustomapp.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Playcustomapp.v1 Client Library - 1.33.0.903 + 1.33.1.903 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/playcustomapp/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Plus.v1/Google.Apis.Plus.v1.cs b/Src/Generated/Google.Apis.Plus.v1/Google.Apis.Plus.v1.cs index 96f145c411..7a6011e577 100644 --- a/Src/Generated/Google.Apis.Plus.v1/Google.Apis.Plus.v1.cs +++ b/Src/Generated/Google.Apis.Plus.v1/Google.Apis.Plus.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Google+ API * API Versionv1 - * API Rev20180424 (1209) + * API Rev20180507 (1222) * API Docs * * https://developers.google.com/+/api/ diff --git a/Src/Generated/Google.Apis.Plus.v1/Google.Apis.Plus.v1.csproj b/Src/Generated/Google.Apis.Plus.v1/Google.Apis.Plus.v1.csproj index fbac891c71..5779504ff7 100644 --- a/Src/Generated/Google.Apis.Plus.v1/Google.Apis.Plus.v1.csproj +++ b/Src/Generated/Google.Apis.Plus.v1/Google.Apis.Plus.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Plus.v1 Client Library - 1.33.0.1209 + 1.33.1.1222 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/plus/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.PlusDomains.v1/Google.Apis.PlusDomains.v1.cs b/Src/Generated/Google.Apis.PlusDomains.v1/Google.Apis.PlusDomains.v1.cs index b5e8ac30b3..6f3fe0f264 100644 --- a/Src/Generated/Google.Apis.PlusDomains.v1/Google.Apis.PlusDomains.v1.cs +++ b/Src/Generated/Google.Apis.PlusDomains.v1/Google.Apis.PlusDomains.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.PlusDomains.v1/Google.Apis.PlusDomains.v1.csproj b/Src/Generated/Google.Apis.PlusDomains.v1/Google.Apis.PlusDomains.v1.csproj index 87e5dfeffc..7f6fb1c0ef 100644 --- a/Src/Generated/Google.Apis.PlusDomains.v1/Google.Apis.PlusDomains.v1.csproj +++ b/Src/Generated/Google.Apis.PlusDomains.v1/Google.Apis.PlusDomains.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.PlusDomains.v1 Client Library - 1.33.0.1209 + 1.33.1.1209 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/plusDomains/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.PolyService.v1/Google.Apis.PolyService.v1.cs b/Src/Generated/Google.Apis.PolyService.v1/Google.Apis.PolyService.v1.cs index 4e8b0afeac..8a3699e303 100644 --- a/Src/Generated/Google.Apis.PolyService.v1/Google.Apis.PolyService.v1.cs +++ b/Src/Generated/Google.Apis.PolyService.v1/Google.Apis.PolyService.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -440,11 +440,14 @@ public ListRequest(Google.Apis.Services.IClientService service) } - /// Specifies a continuation token from a previous search whose results were split into multiple - /// pages. To get the next page, submit the same request specifying the value from - /// next_page_token. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } + /// Return only assets that have been curated by the Poly team. + [Google.Apis.Util.RequestParameterAttribute("curated", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable Curated { get; set; } + + /// Filter assets based on the specified category. Supported values are: `animals`, `architecture`, + /// `art`, `food`, `nature`, `objects`, `people`, `scenes`, `technology`, and `transport`. + [Google.Apis.Util.RequestParameterAttribute("category", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Category { get; set; } /// Returns assets that are of the specified complexity or less. Defaults to COMPLEX. For example, /// a request for MEDIUM assets also includes SIMPLE assets. @@ -465,6 +468,12 @@ public enum MaxComplexityEnum SIMPLE, } + /// Specifies a continuation token from a previous search whose results were split into multiple + /// pages. To get the next page, submit the same request specifying the value from + /// next_page_token. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + /// The maximum number of assets to be returned. This value must be between `1` and `100`. Defaults /// to `20`. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] @@ -485,15 +494,6 @@ public enum MaxComplexityEnum [Google.Apis.Util.RequestParameterAttribute("format", Google.Apis.Util.RequestParameterType.Query)] public virtual string Format { get; set; } - /// Return only assets that have been curated by the Poly team. - [Google.Apis.Util.RequestParameterAttribute("curated", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable Curated { get; set; } - - /// Filter assets based on the specified category. Supported values are: `animals`, `architecture`, - /// `art`, `food`, `nature`, `objects`, `people`, `scenes`, `technology`, and `transport`. - [Google.Apis.Util.RequestParameterAttribute("category", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Category { get; set; } - ///Gets the method name. public override string MethodName @@ -519,72 +519,72 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "curated", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "curated", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "maxComplexity", new Google.Apis.Discovery.Parameter + "category", new Google.Apis.Discovery.Parameter { - Name = "maxComplexity", + Name = "category", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "maxComplexity", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "maxComplexity", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "keywords", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "keywords", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "orderBy", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "orderBy", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "format", new Google.Apis.Discovery.Parameter + "keywords", new Google.Apis.Discovery.Parameter { - Name = "format", + Name = "keywords", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "curated", new Google.Apis.Discovery.Parameter + "orderBy", new Google.Apis.Discovery.Parameter { - Name = "curated", + Name = "orderBy", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "category", new Google.Apis.Discovery.Parameter + "format", new Google.Apis.Discovery.Parameter { - Name = "category", + Name = "format", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -666,17 +666,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } - /// Specifies a continuation token from a previous search whose results were split into - /// multiple pages. To get the next page, submit the same request specifying the value from - /// next_page_token. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - - /// The maximum number of assets to be returned. This value must be between `1` and `100`. - /// Defaults to `20`. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - /// The visibility of the assets to be returned. Defaults to VISIBILITY_UNSPECIFIED which /// returns all assets. [Google.Apis.Util.RequestParameterAttribute("visibility", Google.Apis.Util.RequestParameterType.Query)] @@ -705,6 +694,17 @@ public enum VisibilityEnum [Google.Apis.Util.RequestParameterAttribute("format", Google.Apis.Util.RequestParameterType.Query)] public virtual string Format { get; set; } + /// Specifies a continuation token from a previous search whose results were split into + /// multiple pages. To get the next page, submit the same request specifying the value from + /// next_page_token. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// The maximum number of assets to be returned. This value must be between `1` and `100`. + /// Defaults to `20`. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + ///Gets the method name. public override string MethodName @@ -739,45 +739,45 @@ protected override void InitParameters() Pattern = @"^users/[^/]+$", }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "visibility", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "visibility", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "orderBy", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "orderBy", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "visibility", new Google.Apis.Discovery.Parameter + "format", new Google.Apis.Discovery.Parameter { - Name = "visibility", + Name = "format", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "orderBy", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "orderBy", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "format", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "format", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.PolyService.v1/Google.Apis.PolyService.v1.csproj b/Src/Generated/Google.Apis.PolyService.v1/Google.Apis.PolyService.v1.csproj index 18810c0adb..0911ebf1ad 100644 --- a/Src/Generated/Google.Apis.PolyService.v1/Google.Apis.PolyService.v1.csproj +++ b/Src/Generated/Google.Apis.PolyService.v1/Google.Apis.PolyService.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.PolyService.v1 Client Library - 1.33.0.1222 + 1.33.1.1222 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/poly/v1 @@ -57,7 +58,7 @@ - + @@ -71,7 +72,7 @@ - + diff --git a/Src/Generated/Google.Apis.Proximitybeacon.v1beta1/Google.Apis.Proximitybeacon.v1beta1.cs b/Src/Generated/Google.Apis.Proximitybeacon.v1beta1/Google.Apis.Proximitybeacon.v1beta1.cs index 369b9d5e49..5f494b1100 100644 --- a/Src/Generated/Google.Apis.Proximitybeacon.v1beta1/Google.Apis.Proximitybeacon.v1beta1.cs +++ b/Src/Generated/Google.Apis.Proximitybeacon.v1beta1/Google.Apis.Proximitybeacon.v1beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -530,6 +530,11 @@ public BatchDeleteRequest(Google.Apis.Services.IClientService service, string be [Google.Apis.Util.RequestParameterAttribute("beaconName", Google.Apis.Util.RequestParameterType.Path)] public virtual string BeaconName { get; private set; } + /// Specifies the namespace and type of attachments to delete in `namespace/type` format. + /// Accepts `*` to specify "all types in all namespaces". Optional. + [Google.Apis.Util.RequestParameterAttribute("namespacedType", Google.Apis.Util.RequestParameterType.Query)] + public virtual string NamespacedType { get; set; } + /// The project id to delete beacon attachments under. This field can be used when "*" is /// specified to mean all attachment namespaces. Projects may have multiple attachments with multiple /// namespaces. If "*" is specified and the projectId string is empty, then the project making the @@ -537,11 +542,6 @@ public BatchDeleteRequest(Google.Apis.Services.IClientService service, string be [Google.Apis.Util.RequestParameterAttribute("projectId", Google.Apis.Util.RequestParameterType.Query)] public virtual string ProjectId { get; set; } - /// Specifies the namespace and type of attachments to delete in `namespace/type` format. - /// Accepts `*` to specify "all types in all namespaces". Optional. - [Google.Apis.Util.RequestParameterAttribute("namespacedType", Google.Apis.Util.RequestParameterType.Query)] - public virtual string NamespacedType { get; set; } - ///Gets the method name. public override string MethodName @@ -576,18 +576,18 @@ protected override void InitParameters() Pattern = @"^beacons/[^/]+$", }); RequestParameters.Add( - "projectId", new Google.Apis.Discovery.Parameter + "namespacedType", new Google.Apis.Discovery.Parameter { - Name = "projectId", + Name = "namespacedType", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "namespacedType", new Google.Apis.Discovery.Parameter + "projectId", new Google.Apis.Discovery.Parameter { - Name = "namespacedType", + Name = "projectId", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1577,6 +1577,10 @@ public ListRequest(Google.Apis.Services.IClientService service) } + /// A pagination token obtained from a previous request to list beacons. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + /// Filter query string that supports the following field filters: /// /// * **description:`""`** For example: **description:"Room 3"** Returns beacons whose description matches @@ -1629,10 +1633,6 @@ public ListRequest(Google.Apis.Services.IClientService service) [Google.Apis.Util.RequestParameterAttribute("projectId", Google.Apis.Util.RequestParameterType.Query)] public virtual string ProjectId { get; set; } - /// A pagination token obtained from a previous request to list beacons. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - ///Gets the method name. public override string MethodName @@ -1658,36 +1658,36 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "q", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "q", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "q", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "q", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "projectId", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "projectId", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "projectId", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "projectId", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Proximitybeacon.v1beta1/Google.Apis.Proximitybeacon.v1beta1.csproj b/Src/Generated/Google.Apis.Proximitybeacon.v1beta1/Google.Apis.Proximitybeacon.v1beta1.csproj index f52a9d4087..a187e306c7 100644 --- a/Src/Generated/Google.Apis.Proximitybeacon.v1beta1/Google.Apis.Proximitybeacon.v1beta1.csproj +++ b/Src/Generated/Google.Apis.Proximitybeacon.v1beta1/Google.Apis.Proximitybeacon.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.Proximitybeacon.v1beta1 Client Library - 1.33.0.1171 + 1.33.1.1171 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/proximitybeacon/v1beta1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Pubsub.v1/Google.Apis.Pubsub.v1.cs b/Src/Generated/Google.Apis.Pubsub.v1/Google.Apis.Pubsub.v1.cs index 33a18bf08b..093ba1fd3b 100644 --- a/Src/Generated/Google.Apis.Pubsub.v1/Google.Apis.Pubsub.v1.cs +++ b/Src/Generated/Google.Apis.Pubsub.v1/Google.Apis.Pubsub.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -2060,16 +2060,16 @@ public ListRequest(Google.Apis.Services.IClientService service, string topic) [Google.Apis.Util.RequestParameterAttribute("topic", Google.Apis.Util.RequestParameterType.Path)] public virtual string Topic { get; private set; } + /// Maximum number of snapshot names to return. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + /// The value returned by the last `ListTopicSnapshotsResponse`; indicates that this is a /// continuation of a prior `ListTopicSnapshots` call, and that the system should return the next /// page of data. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } - /// Maximum number of snapshot names to return. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - ///Gets the method name. public override string MethodName @@ -2104,18 +2104,18 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/topics/[^/]+$", }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Pubsub.v1/Google.Apis.Pubsub.v1.csproj b/Src/Generated/Google.Apis.Pubsub.v1/Google.Apis.Pubsub.v1.csproj index 4497df8671..89b4554fbc 100644 --- a/Src/Generated/Google.Apis.Pubsub.v1/Google.Apis.Pubsub.v1.csproj +++ b/Src/Generated/Google.Apis.Pubsub.v1/Google.Apis.Pubsub.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Pubsub.v1 Client Library - 1.33.0.1201 + 1.33.1.1201 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/pubsub/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Pubsub.v1beta1a/Google.Apis.Pubsub.v1beta1a.cs b/Src/Generated/Google.Apis.Pubsub.v1beta1a/Google.Apis.Pubsub.v1beta1a.cs index a07ed4dc7c..398adad0ca 100644 --- a/Src/Generated/Google.Apis.Pubsub.v1beta1a/Google.Apis.Pubsub.v1beta1a.cs +++ b/Src/Generated/Google.Apis.Pubsub.v1beta1a/Google.Apis.Pubsub.v1beta1a.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -1133,6 +1133,10 @@ public ListRequest(Google.Apis.Services.IClientService service) } + /// The value obtained in the last ListTopicsResponse for continuation. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + /// A valid label query expression. [Google.Apis.Util.RequestParameterAttribute("query", Google.Apis.Util.RequestParameterType.Query)] public virtual string Query { get; set; } @@ -1141,10 +1145,6 @@ public ListRequest(Google.Apis.Services.IClientService service) [Google.Apis.Util.RequestParameterAttribute("maxResults", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable MaxResults { get; set; } - /// The value obtained in the last ListTopicsResponse for continuation. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - ///Gets the method name. public override string MethodName @@ -1170,27 +1170,27 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "query", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "query", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "maxResults", new Google.Apis.Discovery.Parameter + "query", new Google.Apis.Discovery.Parameter { - Name = "maxResults", + Name = "query", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "maxResults", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "maxResults", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Pubsub.v1beta1a/Google.Apis.Pubsub.v1beta1a.csproj b/Src/Generated/Google.Apis.Pubsub.v1beta1a/Google.Apis.Pubsub.v1beta1a.csproj index 370b5f3972..888c626a5c 100644 --- a/Src/Generated/Google.Apis.Pubsub.v1beta1a/Google.Apis.Pubsub.v1beta1a.csproj +++ b/Src/Generated/Google.Apis.Pubsub.v1beta1a/Google.Apis.Pubsub.v1beta1a.csproj @@ -3,7 +3,7 @@ Google.Apis.Pubsub.v1beta1a Client Library - 1.33.0.1201 + 1.33.1.1201 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/pubsub/v1beta1a @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Pubsub.v1beta2/Google.Apis.Pubsub.v1beta2.cs b/Src/Generated/Google.Apis.Pubsub.v1beta2/Google.Apis.Pubsub.v1beta2.cs index 47e22628ef..04f3547cff 100644 --- a/Src/Generated/Google.Apis.Pubsub.v1beta2/Google.Apis.Pubsub.v1beta2.cs +++ b/Src/Generated/Google.Apis.Pubsub.v1beta2/Google.Apis.Pubsub.v1beta2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Pubsub.v1beta2/Google.Apis.Pubsub.v1beta2.csproj b/Src/Generated/Google.Apis.Pubsub.v1beta2/Google.Apis.Pubsub.v1beta2.csproj index d2778101ae..6cdeb97287 100644 --- a/Src/Generated/Google.Apis.Pubsub.v1beta2/Google.Apis.Pubsub.v1beta2.csproj +++ b/Src/Generated/Google.Apis.Pubsub.v1beta2/Google.Apis.Pubsub.v1beta2.csproj @@ -3,7 +3,7 @@ Google.Apis.Pubsub.v1beta2 Client Library - 1.33.0.1201 + 1.33.1.1201 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/pubsub/v1beta2 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Replicapool.v1beta1/Google.Apis.Replicapool.v1beta1.cs b/Src/Generated/Google.Apis.Replicapool.v1beta1/Google.Apis.Replicapool.v1beta1.cs index 5fe697b1ff..b5f18c1537 100644 --- a/Src/Generated/Google.Apis.Replicapool.v1beta1/Google.Apis.Replicapool.v1beta1.cs +++ b/Src/Generated/Google.Apis.Replicapool.v1beta1/Google.Apis.Replicapool.v1beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Replicapool.v1beta1/Google.Apis.Replicapool.v1beta1.csproj b/Src/Generated/Google.Apis.Replicapool.v1beta1/Google.Apis.Replicapool.v1beta1.csproj index d3b0c9630e..44e80ecc9f 100644 --- a/Src/Generated/Google.Apis.Replicapool.v1beta1/Google.Apis.Replicapool.v1beta1.csproj +++ b/Src/Generated/Google.Apis.Replicapool.v1beta1/Google.Apis.Replicapool.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.Replicapool.v1beta1 Client Library - 1.33.0.497 + 1.33.1.497 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/replicapool/v1beta1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Replicapool.v1beta2/Google.Apis.Replicapool.v1beta2.cs b/Src/Generated/Google.Apis.Replicapool.v1beta2/Google.Apis.Replicapool.v1beta2.cs index fcf4359135..e859637b0e 100644 --- a/Src/Generated/Google.Apis.Replicapool.v1beta2/Google.Apis.Replicapool.v1beta2.cs +++ b/Src/Generated/Google.Apis.Replicapool.v1beta2/Google.Apis.Replicapool.v1beta2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Replicapool.v1beta2/Google.Apis.Replicapool.v1beta2.csproj b/Src/Generated/Google.Apis.Replicapool.v1beta2/Google.Apis.Replicapool.v1beta2.csproj index 9084d735fa..7fe8d93568 100644 --- a/Src/Generated/Google.Apis.Replicapool.v1beta2/Google.Apis.Replicapool.v1beta2.csproj +++ b/Src/Generated/Google.Apis.Replicapool.v1beta2/Google.Apis.Replicapool.v1beta2.csproj @@ -3,7 +3,7 @@ Google.Apis.Replicapool.v1beta2 Client Library - 1.33.0.497 + 1.33.1.497 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/replicapool/v1beta2 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Replicapoolupdater.v1beta1/Google.Apis.Replicapoolupdater.v1beta1.cs b/Src/Generated/Google.Apis.Replicapoolupdater.v1beta1/Google.Apis.Replicapoolupdater.v1beta1.cs index bf4381bc07..e59f7a48b8 100644 --- a/Src/Generated/Google.Apis.Replicapoolupdater.v1beta1/Google.Apis.Replicapoolupdater.v1beta1.cs +++ b/Src/Generated/Google.Apis.Replicapoolupdater.v1beta1/Google.Apis.Replicapoolupdater.v1beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Replicapoolupdater.v1beta1/Google.Apis.Replicapoolupdater.v1beta1.csproj b/Src/Generated/Google.Apis.Replicapoolupdater.v1beta1/Google.Apis.Replicapoolupdater.v1beta1.csproj index 5cbbe24129..84c4742ace 100644 --- a/Src/Generated/Google.Apis.Replicapoolupdater.v1beta1/Google.Apis.Replicapoolupdater.v1beta1.csproj +++ b/Src/Generated/Google.Apis.Replicapoolupdater.v1beta1/Google.Apis.Replicapoolupdater.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.Replicapoolupdater.v1beta1 Client Library - 1.33.0.641 + 1.33.1.641 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/replicapoolupdater/v1beta1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Reseller.v1/Google.Apis.Reseller.v1.cs b/Src/Generated/Google.Apis.Reseller.v1/Google.Apis.Reseller.v1.cs index 435226c75a..2abbbcd264 100644 --- a/Src/Generated/Google.Apis.Reseller.v1/Google.Apis.Reseller.v1.cs +++ b/Src/Generated/Google.Apis.Reseller.v1/Google.Apis.Reseller.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Reseller.v1/Google.Apis.Reseller.v1.csproj b/Src/Generated/Google.Apis.Reseller.v1/Google.Apis.Reseller.v1.csproj index 08588dde89..0f54be6406 100644 --- a/Src/Generated/Google.Apis.Reseller.v1/Google.Apis.Reseller.v1.csproj +++ b/Src/Generated/Google.Apis.Reseller.v1/Google.Apis.Reseller.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Reseller.v1 Client Library - 1.33.0.789 + 1.33.1.789 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/reseller/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Resourceviews.v1beta1/Google.Apis.Resourceviews.v1beta1.cs b/Src/Generated/Google.Apis.Resourceviews.v1beta1/Google.Apis.Resourceviews.v1beta1.cs index 80d07de912..2e35f0f7fc 100644 --- a/Src/Generated/Google.Apis.Resourceviews.v1beta1/Google.Apis.Resourceviews.v1beta1.cs +++ b/Src/Generated/Google.Apis.Resourceviews.v1beta1/Google.Apis.Resourceviews.v1beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Resourceviews.v1beta1/Google.Apis.Resourceviews.v1beta1.csproj b/Src/Generated/Google.Apis.Resourceviews.v1beta1/Google.Apis.Resourceviews.v1beta1.csproj index ef00de86bc..6e9364f4b6 100644 --- a/Src/Generated/Google.Apis.Resourceviews.v1beta1/Google.Apis.Resourceviews.v1beta1.csproj +++ b/Src/Generated/Google.Apis.Resourceviews.v1beta1/Google.Apis.Resourceviews.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.Resourceviews.v1beta1 Client Library - 1.33.0.497 + 1.33.1.497 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/resourceviews/v1beta1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Resourceviews.v1beta2/Google.Apis.Resourceviews.v1beta2.cs b/Src/Generated/Google.Apis.Resourceviews.v1beta2/Google.Apis.Resourceviews.v1beta2.cs index dc6db36f32..e10e30b775 100644 --- a/Src/Generated/Google.Apis.Resourceviews.v1beta2/Google.Apis.Resourceviews.v1beta2.cs +++ b/Src/Generated/Google.Apis.Resourceviews.v1beta2/Google.Apis.Resourceviews.v1beta2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Resourceviews.v1beta2/Google.Apis.Resourceviews.v1beta2.csproj b/Src/Generated/Google.Apis.Resourceviews.v1beta2/Google.Apis.Resourceviews.v1beta2.csproj index 7a63f19693..91c544baa0 100644 --- a/Src/Generated/Google.Apis.Resourceviews.v1beta2/Google.Apis.Resourceviews.v1beta2.csproj +++ b/Src/Generated/Google.Apis.Resourceviews.v1beta2/Google.Apis.Resourceviews.v1beta2.csproj @@ -3,7 +3,7 @@ Google.Apis.Resourceviews.v1beta2 Client Library - 1.33.0.497 + 1.33.1.497 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/resourceviews/v1beta2 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.SQLAdmin.v1beta3/Google.Apis.SQLAdmin.v1beta3.cs b/Src/Generated/Google.Apis.SQLAdmin.v1beta3/Google.Apis.SQLAdmin.v1beta3.cs index 9b46c61273..d6afbecc27 100644 --- a/Src/Generated/Google.Apis.SQLAdmin.v1beta3/Google.Apis.SQLAdmin.v1beta3.cs +++ b/Src/Generated/Google.Apis.SQLAdmin.v1beta3/Google.Apis.SQLAdmin.v1beta3.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.SQLAdmin.v1beta3/Google.Apis.SQLAdmin.v1beta3.csproj b/Src/Generated/Google.Apis.SQLAdmin.v1beta3/Google.Apis.SQLAdmin.v1beta3.csproj index 0e51e3317b..8b31c96d37 100644 --- a/Src/Generated/Google.Apis.SQLAdmin.v1beta3/Google.Apis.SQLAdmin.v1beta3.csproj +++ b/Src/Generated/Google.Apis.SQLAdmin.v1beta3/Google.Apis.SQLAdmin.v1beta3.csproj @@ -3,7 +3,7 @@ Google.Apis.SQLAdmin.v1beta3 Client Library - 1.33.0.1168 + 1.33.1.1168 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/sqladmin/v1beta3 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.SQLAdmin.v1beta4/Google.Apis.SQLAdmin.v1beta4.cs b/Src/Generated/Google.Apis.SQLAdmin.v1beta4/Google.Apis.SQLAdmin.v1beta4.cs index b8a684c064..aea9e915b8 100644 --- a/Src/Generated/Google.Apis.SQLAdmin.v1beta4/Google.Apis.SQLAdmin.v1beta4.cs +++ b/Src/Generated/Google.Apis.SQLAdmin.v1beta4/Google.Apis.SQLAdmin.v1beta4.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.SQLAdmin.v1beta4/Google.Apis.SQLAdmin.v1beta4.csproj b/Src/Generated/Google.Apis.SQLAdmin.v1beta4/Google.Apis.SQLAdmin.v1beta4.csproj index 052db08a99..70536baadc 100644 --- a/Src/Generated/Google.Apis.SQLAdmin.v1beta4/Google.Apis.SQLAdmin.v1beta4.csproj +++ b/Src/Generated/Google.Apis.SQLAdmin.v1beta4/Google.Apis.SQLAdmin.v1beta4.csproj @@ -3,7 +3,7 @@ Google.Apis.SQLAdmin.v1beta4 Client Library - 1.33.0.1168 + 1.33.1.1168 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/sqladmin/v1beta4 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Safebrowsing.v4/Google.Apis.Safebrowsing.v4.cs b/Src/Generated/Google.Apis.Safebrowsing.v4/Google.Apis.Safebrowsing.v4.cs index db2a61d67a..a13b9efcca 100644 --- a/Src/Generated/Google.Apis.Safebrowsing.v4/Google.Apis.Safebrowsing.v4.cs +++ b/Src/Generated/Google.Apis.Safebrowsing.v4/Google.Apis.Safebrowsing.v4.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Safe Browsing API * API Versionv4 - * API Rev20180501 (1216) + * API Rev20180508 (1223) * API Docs * * https://developers.google.com/safe-browsing/ diff --git a/Src/Generated/Google.Apis.Safebrowsing.v4/Google.Apis.Safebrowsing.v4.csproj b/Src/Generated/Google.Apis.Safebrowsing.v4/Google.Apis.Safebrowsing.v4.csproj index da22f01f9f..452163b71e 100644 --- a/Src/Generated/Google.Apis.Safebrowsing.v4/Google.Apis.Safebrowsing.v4.csproj +++ b/Src/Generated/Google.Apis.Safebrowsing.v4/Google.Apis.Safebrowsing.v4.csproj @@ -3,7 +3,7 @@ Google.Apis.Safebrowsing.v4 Client Library - 1.33.0.1216 + 1.33.1.1223 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/safebrowsing/v4 @@ -57,7 +58,7 @@ - + @@ -71,7 +72,7 @@ - + diff --git a/Src/Generated/Google.Apis.Script.v1/Google.Apis.Script.v1.cs b/Src/Generated/Google.Apis.Script.v1/Google.Apis.Script.v1.cs index 2ba5e5f5e0..64914f5e2d 100644 --- a/Src/Generated/Google.Apis.Script.v1/Google.Apis.Script.v1.cs +++ b/Src/Generated/Google.Apis.Script.v1/Google.Apis.Script.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -423,16 +423,21 @@ public ListRequest(Google.Apis.Services.IClientService service) } - /// The token for continuing a previous list request on the next page. This should be set to the - /// value of `nextPageToken` from a previous response. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } + /// Optional field used to limit returned processes to those originating from projects with a + /// specific deployment ID. + [Google.Apis.Util.RequestParameterAttribute("userProcessFilter.deploymentId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string UserProcessFilterDeploymentId { get; set; } /// Optional field used to limit returned processes to those that completed on or before the given /// timestamp. [Google.Apis.Util.RequestParameterAttribute("userProcessFilter.endTime", Google.Apis.Util.RequestParameterType.Query)] public virtual object UserProcessFilterEndTime { get; set; } + /// The token for continuing a previous list request on the next page. This should be set to the + /// value of `nextPageToken` from a previous response. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + /// The maximum number of returned processes per page of results. Defaults to 50. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } @@ -442,11 +447,6 @@ public ListRequest(Google.Apis.Services.IClientService service) [Google.Apis.Util.RequestParameterAttribute("userProcessFilter.startTime", Google.Apis.Util.RequestParameterType.Query)] public virtual object UserProcessFilterStartTime { get; set; } - /// Optional field used to limit returned processes to those originating from projects with project - /// names containing a specific string. - [Google.Apis.Util.RequestParameterAttribute("userProcessFilter.projectName", Google.Apis.Util.RequestParameterType.Query)] - public virtual string UserProcessFilterProjectName { get; set; } - /// Optional field used to limit returned processes to those having one of the specified user /// access levels. [Google.Apis.Util.RequestParameterAttribute("userProcessFilter.userAccessLevels", Google.Apis.Util.RequestParameterType.Query)] @@ -468,6 +468,11 @@ public enum UserProcessFilterUserAccessLevelsEnum OWNER, } + /// Optional field used to limit returned processes to those originating from projects with project + /// names containing a specific string. + [Google.Apis.Util.RequestParameterAttribute("userProcessFilter.projectName", Google.Apis.Util.RequestParameterType.Query)] + public virtual string UserProcessFilterProjectName { get; set; } + /// Optional field used to limit returned processes to those originating from a script function /// with the given function name. [Google.Apis.Util.RequestParameterAttribute("userProcessFilter.functionName", Google.Apis.Util.RequestParameterType.Query)] @@ -532,11 +537,6 @@ public enum UserProcessFilterStatusesEnum DELAYED, } - /// Optional field used to limit returned processes to those originating from projects with a - /// specific deployment ID. - [Google.Apis.Util.RequestParameterAttribute("userProcessFilter.deploymentId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string UserProcessFilterDeploymentId { get; set; } - ///Gets the method name. public override string MethodName @@ -562,9 +562,9 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "userProcessFilter.deploymentId", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "userProcessFilter.deploymentId", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -579,6 +579,15 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); + RequestParameters.Add( + "pageToken", new Google.Apis.Discovery.Parameter + { + Name = "pageToken", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); RequestParameters.Add( "pageSize", new Google.Apis.Discovery.Parameter { @@ -598,18 +607,18 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "userProcessFilter.projectName", new Google.Apis.Discovery.Parameter + "userProcessFilter.userAccessLevels", new Google.Apis.Discovery.Parameter { - Name = "userProcessFilter.projectName", + Name = "userProcessFilter.userAccessLevels", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "userProcessFilter.userAccessLevels", new Google.Apis.Discovery.Parameter + "userProcessFilter.projectName", new Google.Apis.Discovery.Parameter { - Name = "userProcessFilter.userAccessLevels", + Name = "userProcessFilter.projectName", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -651,15 +660,6 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add( - "userProcessFilter.deploymentId", new Google.Apis.Discovery.Parameter - { - Name = "userProcessFilter.deploymentId", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); } } @@ -683,20 +683,6 @@ public ListScriptProcessesRequest(Google.Apis.Services.IClientService service) } - /// The token for continuing a previous list request on the next page. This should be set to the - /// value of `nextPageToken` from a previous response. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - - /// The maximum number of returned processes per page of results. Defaults to 50. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - - /// Optional field used to limit returned processes to those that completed on or before the given - /// timestamp. - [Google.Apis.Util.RequestParameterAttribute("scriptProcessFilter.endTime", Google.Apis.Util.RequestParameterType.Query)] - public virtual object ScriptProcessFilterEndTime { get; set; } - /// Optional field used to limit returned processes to those having one of the specified user /// access levels. [Google.Apis.Util.RequestParameterAttribute("scriptProcessFilter.userAccessLevels", Google.Apis.Util.RequestParameterType.Query)] @@ -747,16 +733,16 @@ public enum ScriptProcessFilterStatusesEnum DELAYED, } - /// Optional field used to limit returned processes to those that were started on or after the - /// given timestamp. - [Google.Apis.Util.RequestParameterAttribute("scriptProcessFilter.startTime", Google.Apis.Util.RequestParameterType.Query)] - public virtual object ScriptProcessFilterStartTime { get; set; } - /// Optional field used to limit returned processes to those originating from a script function /// with the given function name. [Google.Apis.Util.RequestParameterAttribute("scriptProcessFilter.functionName", Google.Apis.Util.RequestParameterType.Query)] public virtual string ScriptProcessFilterFunctionName { get; set; } + /// Optional field used to limit returned processes to those that were started on or after the + /// given timestamp. + [Google.Apis.Util.RequestParameterAttribute("scriptProcessFilter.startTime", Google.Apis.Util.RequestParameterType.Query)] + public virtual object ScriptProcessFilterStartTime { get; set; } + /// Optional field used to limit returned processes to those originating from projects with a /// specific deployment ID. [Google.Apis.Util.RequestParameterAttribute("scriptProcessFilter.deploymentId", Google.Apis.Util.RequestParameterType.Query)] @@ -791,6 +777,20 @@ public enum ScriptProcessFilterTypesEnum EDITOR, } + /// The token for continuing a previous list request on the next page. This should be set to the + /// value of `nextPageToken` from a previous response. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// The maximum number of returned processes per page of results. Defaults to 50. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + + /// Optional field used to limit returned processes to those that completed on or before the given + /// timestamp. + [Google.Apis.Util.RequestParameterAttribute("scriptProcessFilter.endTime", Google.Apis.Util.RequestParameterType.Query)] + public virtual object ScriptProcessFilterEndTime { get; set; } + ///Gets the method name. public override string MethodName @@ -816,90 +816,90 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "scriptProcessFilter.userAccessLevels", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "scriptProcessFilter.userAccessLevels", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "scriptProcessFilter.statuses", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "scriptProcessFilter.statuses", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "scriptProcessFilter.endTime", new Google.Apis.Discovery.Parameter + "scriptProcessFilter.functionName", new Google.Apis.Discovery.Parameter { - Name = "scriptProcessFilter.endTime", + Name = "scriptProcessFilter.functionName", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "scriptProcessFilter.userAccessLevels", new Google.Apis.Discovery.Parameter + "scriptProcessFilter.startTime", new Google.Apis.Discovery.Parameter { - Name = "scriptProcessFilter.userAccessLevels", + Name = "scriptProcessFilter.startTime", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "scriptProcessFilter.statuses", new Google.Apis.Discovery.Parameter + "scriptProcessFilter.deploymentId", new Google.Apis.Discovery.Parameter { - Name = "scriptProcessFilter.statuses", + Name = "scriptProcessFilter.deploymentId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "scriptProcessFilter.startTime", new Google.Apis.Discovery.Parameter + "scriptId", new Google.Apis.Discovery.Parameter { - Name = "scriptProcessFilter.startTime", + Name = "scriptId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "scriptProcessFilter.functionName", new Google.Apis.Discovery.Parameter + "scriptProcessFilter.types", new Google.Apis.Discovery.Parameter { - Name = "scriptProcessFilter.functionName", + Name = "scriptProcessFilter.types", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "scriptProcessFilter.deploymentId", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "scriptProcessFilter.deploymentId", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "scriptId", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "scriptId", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "scriptProcessFilter.types", new Google.Apis.Discovery.Parameter + "scriptProcessFilter.endTime", new Google.Apis.Discovery.Parameter { - Name = "scriptProcessFilter.types", + Name = "scriptProcessFilter.endTime", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1533,15 +1533,15 @@ public ListRequest(Google.Apis.Services.IClientService service, string scriptId) [Google.Apis.Util.RequestParameterAttribute("scriptId", Google.Apis.Util.RequestParameterType.Path)] public virtual string ScriptId { get; private set; } - /// The maximum number of versions on each returned page. Defaults to 50. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - /// The token for continuing a previous list request on the next page. This should be set to /// the value of `nextPageToken` from a previous response. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } + /// The maximum number of versions on each returned page. Defaults to 50. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + ///Gets the method name. public override string MethodName @@ -1576,18 +1576,18 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Script.v1/Google.Apis.Script.v1.csproj b/Src/Generated/Google.Apis.Script.v1/Google.Apis.Script.v1.csproj index a7f0184f63..720c01f14f 100644 --- a/Src/Generated/Google.Apis.Script.v1/Google.Apis.Script.v1.csproj +++ b/Src/Generated/Google.Apis.Script.v1/Google.Apis.Script.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Script.v1 Client Library - 1.33.0.1221 + 1.33.1.1221 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/script/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.SearchConsole.v1/Google.Apis.SearchConsole.v1.cs b/Src/Generated/Google.Apis.SearchConsole.v1/Google.Apis.SearchConsole.v1.cs index 51080a9881..26217b2d1d 100644 --- a/Src/Generated/Google.Apis.SearchConsole.v1/Google.Apis.SearchConsole.v1.cs +++ b/Src/Generated/Google.Apis.SearchConsole.v1/Google.Apis.SearchConsole.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.SearchConsole.v1/Google.Apis.SearchConsole.v1.csproj b/Src/Generated/Google.Apis.SearchConsole.v1/Google.Apis.SearchConsole.v1.csproj index c73441873b..a8183054c8 100644 --- a/Src/Generated/Google.Apis.SearchConsole.v1/Google.Apis.SearchConsole.v1.csproj +++ b/Src/Generated/Google.Apis.SearchConsole.v1/Google.Apis.SearchConsole.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.SearchConsole.v1 Client Library - 1.33.0.1222 + 1.33.1.1222 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/searchconsole/v1 @@ -57,7 +58,7 @@ - + @@ -71,7 +72,7 @@ - + diff --git a/Src/Generated/Google.Apis.ServiceBroker.v1/Google.Apis.ServiceBroker.v1.cs b/Src/Generated/Google.Apis.ServiceBroker.v1/Google.Apis.ServiceBroker.v1.cs index f12c1234da..7e5c08cbc1 100644 --- a/Src/Generated/Google.Apis.ServiceBroker.v1/Google.Apis.ServiceBroker.v1.cs +++ b/Src/Generated/Google.Apis.ServiceBroker.v1/Google.Apis.ServiceBroker.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Service Broker API * API Versionv1 - * API Rev20180504 (1219) + * API Rev20180509 (1224) * API Docs * * https://cloud.google.com/kubernetes-engine/docs/concepts/add-on/service-broker diff --git a/Src/Generated/Google.Apis.ServiceBroker.v1/Google.Apis.ServiceBroker.v1.csproj b/Src/Generated/Google.Apis.ServiceBroker.v1/Google.Apis.ServiceBroker.v1.csproj index 123be8d9eb..a0f4d77fce 100644 --- a/Src/Generated/Google.Apis.ServiceBroker.v1/Google.Apis.ServiceBroker.v1.csproj +++ b/Src/Generated/Google.Apis.ServiceBroker.v1/Google.Apis.ServiceBroker.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.ServiceBroker.v1 Client Library - 1.33.0.1219 + 1.33.1.1224 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/servicebroker/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.ServiceBroker.v1alpha1/Google.Apis.ServiceBroker.v1alpha1.cs b/Src/Generated/Google.Apis.ServiceBroker.v1alpha1/Google.Apis.ServiceBroker.v1alpha1.cs index b4404847af..a49b2ad8fc 100644 --- a/Src/Generated/Google.Apis.ServiceBroker.v1alpha1/Google.Apis.ServiceBroker.v1alpha1.cs +++ b/Src/Generated/Google.Apis.ServiceBroker.v1alpha1/Google.Apis.ServiceBroker.v1alpha1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Service Broker API * API Versionv1alpha1 - * API Rev20180504 (1219) + * API Rev20180509 (1224) * API Docs * * https://cloud.google.com/kubernetes-engine/docs/concepts/add-on/service-broker @@ -1188,14 +1188,14 @@ public GetRequest(Google.Apis.Services.IClientService service, string parent, st [Google.Apis.Util.RequestParameterAttribute("bindingId", Google.Apis.Util.RequestParameterType.Path)] public virtual string BindingId { get; private set; } - /// Plan id. - [Google.Apis.Util.RequestParameterAttribute("planId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PlanId { get; set; } - /// Service id. [Google.Apis.Util.RequestParameterAttribute("serviceId", Google.Apis.Util.RequestParameterType.Query)] public virtual string ServiceId { get; set; } + /// Plan id. + [Google.Apis.Util.RequestParameterAttribute("planId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PlanId { get; set; } + ///Gets the method name. public override string MethodName @@ -1248,18 +1248,18 @@ protected override void InitParameters() Pattern = @"^[^/]+$", }); RequestParameters.Add( - "planId", new Google.Apis.Discovery.Parameter + "serviceId", new Google.Apis.Discovery.Parameter { - Name = "planId", + Name = "serviceId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "serviceId", new Google.Apis.Discovery.Parameter + "planId", new Google.Apis.Discovery.Parameter { - Name = "serviceId", + Name = "planId", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1734,6 +1734,10 @@ public GetLastOperationRequest(Google.Apis.Services.IClientService service, stri [Google.Apis.Util.RequestParameterAttribute("instanceId", Google.Apis.Util.RequestParameterType.Path)] public virtual string InstanceId { get; private set; } + /// Plan id. + [Google.Apis.Util.RequestParameterAttribute("planId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PlanId { get; set; } + /// Service id. [Google.Apis.Util.RequestParameterAttribute("serviceId", Google.Apis.Util.RequestParameterType.Query)] public virtual string ServiceId { get; set; } @@ -1743,10 +1747,6 @@ public GetLastOperationRequest(Google.Apis.Services.IClientService service, stri [Google.Apis.Util.RequestParameterAttribute("operation", Google.Apis.Util.RequestParameterType.Query)] public virtual string Operation { get; set; } - /// Plan id. - [Google.Apis.Util.RequestParameterAttribute("planId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PlanId { get; set; } - ///Gets the method name. public override string MethodName @@ -1790,27 +1790,27 @@ protected override void InitParameters() Pattern = @"^[^/]+$", }); RequestParameters.Add( - "serviceId", new Google.Apis.Discovery.Parameter + "planId", new Google.Apis.Discovery.Parameter { - Name = "serviceId", + Name = "planId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "operation", new Google.Apis.Discovery.Parameter + "serviceId", new Google.Apis.Discovery.Parameter { - Name = "operation", + Name = "serviceId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "planId", new Google.Apis.Discovery.Parameter + "operation", new Google.Apis.Discovery.Parameter { - Name = "planId", + Name = "operation", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.ServiceBroker.v1alpha1/Google.Apis.ServiceBroker.v1alpha1.csproj b/Src/Generated/Google.Apis.ServiceBroker.v1alpha1/Google.Apis.ServiceBroker.v1alpha1.csproj index ae326d51ab..ff2a126a81 100644 --- a/Src/Generated/Google.Apis.ServiceBroker.v1alpha1/Google.Apis.ServiceBroker.v1alpha1.csproj +++ b/Src/Generated/Google.Apis.ServiceBroker.v1alpha1/Google.Apis.ServiceBroker.v1alpha1.csproj @@ -3,7 +3,7 @@ Google.Apis.ServiceBroker.v1alpha1 Client Library - 1.33.0.1219 + 1.33.1.1224 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/servicebroker/v1alpha1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.ServiceBroker.v1beta1/Google.Apis.ServiceBroker.v1beta1.cs b/Src/Generated/Google.Apis.ServiceBroker.v1beta1/Google.Apis.ServiceBroker.v1beta1.cs index ed8023353c..ac4c0c8b0b 100644 --- a/Src/Generated/Google.Apis.ServiceBroker.v1beta1/Google.Apis.ServiceBroker.v1beta1.cs +++ b/Src/Generated/Google.Apis.ServiceBroker.v1beta1/Google.Apis.ServiceBroker.v1beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Service Broker API * API Versionv1beta1 - * API Rev20180504 (1219) + * API Rev20180509 (1224) * API Docs * * https://cloud.google.com/kubernetes-engine/docs/concepts/add-on/service-broker @@ -833,17 +833,17 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } - /// Specifies a page token to use. Set `pageToken` to a `nextPageToken` returned by a - /// previous list request to get the next page of results. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// Specifies the number of results to return per page. If there are fewer elements than /// the specified number, returns all elements. Optional. Acceptable values are 0 to 200, inclusive. /// (Default: 100) [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// Specifies a page token to use. Set `pageToken` to a `nextPageToken` returned by a + /// previous list request to get the next page of results. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + ///Gets the method name. public override string MethodName @@ -878,18 +878,18 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/brokers/[^/]+$", }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1224,6 +1224,10 @@ public DeleteRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } + /// The plan id of the service instance. + [Google.Apis.Util.RequestParameterAttribute("planId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PlanId { get; set; } + /// Additional query parameter hints. The service id of the service /// instance. [Google.Apis.Util.RequestParameterAttribute("serviceId", Google.Apis.Util.RequestParameterType.Query)] @@ -1233,10 +1237,6 @@ public DeleteRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("acceptsIncomplete", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable AcceptsIncomplete { get; set; } - /// The plan id of the service instance. - [Google.Apis.Util.RequestParameterAttribute("planId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PlanId { get; set; } - ///Gets the method name. public override string MethodName @@ -1271,27 +1271,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/brokers/[^/]+/v2/service_instances/[^/]+/service_bindings/[^/]+$", }); RequestParameters.Add( - "serviceId", new Google.Apis.Discovery.Parameter + "planId", new Google.Apis.Discovery.Parameter { - Name = "serviceId", + Name = "planId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "acceptsIncomplete", new Google.Apis.Discovery.Parameter + "serviceId", new Google.Apis.Discovery.Parameter { - Name = "acceptsIncomplete", + Name = "serviceId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "planId", new Google.Apis.Discovery.Parameter + "acceptsIncomplete", new Google.Apis.Discovery.Parameter { - Name = "planId", + Name = "acceptsIncomplete", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1326,14 +1326,14 @@ public GetRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } - /// Service id. - [Google.Apis.Util.RequestParameterAttribute("serviceId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string ServiceId { get; set; } - /// Plan id. [Google.Apis.Util.RequestParameterAttribute("planId", Google.Apis.Util.RequestParameterType.Query)] public virtual string PlanId { get; set; } + /// Service id. + [Google.Apis.Util.RequestParameterAttribute("serviceId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string ServiceId { get; set; } + ///Gets the method name. public override string MethodName @@ -1368,18 +1368,18 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/brokers/[^/]+/v2/service_instances/[^/]+/service_bindings/[^/]+$", }); RequestParameters.Add( - "serviceId", new Google.Apis.Discovery.Parameter + "planId", new Google.Apis.Discovery.Parameter { - Name = "serviceId", + Name = "planId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "planId", new Google.Apis.Discovery.Parameter + "serviceId", new Google.Apis.Discovery.Parameter { - Name = "planId", + Name = "serviceId", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1813,10 +1813,6 @@ public GetLastOperationRequest(Google.Apis.Services.IClientService service, stri [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } - /// Service id. - [Google.Apis.Util.RequestParameterAttribute("serviceId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string ServiceId { get; set; } - /// If `operation` was returned during mutation operation, this field must be populated /// with the provided value. [Google.Apis.Util.RequestParameterAttribute("operation", Google.Apis.Util.RequestParameterType.Query)] @@ -1826,6 +1822,10 @@ public GetLastOperationRequest(Google.Apis.Services.IClientService service, stri [Google.Apis.Util.RequestParameterAttribute("planId", Google.Apis.Util.RequestParameterType.Query)] public virtual string PlanId { get; set; } + /// Service id. + [Google.Apis.Util.RequestParameterAttribute("serviceId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string ServiceId { get; set; } + ///Gets the method name. public override string MethodName @@ -1860,27 +1860,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/brokers/[^/]+/v2/service_instances/[^/]+$", }); RequestParameters.Add( - "serviceId", new Google.Apis.Discovery.Parameter + "operation", new Google.Apis.Discovery.Parameter { - Name = "serviceId", + Name = "operation", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "operation", new Google.Apis.Discovery.Parameter + "planId", new Google.Apis.Discovery.Parameter { - Name = "operation", + Name = "planId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "planId", new Google.Apis.Discovery.Parameter + "serviceId", new Google.Apis.Discovery.Parameter { - Name = "planId", + Name = "serviceId", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.ServiceBroker.v1beta1/Google.Apis.ServiceBroker.v1beta1.csproj b/Src/Generated/Google.Apis.ServiceBroker.v1beta1/Google.Apis.ServiceBroker.v1beta1.csproj index e868ae7064..bbc8352abd 100644 --- a/Src/Generated/Google.Apis.ServiceBroker.v1beta1/Google.Apis.ServiceBroker.v1beta1.csproj +++ b/Src/Generated/Google.Apis.ServiceBroker.v1beta1/Google.Apis.ServiceBroker.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.ServiceBroker.v1beta1 Client Library - 1.33.0.1219 + 1.33.1.1224 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/servicebroker/v1beta1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.ServiceConsumerManagement.v1/Google.Apis.ServiceConsumerManagement.v1.cs b/Src/Generated/Google.Apis.ServiceConsumerManagement.v1/Google.Apis.ServiceConsumerManagement.v1.cs index c671af5f32..257f63b367 100644 --- a/Src/Generated/Google.Apis.ServiceConsumerManagement.v1/Google.Apis.ServiceConsumerManagement.v1.cs +++ b/Src/Generated/Google.Apis.ServiceConsumerManagement.v1/Google.Apis.ServiceConsumerManagement.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Service Consumer Management API * API Versionv1 - * API Rev20180506 (1221) + * API Rev20180509 (1224) * API Docs * * https://cloud.google.com/service-consumer-management/docs/overview @@ -609,10 +609,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } - /// The standard list filter. - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - /// The standard list page token. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } @@ -621,6 +617,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// The standard list filter. + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + ///Gets the method name. public override string MethodName @@ -655,27 +655,27 @@ protected override void InitParameters() Pattern = @"^operations$", }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -970,10 +970,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } - /// Filter expression over tenancy resources field. Optional. - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - /// 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. @@ -984,6 +980,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// Filter expression over tenancy resources field. Optional. + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + ///Gets the method name. public override string MethodName @@ -1018,27 +1018,27 @@ protected override void InitParameters() Pattern = @"^services/[^/]+/[^/]+/[^/]+$", }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.ServiceConsumerManagement.v1/Google.Apis.ServiceConsumerManagement.v1.csproj b/Src/Generated/Google.Apis.ServiceConsumerManagement.v1/Google.Apis.ServiceConsumerManagement.v1.csproj index 1d841600d7..d99d9fc8f6 100644 --- a/Src/Generated/Google.Apis.ServiceConsumerManagement.v1/Google.Apis.ServiceConsumerManagement.v1.csproj +++ b/Src/Generated/Google.Apis.ServiceConsumerManagement.v1/Google.Apis.ServiceConsumerManagement.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.ServiceConsumerManagement.v1 Client Library - 1.33.0.1221 + 1.33.1.1224 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/serviceconsumermanagement/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.ServiceControl.v1/Google.Apis.ServiceControl.v1.cs b/Src/Generated/Google.Apis.ServiceControl.v1/Google.Apis.ServiceControl.v1.cs index 2f9794574d..c574a0f1b2 100644 --- a/Src/Generated/Google.Apis.ServiceControl.v1/Google.Apis.ServiceControl.v1.cs +++ b/Src/Generated/Google.Apis.ServiceControl.v1/Google.Apis.ServiceControl.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Service Control API * API Versionv1 - * API Rev20180430 (1215) + * API Rev20180507 (1222) * API Docs * * https://cloud.google.com/service-control/ diff --git a/Src/Generated/Google.Apis.ServiceControl.v1/Google.Apis.ServiceControl.v1.csproj b/Src/Generated/Google.Apis.ServiceControl.v1/Google.Apis.ServiceControl.v1.csproj index d8f9c1197d..8d9067691a 100644 --- a/Src/Generated/Google.Apis.ServiceControl.v1/Google.Apis.ServiceControl.v1.csproj +++ b/Src/Generated/Google.Apis.ServiceControl.v1/Google.Apis.ServiceControl.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.ServiceControl.v1 Client Library - 1.33.0.1215 + 1.33.1.1222 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/servicecontrol/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.ServiceManagement.v1/Google.Apis.ServiceManagement.v1.cs b/Src/Generated/Google.Apis.ServiceManagement.v1/Google.Apis.ServiceManagement.v1.cs index 3756284cb4..428ac774b2 100644 --- a/Src/Generated/Google.Apis.ServiceManagement.v1/Google.Apis.ServiceManagement.v1.cs +++ b/Src/Generated/Google.Apis.ServiceManagement.v1/Google.Apis.ServiceManagement.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Service Management API * API Versionv1 - * API Rev20180501 (1216) + * API Rev20180504 (1219) * API Docs * * https://cloud.google.com/service-management/ @@ -1926,6 +1926,10 @@ public GetConfigRequest(Google.Apis.Services.IClientService service, string serv [Google.Apis.Util.RequestParameterAttribute("serviceName", Google.Apis.Util.RequestParameterType.Path)] public virtual string ServiceName { get; private set; } + /// The id of the service configuration resource. + [Google.Apis.Util.RequestParameterAttribute("configId", Google.Apis.Util.RequestParameterType.Query)] + public virtual string ConfigId { get; set; } + /// Specifies which parts of the Service Config should be returned in the response. [Google.Apis.Util.RequestParameterAttribute("view", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable View { get; set; } @@ -1939,10 +1943,6 @@ public enum ViewEnum FULL, } - /// The id of the service configuration resource. - [Google.Apis.Util.RequestParameterAttribute("configId", Google.Apis.Util.RequestParameterType.Query)] - public virtual string ConfigId { get; set; } - ///Gets the method name. public override string MethodName @@ -1977,18 +1977,18 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "view", new Google.Apis.Discovery.Parameter + "configId", new Google.Apis.Discovery.Parameter { - Name = "view", + Name = "configId", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "configId", new Google.Apis.Discovery.Parameter + "view", new Google.Apis.Discovery.Parameter { - Name = "configId", + Name = "view", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.ServiceManagement.v1/Google.Apis.ServiceManagement.v1.csproj b/Src/Generated/Google.Apis.ServiceManagement.v1/Google.Apis.ServiceManagement.v1.csproj index 8a729a65fd..ff164973ec 100644 --- a/Src/Generated/Google.Apis.ServiceManagement.v1/Google.Apis.ServiceManagement.v1.csproj +++ b/Src/Generated/Google.Apis.ServiceManagement.v1/Google.Apis.ServiceManagement.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.ServiceManagement.v1 Client Library - 1.33.0.1216 + 1.33.1.1219 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/servicemanagement/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.ServiceUsage.v1beta1/Google.Apis.ServiceUsage.v1beta1.cs b/Src/Generated/Google.Apis.ServiceUsage.v1beta1/Google.Apis.ServiceUsage.v1beta1.cs index 9e01f98957..8a7c446cc9 100644 --- a/Src/Generated/Google.Apis.ServiceUsage.v1beta1/Google.Apis.ServiceUsage.v1beta1.cs +++ b/Src/Generated/Google.Apis.ServiceUsage.v1beta1/Google.Apis.ServiceUsage.v1beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Service Usage API * API Versionv1beta1 - * API Rev20180506 (1221) + * API Rev20180509 (1224) * API Docs * * https://cloud.google.com/service-usage/ @@ -464,6 +464,10 @@ public ListRequest(Google.Apis.Services.IClientService service) } + /// The standard list filter. + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + /// The name of the operation's parent resource. [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Query)] public virtual string Name { get; set; } @@ -476,10 +480,6 @@ public ListRequest(Google.Apis.Services.IClientService service) [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } - /// The standard list filter. - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - ///Gets the method name. public override string MethodName @@ -505,36 +505,36 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "name", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "name", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "name", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "name", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -920,6 +920,11 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } + /// Requested size of the next page of data. Requested page size cannot exceed 200. If not set, the + /// default page size is 50. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + /// Only list services that conform to the given filter. The allowed filter strings are /// `state:ENABLED` and `state:DISABLED`. [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] @@ -930,11 +935,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } - /// Requested size of the next page of data. Requested page size cannot exceed 200. If not set, the - /// default page size is 50. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - ///Gets the method name. public override string MethodName @@ -969,27 +969,27 @@ protected override void InitParameters() Pattern = @"^[^/]+/[^/]+$", }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.ServiceUsage.v1beta1/Google.Apis.ServiceUsage.v1beta1.csproj b/Src/Generated/Google.Apis.ServiceUsage.v1beta1/Google.Apis.ServiceUsage.v1beta1.csproj index 7e27370b9a..283c020f72 100644 --- a/Src/Generated/Google.Apis.ServiceUsage.v1beta1/Google.Apis.ServiceUsage.v1beta1.csproj +++ b/Src/Generated/Google.Apis.ServiceUsage.v1beta1/Google.Apis.ServiceUsage.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.ServiceUsage.v1beta1 Client Library - 1.33.0.1221 + 1.33.1.1224 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/serviceusage/v1beta1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.ServiceUser.v1/Google.Apis.ServiceUser.v1.cs b/Src/Generated/Google.Apis.ServiceUser.v1/Google.Apis.ServiceUser.v1.cs index 508b2b45df..614490d270 100644 --- a/Src/Generated/Google.Apis.ServiceUser.v1/Google.Apis.ServiceUser.v1.cs +++ b/Src/Generated/Google.Apis.ServiceUser.v1/Google.Apis.ServiceUser.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Service User API * API Versionv1 - * API Rev20180501 (1216) + * API Rev20180504 (1219) * API Docs * * https://cloud.google.com/service-management/ diff --git a/Src/Generated/Google.Apis.ServiceUser.v1/Google.Apis.ServiceUser.v1.csproj b/Src/Generated/Google.Apis.ServiceUser.v1/Google.Apis.ServiceUser.v1.csproj index ee5940e804..5e98e4a113 100644 --- a/Src/Generated/Google.Apis.ServiceUser.v1/Google.Apis.ServiceUser.v1.csproj +++ b/Src/Generated/Google.Apis.ServiceUser.v1/Google.Apis.ServiceUser.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.ServiceUser.v1 Client Library - 1.33.0.1216 + 1.33.1.1219 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/serviceuser/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Sheets.v4/Google.Apis.Sheets.v4.cs b/Src/Generated/Google.Apis.Sheets.v4/Google.Apis.Sheets.v4.cs index 91a9950fb5..25e8429c52 100644 --- a/Src/Generated/Google.Apis.Sheets.v4/Google.Apis.Sheets.v4.cs +++ b/Src/Generated/Google.Apis.Sheets.v4/Google.Apis.Sheets.v4.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -731,11 +731,6 @@ public AppendRequest(Google.Apis.Services.IClientService service, Google.Apis.Sh [Google.Apis.Util.RequestParameterAttribute("range", Google.Apis.Util.RequestParameterType.Path)] public virtual string Range { get; private set; } - /// Determines if the update response should include the values of the cells that were - /// appended. By default, responses do not include the updated values. - [Google.Apis.Util.RequestParameterAttribute("includeValuesInResponse", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable IncludeValuesInResponse { get; set; } - /// Determines how values in the response should be rendered. The default render option is /// ValueRenderOption.FORMATTED_VALUE. [Google.Apis.Util.RequestParameterAttribute("responseValueRenderOption", Google.Apis.Util.RequestParameterType.Query)] @@ -798,6 +793,11 @@ public enum ResponseDateTimeRenderOptionEnum FORMATTEDSTRING, } + /// Determines if the update response should include the values of the cells that were + /// appended. By default, responses do not include the updated values. + [Google.Apis.Util.RequestParameterAttribute("includeValuesInResponse", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable IncludeValuesInResponse { get; set; } + /// Gets or sets the body of this request. Google.Apis.Sheets.v4.Data.ValueRange Body { get; set; } @@ -846,15 +846,6 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); - RequestParameters.Add( - "includeValuesInResponse", new Google.Apis.Discovery.Parameter - { - Name = "includeValuesInResponse", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); RequestParameters.Add( "responseValueRenderOption", new Google.Apis.Discovery.Parameter { @@ -891,6 +882,15 @@ protected override void InitParameters() DefaultValue = null, Pattern = null, }); + RequestParameters.Add( + "includeValuesInResponse", new Google.Apis.Discovery.Parameter + { + Name = "includeValuesInResponse", + IsRequired = false, + ParameterType = "query", + DefaultValue = null, + Pattern = null, + }); } } @@ -1532,29 +1532,6 @@ public GetRequest(Google.Apis.Services.IClientService service, string spreadshee [Google.Apis.Util.RequestParameterAttribute("range", Google.Apis.Util.RequestParameterType.Path)] public virtual string Range { get; private set; } - /// The major dimension that results should use. - /// - /// For example, if the spreadsheet data is: `A1=1,B1=2,A2=3,B2=4`, then requesting - /// `range=A1:B2,majorDimension=ROWS` will return `[[1,2],[3,4]]`, whereas requesting - /// `range=A1:B2,majorDimension=COLUMNS` will return `[[1,3],[2,4]]`. - [Google.Apis.Util.RequestParameterAttribute("majorDimension", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable MajorDimension { get; set; } - - /// The major dimension that results should use. - /// - /// For example, if the spreadsheet data is: `A1=1,B1=2,A2=3,B2=4`, then requesting - /// `range=A1:B2,majorDimension=ROWS` will return `[[1,2],[3,4]]`, whereas requesting - /// `range=A1:B2,majorDimension=COLUMNS` will return `[[1,3],[2,4]]`. - public enum MajorDimensionEnum - { - [Google.Apis.Util.StringValueAttribute("DIMENSION_UNSPECIFIED")] - DIMENSIONUNSPECIFIED, - [Google.Apis.Util.StringValueAttribute("ROWS")] - ROWS, - [Google.Apis.Util.StringValueAttribute("COLUMNS")] - COLUMNS, - } - /// How values should be represented in the output. The default render option is /// ValueRenderOption.FORMATTED_VALUE. [Google.Apis.Util.RequestParameterAttribute("valueRenderOption", Google.Apis.Util.RequestParameterType.Query)] @@ -1589,6 +1566,29 @@ public enum DateTimeRenderOptionEnum FORMATTEDSTRING, } + /// The major dimension that results should use. + /// + /// For example, if the spreadsheet data is: `A1=1,B1=2,A2=3,B2=4`, then requesting + /// `range=A1:B2,majorDimension=ROWS` will return `[[1,2],[3,4]]`, whereas requesting + /// `range=A1:B2,majorDimension=COLUMNS` will return `[[1,3],[2,4]]`. + [Google.Apis.Util.RequestParameterAttribute("majorDimension", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable MajorDimension { get; set; } + + /// The major dimension that results should use. + /// + /// For example, if the spreadsheet data is: `A1=1,B1=2,A2=3,B2=4`, then requesting + /// `range=A1:B2,majorDimension=ROWS` will return `[[1,2],[3,4]]`, whereas requesting + /// `range=A1:B2,majorDimension=COLUMNS` will return `[[1,3],[2,4]]`. + public enum MajorDimensionEnum + { + [Google.Apis.Util.StringValueAttribute("DIMENSION_UNSPECIFIED")] + DIMENSIONUNSPECIFIED, + [Google.Apis.Util.StringValueAttribute("ROWS")] + ROWS, + [Google.Apis.Util.StringValueAttribute("COLUMNS")] + COLUMNS, + } + ///Gets the method name. public override string MethodName @@ -1632,27 +1632,27 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "majorDimension", new Google.Apis.Discovery.Parameter + "valueRenderOption", new Google.Apis.Discovery.Parameter { - Name = "majorDimension", + Name = "valueRenderOption", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "valueRenderOption", new Google.Apis.Discovery.Parameter + "dateTimeRenderOption", new Google.Apis.Discovery.Parameter { - Name = "valueRenderOption", + Name = "dateTimeRenderOption", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "dateTimeRenderOption", new Google.Apis.Discovery.Parameter + "majorDimension", new Google.Apis.Discovery.Parameter { - Name = "dateTimeRenderOption", + Name = "majorDimension", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1696,13 +1696,6 @@ public UpdateRequest(Google.Apis.Services.IClientService service, Google.Apis.Sh [Google.Apis.Util.RequestParameterAttribute("range", Google.Apis.Util.RequestParameterType.Path)] public virtual string Range { get; private set; } - /// Determines if the update response should include the values of the cells that were updated. - /// By default, responses do not include the updated values. If the range to write was larger than than - /// the range actually written, the response will include all values in the requested range (excluding - /// trailing empty rows and columns). - [Google.Apis.Util.RequestParameterAttribute("includeValuesInResponse", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable IncludeValuesInResponse { get; set; } - /// Determines how values in the response should be rendered. The default render option is /// ValueRenderOption.FORMATTED_VALUE. [Google.Apis.Util.RequestParameterAttribute("responseValueRenderOption", Google.Apis.Util.RequestParameterType.Query)] @@ -1752,6 +1745,13 @@ public enum ResponseDateTimeRenderOptionEnum FORMATTEDSTRING, } + /// Determines if the update response should include the values of the cells that were updated. + /// By default, responses do not include the updated values. If the range to write was larger than than + /// the range actually written, the response will include all values in the requested range (excluding + /// trailing empty rows and columns). + [Google.Apis.Util.RequestParameterAttribute("includeValuesInResponse", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable IncludeValuesInResponse { get; set; } + /// Gets or sets the body of this request. Google.Apis.Sheets.v4.Data.ValueRange Body { get; set; } @@ -1801,36 +1801,36 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "includeValuesInResponse", new Google.Apis.Discovery.Parameter + "responseValueRenderOption", new Google.Apis.Discovery.Parameter { - Name = "includeValuesInResponse", + Name = "responseValueRenderOption", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "responseValueRenderOption", new Google.Apis.Discovery.Parameter + "valueInputOption", new Google.Apis.Discovery.Parameter { - Name = "responseValueRenderOption", + Name = "valueInputOption", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "valueInputOption", new Google.Apis.Discovery.Parameter + "responseDateTimeRenderOption", new Google.Apis.Discovery.Parameter { - Name = "valueInputOption", + Name = "responseDateTimeRenderOption", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "responseDateTimeRenderOption", new Google.Apis.Discovery.Parameter + "includeValuesInResponse", new Google.Apis.Discovery.Parameter { - Name = "responseDateTimeRenderOption", + Name = "includeValuesInResponse", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Sheets.v4/Google.Apis.Sheets.v4.csproj b/Src/Generated/Google.Apis.Sheets.v4/Google.Apis.Sheets.v4.csproj index 77c13362ac..0a72e5cf2f 100644 --- a/Src/Generated/Google.Apis.Sheets.v4/Google.Apis.Sheets.v4.csproj +++ b/Src/Generated/Google.Apis.Sheets.v4/Google.Apis.Sheets.v4.csproj @@ -3,7 +3,7 @@ Google.Apis.Sheets.v4 Client Library - 1.33.0.1218 + 1.33.1.1218 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/sheets/v4 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.ShoppingContent.v2/Google.Apis.ShoppingContent.v2.cs b/Src/Generated/Google.Apis.ShoppingContent.v2/Google.Apis.ShoppingContent.v2.cs index d72b29d04b..3f02cb138d 100644 --- a/Src/Generated/Google.Apis.ShoppingContent.v2/Google.Apis.ShoppingContent.v2.cs +++ b/Src/Generated/Google.Apis.ShoppingContent.v2/Google.Apis.ShoppingContent.v2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.ShoppingContent.v2/Google.Apis.ShoppingContent.v2.csproj b/Src/Generated/Google.Apis.ShoppingContent.v2/Google.Apis.ShoppingContent.v2.csproj index e16f7be1ae..9b12e3b2d7 100644 --- a/Src/Generated/Google.Apis.ShoppingContent.v2/Google.Apis.ShoppingContent.v2.csproj +++ b/Src/Generated/Google.Apis.ShoppingContent.v2/Google.Apis.ShoppingContent.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.ShoppingContent.v2 Client Library - 1.33.0.1222 + 1.33.1.1222 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/content/v2 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.ShoppingContent.v2sandbox/Google.Apis.ShoppingContent.v2sandbox.cs b/Src/Generated/Google.Apis.ShoppingContent.v2sandbox/Google.Apis.ShoppingContent.v2sandbox.cs index 36f521e78c..6a50d0dfe6 100644 --- a/Src/Generated/Google.Apis.ShoppingContent.v2sandbox/Google.Apis.ShoppingContent.v2sandbox.cs +++ b/Src/Generated/Google.Apis.ShoppingContent.v2sandbox/Google.Apis.ShoppingContent.v2sandbox.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.ShoppingContent.v2sandbox/Google.Apis.ShoppingContent.v2sandbox.csproj b/Src/Generated/Google.Apis.ShoppingContent.v2sandbox/Google.Apis.ShoppingContent.v2sandbox.csproj index f0eccf559a..aa57c92914 100644 --- a/Src/Generated/Google.Apis.ShoppingContent.v2sandbox/Google.Apis.ShoppingContent.v2sandbox.csproj +++ b/Src/Generated/Google.Apis.ShoppingContent.v2sandbox/Google.Apis.ShoppingContent.v2sandbox.csproj @@ -3,7 +3,7 @@ Google.Apis.ShoppingContent.v2sandbox Client Library - 1.33.0.1222 + 1.33.1.1222 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/content/v2sandbox @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.SiteVerification.v1/Google.Apis.SiteVerification.v1.cs b/Src/Generated/Google.Apis.SiteVerification.v1/Google.Apis.SiteVerification.v1.cs index a1d458d1b5..2923bc5c83 100644 --- a/Src/Generated/Google.Apis.SiteVerification.v1/Google.Apis.SiteVerification.v1.cs +++ b/Src/Generated/Google.Apis.SiteVerification.v1/Google.Apis.SiteVerification.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.SiteVerification.v1/Google.Apis.SiteVerification.v1.csproj b/Src/Generated/Google.Apis.SiteVerification.v1/Google.Apis.SiteVerification.v1.csproj index 386ee155af..ee807a5d0e 100644 --- a/Src/Generated/Google.Apis.SiteVerification.v1/Google.Apis.SiteVerification.v1.csproj +++ b/Src/Generated/Google.Apis.SiteVerification.v1/Google.Apis.SiteVerification.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.SiteVerification.v1 Client Library - 1.33.0.1217 + 1.33.1.1217 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/siteVerification/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Slides.v1/Google.Apis.Slides.v1.cs b/Src/Generated/Google.Apis.Slides.v1/Google.Apis.Slides.v1.cs index e742b639a8..e0eb61bd1f 100644 --- a/Src/Generated/Google.Apis.Slides.v1/Google.Apis.Slides.v1.cs +++ b/Src/Generated/Google.Apis.Slides.v1/Google.Apis.Slides.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Slides.v1/Google.Apis.Slides.v1.csproj b/Src/Generated/Google.Apis.Slides.v1/Google.Apis.Slides.v1.csproj index 1481b85a0f..8db7adb55b 100644 --- a/Src/Generated/Google.Apis.Slides.v1/Google.Apis.Slides.v1.csproj +++ b/Src/Generated/Google.Apis.Slides.v1/Google.Apis.Slides.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Slides.v1 Client Library - 1.33.0.1219 + 1.33.1.1219 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/slides/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Spanner.v1/Google.Apis.Spanner.v1.cs b/Src/Generated/Google.Apis.Spanner.v1/Google.Apis.Spanner.v1.cs index ab13a560b9..ab2ba98c30 100644 --- a/Src/Generated/Google.Apis.Spanner.v1/Google.Apis.Spanner.v1.cs +++ b/Src/Generated/Google.Apis.Spanner.v1/Google.Apis.Spanner.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -850,10 +850,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } - /// The standard list filter. - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - /// The standard list page token. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } @@ -862,6 +858,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// The standard list filter. + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + ///Gets the method name. public override string MethodName @@ -896,27 +896,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/instances/[^/]+/databases/[^/]+/operations$", }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1498,11 +1498,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string database) [Google.Apis.Util.RequestParameterAttribute("database", Google.Apis.Util.RequestParameterType.Path)] public virtual string Database { get; private set; } - /// Number of sessions to be returned in the response. If 0 or less, defaults to the - /// server's maximum allowed page size. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - /// An expression for filtering the results of the request. Filter rules are case /// insensitive. The fields eligible for filtering are: /// @@ -1520,6 +1515,11 @@ public ListRequest(Google.Apis.Services.IClientService service, string database) [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } + /// Number of sessions to be returned in the response. If 0 or less, defaults to the + /// server's maximum allowed page size. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + ///Gets the method name. public override string MethodName @@ -1554,27 +1554,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/instances/[^/]+/databases/[^/]+$", }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -2894,10 +2894,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } - /// The standard list page size. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - /// The standard list filter. [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] public virtual string Filter { get; set; } @@ -2906,6 +2902,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } + /// The standard list page size. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + ///Gets the method name. public override string MethodName @@ -2940,27 +2940,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/instances/[^/]+/operations$", }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -3330,6 +3330,16 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } + /// If non-empty, `page_token` should contain a next_page_token from a previous + /// ListInstancesResponse. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// Number of instances to be returned in the response. If 0 or less, defaults to the server's + /// maximum allowed page size. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + /// An expression for filtering the results of the request. Filter rules are case insensitive. /// The fields eligible for filtering are: /// @@ -3346,16 +3356,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] public virtual string Filter { get; set; } - /// If non-empty, `page_token` should contain a next_page_token from a previous - /// ListInstancesResponse. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - - /// Number of instances to be returned in the response. If 0 or less, defaults to the server's - /// maximum allowed page size. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - ///Gets the method name. public override string MethodName @@ -3390,27 +3390,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+$", }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Spanner.v1/Google.Apis.Spanner.v1.csproj b/Src/Generated/Google.Apis.Spanner.v1/Google.Apis.Spanner.v1.csproj index 3b71e6faf3..e90a578d01 100644 --- a/Src/Generated/Google.Apis.Spanner.v1/Google.Apis.Spanner.v1.csproj +++ b/Src/Generated/Google.Apis.Spanner.v1/Google.Apis.Spanner.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Spanner.v1 Client Library - 1.33.0.1202 + 1.33.1.1202 Google Inc. Copyright 2017 Google Inc. Google @@ -13,7 +13,8 @@ https://github.com/google/google-api-dotnet-client https://www.gstatic.com/images/branding/product/1x/google_developers_64dp.png - Google APIs Client Library for working with Spanner v1. + This is not the recommended package for working with Spanner, please use the Google.Cloud.Spanner.Data package. + This Google APIs Client Library for working with Spanner v1 uses older code generation, and is harder to use. Supported Platforms: - .NET Framework 4.5+ @@ -24,11 +25,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/spanner/v1 @@ -57,8 +59,8 @@ - - + + @@ -73,8 +75,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Spectrum.v1explorer/Google.Apis.Spectrum.v1explorer.cs b/Src/Generated/Google.Apis.Spectrum.v1explorer/Google.Apis.Spectrum.v1explorer.cs index d66727b354..7ae4c4067f 100644 --- a/Src/Generated/Google.Apis.Spectrum.v1explorer/Google.Apis.Spectrum.v1explorer.cs +++ b/Src/Generated/Google.Apis.Spectrum.v1explorer/Google.Apis.Spectrum.v1explorer.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Spectrum.v1explorer/Google.Apis.Spectrum.v1explorer.csproj b/Src/Generated/Google.Apis.Spectrum.v1explorer/Google.Apis.Spectrum.v1explorer.csproj index b94e679615..2c95073967 100644 --- a/Src/Generated/Google.Apis.Spectrum.v1explorer/Google.Apis.Spectrum.v1explorer.csproj +++ b/Src/Generated/Google.Apis.Spectrum.v1explorer/Google.Apis.Spectrum.v1explorer.csproj @@ -3,7 +3,7 @@ Google.Apis.Spectrum.v1explorer Client Library - 1.33.0.1167 + 1.33.1.1167 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/spectrum/v1explorer @@ -57,7 +58,7 @@ - + @@ -71,7 +72,7 @@ - + diff --git a/Src/Generated/Google.Apis.Speech.v1/Google.Apis.Speech.v1.cs b/Src/Generated/Google.Apis.Speech.v1/Google.Apis.Speech.v1.cs index d3f7f83d57..8e7f1be67d 100644 --- a/Src/Generated/Google.Apis.Speech.v1/Google.Apis.Speech.v1.cs +++ b/Src/Generated/Google.Apis.Speech.v1/Google.Apis.Speech.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Speech.v1/Google.Apis.Speech.v1.csproj b/Src/Generated/Google.Apis.Speech.v1/Google.Apis.Speech.v1.csproj index f821080a41..85a8751121 100644 --- a/Src/Generated/Google.Apis.Speech.v1/Google.Apis.Speech.v1.csproj +++ b/Src/Generated/Google.Apis.Speech.v1/Google.Apis.Speech.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Speech.v1 Client Library - 1.33.0.1223 + 1.33.1.1223 Google Inc. Copyright 2017 Google Inc. Google @@ -13,7 +13,8 @@ https://github.com/google/google-api-dotnet-client https://www.gstatic.com/images/branding/product/1x/google_developers_64dp.png - Google APIs Client Library for working with Speech v1. + This is not the recommended package for working with Speech, please use the Google.Cloud.Speech.V1 package. + This Google APIs Client Library for working with Speech v1 uses older code generation, and is harder to use. Supported Platforms: - .NET Framework 4.5+ @@ -24,11 +25,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/speech/v1 @@ -57,8 +59,8 @@ - - + + @@ -73,8 +75,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Speech.v1beta1/Google.Apis.Speech.v1beta1.cs b/Src/Generated/Google.Apis.Speech.v1beta1/Google.Apis.Speech.v1beta1.cs index 5b5e0137be..df1a7d71f6 100644 --- a/Src/Generated/Google.Apis.Speech.v1beta1/Google.Apis.Speech.v1beta1.cs +++ b/Src/Generated/Google.Apis.Speech.v1beta1/Google.Apis.Speech.v1beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Speech.v1beta1/Google.Apis.Speech.v1beta1.csproj b/Src/Generated/Google.Apis.Speech.v1beta1/Google.Apis.Speech.v1beta1.csproj index 35ea4a93be..07ad03f171 100644 --- a/Src/Generated/Google.Apis.Speech.v1beta1/Google.Apis.Speech.v1beta1.csproj +++ b/Src/Generated/Google.Apis.Speech.v1beta1/Google.Apis.Speech.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.Speech.v1beta1 Client Library - 1.33.0.1223 + 1.33.1.1223 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/speech/v1beta1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Storage.v1/Google.Apis.Storage.v1.cs b/Src/Generated/Google.Apis.Storage.v1/Google.Apis.Storage.v1.cs index dbcbc9416c..0abdf9119f 100644 --- a/Src/Generated/Google.Apis.Storage.v1/Google.Apis.Storage.v1.cs +++ b/Src/Generated/Google.Apis.Storage.v1/Google.Apis.Storage.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Storage.v1/Google.Apis.Storage.v1.csproj b/Src/Generated/Google.Apis.Storage.v1/Google.Apis.Storage.v1.csproj index a2be8ad4cc..acc2a68fb9 100644 --- a/Src/Generated/Google.Apis.Storage.v1/Google.Apis.Storage.v1.csproj +++ b/Src/Generated/Google.Apis.Storage.v1/Google.Apis.Storage.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Storage.v1 Client Library - 1.33.0.1215 + 1.33.1.1215 Google Inc. Copyright 2017 Google Inc. Google @@ -13,8 +13,8 @@ https://github.com/google/google-api-dotnet-client https://www.gstatic.com/images/branding/product/1x/google_developers_64dp.png - This is not the recommended package for working with Storage, please use: Google.Cloud.Storage.V1 - This is the deprecated Google APIs Client Library for working with Storage v1. + This is not the recommended package for working with Storage, please use the Google.Cloud.Storage.V1 package. + This Google APIs Client Library for working with Storage v1 uses older code generation, and is harder to use. Supported Platforms: - .NET Framework 4.5+ @@ -30,6 +30,7 @@ - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/storage/v1 @@ -58,8 +59,8 @@ - - + + @@ -74,8 +75,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Storage.v1beta1/Google.Apis.Storage.v1beta1.cs b/Src/Generated/Google.Apis.Storage.v1beta1/Google.Apis.Storage.v1beta1.cs index 0e033786c9..65dbec9be9 100644 --- a/Src/Generated/Google.Apis.Storage.v1beta1/Google.Apis.Storage.v1beta1.cs +++ b/Src/Generated/Google.Apis.Storage.v1beta1/Google.Apis.Storage.v1beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Storage.v1beta1/Google.Apis.Storage.v1beta1.csproj b/Src/Generated/Google.Apis.Storage.v1beta1/Google.Apis.Storage.v1beta1.csproj index 6ada78e055..da5db97026 100644 --- a/Src/Generated/Google.Apis.Storage.v1beta1/Google.Apis.Storage.v1beta1.csproj +++ b/Src/Generated/Google.Apis.Storage.v1beta1/Google.Apis.Storage.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.Storage.v1beta1 Client Library - 1.33.0.1215 + 1.33.1.1215 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/storage/v1beta1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Storage.v1beta2/Google.Apis.Storage.v1beta2.cs b/Src/Generated/Google.Apis.Storage.v1beta2/Google.Apis.Storage.v1beta2.cs index 8d4842892b..537b813232 100644 --- a/Src/Generated/Google.Apis.Storage.v1beta2/Google.Apis.Storage.v1beta2.cs +++ b/Src/Generated/Google.Apis.Storage.v1beta2/Google.Apis.Storage.v1beta2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Storage.v1beta2/Google.Apis.Storage.v1beta2.csproj b/Src/Generated/Google.Apis.Storage.v1beta2/Google.Apis.Storage.v1beta2.csproj index 10c18fa4a1..4e9ae77164 100644 --- a/Src/Generated/Google.Apis.Storage.v1beta2/Google.Apis.Storage.v1beta2.csproj +++ b/Src/Generated/Google.Apis.Storage.v1beta2/Google.Apis.Storage.v1beta2.csproj @@ -3,7 +3,7 @@ Google.Apis.Storage.v1beta2 Client Library - 1.33.0.1215 + 1.33.1.1215 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/storage/v1beta2 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Storagetransfer.v1/Google.Apis.Storagetransfer.v1.cs b/Src/Generated/Google.Apis.Storagetransfer.v1/Google.Apis.Storagetransfer.v1.cs index c3784687c2..e1ab547764 100644 --- a/Src/Generated/Google.Apis.Storagetransfer.v1/Google.Apis.Storagetransfer.v1.cs +++ b/Src/Generated/Google.Apis.Storagetransfer.v1/Google.Apis.Storagetransfer.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -983,14 +983,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } - /// The list page token. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - - /// The list page size. The max allowed value is 256. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - /// 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`, @@ -999,6 +991,14 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] public virtual string Filter { get; set; } + /// The list page token. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + + /// The list page size. The max allowed value is 256. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + ///Gets the method name. public override string MethodName @@ -1033,27 +1033,27 @@ protected override void InitParameters() Pattern = @"^transferOperations$", }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Storagetransfer.v1/Google.Apis.Storagetransfer.v1.csproj b/Src/Generated/Google.Apis.Storagetransfer.v1/Google.Apis.Storagetransfer.v1.csproj index 5cdea3ecb4..a04fe3bf98 100644 --- a/Src/Generated/Google.Apis.Storagetransfer.v1/Google.Apis.Storagetransfer.v1.csproj +++ b/Src/Generated/Google.Apis.Storagetransfer.v1/Google.Apis.Storagetransfer.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Storagetransfer.v1 Client Library - 1.33.0.1222 + 1.33.1.1222 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/storagetransfer/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.StreetViewPublish.v1/Google.Apis.StreetViewPublish.v1.cs b/Src/Generated/Google.Apis.StreetViewPublish.v1/Google.Apis.StreetViewPublish.v1.cs index bdcb515922..37124befd0 100644 --- a/Src/Generated/Google.Apis.StreetViewPublish.v1/Google.Apis.StreetViewPublish.v1.cs +++ b/Src/Generated/Google.Apis.StreetViewPublish.v1/Google.Apis.StreetViewPublish.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Street View Publish API * API Versionv1 - * API Rev20180507 (1222) + * API Rev20180508 (1223) * API Docs * * https://developers.google.com/streetview/publish/ @@ -912,11 +912,6 @@ public BatchGetRequest(Google.Apis.Services.IClientService service) } - /// Required. IDs of the Photos. For HTTP GET requests, the URL query parameter should be - /// `photoIds==&...`. - [Google.Apis.Util.RequestParameterAttribute("photoIds", Google.Apis.Util.RequestParameterType.Query)] - public virtual Google.Apis.Util.Repeatable PhotoIds { get; set; } - /// Specifies if a download URL for the photo bytes should be returned in the Photo /// response. [Google.Apis.Util.RequestParameterAttribute("view", Google.Apis.Util.RequestParameterType.Query)] @@ -932,6 +927,11 @@ public enum ViewEnum INCLUDEDOWNLOADURL, } + /// Required. IDs of the Photos. For HTTP GET requests, the URL query parameter should be + /// `photoIds==&...`. + [Google.Apis.Util.RequestParameterAttribute("photoIds", Google.Apis.Util.RequestParameterType.Query)] + public virtual Google.Apis.Util.Repeatable PhotoIds { get; set; } + ///Gets the method name. public override string MethodName @@ -957,18 +957,18 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "photoIds", new Google.Apis.Discovery.Parameter + "view", new Google.Apis.Discovery.Parameter { - Name = "photoIds", + Name = "view", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "view", new Google.Apis.Discovery.Parameter + "photoIds", new Google.Apis.Discovery.Parameter { - Name = "view", + Name = "photoIds", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.StreetViewPublish.v1/Google.Apis.StreetViewPublish.v1.csproj b/Src/Generated/Google.Apis.StreetViewPublish.v1/Google.Apis.StreetViewPublish.v1.csproj index c49b209606..328986d581 100644 --- a/Src/Generated/Google.Apis.StreetViewPublish.v1/Google.Apis.StreetViewPublish.v1.csproj +++ b/Src/Generated/Google.Apis.StreetViewPublish.v1/Google.Apis.StreetViewPublish.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.StreetViewPublish.v1 Client Library - 1.33.0.1222 + 1.33.1.1223 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/streetviewpublish/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Surveys.v2/Google.Apis.Surveys.v2.cs b/Src/Generated/Google.Apis.Surveys.v2/Google.Apis.Surveys.v2.cs index f99156add0..672a18d8e8 100644 --- a/Src/Generated/Google.Apis.Surveys.v2/Google.Apis.Surveys.v2.cs +++ b/Src/Generated/Google.Apis.Surveys.v2/Google.Apis.Surveys.v2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Surveys API * API Versionv2 - * API Rev20170407 (827) + * API Rev20180508 (1223) * API Docs * * @@ -64,7 +64,6 @@ public SurveysService() : public SurveysService(Google.Apis.Services.BaseClientService.Initializer initializer) : base(initializer) { - mobileapppanels = new MobileapppanelsResource(this); results = new ResultsResource(this); surveys = new SurveysResource(this); } @@ -123,14 +122,6 @@ public class Scope - private readonly MobileapppanelsResource mobileapppanels; - - /// Gets the Mobileapppanels resource. - public virtual MobileapppanelsResource Mobileapppanels - { - get { return mobileapppanels; } - } - private readonly ResultsResource results; /// Gets the Results resource. @@ -268,237 +259,6 @@ protected override void InitParameters() } } - /// The "mobileapppanels" collection of methods. - public class MobileapppanelsResource - { - private const string Resource = "mobileapppanels"; - - /// The service which this resource belongs to. - private readonly Google.Apis.Services.IClientService service; - - /// Constructs a new resource. - public MobileapppanelsResource(Google.Apis.Services.IClientService service) - { - this.service = service; - - } - - - /// Retrieves a MobileAppPanel that is available to the authenticated user. - /// External URL ID for the panel. - public virtual GetRequest Get(string panelId) - { - return new GetRequest(service, panelId); - } - - /// Retrieves a MobileAppPanel that is available to the authenticated user. - public class GetRequest : SurveysBaseServiceRequest - { - /// Constructs a new Get request. - public GetRequest(Google.Apis.Services.IClientService service, string panelId) - : base(service) - { - PanelId = panelId; - InitParameters(); - } - - - /// External URL ID for the panel. - [Google.Apis.Util.RequestParameterAttribute("panelId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string PanelId { get; private set; } - - - ///Gets the method name. - public override string MethodName - { - get { return "get"; } - } - - ///Gets the HTTP method. - public override string HttpMethod - { - get { return "GET"; } - } - - ///Gets the REST path. - public override string RestPath - { - get { return "mobileAppPanels/{panelId}"; } - } - - /// Initializes Get parameter list. - protected override void InitParameters() - { - base.InitParameters(); - - RequestParameters.Add( - "panelId", new Google.Apis.Discovery.Parameter - { - Name = "panelId", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - } - - } - - /// Lists the MobileAppPanels available to the authenticated user. - public virtual ListRequest List() - { - return new ListRequest(service); - } - - /// Lists the MobileAppPanels available to the authenticated user. - public class ListRequest : SurveysBaseServiceRequest - { - /// Constructs a new List request. - public ListRequest(Google.Apis.Services.IClientService service) - : base(service) - { - InitParameters(); - } - - - - [Google.Apis.Util.RequestParameterAttribute("maxResults", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable MaxResults { get; set; } - - - [Google.Apis.Util.RequestParameterAttribute("startIndex", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable StartIndex { get; set; } - - - [Google.Apis.Util.RequestParameterAttribute("token", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Token { get; set; } - - - ///Gets the method name. - public override string MethodName - { - get { return "list"; } - } - - ///Gets the HTTP method. - public override string HttpMethod - { - get { return "GET"; } - } - - ///Gets the REST path. - public override string RestPath - { - get { return "mobileAppPanels"; } - } - - /// Initializes List parameter list. - protected override void InitParameters() - { - base.InitParameters(); - - RequestParameters.Add( - "maxResults", new Google.Apis.Discovery.Parameter - { - Name = "maxResults", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add( - "startIndex", new Google.Apis.Discovery.Parameter - { - Name = "startIndex", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - RequestParameters.Add( - "token", new Google.Apis.Discovery.Parameter - { - Name = "token", - IsRequired = false, - ParameterType = "query", - DefaultValue = null, - Pattern = null, - }); - } - - } - - /// Updates a MobileAppPanel. Currently the only property that can be updated is the owners - /// property. - /// The body of the request. - /// External URL ID for the panel. - public virtual UpdateRequest Update(Google.Apis.Surveys.v2.Data.MobileAppPanel body, string panelId) - { - return new UpdateRequest(service, body, panelId); - } - - /// Updates a MobileAppPanel. Currently the only property that can be updated is the owners - /// property. - public class UpdateRequest : SurveysBaseServiceRequest - { - /// Constructs a new Update request. - public UpdateRequest(Google.Apis.Services.IClientService service, Google.Apis.Surveys.v2.Data.MobileAppPanel body, string panelId) - : base(service) - { - PanelId = panelId; - Body = body; - InitParameters(); - } - - - /// External URL ID for the panel. - [Google.Apis.Util.RequestParameterAttribute("panelId", Google.Apis.Util.RequestParameterType.Path)] - public virtual string PanelId { get; private set; } - - - /// Gets or sets the body of this request. - Google.Apis.Surveys.v2.Data.MobileAppPanel Body { get; set; } - - ///Returns the body of the request. - protected override object GetBody() { return Body; } - - ///Gets the method name. - public override string MethodName - { - get { return "update"; } - } - - ///Gets the HTTP method. - public override string HttpMethod - { - get { return "PUT"; } - } - - ///Gets the REST path. - public override string RestPath - { - get { return "mobileAppPanels/{panelId}"; } - } - - /// Initializes Update parameter list. - protected override void InitParameters() - { - base.InitParameters(); - - RequestParameters.Add( - "panelId", new Google.Apis.Discovery.Parameter - { - Name = "panelId", - IsRequired = true, - ParameterType = "path", - DefaultValue = null, - Pattern = null, - }); - } - - } - } - /// The "results" collection of methods. public class ResultsResource { @@ -1117,66 +877,6 @@ public class FieldMask : Google.Apis.Requests.IDirectResponseSchema public virtual string ETag { get; set; } } - /// Representation of an individual pre-defined panel object defining a targeted audience of opinion - /// rewards mobile app users. - public class MobileAppPanel : Google.Apis.Requests.IDirectResponseSchema - { - /// 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. - [Newtonsoft.Json.JsonPropertyAttribute("country")] - public virtual string Country { get; set; } - - /// Whether or not the panel is accessible to all API users. - [Newtonsoft.Json.JsonPropertyAttribute("isPublicPanel")] - public virtual System.Nullable IsPublicPanel { get; set; } - - /// 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. - [Newtonsoft.Json.JsonPropertyAttribute("language")] - public virtual string Language { get; set; } - - /// Unique panel ID string. This corresponds to the mobile_app_panel_id used in Survey Insert - /// requests. - [Newtonsoft.Json.JsonPropertyAttribute("mobileAppPanelId")] - public virtual string MobileAppPanelId { get; set; } - - /// Human readable name of the audience panel. - [Newtonsoft.Json.JsonPropertyAttribute("name")] - public virtual string Name { get; set; } - - /// 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. - [Newtonsoft.Json.JsonPropertyAttribute("owners")] - public virtual System.Collections.Generic.IList Owners { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - - public class MobileAppPanelsListResponse : Google.Apis.Requests.IDirectResponseSchema - { - [Newtonsoft.Json.JsonPropertyAttribute("pageInfo")] - public virtual PageInfo PageInfo { get; set; } - - /// Unique request ID used for logging and debugging. Please include in any error reporting or - /// troubleshooting requests. - [Newtonsoft.Json.JsonPropertyAttribute("requestId")] - public virtual string RequestId { get; set; } - - /// An individual predefined panel of Opinion Rewards mobile users. - [Newtonsoft.Json.JsonPropertyAttribute("resources")] - public virtual System.Collections.Generic.IList Resources { get; set; } - - [Newtonsoft.Json.JsonPropertyAttribute("tokenPagination")] - public virtual TokenPagination TokenPagination { get; set; } - - /// The ETag of the item. - public virtual string ETag { get; set; } - } - public class PageInfo : Google.Apis.Requests.IDirectResponseSchema { [Newtonsoft.Json.JsonPropertyAttribute("resultPerPage")] @@ -1296,11 +996,6 @@ public class SurveyAudience : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("languages")] public virtual System.Collections.Generic.IList Languages { get; set; } - /// 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. - [Newtonsoft.Json.JsonPropertyAttribute("mobileAppPanelId")] - public virtual string MobileAppPanelId { get; set; } - /// Online population source where the respondents are sampled from. [Newtonsoft.Json.JsonPropertyAttribute("populationSource")] public virtual string PopulationSource { get; set; } @@ -1321,17 +1016,18 @@ public class SurveyCost : Google.Apis.Requests.IDirectResponseSchema [Newtonsoft.Json.JsonPropertyAttribute("currencyCode")] public virtual string CurrencyCode { get; set; } - /// 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 + /// *Deprecated* 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. + /// immediately start the survey as long the incidence test was run within the last 21 days. This will no longer + /// be available after June 2018. [Newtonsoft.Json.JsonPropertyAttribute("maxCostPerResponseNanos")] public virtual System.Nullable MaxCostPerResponseNanos { get; set; } @@ -1519,8 +1215,8 @@ public class SurveysListResponse : Google.Apis.Requests.IDirectResponseSchema public class SurveysStartRequest : Google.Apis.Requests.IDirectResponseSchema { - /// Threshold to start a survey automically if the quoted prices is less than or equal to this value. - /// See Survey.Cost for more details. + /// *Deprecated* Threshold to start a survey automatically if the quoted prices is less than or equal + /// to this value. See Survey.Cost for more details. This will no longer be available after June 2018. [Newtonsoft.Json.JsonPropertyAttribute("maxCostPerResponseNanos")] public virtual System.Nullable MaxCostPerResponseNanos { get; set; } diff --git a/Src/Generated/Google.Apis.Surveys.v2/Google.Apis.Surveys.v2.csproj b/Src/Generated/Google.Apis.Surveys.v2/Google.Apis.Surveys.v2.csproj index 2158d58785..dbde4767bc 100644 --- a/Src/Generated/Google.Apis.Surveys.v2/Google.Apis.Surveys.v2.csproj +++ b/Src/Generated/Google.Apis.Surveys.v2/Google.Apis.Surveys.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.Surveys.v2 Client Library - 1.33.0.827 + 1.33.1.1223 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/surveys/v2 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.TPU.v1alpha1/Google.Apis.TPU.v1alpha1.cs b/Src/Generated/Google.Apis.TPU.v1alpha1/Google.Apis.TPU.v1alpha1.cs index 337fa5bcfa..7571298ccd 100644 --- a/Src/Generated/Google.Apis.TPU.v1alpha1/Google.Apis.TPU.v1alpha1.cs +++ b/Src/Generated/Google.Apis.TPU.v1alpha1/Google.Apis.TPU.v1alpha1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -1604,10 +1604,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } - /// List filter. - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - /// The next_page_token value returned from a previous List request, if any. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } @@ -1620,6 +1616,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// List filter. + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + ///Gets the method name. public override string MethodName @@ -1654,36 +1654,36 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/locations/[^/]+$", }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "orderBy", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "orderBy", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "orderBy", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "orderBy", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1777,6 +1777,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } + /// The standard list filter. + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + /// The standard list page token. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } @@ -1785,10 +1789,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } - /// The standard list filter. - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - ///Gets the method name. public override string MethodName @@ -1823,27 +1823,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+$", }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.TPU.v1alpha1/Google.Apis.TPU.v1alpha1.csproj b/Src/Generated/Google.Apis.TPU.v1alpha1/Google.Apis.TPU.v1alpha1.csproj index 5b4104948e..60f026d7e0 100644 --- a/Src/Generated/Google.Apis.TPU.v1alpha1/Google.Apis.TPU.v1alpha1.csproj +++ b/Src/Generated/Google.Apis.TPU.v1alpha1/Google.Apis.TPU.v1alpha1.csproj @@ -3,7 +3,7 @@ Google.Apis.TPU.v1alpha1 Client Library - 1.33.0.1217 + 1.33.1.1217 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/tpu/v1alpha1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.TagManager.v1/Google.Apis.TagManager.v1.cs b/Src/Generated/Google.Apis.TagManager.v1/Google.Apis.TagManager.v1.cs index 9ca218686b..91c27d8ef7 100644 --- a/Src/Generated/Google.Apis.TagManager.v1/Google.Apis.TagManager.v1.cs +++ b/Src/Generated/Google.Apis.TagManager.v1/Google.Apis.TagManager.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.TagManager.v1/Google.Apis.TagManager.v1.csproj b/Src/Generated/Google.Apis.TagManager.v1/Google.Apis.TagManager.v1.csproj index deb6f6ce5a..33d69f4fbb 100644 --- a/Src/Generated/Google.Apis.TagManager.v1/Google.Apis.TagManager.v1.csproj +++ b/Src/Generated/Google.Apis.TagManager.v1/Google.Apis.TagManager.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.TagManager.v1 Client Library - 1.33.0.1042 + 1.33.1.1042 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/tagmanager/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.TagManager.v2/Google.Apis.TagManager.v2.cs b/Src/Generated/Google.Apis.TagManager.v2/Google.Apis.TagManager.v2.cs index 35505df3f4..ed81a3ef7d 100644 --- a/Src/Generated/Google.Apis.TagManager.v2/Google.Apis.TagManager.v2.cs +++ b/Src/Generated/Google.Apis.TagManager.v2/Google.Apis.TagManager.v2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.TagManager.v2/Google.Apis.TagManager.v2.csproj b/Src/Generated/Google.Apis.TagManager.v2/Google.Apis.TagManager.v2.csproj index ea5eba422f..92527b1ff4 100644 --- a/Src/Generated/Google.Apis.TagManager.v2/Google.Apis.TagManager.v2.csproj +++ b/Src/Generated/Google.Apis.TagManager.v2/Google.Apis.TagManager.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.TagManager.v2 Client Library - 1.33.0.1042 + 1.33.1.1042 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/tagmanager/v2 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Tasks.v1/Google.Apis.Tasks.v1.cs b/Src/Generated/Google.Apis.Tasks.v1/Google.Apis.Tasks.v1.cs index 669c97a76c..64d3982215 100644 --- a/Src/Generated/Google.Apis.Tasks.v1/Google.Apis.Tasks.v1.cs +++ b/Src/Generated/Google.Apis.Tasks.v1/Google.Apis.Tasks.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Tasks.v1/Google.Apis.Tasks.v1.csproj b/Src/Generated/Google.Apis.Tasks.v1/Google.Apis.Tasks.v1.csproj index 8c5b6cb213..f01ce4f9f4 100644 --- a/Src/Generated/Google.Apis.Tasks.v1/Google.Apis.Tasks.v1.csproj +++ b/Src/Generated/Google.Apis.Tasks.v1/Google.Apis.Tasks.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Tasks.v1 Client Library - 1.33.0.0 + 1.33.1.0 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/tasks/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Testing.v1/Google.Apis.Testing.v1.cs b/Src/Generated/Google.Apis.Testing.v1/Google.Apis.Testing.v1.cs index 0b545b2673..27b49cf509 100644 --- a/Src/Generated/Google.Apis.Testing.v1/Google.Apis.Testing.v1.cs +++ b/Src/Generated/Google.Apis.Testing.v1/Google.Apis.Testing.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Testing.v1/Google.Apis.Testing.v1.csproj b/Src/Generated/Google.Apis.Testing.v1/Google.Apis.Testing.v1.csproj index ba5a0cc075..5e79dc346b 100644 --- a/Src/Generated/Google.Apis.Testing.v1/Google.Apis.Testing.v1.csproj +++ b/Src/Generated/Google.Apis.Testing.v1/Google.Apis.Testing.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Testing.v1 Client Library - 1.33.0.1218 + 1.33.1.1218 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/testing/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Texttospeech.v1beta1/Google.Apis.Texttospeech.v1beta1.cs b/Src/Generated/Google.Apis.Texttospeech.v1beta1/Google.Apis.Texttospeech.v1beta1.cs index a8e47c8933..987d7dba33 100644 --- a/Src/Generated/Google.Apis.Texttospeech.v1beta1/Google.Apis.Texttospeech.v1beta1.cs +++ b/Src/Generated/Google.Apis.Texttospeech.v1beta1/Google.Apis.Texttospeech.v1beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Texttospeech.v1beta1/Google.Apis.Texttospeech.v1beta1.csproj b/Src/Generated/Google.Apis.Texttospeech.v1beta1/Google.Apis.Texttospeech.v1beta1.csproj index b36aab7273..131d868059 100644 --- a/Src/Generated/Google.Apis.Texttospeech.v1beta1/Google.Apis.Texttospeech.v1beta1.csproj +++ b/Src/Generated/Google.Apis.Texttospeech.v1beta1/Google.Apis.Texttospeech.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.Texttospeech.v1beta1 Client Library - 1.33.0.1219 + 1.33.1.1219 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/texttospeech/v1beta1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.ToolResults.v1beta3/Google.Apis.ToolResults.v1beta3.cs b/Src/Generated/Google.Apis.ToolResults.v1beta3/Google.Apis.ToolResults.v1beta3.cs index e11b28cebd..95ce0e64e4 100644 --- a/Src/Generated/Google.Apis.ToolResults.v1beta3/Google.Apis.ToolResults.v1beta3.cs +++ b/Src/Generated/Google.Apis.ToolResults.v1beta3/Google.Apis.ToolResults.v1beta3.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Cloud Tool Results API * API Versionv1beta3 - * API Rev20180507 (1222) + * API Rev20180509 (1224) * API Docs * * https://firebase.google.com/docs/test-lab/ diff --git a/Src/Generated/Google.Apis.ToolResults.v1beta3/Google.Apis.ToolResults.v1beta3.csproj b/Src/Generated/Google.Apis.ToolResults.v1beta3/Google.Apis.ToolResults.v1beta3.csproj index 9d287cc857..3960d78ce6 100644 --- a/Src/Generated/Google.Apis.ToolResults.v1beta3/Google.Apis.ToolResults.v1beta3.csproj +++ b/Src/Generated/Google.Apis.ToolResults.v1beta3/Google.Apis.ToolResults.v1beta3.csproj @@ -3,7 +3,7 @@ Google.Apis.ToolResults.v1beta3 Client Library - 1.33.0.1222 + 1.33.1.1224 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/toolresults/v1beta3 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Translate.v2/Google.Apis.Translate.v2.cs b/Src/Generated/Google.Apis.Translate.v2/Google.Apis.Translate.v2.cs index 1a41fbed0b..b8176c8175 100644 --- a/Src/Generated/Google.Apis.Translate.v2/Google.Apis.Translate.v2.cs +++ b/Src/Generated/Google.Apis.Translate.v2/Google.Apis.Translate.v2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -630,6 +630,17 @@ public ListRequest(Google.Apis.Services.IClientService service, Google.Apis.Util [Google.Apis.Util.RequestParameterAttribute("target", Google.Apis.Util.RequestParameterType.Query)] public virtual string Target { get; private set; } + /// The `model` type requested for this translation. Valid values are listed in public + /// documentation. + [Google.Apis.Util.RequestParameterAttribute("model", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Model { get; set; } + + /// The language of the source text, set to one of the language codes listed in Language Support. + /// If the source language is not specified, the API will attempt to identify the source language + /// automatically and return it within the response. + [Google.Apis.Util.RequestParameterAttribute("source", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Source { get; set; } + /// The customization id for translate [Google.Apis.Util.RequestParameterAttribute("cid", Google.Apis.Util.RequestParameterType.Query)] public virtual Google.Apis.Util.Repeatable Cid { get; set; } @@ -651,17 +662,6 @@ public enum FormatEnum Text, } - /// The `model` type requested for this translation. Valid values are listed in public - /// documentation. - [Google.Apis.Util.RequestParameterAttribute("model", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Model { get; set; } - - /// The language of the source text, set to one of the language codes listed in Language Support. - /// If the source language is not specified, the API will attempt to identify the source language - /// automatically and return it within the response. - [Google.Apis.Util.RequestParameterAttribute("source", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Source { get; set; } - ///Gets the method name. public override string MethodName @@ -705,36 +705,36 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "cid", new Google.Apis.Discovery.Parameter + "model", new Google.Apis.Discovery.Parameter { - Name = "cid", + Name = "model", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "format", new Google.Apis.Discovery.Parameter + "source", new Google.Apis.Discovery.Parameter { - Name = "format", + Name = "source", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "model", new Google.Apis.Discovery.Parameter + "cid", new Google.Apis.Discovery.Parameter { - Name = "model", + Name = "cid", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "source", new Google.Apis.Discovery.Parameter + "format", new Google.Apis.Discovery.Parameter { - Name = "source", + Name = "format", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Translate.v2/Google.Apis.Translate.v2.csproj b/Src/Generated/Google.Apis.Translate.v2/Google.Apis.Translate.v2.csproj index 01fb6904d9..2c52e0cc68 100644 --- a/Src/Generated/Google.Apis.Translate.v2/Google.Apis.Translate.v2.csproj +++ b/Src/Generated/Google.Apis.Translate.v2/Google.Apis.Translate.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.Translate.v2 Client Library - 1.33.0.875 + 1.33.1.875 Google Inc. Copyright 2017 Google Inc. Google @@ -13,7 +13,8 @@ https://github.com/google/google-api-dotnet-client https://www.gstatic.com/images/branding/product/1x/google_developers_64dp.png - Google APIs Client Library for working with Translate v2. + This is not the recommended package for working with Translate, please use the Google.Cloud.Translation.V2 package. + This Google APIs Client Library for working with Translate v2 uses older code generation, and is harder to use. Supported Platforms: - .NET Framework 4.5+ @@ -24,11 +25,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/translate/v2 @@ -57,8 +59,8 @@ - - + + @@ -73,8 +75,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Urlshortener.v1/Google.Apis.Urlshortener.v1.cs b/Src/Generated/Google.Apis.Urlshortener.v1/Google.Apis.Urlshortener.v1.cs index 82b7935cee..358793ef18 100644 --- a/Src/Generated/Google.Apis.Urlshortener.v1/Google.Apis.Urlshortener.v1.cs +++ b/Src/Generated/Google.Apis.Urlshortener.v1/Google.Apis.Urlshortener.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Urlshortener.v1/Google.Apis.Urlshortener.v1.csproj b/Src/Generated/Google.Apis.Urlshortener.v1/Google.Apis.Urlshortener.v1.csproj index b55392a757..e408371383 100644 --- a/Src/Generated/Google.Apis.Urlshortener.v1/Google.Apis.Urlshortener.v1.csproj +++ b/Src/Generated/Google.Apis.Urlshortener.v1/Google.Apis.Urlshortener.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Urlshortener.v1 Client Library - 1.33.0.138 + 1.33.1.138 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/urlshortener/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Vault.v1/Google.Apis.Vault.v1.cs b/Src/Generated/Google.Apis.Vault.v1/Google.Apis.Vault.v1.cs index 54e2f7318f..f8e028ca8e 100644 --- a/Src/Generated/Google.Apis.Vault.v1/Google.Apis.Vault.v1.cs +++ b/Src/Generated/Google.Apis.Vault.v1/Google.Apis.Vault.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Vault.v1/Google.Apis.Vault.v1.csproj b/Src/Generated/Google.Apis.Vault.v1/Google.Apis.Vault.v1.csproj index 7aeef49451..8648d4432e 100644 --- a/Src/Generated/Google.Apis.Vault.v1/Google.Apis.Vault.v1.csproj +++ b/Src/Generated/Google.Apis.Vault.v1/Google.Apis.Vault.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Vault.v1 Client Library - 1.33.0.1188 + 1.33.1.1188 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/vault/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Vision.v1/Google.Apis.Vision.v1.cs b/Src/Generated/Google.Apis.Vision.v1/Google.Apis.Vision.v1.cs index 2f73dcf5a1..3ef4c37d3a 100644 --- a/Src/Generated/Google.Apis.Vision.v1/Google.Apis.Vision.v1.cs +++ b/Src/Generated/Google.Apis.Vision.v1/Google.Apis.Vision.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -792,10 +792,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("name", Google.Apis.Util.RequestParameterType.Path)] public virtual string Name { get; private set; } - /// The standard list filter. - [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Filter { get; set; } - /// The standard list page token. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } @@ -804,6 +800,10 @@ public ListRequest(Google.Apis.Services.IClientService service, string name) [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable PageSize { get; set; } + /// The standard list filter. + [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Filter { get; set; } + ///Gets the method name. public override string MethodName @@ -838,27 +838,27 @@ protected override void InitParameters() Pattern = @"^operations$", }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.Vision.v1/Google.Apis.Vision.v1.csproj b/Src/Generated/Google.Apis.Vision.v1/Google.Apis.Vision.v1.csproj index e059cba8a8..0f2fa3aa40 100644 --- a/Src/Generated/Google.Apis.Vision.v1/Google.Apis.Vision.v1.csproj +++ b/Src/Generated/Google.Apis.Vision.v1/Google.Apis.Vision.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Vision.v1 Client Library - 1.33.0.1205 + 1.33.1.1205 Google Inc. Copyright 2017 Google Inc. Google @@ -13,7 +13,8 @@ https://github.com/google/google-api-dotnet-client https://www.gstatic.com/images/branding/product/1x/google_developers_64dp.png - Google APIs Client Library for working with Vision v1. + This is not the recommended package for working with Vision, please use the Google.Cloud.Vision.V1 package. + This Google APIs Client Library for working with Vision v1 uses older code generation, and is harder to use. Supported Platforms: - .NET Framework 4.5+ @@ -24,11 +25,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/vision/v1 @@ -57,8 +59,8 @@ - - + + @@ -73,8 +75,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Vision.v1p1beta1/Google.Apis.Vision.v1p1beta1.cs b/Src/Generated/Google.Apis.Vision.v1p1beta1/Google.Apis.Vision.v1p1beta1.cs index 1348e00dd2..003780343c 100644 --- a/Src/Generated/Google.Apis.Vision.v1p1beta1/Google.Apis.Vision.v1p1beta1.cs +++ b/Src/Generated/Google.Apis.Vision.v1p1beta1/Google.Apis.Vision.v1p1beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Vision.v1p1beta1/Google.Apis.Vision.v1p1beta1.csproj b/Src/Generated/Google.Apis.Vision.v1p1beta1/Google.Apis.Vision.v1p1beta1.csproj index d3d9bfe7a3..092e7b8ad8 100644 --- a/Src/Generated/Google.Apis.Vision.v1p1beta1/Google.Apis.Vision.v1p1beta1.csproj +++ b/Src/Generated/Google.Apis.Vision.v1p1beta1/Google.Apis.Vision.v1p1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.Vision.v1p1beta1 Client Library - 1.33.0.1205 + 1.33.1.1205 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/vision/v1p1beta1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Vision.v1p2beta1/Google.Apis.Vision.v1p2beta1.cs b/Src/Generated/Google.Apis.Vision.v1p2beta1/Google.Apis.Vision.v1p2beta1.cs index b5c6537bf0..15c0b4e455 100644 --- a/Src/Generated/Google.Apis.Vision.v1p2beta1/Google.Apis.Vision.v1p2beta1.cs +++ b/Src/Generated/Google.Apis.Vision.v1p2beta1/Google.Apis.Vision.v1p2beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Vision.v1p2beta1/Google.Apis.Vision.v1p2beta1.csproj b/Src/Generated/Google.Apis.Vision.v1p2beta1/Google.Apis.Vision.v1p2beta1.csproj index 74e707d3bf..f4d439aaf0 100644 --- a/Src/Generated/Google.Apis.Vision.v1p2beta1/Google.Apis.Vision.v1p2beta1.csproj +++ b/Src/Generated/Google.Apis.Vision.v1p2beta1/Google.Apis.Vision.v1p2beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.Vision.v1p2beta1 Client Library - 1.33.0.1205 + 1.33.1.1205 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/vision/v1p2beta1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.WebSecurityScanner.v1alpha/Google.Apis.WebSecurityScanner.v1alpha.cs b/Src/Generated/Google.Apis.WebSecurityScanner.v1alpha/Google.Apis.WebSecurityScanner.v1alpha.cs index 3fdadc57fb..cac859ac9c 100644 --- a/Src/Generated/Google.Apis.WebSecurityScanner.v1alpha/Google.Apis.WebSecurityScanner.v1alpha.cs +++ b/Src/Generated/Google.Apis.WebSecurityScanner.v1alpha/Google.Apis.WebSecurityScanner.v1alpha.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -26,7 +26,7 @@ * API * Web Security Scanner API * API Versionv1alpha - * API Rev20180507 (1222) + * API Rev20180508 (1223) * API Docs * * https://cloud.google.com/security-scanner/ @@ -455,17 +455,17 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } - /// The maximum number of CrawledUrls to return, can be limited by server. If not - /// specified or not positive, the implementation will select a reasonable value. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - /// A token identifying a page of results to be returned. This should be a /// `next_page_token` value returned from a previous List request. If unspecified, the first /// page of results is returned. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } + /// The maximum number of CrawledUrls to return, can be limited by server. If not + /// specified or not positive, the implementation will select a reasonable value. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + ///Gets the method name. public override string MethodName @@ -500,18 +500,18 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/scanConfigs/[^/]+/scanRuns/[^/]+$", }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -719,11 +719,6 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } - /// The maximum number of Findings to return, can be limited by server. If not - /// specified or not positive, the implementation will select a reasonable value. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - /// The filter expression. The expression must be in the format: . Supported field: /// 'finding_type'. Supported operator: '='. [Google.Apis.Util.RequestParameterAttribute("filter", Google.Apis.Util.RequestParameterType.Query)] @@ -735,6 +730,11 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } + /// The maximum number of Findings to return, can be limited by server. If not + /// specified or not positive, the implementation will select a reasonable value. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + ///Gets the method name. public override string MethodName @@ -769,27 +769,27 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+/scanConfigs/[^/]+/scanRuns/[^/]+$", }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "filter", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "filter", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "filter", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "filter", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1245,17 +1245,17 @@ public ListRequest(Google.Apis.Services.IClientService service, string parent) [Google.Apis.Util.RequestParameterAttribute("parent", Google.Apis.Util.RequestParameterType.Path)] public virtual string Parent { get; private set; } - /// The maximum number of ScanConfigs to return, can be limited by server. If not specified or - /// not positive, the implementation will select a reasonable value. - [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable PageSize { get; set; } - /// A token identifying a page of results to be returned. This should be a `next_page_token` /// value returned from a previous List request. If unspecified, the first page of results is /// returned. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } + /// The maximum number of ScanConfigs to return, can be limited by server. If not specified or + /// not positive, the implementation will select a reasonable value. + [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable PageSize { get; set; } + ///Gets the method name. public override string MethodName @@ -1290,18 +1290,18 @@ protected override void InitParameters() Pattern = @"^projects/[^/]+$", }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.WebSecurityScanner.v1alpha/Google.Apis.WebSecurityScanner.v1alpha.csproj b/Src/Generated/Google.Apis.WebSecurityScanner.v1alpha/Google.Apis.WebSecurityScanner.v1alpha.csproj index 1d5e46c141..8e4ba86a8e 100644 --- a/Src/Generated/Google.Apis.WebSecurityScanner.v1alpha/Google.Apis.WebSecurityScanner.v1alpha.csproj +++ b/Src/Generated/Google.Apis.WebSecurityScanner.v1alpha/Google.Apis.WebSecurityScanner.v1alpha.csproj @@ -3,7 +3,7 @@ Google.Apis.WebSecurityScanner.v1alpha Client Library - 1.33.0.1222 + 1.33.1.1223 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/websecurityscanner/v1alpha @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.Webfonts.v1/Google.Apis.Webfonts.v1.cs b/Src/Generated/Google.Apis.Webfonts.v1/Google.Apis.Webfonts.v1.cs index f282bfa83d..e7a90d1dc4 100644 --- a/Src/Generated/Google.Apis.Webfonts.v1/Google.Apis.Webfonts.v1.cs +++ b/Src/Generated/Google.Apis.Webfonts.v1/Google.Apis.Webfonts.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Webfonts.v1/Google.Apis.Webfonts.v1.csproj b/Src/Generated/Google.Apis.Webfonts.v1/Google.Apis.Webfonts.v1.csproj index d81816d349..726a1af542 100644 --- a/Src/Generated/Google.Apis.Webfonts.v1/Google.Apis.Webfonts.v1.csproj +++ b/Src/Generated/Google.Apis.Webfonts.v1/Google.Apis.Webfonts.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.Webfonts.v1 Client Library - 1.33.0.426 + 1.33.1.426 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/webfonts/v1 @@ -57,7 +58,7 @@ - + @@ -71,7 +72,7 @@ - + diff --git a/Src/Generated/Google.Apis.Webmasters.v3/Google.Apis.Webmasters.v3.cs b/Src/Generated/Google.Apis.Webmasters.v3/Google.Apis.Webmasters.v3.cs index 282db8919e..b885aea301 100644 --- a/Src/Generated/Google.Apis.Webmasters.v3/Google.Apis.Webmasters.v3.cs +++ b/Src/Generated/Google.Apis.Webmasters.v3/Google.Apis.Webmasters.v3.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.Webmasters.v3/Google.Apis.Webmasters.v3.csproj b/Src/Generated/Google.Apis.Webmasters.v3/Google.Apis.Webmasters.v3.csproj index ff3ba639e4..e721b0c027 100644 --- a/Src/Generated/Google.Apis.Webmasters.v3/Google.Apis.Webmasters.v3.csproj +++ b/Src/Generated/Google.Apis.Webmasters.v3/Google.Apis.Webmasters.v3.csproj @@ -3,7 +3,7 @@ Google.Apis.Webmasters.v3 Client Library - 1.33.0.1120 + 1.33.1.1120 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/webmasters/v3 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.YouTube.v3/Google.Apis.YouTube.v3.cs b/Src/Generated/Google.Apis.YouTube.v3/Google.Apis.YouTube.v3.cs index af148c4e87..7e7bcfc13a 100644 --- a/Src/Generated/Google.Apis.YouTube.v3/Google.Apis.YouTube.v3.cs +++ b/Src/Generated/Google.Apis.YouTube.v3/Google.Apis.YouTube.v3.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.YouTube.v3/Google.Apis.YouTube.v3.csproj b/Src/Generated/Google.Apis.YouTube.v3/Google.Apis.YouTube.v3.csproj index 7311696b62..0c8ed02614 100644 --- a/Src/Generated/Google.Apis.YouTube.v3/Google.Apis.YouTube.v3.csproj +++ b/Src/Generated/Google.Apis.YouTube.v3/Google.Apis.YouTube.v3.csproj @@ -3,7 +3,7 @@ Google.Apis.YouTube.v3 Client Library - 1.33.0.1217 + 1.33.1.1217 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/youtube/v3 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.YouTubeAnalytics.v1/Google.Apis.YouTubeAnalytics.v1.cs b/Src/Generated/Google.Apis.YouTubeAnalytics.v1/Google.Apis.YouTubeAnalytics.v1.cs index 02d2fbaa98..be929825ff 100644 --- a/Src/Generated/Google.Apis.YouTubeAnalytics.v1/Google.Apis.YouTubeAnalytics.v1.cs +++ b/Src/Generated/Google.Apis.YouTubeAnalytics.v1/Google.Apis.YouTubeAnalytics.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.YouTubeAnalytics.v1/Google.Apis.YouTubeAnalytics.v1.csproj b/Src/Generated/Google.Apis.YouTubeAnalytics.v1/Google.Apis.YouTubeAnalytics.v1.csproj index 3dd2397cf3..b68113eef7 100644 --- a/Src/Generated/Google.Apis.YouTubeAnalytics.v1/Google.Apis.YouTubeAnalytics.v1.csproj +++ b/Src/Generated/Google.Apis.YouTubeAnalytics.v1/Google.Apis.YouTubeAnalytics.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.YouTubeAnalytics.v1 Client Library - 1.33.0.1222 + 1.33.1.1222 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/youtubeAnalytics/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.YouTubeAnalytics.v1beta1/Google.Apis.YouTubeAnalytics.v1beta1.cs b/Src/Generated/Google.Apis.YouTubeAnalytics.v1beta1/Google.Apis.YouTubeAnalytics.v1beta1.cs index 5c4e8f6a8e..3358b0436b 100644 --- a/Src/Generated/Google.Apis.YouTubeAnalytics.v1beta1/Google.Apis.YouTubeAnalytics.v1beta1.cs +++ b/Src/Generated/Google.Apis.YouTubeAnalytics.v1beta1/Google.Apis.YouTubeAnalytics.v1beta1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/Src/Generated/Google.Apis.YouTubeAnalytics.v1beta1/Google.Apis.YouTubeAnalytics.v1beta1.csproj b/Src/Generated/Google.Apis.YouTubeAnalytics.v1beta1/Google.Apis.YouTubeAnalytics.v1beta1.csproj index b06a54d2b0..dd96619e26 100644 --- a/Src/Generated/Google.Apis.YouTubeAnalytics.v1beta1/Google.Apis.YouTubeAnalytics.v1beta1.csproj +++ b/Src/Generated/Google.Apis.YouTubeAnalytics.v1beta1/Google.Apis.YouTubeAnalytics.v1beta1.csproj @@ -3,7 +3,7 @@ Google.Apis.YouTubeAnalytics.v1beta1 Client Library - 1.33.0.1222 + 1.33.1.1222 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/youtubeAnalytics/v1beta1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.YouTubeAnalytics.v2/Google.Apis.YouTubeAnalytics.v2.cs b/Src/Generated/Google.Apis.YouTubeAnalytics.v2/Google.Apis.YouTubeAnalytics.v2.cs index ab59223f22..6aaf958bd7 100644 --- a/Src/Generated/Google.Apis.YouTubeAnalytics.v2/Google.Apis.YouTubeAnalytics.v2.cs +++ b/Src/Generated/Google.Apis.YouTubeAnalytics.v2/Google.Apis.YouTubeAnalytics.v2.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -806,12 +806,6 @@ public ListRequest(Google.Apis.Services.IClientService service) } - /// 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. - [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] - public virtual string PageToken { get; set; } - /// This parameter can only be used in a properly authorized request. **Note:** This parameter is /// intended exclusively for YouTube content partners that own and manage many different YouTube channels. /// @@ -837,6 +831,12 @@ public ListRequest(Google.Apis.Services.IClientService service) [Google.Apis.Util.RequestParameterAttribute("mine", Google.Apis.Util.RequestParameterType.Query)] public virtual System.Nullable Mine { get; set; } + /// 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. + [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] + public virtual string PageToken { get; set; } + ///Gets the method name. public override string MethodName @@ -862,36 +862,36 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "pageToken", new Google.Apis.Discovery.Parameter + "onBehalfOfContentOwner", new Google.Apis.Discovery.Parameter { - Name = "pageToken", + Name = "onBehalfOfContentOwner", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "onBehalfOfContentOwner", new Google.Apis.Discovery.Parameter + "id", new Google.Apis.Discovery.Parameter { - Name = "onBehalfOfContentOwner", + Name = "id", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "id", new Google.Apis.Discovery.Parameter + "mine", new Google.Apis.Discovery.Parameter { - Name = "id", + Name = "mine", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "mine", new Google.Apis.Discovery.Parameter + "pageToken", new Google.Apis.Discovery.Parameter { - Name = "mine", + Name = "pageToken", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -1008,6 +1008,40 @@ public QueryRequest(Google.Apis.Services.IClientService service) } + /// If set to true historical data (i.e. channel data from before the linking of the channel to the + /// content owner) will be retrieved.", + [Google.Apis.Util.RequestParameterAttribute("includeHistoricalChannelData", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable IncludeHistoricalChannelData { get; set; } + + /// Identifies the YouTube channel or content owner for which you are retrieving YouTube Analytics + /// data. + /// + /// - 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. - 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_+-]+ + [Google.Apis.Util.RequestParameterAttribute("ids", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Ids { get; set; } + + /// 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} + [Google.Apis.Util.RequestParameterAttribute("currency", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Currency { get; set; } + + /// An index of the first entity to retrieve. Use this parameter as a pagination mechanism along + /// with the max-results parameter (one-based, inclusive).", minValue: 1 + [Google.Apis.Util.RequestParameterAttribute("startIndex", Google.Apis.Util.RequestParameterType.Query)] + public virtual System.Nullable StartIndex { get; set; } + + /// A comma-separated list of YouTube Analytics dimensions, such as `views` or `ageGroup,gender`. + /// See the [Available Reports](/youtube/analytics/v2/available_reports) document for a list of the reports + /// that you can retrieve and the dimensions used for those reports. Also see the + /// [Dimensions](/youtube/analytics/v2/dimsmets/dims) document for definitions of those dimensions." + /// pattern: [0-9a-zA-Z,]+ + [Google.Apis.Util.RequestParameterAttribute("dimensions", Google.Apis.Util.RequestParameterType.Query)] + public virtual string Dimensions { get; set; } + /// 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} [Google.Apis.Util.RequestParameterAttribute("endDate", Google.Apis.Util.RequestParameterType.Query)] @@ -1046,40 +1080,6 @@ public QueryRequest(Google.Apis.Services.IClientService service) [Google.Apis.Util.RequestParameterAttribute("metrics", Google.Apis.Util.RequestParameterType.Query)] public virtual string Metrics { get; set; } - /// Identifies the YouTube channel or content owner for which you are retrieving YouTube Analytics - /// data. - /// - /// - 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. - 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_+-]+ - [Google.Apis.Util.RequestParameterAttribute("ids", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Ids { get; set; } - - /// If set to true historical data (i.e. channel data from before the linking of the channel to the - /// content owner) will be retrieved.", - [Google.Apis.Util.RequestParameterAttribute("includeHistoricalChannelData", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable IncludeHistoricalChannelData { get; set; } - - /// 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} - [Google.Apis.Util.RequestParameterAttribute("currency", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Currency { get; set; } - - /// An index of the first entity to retrieve. Use this parameter as a pagination mechanism along - /// with the max-results parameter (one-based, inclusive).", minValue: 1 - [Google.Apis.Util.RequestParameterAttribute("startIndex", Google.Apis.Util.RequestParameterType.Query)] - public virtual System.Nullable StartIndex { get; set; } - - /// A comma-separated list of YouTube Analytics dimensions, such as `views` or `ageGroup,gender`. - /// See the [Available Reports](/youtube/analytics/v2/available_reports) document for a list of the reports - /// that you can retrieve and the dimensions used for those reports. Also see the - /// [Dimensions](/youtube/analytics/v2/dimsmets/dims) document for definitions of those dimensions." - /// pattern: [0-9a-zA-Z,]+ - [Google.Apis.Util.RequestParameterAttribute("dimensions", Google.Apis.Util.RequestParameterType.Query)] - public virtual string Dimensions { get; set; } - ///Gets the method name. public override string MethodName @@ -1105,99 +1105,99 @@ protected override void InitParameters() base.InitParameters(); RequestParameters.Add( - "endDate", new Google.Apis.Discovery.Parameter + "includeHistoricalChannelData", new Google.Apis.Discovery.Parameter { - Name = "endDate", + Name = "includeHistoricalChannelData", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "maxResults", new Google.Apis.Discovery.Parameter + "ids", new Google.Apis.Discovery.Parameter { - Name = "maxResults", + Name = "ids", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "filters", new Google.Apis.Discovery.Parameter + "currency", new Google.Apis.Discovery.Parameter { - Name = "filters", + Name = "currency", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "sort", new Google.Apis.Discovery.Parameter + "startIndex", new Google.Apis.Discovery.Parameter { - Name = "sort", + Name = "startIndex", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "startDate", new Google.Apis.Discovery.Parameter + "dimensions", new Google.Apis.Discovery.Parameter { - Name = "startDate", + Name = "dimensions", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "metrics", new Google.Apis.Discovery.Parameter + "endDate", new Google.Apis.Discovery.Parameter { - Name = "metrics", + Name = "endDate", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "ids", new Google.Apis.Discovery.Parameter + "maxResults", new Google.Apis.Discovery.Parameter { - Name = "ids", + Name = "maxResults", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "includeHistoricalChannelData", new Google.Apis.Discovery.Parameter + "filters", new Google.Apis.Discovery.Parameter { - Name = "includeHistoricalChannelData", + Name = "filters", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "currency", new Google.Apis.Discovery.Parameter + "sort", new Google.Apis.Discovery.Parameter { - Name = "currency", + Name = "sort", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "startIndex", new Google.Apis.Discovery.Parameter + "startDate", new Google.Apis.Discovery.Parameter { - Name = "startIndex", + Name = "startDate", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "dimensions", new Google.Apis.Discovery.Parameter + "metrics", new Google.Apis.Discovery.Parameter { - Name = "dimensions", + Name = "metrics", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.YouTubeAnalytics.v2/Google.Apis.YouTubeAnalytics.v2.csproj b/Src/Generated/Google.Apis.YouTubeAnalytics.v2/Google.Apis.YouTubeAnalytics.v2.csproj index 0129eb2ea9..951782e75c 100644 --- a/Src/Generated/Google.Apis.YouTubeAnalytics.v2/Google.Apis.YouTubeAnalytics.v2.csproj +++ b/Src/Generated/Google.Apis.YouTubeAnalytics.v2/Google.Apis.YouTubeAnalytics.v2.csproj @@ -3,7 +3,7 @@ Google.Apis.YouTubeAnalytics.v2 Client Library - 1.33.0.1222 + 1.33.1.1222 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/youtubeAnalytics/v2 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + + diff --git a/Src/Generated/Google.Apis.YouTubeReporting.v1/Google.Apis.YouTubeReporting.v1.cs b/Src/Generated/Google.Apis.YouTubeReporting.v1/Google.Apis.YouTubeReporting.v1.cs index 0b2d4e1160..602f82bf04 100644 --- a/Src/Generated/Google.Apis.YouTubeReporting.v1/Google.Apis.YouTubeReporting.v1.cs +++ b/Src/Generated/Google.Apis.YouTubeReporting.v1/Google.Apis.YouTubeReporting.v1.cs @@ -10,7 +10,7 @@ //------------------------------------------------------------------------------ // // This code was generated by google-apis-code-generator 1.5.1 -// C# generator version: 1.33.0 +// C# generator version: 1.33.1 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -514,26 +514,21 @@ public ListRequest(Google.Apis.Services.IClientService service, string jobId) [Google.Apis.Util.RequestParameterAttribute("jobId", Google.Apis.Util.RequestParameterType.Path)] public virtual string JobId { get; private set; } - /// If set, only reports whose start time is smaller than the specified date/time are - /// returned. - [Google.Apis.Util.RequestParameterAttribute("startTimeBefore", Google.Apis.Util.RequestParameterType.Query)] - public virtual object StartTimeBefore { get; set; } - /// If set, only reports created after the specified date/time are returned. [Google.Apis.Util.RequestParameterAttribute("createdAfter", Google.Apis.Util.RequestParameterType.Query)] public virtual object CreatedAfter { get; set; } + /// If set, only reports whose start time is greater than or equal the specified date/time are + /// returned. + [Google.Apis.Util.RequestParameterAttribute("startTimeAtOrAfter", Google.Apis.Util.RequestParameterType.Query)] + public virtual object StartTimeAtOrAfter { get; set; } + /// A token identifying a page of results the server should return. Typically, this is the /// value of ListReportsResponse.next_page_token returned in response to the previous call to the /// `ListReports` method. [Google.Apis.Util.RequestParameterAttribute("pageToken", Google.Apis.Util.RequestParameterType.Query)] public virtual string PageToken { get; set; } - /// If set, only reports whose start time is greater than or equal the specified date/time are - /// returned. - [Google.Apis.Util.RequestParameterAttribute("startTimeAtOrAfter", Google.Apis.Util.RequestParameterType.Query)] - public virtual object StartTimeAtOrAfter { get; set; } - /// Requested page size. Server may return fewer report types than requested. If unspecified, /// server will pick an appropriate default. [Google.Apis.Util.RequestParameterAttribute("pageSize", Google.Apis.Util.RequestParameterType.Query)] @@ -544,6 +539,11 @@ public ListRequest(Google.Apis.Services.IClientService service, string jobId) [Google.Apis.Util.RequestParameterAttribute("onBehalfOfContentOwner", Google.Apis.Util.RequestParameterType.Query)] public virtual string OnBehalfOfContentOwner { get; set; } + /// If set, only reports whose start time is smaller than the specified date/time are + /// returned. + [Google.Apis.Util.RequestParameterAttribute("startTimeBefore", Google.Apis.Util.RequestParameterType.Query)] + public virtual object StartTimeBefore { get; set; } + ///Gets the method name. public override string MethodName @@ -578,18 +578,18 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "startTimeBefore", new Google.Apis.Discovery.Parameter + "createdAfter", new Google.Apis.Discovery.Parameter { - Name = "startTimeBefore", + Name = "createdAfter", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "createdAfter", new Google.Apis.Discovery.Parameter + "startTimeAtOrAfter", new Google.Apis.Discovery.Parameter { - Name = "createdAfter", + Name = "startTimeAtOrAfter", IsRequired = false, ParameterType = "query", DefaultValue = null, @@ -605,27 +605,27 @@ protected override void InitParameters() Pattern = null, }); RequestParameters.Add( - "startTimeAtOrAfter", new Google.Apis.Discovery.Parameter + "pageSize", new Google.Apis.Discovery.Parameter { - Name = "startTimeAtOrAfter", + Name = "pageSize", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "pageSize", new Google.Apis.Discovery.Parameter + "onBehalfOfContentOwner", new Google.Apis.Discovery.Parameter { - Name = "pageSize", + Name = "onBehalfOfContentOwner", IsRequired = false, ParameterType = "query", DefaultValue = null, Pattern = null, }); RequestParameters.Add( - "onBehalfOfContentOwner", new Google.Apis.Discovery.Parameter + "startTimeBefore", new Google.Apis.Discovery.Parameter { - Name = "onBehalfOfContentOwner", + Name = "startTimeBefore", IsRequired = false, ParameterType = "query", DefaultValue = null, diff --git a/Src/Generated/Google.Apis.YouTubeReporting.v1/Google.Apis.YouTubeReporting.v1.csproj b/Src/Generated/Google.Apis.YouTubeReporting.v1/Google.Apis.YouTubeReporting.v1.csproj index 861829499a..10ce8e13f8 100644 --- a/Src/Generated/Google.Apis.YouTubeReporting.v1/Google.Apis.YouTubeReporting.v1.csproj +++ b/Src/Generated/Google.Apis.YouTubeReporting.v1/Google.Apis.YouTubeReporting.v1.csproj @@ -3,7 +3,7 @@ Google.Apis.YouTubeReporting.v1 Client Library - 1.33.0.1222 + 1.33.1.1222 Google Inc. Copyright 2017 Google Inc. Google @@ -24,11 +24,12 @@ - Windows 8 Apps - Windows Phone 8.1 - Windows Phone Silverlight 8.0 - + Incompatible platforms: - .NET Framework < 4.0 - Silverlight - UWP (will build, but is known not to work at runtime) + - Xamarin More documentation on the API is available at: https://developers.google.com/api-client-library/dotnet/apis/youtubereporting/v1 @@ -57,8 +58,8 @@ - - + + @@ -73,8 +74,8 @@ - - + +